Kontynuujemy oprogramowywanie pojazdu – ciągle chodzi nam o jak najpłynniejszą jazdę. Pomysł Pana Mateusza:
Kolejne zajęcia po długim weekendziew dniu 9-maj o godz. 16:15. Zapraszam!
Kontynuujemy oprogramowywanie pojazdu – ciągle chodzi nam o jak najpłynniejszą jazdę. Pomysł Pana Mateusza:
Kolejne zajęcia po długim weekendziew dniu 9-maj o godz. 16:15. Zapraszam!
Kontynuujemy oprogramowywanie pojazdu – ciągle chodzi nam o jak najpłynniejszą jazdę.
Propozycje softu:
Kolejne zajęcia po Świętach – wtorek 25 kwietnia – sterujemy pilotem platformą – nie zapomnijcie przynieść ze sobą pilota na podczerwień. Zapraszam!
Rozpoczęliśmy od sprawdzenia, na ile czasu jazdy starczą nam zainstalowane akumulatorki. Pierwszy program był się bardzo prosty – cała naprzód (i mierzymy prąd).
Potem zamonotowaliśmy czujkę TSOP 2236 i wpisaliśmy obsługę poleceń: jedź do przodu, tyłu, skręcaj (niektórzy nawet dwa rodziaje skrętów – ciasny, oraz szeroki).
Okazuje się, że pojazdy jeżdzą, ale trudno się nimi steruje – wykręcenie „ósemki” na przygotowanym torze nie jest wcale łatwe. Sprawa wymaga odpowiedniego oprogramowania rozkazów jazdy – na tym trzeba się skupić.
Kolejne zajęcia – także we wtorek 16:00 – sterujemy pilotem platformą – nie zapomnijcie przynieść ze sobą pilota od TV/radia/odkurzacza. Zapraszam!
Poznaliśmy odbiornik podczerwieni TSOP 2236.
#define VCC 13 #define IR 12 #include <IRLib.h> IRrecv pilot(IR);//pin IRdecode dekoder; void setup(){ pinMode(VCC, OUTPUT); digitalWrite(VCC, 1);//wlaczamy napiecie dla odbiornika IR pilot.enableIRIn();//uruchamiamy odbiornik IR Serial.begin(9600); } void loop() { if (pilot.GetResults(&dekoder)) { dekoder.decode(); //dekoduj dane pilot.resume(); //restartuj odbiornik Serial.print("0x"); Serial.println(dekoder.value, HEX);//szesnastkowo - tak tylko... }//if }/loop
W powyższym przykładzie zakładam, że pilot odbiornik IR podłączony był bezpośrednio do płytki Arduino o tak:
co jest bardzo stabilne i (warto podkreślić) nie wymaga płytki stykowej. Wszystko zgodnie ze specyfikacją – odbiornik IR dostaje zasilanie 5V z pinu #13 Arduina, a wymagany prąd to tylko 5mA (czy pamiętasz, jakim maksymalnie prądem można obciążyć piny cyfrowe Arduino?). Dlatego na początku kodu pojawia się deklaracja VCC i włączenie tego pinu. Reszta zgodna z biblioteką IRLib – nie musimy bawić się w dekodowanie sygnału, wszystko zostało zrobione przez Chris Younga – dziękujemy!
Dodatkowo: zbudowaliśmy platformę pojazdu, którą za tydzień – będziemy sterować pilotem od TV. Jak widać stawiam na prostotę i możliwość późniejszej rozbudowy – dlatego nasze pojazdy są dość sporych rozmiarów. Zachęcam do tego typu prac ręcznych.
Kolejne zajęcia – także we wtorek 16:00 – sterujemy pilotem platformą – nie zapomnijcie przynieść ze sobą pilota od TV/radia/odkurzacza. Zapraszam!
Się dzieje 😉
P.S.
Jak na razie zapisało się do nas:
Bardzo istotne zagadnienia wprowadzania sygnałów do Arduino z eliminacją stanów nieustalonych. Będziemy wykorzystać microswitche jako „zderzaki” zamontowane na pojeździe, które poinformują o napotkanych przeszkodach, coś w tym stylu:
Po co bawić się silniczkami? Przecież zdalnie sterowaną zabawkę można kupić u Chińczyka za 10 zł – powie malkontent. TAK, to prawda. ALE:
Ku pamięci: PWM ciągle szwankuje, zostawiamy to na potem…
3 & 4 SILNIK + i –
2 ARDUINO #9
7 ARDUINO #8
16 ARDUINO 5V
4 & 5 GND, ARDUINO GND
8 4xAAA (bateria)
1 ARDUINO #10 (PWM)