Table of Contents

Mașină controlată prin mișcările mâinii

Nume: Popa Sorin-Alexandru

Grupă: 333CC

Introducere

Descriere generală

Hardware Design

Listă de piese

Schema electrică receptor

Schema electrică emiţător

Comunicarea giroscopului cu Arduino Nano se face prin intermediul comunicării I2C, prin urmare am conectat SCL si SDA pe pinii specifici:

Comunicarea intre modulele wireless se face cu ajutorul SPI-ului, am conectat pinii MOSI, MISO si SCK la pinii specifici de pe Arduino:

Software Design

Librării folosite:

Iniţializare structuri si variabile necesare pentru MPU6050:

 // MPU control/status vars
 MPU6050 mpu;
 bool dmpReady = false;  // set true if DMP init was successful
 uint8_t devStatus;      // return status after each device operation (0 = success, !0 = error)
 uint16_t packetSize;    // expected DMP packet size (default is 42 bytes)
 uint8_t fifoBuffer[64]; // FIFO storage buffer
 Quaternion q;           // [w, x, y, z]         quaternion container
 VectorFloat gravity;    // [x, y, z]            gravity vector
 float ypr[3];           // [yaw, pitch, roll]   yaw/pitch/roll container and gravity vector

Setare adresă de comunicaţie si pinii CE si CSN pentru modulul wireless:

const uint64_t pipeOut = 0xF9E8F0F0E1LL;
RF24 radio(8, 9);

Pachetul trimis intre modulele wireless:

 struct PacketData
 {
  byte xAxisValue;
  byte yAxisValue;
  } data;

Extrag x-ul si y-ul folosind funcţii specifici MPU-ului, apoi le trimit catre receptor:

 radio.write(&data, sizeof(PacketData));

Receptorul preia datele trimise:

 radio.read(&receiverData, sizeof(PacketData)); 

Funcţia rotateMotor controlează direcţia motoarelor de pe partea stangă si dreaptă, iar apoi setează folosind PWM viteza acestora.

Rezultate Obţinute

Imagini

Inainte de lipire (emiţător):

După lipire (emiţător):

Final:

Concluzii

În cadrul proiectului, am învățat să lipesc componente și să creez și să folosesc scheme electrice. De asemenea, am realizat importanța unor baterii potrivite pentru a putea alimenta circuitele. Bateriile de 9V, 600 mAh aveau o capacitate prea mică pentru a putea folosi in mod normal motoarele DC, le-am schimbat cu baterii de 5000 mAh, 7.4V (2 de 3.7V in serie).

Download

arhiva.zip

Jurnal

Bibliografie/Resurse