Autorul poate fi contactat la adresa: George Diaconu
O masinuta cu 2 motoare pe care le leg la placuta de PM. Masinuta va fi controlata prin Wi-Fi cu ajutorul unui API.
Masinuta va contine senzori ultrasonici pentru detectia obstacolelor. Atunci cand nu poate inainta, masinuta se opreste si trimite un mesaj de alarma prin Wi-Fi.
Pentru proiectul la PM, Irina Sandu face o manusa cu accelerometru si modul Wi-Fi ce va controla masinuta.
Componente de baza | |
---|---|
Placa de baza cu microcontroller ATMEGA324A-PU | |
Conector USB B | |
Quartz 16MHz | |
Diode Zener | |
LED-uri | |
Pini de extensie (aprox. 50) | |
2x Butoane | |
Rezistente | |
Condensatori ceramici | |
Condensatori electrolitici | |
Siguranta | |
Componente extra | Link |
Modul Wi-Fi ESP8266 ESP-01 Negru | Modul wifi Optimus Digital |
Driver motor | Modul driver Optimus Digital |
2x Senzori ultrasonici HC-SR04 | Modul senzor ultrasonic Optimus Digital |
Fire mama-mama | Fire mama-mama Optimus Digital |
Fire mama-tata | Fire mama-tata Optimus Digital |
Placuta primeste comenzi pe USART0 folosind intrerupere pe RX. Comenzile sunt trimise la driver-ul de motoare prin pinii digitali. Nu am mai apucat sa comand driver-ul prin PWM pentru a avea control si asupra turatiei motoarelor.
Folosesc senzorul ultrasonic din fata o data la 100 de milisecunde. Senzorul asteapta un semnal pe pin-ul TRIG, trimite cateva impulsuri si asteapta sa se intoarca undele. In functie de cat a durat pana s-au intors undele, calculez distanta in centimetri pana la cel mai apropiat obstacol.
Mai jos lista de comenzi pe care o poate interpreta placuta:
Caracter de pe USART0 | Comanda |
---|---|
L | Stanga inainte |
l (L mic) | Stanga inapoi |
R | Dreapta inainte |
r | Dreapta inapoi |
F | Inainte |
B | Inapoi |
S | Se invarte pe loc catre dreapta |
s | Se invarte pe loc catre stanga |
H | Opreste |
Am vrut initial sa folosim WIFI. Din pacate, modulul ESP-01 este foarte pretentios, iar o cadere de 0.02 V il face sa se reseteze. Am incercat sa leg un condensator de 22 uF in paralel pe pinii GND si VCC, dar nu a ajutat deloc.
Senzorii ultrasonici merg foarte bine cu o suprafata dreapta in fata, dar au probleme destul de mari cu suprafete curbate. Am afisat prin USART distanta obtinuta si arata ok. Totusi, in momentul in care conectam manusa prin USART, masuratorile senzorului o luau razna si detecta mereu un obstacol la mai putin de 10 cm distanta, asadar nu am putut folosi senzorul pentru a anunta manusa ca masina nu poate inainta.
Cu toate problemele intalnite, a fost un proiect interesant pe care o sa incerc sa il duc la final, probabil cu un modul bluetooth in loc de WIFI.