Proiectul consta intr-un line follower:
Schema bloc a proiectului:
Robotul foloseste 2 seturi de baterii. Un set pentru microcontroller si senzori, alt set pentru motoare. Cele doua seturi de baterii au masa comuna.
Motoarele sunt conectate la microcontroller pe pinii PD4 si PD5, folositi la PWM.
Senzorii sunt conectati la ADC pe pinii PA0 si PA1.
Piese folosite:
Senzorii:
Initial am dorit sa construim noi insine senzorii, insa am realizat ca nu sunt foarte precisi. Schema era foarte asemanatoare celei de la senzorii folositi. Un exemplu este: Link
Alimentarea:
Initial am dorit ca alimentarea placutei sa fie facuta de la setul de baterii prin mufa de alimentare. Insa, am realizat ca aceasta se incalzea foarte tare si am renuntat la idee (aceasta solutie a fost incercata pe placutele amandurora).
Pentru dezvoltarea software-ului a fost folosit AVR Studio 4. Nu au fost necesare librarii si surse 3rd-party deoarece functionalitatile sunt asigurate de hardware-ul atmega16. De asemenea, servo-motoarele nu necesita un driver separat, ceea ce a usurat munca. Proiectul foloseste urmatoarele:
Algoritmul de functionare al robotului este unul simplu:
Initial robotul va trebui asezat pe traseu, altfel nu va sti cum sa se deplaseze. Deoarece robotul este micut, am considerat ca doar doi senzori sunt suficienti. Astfel, ambii senzori trebuie sa detecteze culoarea alb pentru a sti ca se afla pe traseu, iar in momentul in care unul dintre ei detecteaza negru, robotul se va redresa in conformitate cu valorile obtinute.
Proiectul a fost unul interesant. Nu a fost foarte dificil din punct de vedere al hardware-ului, insa a fost destul de migalos.
Mari probleme am avut cu senzorii, caci ne-am chinuit destul de mult sa ii realizam noi, insa am realizat ca nu aveam leduri sau fototranzistori buni si tot asa. Am renuntat in final la a face noi senzorii, deoarece nu erau nici foarte precisi, si am cumparat unii pentru care am obtinut rezultate destul de bune.
Partea software a fost cea mai simpla, in mare pentru ca am avut laboratoarele rezolvate.
De asemenea, am gandit si foarte simplu robotelul si de aceea a si fost ceva mai usor de realizat.
Am vrut sa folosim si un buton de stop/start pentru robotel, insa am cam uitat de el. Ramane ca un feature pentru mai incolo.
Principalele etape in realizarea proiectului au fost:
Ca resurse au fost folosite: