Scraps and bits

Introducere

Scraps este numele robotelului care urmareste linia neagra, partea de bits face referire ca e in mare parte reciclat.

Descriere generală

Scraps este, asa cum am spus in introducere, aproape 90% reciclat ca o dovada ca nu orice e nou poate sa fie performant si, de asemenea.

Printre componentele noi se numara optocuploarele cu reflexie pentru senzorul digital si componenetele pentru placuta facuta la laborator. Sasiul folosit face parte dintr-o veche masinuta cu radio-comanda.

Pentru a o putea controla am scos vechiul modul de comanda precum si modul original de virare. Pentru controlul directiei am introdus un servo motor PowerHD sub-micro servo. Pentru controlul sensului si vitezei am folosit un modul de driver descris in continuare si pentru partea de input am folosit 2 module de senzori. Modulul de senzor analogic este folosit pentru a lua date despre linia neagra sub forma de tensiune si cel de senzor digital pentru corectiile aduse la cel analogic. Conceptul de la care am pornit era ca folosind senzorul analogic si posibilitatea de a modifica usor directia sa implementam o bucla de reactie pentru a raspunde mai usor la modificarile liniilor. Senzorul digital a fost folosit datorita caracteristicii senzorului analogic.

Hardware Design

Scraps este compus din diferite module imbinate: 1. Modulul de driver de motor 2. Modulul de senzor digital 3. Modulul de senzor analogic 4. Servo-motor 5. PCB-ul facut la laborator

1. Modulul de driver de motor

  1. BA6209
  2. 5v6 Zener
  3. bareta de pini
  4. 4 condensatoare

2. Modulul de senzor digital

  1. 4 optocuploare cu reflexie
  2. comparator
  3. rezistente pentru a trece optocuploarele in saturatie

3. Modulul de senzor analogic

  1. 4 fotorezistente in punte 2 cate 2
  2. comparator LM358
  3. LED-uri pentru a lumina zona din fata fotorezistentelor
  4. rezistente

Software Design

Mediul de dezvoltare folosit a fost AVR Studio.

Din punct de vedere software programul reprezinta un automat finit cu diferite stari pentru a retine ultimele informatii despre directia si sensul masinutei. Senzorul digital intoarce o 4 biti, in functie de pozitia acestuia peste linie, ce reprezinta stare in care ar trebui sa se afle la urmatorul pas. Sensorul analogic intoarce o valoare a tensiunii inregistrate de acesta si reprezinta distanta acestuia fata de centrul liniei.

Senzorul analogic a introdus diferite probleme datorita atat caracteristicii de iesire a acestui modul cat si datorita faptului ca valoarea in afara oricarei linii da aceeasi valoare ca si pe mijlocul liniei. Prin polling gaseam atat valoarea de la senzorul analogic cat si cel digital.

Arhiva cu proiectul AVR Studio:

robo.zip

Rezultate Obţinute

Datorita dimensiunii mai mari a masinutei traseul din laborator s-a dovedit dificil. Pe traseul de test pentru implementarea software s-a dovedit versatil, dar incet. In cazurile in care iesea de pe traseu considera ca trebuie sa revina pe traseu pana cand gaseste linia si isi modifica directia corespunzator.

Concluzii

  1. Reciclatul a salvat proiectul.
  2. Implementarea software a fost cea mai usoara parte.
  3. Always have a common line
  4. @*#@ happens.

Jurnal

In loc de jurnal vom dezvalui o scurta descriere a problemelor intampinate:

  1. In incercarile de testare a modulelor sperat am pierdut cateva ore incercand sa vedem de ce nu primeste niciun semnal de la vreun modul. Dupa diferite incercari am realizat ca placuta era alimentata de la 5V de la USB si modulele erau alimentate de la o sursa de 12V fara sa aiba un fir de masa comun, intamplare care a dus la a 3-a concluzie.
  2. Dupa asamblarea modulelor pe masinuta prima incercare a fost de a testa driver-ul de motor si servo. De asemenea am pierdut cateva ore bune pana tarziu in noapte in incercarea de a folosit servo ajungand ca e problema doar la PWM. Solutia gasita a fost folosirea a unui al 3-lea Atmega16 de la o placuta mai veche a unui din coechipieri, ajungand la concluzia ca reciclying is cool.
pm/prj2012/avoinescu/scraps.txt · Last modified: 2021/04/14 17:07 (external edit)
CC Attribution-Share Alike 3.0 Unported
www.chimeric.de Valid CSS Driven by DokuWiki do yourself a favour and use a real browser - get firefox!! Recent changes RSS feed Valid XHTML 1.0