Differences

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

Link to this comparison view

pm:prj2023:alexau:remote-car [2023/05/26 22:21]
mihai_teodor.piele
pm:prj2023:alexau:remote-car [2023/05/30 17:53] (current)
mihai_teodor.piele [Rezultate Obţinute]
Line 40: Line 40:
   * algoritmi şi structuri pe care plănuiţi să le implementaţi   * algoritmi şi structuri pe care plănuiţi să le implementaţi
   * (etapa 3) surse şi funcţii implementate   * (etapa 3) surse şi funcţii implementate
 +
 +
 +  * Codul care animeaza proiectul a fost scris in Arduino IDE.
 +  * Pentru controlarea barcii se foloseste o telecomanda cu IR.
 +  * Proiectul este compatibil si cu HC-05 Bluetooth (asa trebuia facut initial, dar mi   s-a ars modulul Bluetooth).
 +
 +----
 +
 +Biblioteci folosite:
 +  * Arduino.h ​ -> folosit pentru a importa functionalitatile de baza ale Arduino-ului.
 +  * Servo.h ​   -> folosit pentru a actiona servo motorul.
 +  * IRremote.h -> folosit pentru a interactiona cu modulul IR si a capta datele primite.
 +
 +
 +
 +----
 +
 +Cod:
 +
 +<code cpp>#​include <​Arduino.h>​
 +#include <​IRremote.h>​
 +#include <​Servo.h>​
 +
 +IRrecv IR(3);
 +Servo myservo;
 +// pinii motoarelor
 +int moto1 = 4;
 +int moto2 = 5;
 +int moto11 = 6;
 +int moto22 = 7;
 +// pinul pentru becuri
 +int bec = 13;
 +// pozitia initiala a carmei, pt a merge stanga/​dreapta
 +int pos = 90;
 +
 +void setup() {
 +  IR.enableIRIn();​
 +  // pentru a controla componentele setez pinii placutei ca output
 +  pinMode(bec,​ OUTPUT);
 +  pinMode(moto1,​ OUTPUT);
 +  pinMode(moto2,​ OUTPUT);
 +  pinMode(moto11,​ OUTPUT);
 +  pinMode(moto22,​ OUTPUT);
 +  myservo.attach(9);​
 +  Serial.begin(9600); ​
 +}
 +
 +void loop() { 
 +  if(IR.decode()) ​
 +  { // citesc informatia de la modul IR si in functie de comanda, fac o actiune
 +    Serial.println(IR.decodedIRData.decodedRawData,​HEX);​
 +    if(IR.decodedIRData.decodedRawData == 0xEA15FF00) ​
 +    { // aprind bec
 +      digitalWrite(bec,​ HIGH);
 +    }
 +
 +    if(IR.decodedIRData.decodedRawData == 0xF807FF00) ​
 +    { // sting bec
 +      digitalWrite(bec,​ LOW);
 +    }
 +
 +    if(IR.decodedIRData.decodedRawData == 0xE718FF00) ​
 +    { // merg fata
 +      digitalWrite(moto1,​ HIGH);
 +      digitalWrite(moto2,​ LOW);
 +      digitalWrite(moto11,​ LOW);
 +      digitalWrite(moto22,​ HIGH);
 +    }
 +
 +    if(IR.decodedIRData.decodedRawData == 0xAD52FF00) ​
 +    { //merg spate
 +      digitalWrite(moto1,​ LOW);
 +      digitalWrite(moto2,​ HIGH);
 +      digitalWrite(moto11,​ HIGH);
 +      digitalWrite(moto22,​ LOW);
 +    }
 +
 +    if(IR.decodedIRData.decodedRawData == 0xE31CFF00) ​
 +    { //opresc tot
 +      digitalWrite(moto1,​ LOW);
 +      digitalWrite(moto2,​ LOW);
 +      digitalWrite(moto11,​ LOW);
 +      digitalWrite(moto22,​ LOW);
 +      //readuc carma la pozitia de inainte
 +      myservo.write(90);​
 +    }
 +
 +    if(IR.decodedIRData.decodedRawData == 0xF708FF00)
 +    { // cotesc stanga
 +      myservo.write(25);​
 +    }
 +
 +    if(IR.decodedIRData.decodedRawData == 0xA55AFF00) ​
 +    { // cotesc dreapta
 +      myservo.write(145);​
 +    }
 +    //delay la citirea comenzilor de la IR
 +    delay(1500);​
 +    IR.resume();​
 +  }
 +}
 +</​code>​
 +
 +
 </​note>​ </​note>​
  
Line 45: Line 149:
  
 <note tip> <note tip>
-Care au fost rezultatele obţinute în urma realizării proiectului vostru.+ 
 + 
 + 
 +Demo: 
 +  * https://​imgur.com/​b8VoxXf 
 + 
 +{{:​pm:​prj2023:​alexau:​b1.jpeg?​nolink&​300|}} 
 +{{:​pm:​prj2023:​alexau:​b2.jpeg?​nolink&​300|}} 
 +{{:​pm:​prj2023:​alexau:​b3.jpeg?​nolink&​300|}} 
 + 
 </​note>​ </​note>​
  
pm/prj2023/alexau/remote-car.1685128910.txt.gz · Last modified: 2023/05/26 22:21 by mihai_teodor.piele
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