Proiectul constă în realizarea unui braț robotic ce poate fi acționat prin rotirea unor potențiometre și care are o interfață cu utilizatorul realizată printr-un ecran LCD.
Aparatul măsoară rezistența potențiometrelor și în funcție de valoarea acestora ajustează valoarea unor semnale PWM care controlează cele 3 servomotare. Acestea la rândul lor acționează niște brațe ce vor mișca ansamblul brațului robotic. Pe ecranul LCD este afișată valoarea fiecărui servomotor în grade (de la 0 la 180).
În capătul brațului se află un marker ce poate fi folosit pentru a desena diverse linii pe o foaie de hartie.
Lista de piese:
Mediu de dezvoltare: Arduino IDE
Biblioteci externe:
Programul citește valorile de pe pinii corespunzători potențiometrelor și mapează aceste valori la valori cuprinse între 0 și 180. În urma a două verificări valorile mapate se scriu pe fiecare servomotr și astfel brațul este mișcat. Cele 2 verificări au rolul de a elimina erorile produse de variația valorii rezultate de la convertorul analog-digital care ar determina ca brațul să aibă mișcări imprevizibile chiar și atunci când potențiometrele ramân nemișcate. În final se scrie prin interfața I2C unghiul la care se află fiecare servomotor.
Cod sursă
Brațul robotului este realizat din diverse obiecte gasite prin casa.
Placuța Arduino și majoritatea conexiunilor sunt ascunse într-o cutie de plastic pentru a avea un aspect mai placut.
Multe dintre fire au fost lipite cu fludor pentru a realiza niște conexiuni mai puternice ceea ce conduce la mai puține erori și elimină riscul ca firele să se desfacă.
Restul legăturilor care nu au putut fi lipite au fost securizate cu bandă izolieră, tot pentru a reduce posibilitatea ca firele să iasă din mufă și să se piardă conexiunea.
A fost un proiect interesant pe care chiar l-am realizat cu plăcere
În final robotul a ieșit în proporție de 90% așa cum mi-aș fi dorit. Ultima parte de 10% provine dintr-o problemă de construcție pe care o are robotul. Datorită unui joc destul de mare al mecanismelor, în anumite poziții brațul de jos nu ramane în poziția setată pe servomotor. Astfel, acesta încearcă să readucă brațul în poziția dorită, iar apoi brațul se întoarce în pozitia incorectă. Acest lucru se întamplă la infinit creând astfel un tremurat al robotului. De accea am ales ca acest robot să fie numit Tremurici.
Link Pagină: https://ocw.cs.pub.ro/courses/pm/prj2021/abasoc/robotarm
Document PDF: Robot Arm
https://app.diagrams.net/
https://www.autodesk.com/products/eagle/overview?term=1-YEAR
https://github.com/adafruit/Adafruit-Eagle-Library
https://www.diymodules.org/eagle-show-object?type=dm&file=diy-modules.lbr&device=LCD-I2C-CONVERTER
https://www.arduino.cc/en/software
https://www.arduino.cc/reference/en/libraries/liquidcrystal-i2c/
https://create.arduino.cc/projecthub/Arnov_Sharma_makes/lcd-i2c-tutorial-664e5a
https://www.arduino.cc/en/Tutorial/LibraryExamples/Sweep