Arduino - Remote control (RF-TX) - Printable Version +- DIY Electronic projects (https://forum.yu3ma.net) +-- Forum: Mikrokontroleri (https://forum.yu3ma.net/forumdisplay.php?fid=52) +--- Forum: Razvojni sistemi i moduli (https://forum.yu3ma.net/forumdisplay.php?fid=56) +--- Thread: Arduino - Remote control (RF-TX) (/showthread.php?tid=1353) |
Arduino - Remote control (RF-TX) - Makso - 09-10-2016 Došao sam na ideju da izradim daljinsku kontrolu sa Arduinom i RF setom na 433MHz, ali kao i na svakom projektu problemi su prisutni... Evo kod koji sam našao na netu i malo ga prepravio, ali to nisam dobro odradio pa imam problema sada. Transmitter: Code: //transmitter Receiver: Code: //receiver . Problem je sledeći, kada transmitter šalje poruke u slovima kao što je u kodu, dok ispiše sve četiri komande receiver čita po redu komande i na izlazu ledice mi trepere kako ih on čita? Kako bi to mogao riješiti ali da kod opet u jednu ruku ostane jednostavan, bar za mene? Ako sam promašio mjesto teme molio bih moderatore da oni premjeste na odgovarajuće mjesto. RE: Arduino - Remote control (RF-TX) - vojinilic - 09-10-2016 To sto si objasnio je ono kako je program napravljen da radi. Kako ti zes da ti radi? RE: Arduino - Remote control (RF-TX) - Makso - 09-10-2016 Samo da ledice ne trepću kada se čitaju komande u serial-u nego da normalno svijetle dok je taster aktivan ili više njih? RE: Arduino - Remote control (RF-TX) - vojinilic - 09-10-2016 Ne znam u kom jeziku je ovo pisano. Resenje ti je sledece. Treba da izbacis sve else-ove ovog tipa else digitalWrite(ledPin4,LOW); i da ubacis jedan tajmer koji ako ne dobijes podatak od UART-a , onda pobrises sve LED-ove. RE: Arduino - Remote control (RF-TX) - Makso - 09-10-2016 Ako sam dobro razumio, kada prekidači nisu aktivni serial bi trebao biti čist i da ne šalje nikakve komande nego tek kada se aktivira neki od prekidača onda serial šalje komandu tj. da ne provjerava sve ledice konstantno? RE: Arduino - Remote control (RF-TX) - vojinilic - 09-10-2016 Upravo tako. Tebi LED blinka zato jer stalno imas provere. Kada prvi put posaljes 'A' npr. onda ce da ti se ukljuci prva led. Kada posaljes 'B', onda ce da ti se iskljuci prva LED (to je zbog onog else), a ukljucice ti se druga LED itd. RE: Arduino - Remote control (RF-TX) - Makso - 09-11-2016 Probao sam i bez else na transmitteru i samo sam dobio brže blinkanje kada je više ledica aktivno, jer ima manje komandi za čitanje, opet nije ni to rješenje? RE: Arduino - Remote control (RF-TX) - vojinilic - 09-11-2016 (09-11-2016, 05:43 PM)Makso Wrote: Probao sam i bez else na transmitteru i samo sam dobio brže blinkanje kada je više ledica aktivno, jer ima manje komandi za čitanje, opet nije ni to rješenje? Makso, bez else treba da bude na receiveru, a ne na transmiteru. RE: Arduino - Remote control (RF-TX) - Makso - 09-11-2016 Izvinjavam se, sada sam na receiveru obrisao else a na transmitteru ostavio else, i kad aktiviram par ledica rade sasvim normalno bez blinkanja ali imam neki novi problem, sada neće da se ugasi kada pritisnem taster ledica se pali momentalno ali se ne gasi nikako a nekad se ugasi nakon dužeg vremena? Da nije problem u antenama jer sam zaletovao običan komad žice sa izolacijom od nekih 15-tak cm? RE: Arduino - Remote control (RF-TX) - vojinilic - 09-11-2016 Makso, prema postojecem softveru, LED bi trebale samo da se ukljuce, a nikada da se iskljuce. Probaj ovakav program na receiveru. Moras samo da definises globalnu promenljivu tipa unsigned long. Broj od 10000 sam lupio. Moras da odredis koja vrednost tebi odgovara da bi se LED iskljucile posle vremena koje ti odgovara. RE: Arduino - Remote control (RF-TX) - Makso - 09-11-2016 Evo šta sam sada uradio: Code: void loop() Svako dolaznu komandu sam grupisao sve zajedno, i radi kako meni treba, sad moram testirati sa još komandi pa javljam rezultate, a probaću i ovaj prethodni kod što si napisao. RE: Arduino - Remote control (RF-TX) - vojinilic - 09-11-2016 (09-11-2016, 07:00 PM)Makso Wrote: Evo šta sam sada uradio: Ovaj program sto si napisao, nije dobar. Opet ce da ti se pale/gase. Probaj moj program. Tamo je mnogo elegantnije reseno. Mogu da ti objasnim tacno sta se desava u programu, ako treba. RE: Arduino - Remote control (RF-TX) - Makso - 09-11-2016 Još uvijek radi sasvim dobro i nema još nikakvih smetnji kada sve rade istovremeno bar se okom ne primjećuje da blinkaju.? A probaću sad i tvoj program. Ako ti nije problem objasni.? Izbacuje mi grešu za ovaj dio koda: { Brojac++;} RE: Arduino - Remote control (RF-TX) - vojinilic - 09-11-2016 Moras da definises promenljivu koja se zove brojac. Ako je to programski jezik C onda pre svih funkcija napisi: unsigned long Brojac = 0; Nisam ja tebe razumeo u startu. Ovako kako si napisao program radi na sledeci nacin: Ako primis karakter 'B' onda palis LED1 Ako primis bilo koji drugi karakter, gasis LED1. Ako tako treba da radi, onda je OK. Ne razumem te najbolje, kako zelis da ti radi program. Opisi malo. RE: Arduino - Remote control (RF-TX) - Makso - 09-11-2016 Evo da ti objasnim kako bi trebao da radi: prekidač1 = led1 prekidač2 = led2 prekidač3 = led3 prekidač4 = led4 svaki prekidač kontroliše svoju ledicu, tj. kada je prekidač1 (ili neki drugi prekidač) aktivan on pali svoju ledicu a nijedna drgua ne zavisi od tog prekidača i dok je prekidač aktivan led radi i dok se prekidač pusti led se gasi, i tako da se više njih može upaliti istovremeno i kad se pusti neki prekidač on gasi samo svoju ledicu a ostali prekidači koji su i dalje aktivni te ledice koje su vezane sa njima nastavljaju sa radom. Možda sam zapetljao ali ako nije jasno probaću nekako još bliže da objasnim. RE: Arduino - Remote control (RF-TX) - Makso - 09-11-2016 Sada sam probao i tvoj program i kada stavim za brojač broj 100, onda radi kako meni treba a u praksi se isto ponaša kao i moj program. Mislim da mi je ovo sad veći napredak. RE: Arduino - Remote control (RF-TX) - vojinilic - 09-11-2016 Makso, dobar je tvoj program. Ja sam tek sada video program za transmiter i vidim da on salje podatak i kada je prekidac aktivan i kada nije, tako da ce onda onaj else kod receivera da iskljuci led, jer ce da primi stanje od prekidaca. Evo izmene mog programa da bude napisan bas u skladu sa programom za transmiter. RE: Arduino - Remote control (RF-TX) - Makso - 09-11-2016 Uglavnom sada su problemi riješeni, i na tome ti se puno puno zahvaljujem. Da smo blizu pa da popijemo jednog Jelena... Sad mi ostaje da testiram maksimalan domet, sada te opet pitam za mišljenje i savjet kako da napravim što kvalitetniju antenu? RE: Arduino - Remote control (RF-TX) - vojinilic - 09-11-2016 Rado bih popio par Jelena sada. Moracemo da organizujemo nesto. Najverovatnije na skupu u Kragujevcu. Kazi mi samo koji RF modul koristis. RE: Arduino - Remote control (RF-TX) - Makso - 09-11-2016 Evo koji je RF modul. |