This shows you the differences between two versions of the page.
pm:prj2023:drtranca:turret [2023/05/29 23:19] theodor.pruteanu |
pm:prj2023:drtranca:turret [2023/05/30 13:45] (current) theodor.pruteanu |
||
---|---|---|---|
Line 39: | Line 39: | ||
* 2 biti pentru controlul sus-jos (3 stari, stanga/dreapta/repaus) | * 2 biti pentru controlul sus-jos (3 stari, stanga/dreapta/repaus) | ||
* 2 biti pentru controlul stanga-dreapta (3 stari, stanga/dreapta/repaus) | * 2 biti pentru controlul stanga-dreapta (3 stari, stanga/dreapta/repaus) | ||
- | * 1 bit pentru controlul motoarelor de tragere | + | * 2 bit pentru controlul motoarelor de tragere |
* 1 bit pentru actiunea de tragere | * 1 bit pentru actiunea de tragere | ||
- | * 2 biti rezerva | + | * 1 biti rezerva |
Folosind un protocol pe seriala, aceasta poate sa fie adaptat usor si pentru Bluetooth (dar am ars modulul last minute :() | Folosind un protocol pe seriala, aceasta poate sa fie adaptat usor si pentru Bluetooth (dar am ars modulul last minute :() | ||
Line 70: | Line 70: | ||
===== Software Design ===== | ===== Software Design ===== | ||
+ | Partea software consta din 2 programe: | ||
+ | * firmware-ul Arduino | ||
+ | * aplicatie Python pentru a da comenzile | ||
- | <note tip> | + | === Arduino === |
- | Descrierea codului aplicaţiei (firmware): | + | |
- | * mediu de dezvoltare (if any) (e.g. AVR Studio, CodeVisionAVR) | + | |
- | * librării şi surse 3rd-party (e.g. Procyon AVRlib) | + | |
- | * algoritmi şi structuri pe care plănuiţi să le implementaţi | + | |
- | * (etapa 3) surse şi funcţii implementate | + | |
- | </note> | + | |
- | ===== Rezultate Obţinute ===== | + | Arduino-ul citeste de pe seriala si executa comenzi odata la 10 ms folosind protocolul explicat in sectiunea de Project Design. |
- | <note tip> | + | === Python === |
- | Care au fost rezultatele obţinute în urma realizării proiectului vostru. | + | |
- | </note> | + | |
- | În etapele următoare... stay tuned! | + | |
- | ===== Concluzii ===== | + | Aplicatia python foloseste ''pygame'' pentru a interfata cu utilizatorul, astepta comenzi: |
+ | * sageti pentru miscarea sus/jos stanga/dreapta | ||
+ | * space pentru a trage | ||
+ | * C si S pentru pornire/oprire motoare de tragere | ||
- | În etapele următoare... stay tuned! | + | Comunica cu arduino prin seriala, folosind biblioteca standard ''pyserial''. |
===== Download ===== | ===== Download ===== | ||
- | <note warning> | + | <note tip> |
- | O arhivă (sau mai multe dacă este cazul) cu fişierele obţinute în urma realizării proiectului: surse, scheme, etc. Un fişier README, un ChangeLog, un script de compilare şi copiere automată pe uC crează întotdeauna o impresie bună ;-). | + | {{:pm:prj2023:drtranca:theodor_pruteanu-334cb.zip|}} |
- | + | ||
- | Fişierele se încarcă pe wiki folosind facilitatea **Add Images or other files**. Namespace-ul în care se încarcă fişierele este de tipul **:pm:prj20??:c?** sau **:pm:prj20??:c?:nume_student** (dacă este cazul). **Exemplu:** Dumitru Alin, 331CC -> **:pm:prj2009:cc:dumitru_alin**. | + | |
</note> | </note> | ||
<html><a class="media mediafile mf_pdf" href="?do=export_pdf">Export to PDF</a></html> | <html><a class="media mediafile mf_pdf" href="?do=export_pdf">Export to PDF</a></html> |