Differences

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

Link to this comparison view

pm:prj2022:sgherman:propeller_car [2022/05/27 18:03]
alexandra.cune
pm:prj2022:sgherman:propeller_car [2022/06/02 23:52] (current)
alexandra.cune [Rezultate obtinute]
Line 30: Line 30:
   - Pentru masina:   - Pentru masina:
      ​*Arduino UNO      ​*Arduino UNO
-     ​*Motor Driver+     ​*Motor Driver ​L298N
      ​*Servomotor      ​*Servomotor
      ​*Breadboard      ​*Breadboard
      ​*Motor cu elice X2      ​*Motor cu elice X2
      ​*Roata X3      ​*Roata X3
-     ​*Modul radio+     ​*Modul radio nRF24L01 
 +     ​*Condensator 47μF
      *Fire de legatura/ mama-tata      *Fire de legatura/ mama-tata
-     ​*Releu 
   - Pentru telecomanda:​   - Pentru telecomanda:​
      ​*Arduino UNO      ​*Arduino UNO
      ​*Joystick      ​*Joystick
      ​*Potentiometru      ​*Potentiometru
-     ​*Modul radio+     ​*Modul radio nRF24L01 
 +     ​*Condensator 47μF
      *Fire de legatura/ mama-tata      *Fire de legatura/ mama-tata
  
  
 ===== Schema electrica ===== ===== Schema electrica =====
-{{:​pm:​prj2022:​sgherman:​schema_electrica_propeller_car.png?800|}} +{{:​pm:​prj2022:​sgherman:​car2.png?800|}}
- +
  
 ===== Software Design ===== ===== Software Design =====
Line 58: Line 57:
   * mediu de dezvoltare Arduino IDE   * mediu de dezvoltare Arduino IDE
   * librării şi surse 3rd-party : SPI.h, nRF24L01.h, RF24.h, Servo.h.   * librării şi surse 3rd-party : SPI.h, nRF24L01.h, RF24.h, Servo.h.
 +  * github: [[https://​github.com/​AlexandraCune/​Propeller-Car]]
 </​note>​ </​note>​
 +Algoritmul ce sta la baza implementarii acestui proiect este urmatorul:
  
 +In transmitter se citesc date de la joystick si potentiometru utilizand functia **__//''​analogRead()''//​__** . Aceste date sunt stocate intr-o structura '​Data_Package' ​
 +<​code>​
 +struct Data_Package {
 +  int dir = 0;
 +  int power = 0;
 +};
 +</​code>​
 +care va fi transmisa prin modulul radio, receiver-ului.
 +Utilizand biblioteca RF24.h, am dispus de numeroase functii de manipulare a semnalelor radio. Astfel, transmitter-ul l-am setat pe modul: **__//''​stopListening''//​__**,​ folosind functia corespunzatoare. In loop() acesta are rolul de a citi datele mentionate mai sus si de a le transmite mai departe prin comanda :
 +<​code>​
 +  radio.write(&​data,​ sizeof(Data_Package));​
 +</​code>​
  
 +In receiver se seteaza la inceput, in functia de setup, pinul pe care functioneaza servo-ul, starea modululi radio: **__//''​startListening''//​__** , dar si pinii prin care sunt controlate cele 2 motoare si vitezele lor.
  
 +In loop se verifica conectivitatea cu celalalt modul radio  **__//''​if (radio.available())''//​__** , iar daca acestea pot comunica, receiverul citeste datele trimise si le stocheaza intr-o structura ca cea mentionata mai sus.
 +<​code>​
 +  radio.read(&​data,​ sizeof(Data_Package));​
 +</​code>​
 +Cu datele obtinte, se modifica prin //​data.dir//​ directia servo motorului, si prin //​data.power//​ viteaza de rotatie a motoarelor. Tot aici sunt pornite motoarele si li se atribuie un sens setand cate un pin pe HIGH si celalalt pe LOW.
  
  
-===== Download ​=====+===== Rezultate obtinute ​=====
  
-<note warning>​ +[[https://youtube.com/​shorts/​CA2O0F1du7U?​feature=share|Link Demo]]
-O arhivă (sau mai multe dacă este cazul) cu fişierele obţinute în urma realizării proiectuluisurse, scheme, etc. Un fişier README, un ChangeLog, un script de compilare şi copiere automată pe uC crează întotdeauna o impresie bună ;-).+
  
-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**.+**Proiectul neamplasat pe macheta:** 
 + 
 +''​Telecomanda:''​ 
 + 
 +{{:pm:prj2022:​sgherman:​telecomanda.jpeg?400|}} 
 + 
 +''​Masina:''​ 
 + 
 +{{:​pm:​prj2022:​sgherman:​masina.jpeg?400|}} 
 + 
 +**Macheta proiect:** 
 + 
 +''​Telecomanda:''​ 
 + 
 +{{:pm:prj2022:sgherman:telecomanda_cutie.jpeg?​400|}} 
 + 
 +''​Masina:''​ 
 + 
 +{{:​pm:​prj2022:​sgherman:​masina_cutie.jpeg?​400|}} 
 + 
 + 
 + 
 +===== Download ===== 
 + 
 +<note tip> 
 +{{:pm:prj2022:sgherman:propeller_car1.zip|Arhiva proiect}}
 </​note>​ </​note>​
 +
  
  
pm/prj2022/sgherman/propeller_car.1653663793.txt.gz · Last modified: 2022/05/27 18:03 by alexandra.cune
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