Witam , chciałbym się dowiedzieć czy jest mozlwosc zaprogramowania tak arduino tak aby sygnał był rozsyłany do kilku odbiorników losowo. O co mi chodzi, o to aby była mozliwosci w odstępach czasowych wysyłać pojedynczy sygnał np. do silników. Mam taki plan , jako jestem bramkarzem piłki recznej aby, takie cos podłaczyc pod pewnego rodzaju wyrzutnie piłek tenisowych na róznych wysokosciach i w taki sposób cwiczyc refleks. Jeżeli miałby ktos jakis pomysł z góry Dziekuję
Tak, arduino może to zrobić. Są odpowiednie funkcje.
(04-12-2016, 21:35)namok napisał(a): [ -> ]Tak, arduino może to zrobić. Są odpowiednie funkcje.
A moglbys bardziej sprecyzowac to, bo w internecie szperałem a, tak naprawde konkretnej odpowiedzi nie znalazłem.
(05-12-2016, 18:49)krn78 napisał(a): [ -> ]Zerknij tutaj.
Nie wiem czy napewno doczytałem, ale nie znalazłem jak ustawic odstepy czasowe miedzy sygnalami
Ot i cały ci potrzebny program piny jakie potrzebujesz możesz dowolnie w klamerce zmienić
Kod:
byte opoznienie = 3;
byte czas_zadzialania = 1;
byte ktory_pin[7]={2,3,4,5,6,7,8};
byte x = 0;
void setup() {
pinMode(2,OUTPUT);
pinMode(3,OUTPUT);
pinMode(4,OUTPUT);
pinMode(5,OUTPUT);
pinMode(6,OUTPUT);
pinMode(7,OUTPUT);
pinMode(8,OUTPUT);
}
void loop() {
x = random(0,6);
digitalWrite(ktory_pin[x],HIGH);
delay(1000*czas_zadzialania);
digitalWrite(ktory_pin[x],LOW);
delay(1000*opoznienie);
}
(05-12-2016, 20:29)JasQ napisał(a): [ -> ]Ot i cały ci potrzebny program piny jakie potrzebujesz możesz dowolnie w klamerce zmienić
Kod:
byte opoznienie = 3;
byte czas_zadzialania = 1;
byte ktory_pin[7]={2,3,4,5,6,7,8};
byte x = 0;
void setup() {
pinMode(2,OUTPUT);
pinMode(3,OUTPUT);
pinMode(4,OUTPUT);
pinMode(5,OUTPUT);
pinMode(6,OUTPUT);
pinMode(7,OUTPUT);
pinMode(8,OUTPUT);
}
void loop() {
x = random(0,6);
digitalWrite(ktory_pin[x],HIGH);
delay(1000*czas_zadzialania);
digitalWrite(ktory_pin[x],LOW);
delay(1000*opoznienie);
}
Chciałbyś może Mi napisać owy program , nie ukrywam jestem w trakcie nauki i analiza zajmie mi sporo czasu. Pewnie w Twoim przypadku zajmie Ci to maksymalnie 2 min.Mam już podłączone piny od 2-10 outputy i chce aby był sygnał co 4 sekundy "losowany". Dałbyś rade
piny od 2 do 10 czas co 4 sek na 1 sek
Kod:
byte opoznienie = 4;
byte czas_zadzialania = 1;
byte ktory_pin[]={2,3,4,5,6,7,8,9,10};
byte x = 0;
void setup() {
pinMode(2,OUTPUT);
pinMode(3,OUTPUT);
pinMode(4,OUTPUT);
pinMode(5,OUTPUT);
pinMode(6,OUTPUT);
pinMode(7,OUTPUT);
pinMode(8,OUTPUT);
pinMode(9,OUTPUT);
pinMode(10,OUTPUT);
}
void loop() {
x = random(0,9);
digitalWrite(ktory_pin[x],HIGH);
delay(1000*czas_zadzialania);
digitalWrite(ktory_pin[x],LOW);
delay(1000*opoznienie);
}
(05-12-2016, 22:06)JasQ napisał(a): [ -> ]piny od 2 do 10 czas co 4 sek na 1 sek
Kod:
byte opoznienie = 4;
byte czas_zadzialania = 1;
byte ktory_pin[]={2,3,4,5,6,7,8,9,10};
byte x = 0;
void setup() {
pinMode(2,OUTPUT);
pinMode(3,OUTPUT);
pinMode(4,OUTPUT);
pinMode(5,OUTPUT);
pinMode(6,OUTPUT);
pinMode(7,OUTPUT);
pinMode(8,OUTPUT);
pinMode(9,OUTPUT);
pinMode(10,OUTPUT);
}
void loop() {
x = random(0,9);
digitalWrite(ktory_pin[x],HIGH);
delay(1000*czas_zadzialania);
digitalWrite(ktory_pin[x],LOW);
delay(1000*opoznienie);
}
Ogromne DZIĘKI oto własnie chodziło