This shows you the differences between two versions of the page.
pm:prj2021:avaduva:obstacleavoidingcar [2021/05/28 01:02] dragos.ionita2303 |
pm:prj2021:avaduva:obstacleavoidingcar [2021/06/03 23:31] (current) dragos.ionita2303 |
||
---|---|---|---|
Line 220: | Line 220: | ||
} | } | ||
</code> | </code> | ||
+ | |||
+ | * 3 Iunie 2021 | ||
+ | * Am montat pe sașiu, în partea din față a robotului, senzorul de distanță HC-SR04 și l-am configurat software să măsoare distanța la fiecare 0.3 secunde, iar dacă aceasta este mai mică decât un prag stabilit (18 centimetri, de exemplu), să detecteze și să semnaleze acest lucru, pentru ca să se ruleze rutina de evitare a obstacolului. (În cazul demo-ului meu, am ales ceva simplu: la fiecare detecție a unui obstacol, robotul să se întoarcă spre dreapta în jurul axei sale, cu 90 de grade, sau mai mult, de multe ori chiar și la 180 de grade (am încercat cu mai mulți pași ai trecerii fantelor encodoare prin dreptul senzorilor, 8, 10, și 15 (o rotiță encodoare are 20 de fante))). Mai jos atașez 2 poze cu robotul în varianta finală, cu senzorul de distanță atașat. | ||
+ | {{ :pm:prj2021:avaduva:poza_obstacle_robot_complet_1.jpg?500 |}} | ||
+ | {{ :pm:prj2021:avaduva:poza_obstacle_robot_complet_2.jpg?500 |}} | ||
+ | |||
+ | * La link-ul [8] este demo-ul, format dintr-o compilație de mai multe secvențe de rulare a robotului, în care acesta detectează și evită (în cele mai multe cazuri) obstacolele de pe 'traseu'. | ||
====== Concluzii ====== | ====== Concluzii ====== | ||
+ | |||
+ | Proiectul încă poate fi îmbunătățit din punct de vedere software, putând fi configurat să ruleze orice traseu și să reacționeze la obstacole în moduri diferite. Marea problemă în menținerea direcției robotului o reprezintă roata directoare de pe rulmentul din spatele sașiului (cum se poate observa în demo-ul de la link-ul [8]), care nu stă mereu dreaptă și astfel traiectoria nu este dreaptă atunci când ar trebui să fie în mod normal (deoarece motoarele au aceeași turație). Mai mult, senzorul nu detectează foarte precis dacă obstacolul nu este perpendicular pe direcția de emitere a acestuia, deoarece undele nu revin pe aceeași direcție înapoi către senzor, iar asta poate duce la opriri prea târzii, după cum se poate observa în unele situații din demo-ul de la link-ul [8]. | ||
====== Download ====== | ====== Download ====== | ||
+ | Arhiva cu codul folosit la filmarea videoclipurilor componente din compilația din demo-ul de la linkul [8]: {{:pm:prj2021:avaduva:ionita_dragos_332cb_demo_robot_v1.0.zip|}} | ||
+ | |||
[[https://ocw.cs.pub.ro/courses/pm/prj2021/avaduva/obstacleavoidingcar?do=export_pdf]] | [[https://ocw.cs.pub.ro/courses/pm/prj2021/avaduva/obstacleavoidingcar?do=export_pdf]] | ||
Line 240: | Line 251: | ||
[7] [[https://youtu.be/CIiOOT6_2Y0]] | [7] [[https://youtu.be/CIiOOT6_2Y0]] | ||
+ | |||
+ | [8] [[https://www.youtube.com/watch?v=EcM2bb0ISI8]] |