Differences

This shows you the differences between two versions of the page.

Link to this comparison view

pm:prj2021:apredescu:walking_robot [2021/04/25 23:25]
gheorghe.cretan
pm:prj2021:apredescu:walking_robot [2021/06/04 15:41] (current)
gheorghe.cretan
Line 8: Line 8:
 ===== Descriere generală ===== ===== Descriere generală =====
  
 +Mișcarea robotului față/​spate și schimbarea direcției stânga/​dreapta este 
 +executată prin intermediul driverului de motoare L928N, setând motoarele HIGH 
 +sau LOW în functie de direcția de mers.
 +Control prin bluetooth a fost efectut folosind modului HM-10 și GamePad-ul ​
 +din aplicația Dabble.
 +Evitarea coliziunilor este îndeplinită folosind senzorul ultrasonic. Atunci ​
 +când acesta detectează un obiect la o distantă mai mică de 10cm, robotul va merge 
 +cu spatele și va executa o rotație la 90 de grade în sens trigonometric.
  
 +Rezervorul este monitrizat folosind două leduri. Atunci când bateria are un 
 +voltaj mai mic decât 50% din valoarea sa, un led roșu se va aprinde, în caz contrar ​
 +un led verde este aprins.
 +Corectarea traiectoriei este efectuată folosind magnetometrul de pe senzorul ​
 +MPU9250. Programul stochează într-o variabilă poziția inițială a robotului, urmând ​
 +ca în timpul mișcării frontale să fie calculată eroarea medie. Dacă eroare este mai 
 +mare de o valoare de offset, programul va reduce viteza pe unul dintre motoare, ​
 +urmărindu-se evoluția erorii. În cazul în care valoarea absolută a acesteia crește, se 
 +va micșora viteza celuilalt motor.
 +
 +Accelerația este afișată pe portul serial, folosind accelerometrul de pe 
 +senzorul MPU9250, acesta având o precizie de mm/s² (val. max < 10.000), afișarea ​
 +se va face în unități de măsură din SI (m/s²). Pentru calculul vitezei am introdus ​
 +accelerația (a) în legea vitezei: v = v0 + Δt. Intervalul de timp pe care se 
 +calculează viteza este obținut prin intermediul unui timer: la fiecare execuție a 
 +loop-ului se calculează folosind formula: Δt = t_{curent} - t_{anterior}. În momentul în 
 +care ambele motoare sunt oprite viteza este resetată la 0, astfel obținându-se o 
 +calibrare.
 ===== Hardware Design ===== ===== Hardware Design =====
 Lista de piese: Lista de piese:
-  - Arduino UNO +1. KIT șasiu & 2 motoare cu reductor
-  - Motor 5V reductor +
-  - Senzor ultra-sunete hc-sr04 +
-  - Driver Motor L298N +
-  - Modul Bluetooth HC-05 +
-  - Afisaj Led+
  
-===== Software Design =====+{{:​pm:​prj2021:​apredescu:​331cc_cretan_cristian_kit_sasiu.png?​200|}}
  
-===== Rezultate Obţinute =====+2. Driver motoare: L298N
  
 +{{:​pm:​prj2021:​apredescu:​331cc_cretan_cristian_driver_motoare.png?​200|}}
 +
 +3. Modul bluetooth HM10 4.0
 +
 +{{:​pm:​prj2021:​apredescu:​331cc_cretan_cristian_modul_bluetooth.png?​200|}}
 +
 +4. Senzor cu magnetometru,​ accelerometru,​ giroscop MPU-9250
 +
 +{{:​pm:​prj2021:​apredescu:​331cc_cretan_cristian_senzor_magnenometru.png?​200|}}
 +
 +5. Senzor ultrasonic HC-SR04
 +
 +{{:​pm:​prj2021:​apredescu:​331cc_cretan_cristian_senzor_ultrasonic.png?​200|}}
 +
 +6. Placuta Arduino Uno
 +
 +{{:​pm:​prj2021:​apredescu:​331cc_cretan_cristian_placuta_arduino.png?​200|}}
 +
 +===== Software Design =====
 +Schema electrica:
 +
 +{{:​pm:​prj2021:​apredescu:​331cc_cretan_cristian_schema.png?​200|}}
 +===== Demo =====
 +[[https://​youtu.be/​iVeWIP84nFM]]
 ===== Concluzii ===== ===== Concluzii =====
  
 ===== Download ===== ===== Download =====
 +Save as PDF: [[https://​ocw.cs.pub.ro/​courses/​pm/​prj2021/​apredescu/​walking_robot?​do=export_pdf]]  
 +{{:​pm:​prj2021:​apredescu:​platforma_comandata_de_la_distanta.rar}}
 ===== Bibliografie ===== ===== Bibliografie =====
  
pm/prj2021/apredescu/walking_robot.1619382335.txt.gz · Last modified: 2021/04/25 23:25 by gheorghe.cretan
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