Proiectul meu consta intr-un circuit de comanda de la distanta(telecomanda) si un vehicul. Telecomanda consta intr-un circuit facut custom pe o placuta de prototipare si cu o carcasa printata 3D cu componente metalice pentru fixare, iar masina consta intr-un sasiu off-the-shelf, cu driverele, integrate si circuite aditionale pentru control si alimentare.
Decizii de design: - microcontrollerele AtMega au package-ul vechi(DIP-28) pentru future compatibility si posibilitatea verisionarii mai usoare a codului si a aduce optimizari in mod incremental. Folosirea noului package(QFN 28) ar fi insenmat incompatibilitatea cu o placuta de prototipare custom si nevoia de a conecta un programmer, dar ar fi venit cu avantajul de dimensiune redusa si compacta. - comunicarea este realizata radio, in detrimentului unui protocol precum Wi-Fi sau Bluetooth din dorinta de a fi cat mai low-level si a codifica semnalele bare-metal, fara a fi restrictionata de stiva OSI sau un protocol anume. Desi bluetooth ar fi fost o optiune versatila pentru a avea controlul pe mai multe device-uri(laptop, PC, mobile etc.), ar fi fost mult mai pasibil de interferente intr-un spatiu precum holul EC; de asemenea, aria de acoperire nu ar fi crescut semnificativ sau poate chiar deloc.
Comunicarea se face pe frecventa radio pe o frecventa de 433MHz. Raza de actiune este aproximativ de 50-100 m. Biblioteca modulului de transmisie radio implementeaza transmiterea prin siruri de caractere ASCII, asa ca fiecare comanda atomica va avea 8 biti de informatie.
Pentru telecomanda, circuitul de alimentare consta intr-o baterie Li-Po de 3.7V aleasa din motive de eficienta pe termen lung si portabilitate. Pentru a a ridica tensiunea exact la tensiunea dorita de AtMega328(5 volti), folosesc un step-up converter.
Pentru masinuta, folosesc alimentarea direct de la baterie de 9V conectata la driverul de motor L298N. Acesta are integrat un divizor de tensiune si scoate exact 5V pentru alimentarea microcontroller-ului.
Intrucat masina este controlata de catre 2 motoare, avand 2 roti de tractiune si 2 pentru stabilitate, directiile stanga/dreapta sunt imitate prin rotire in jurul centrului, iar directiile fata/spate sunt de fapt deplasari pe directia principala de orientare a rover-ului.
La nivel de software, codul este open-source si versionat folosind Git. Masinuta implementata o viteza accelerata de la V_0 pana la V_thres daca se detecteaza o apasare continua a butonului directiei respective.
Repository: https://github.com/Nico7777777/Remote-controlled-miniatured-car