Wreszcie zdecydowałem się na nazwę dla mojego robota o którym pisałem dwa dni temu: roboCar. Wiem, mało odkrywcze i oryginalne. Trudno, będzie roboCar.

roboCar podłączony do Arduino

Tak, czy inaczej, dziś wreszcie odniosłem pierwsze sukcesy: udało mi się spiąć Arduino Uno z podwoziem, czyli mówiąc prosto: sterować silnikami wszystkich czterech kół. Okazało się, że mój oryginalny pomysł z wykorzystaniem mostków Darlingtona i układy ULN2803 był, lekko mówiąc, słaby. Przede wszystkim, nie umożliwiał zmiany kierunku obrotów silników. W połowie zlutowany układ wylądował w szufladzie, a kiedyś może podepnę go do Raspberry Pi.

Godzina googlania, wycieczka na małe zakupy w internetowym sklepie elektronicznym i dziś udało mi się zlutować driver do silników na układzie scalonym L293DNE (wersja ekologiczna, bez ołowiu). 4 mostki H zawarte w L293D wydają się na razie rozwiązywać sprawę. Przy pomocy 4 wyjść (2 cyfrowe, 2 PWM) prosty program potrafi sterować zarówno szybkością silników, jak i kierunkiem obrotów 2 par silników (silniki jednej strony są połączone równolegle). Ładny opis takiego rozwiązania można przeczytać na przykład tutaj (ang).

Nie obyło się oczywiście bez problemów/wyzwań. Po pierwsze, mogę zapomnieć o zasilaniu robota z 4.8V (4x aku AA 1.2V) jak planowałem na początku. Spadek napięcia na L293 jest na tyle duży (około 2,6V), że silniki nie mają dość mocy. Trzeba będzie użyć 9V, co po spadku powinno dać trochę ponad 6V. Po drugie, nie wiem, czy 400mA (4x100mA) to nie za dużo dla pojedynczego L293. Teoretycznie powinien wytrzymać 600mA ciągłego i 1A w szczycie, ale nie wiem. Już po chwili pracy układ jest wyraźnie gorący. Bez radiatora raczej się nie obejdzie.