Platforma ovládaná gyroskopom pre bludisko: 3 kroky
Platforma ovládaná gyroskopom pre bludisko: 3 kroky
Anonim
Platforma ovládaná gyroskopom pre bludisko
Platforma ovládaná gyroskopom pre bludisko

Tento návod bol vytvorený ako splnenie projektovej požiadavky kurzu Make na University of South Florida (www.makecourse.com) “

Tento jednoduchý projekt inšpirovaný samovyvažovacou platformou, ktorá čerpá spätnú väzbu zo senzora akcelerometra. Skúste to, ak ste to ešte neurobili.

Projekt používa Arduino UNO - ľahko použiteľný mikrokontrolér, ktorý môžete získať z webových stránok s online nákupmi! V tomto návode vám ukážem, ako si môžete vytvoriť vlastnú programovateľnú naklápaciu platformu - od procesu návrhu až po získavanie dielov, súbory pre 3D tlač, montáž a programovanie. Držte sa a poďme vpred!

Krok 1: Požadované súčasti a 3D tlačené diely

Požadované súčasti a 3D tlačené diely
Požadované súčasti a 3D tlačené diely
Požadované súčasti a 3D tlačené diely
Požadované súčasti a 3D tlačené diely
Požadované súčasti a 3D tlačené diely
Požadované súčasti a 3D tlačené diely

Zoznam komponentov použitých v projekte:

1. Arduino UNO Mikrokontrolér.

2. Doska s prepojovacími drôtmi.

3. Krabica.

4. Kruhová plošina

5. Maze.

6. Odkazy - 3 čísla nie

7. Základňa pre montáž troch serv.

8. Senzor gyroskopu/akcelerometra. (MPU6050)

Káble 9,1 sq mm (500 cm) - 4 ks

10. Oceľové guličky s priemerom 3 mm.

Väčšina dielov použitých na projekt je vytlačená 3D a priložil som stl. súbory pripravené na tlač.

Zostavte všetky diely podľa obrázkov. Bludisko je za tepla prilepené k kruhovej plošine, aby vyzeralo ako na obrázku. Tri servá by mali byť za tepla nalepené na 3D tlačenú základňu, ktorá je namontovaná na veku krabice. Krabica obsahuje Arduino UNO a Breadboard zostavené podľa obrázku. V nasledujúcom kroku bude prediskutované nastavenie breadboardu.

Po montáži by konečný prototyp mal vyzerať ako na poslednom obrázku.

Krok 2: Nastavenie Breadboard

Nastavenie Breadboard
Nastavenie Breadboard
Nastavenie Breadboard
Nastavenie Breadboard
Nastavenie Breadboard
Nastavenie Breadboard

Po montáži sú servopohony Arduino, senzor akcelerometra a serva zapojené podľa nasledujúceho postupu.

Kladné a záporné koľajnice na doske sú prepojené s 5 V a GND Arduina. Senzor je pripojený k Arduinu pomocou polmetrových vodičov, ktoré sa majú k snímaču spájkovať tak, aby kolíky VCC a GND senzora boli pripojené k kladným a záporným lištám na doske. Piny SCL a SDA senzora sa pripájajú k analógovým kolíkom A5 a A4 Arduina. Piny PWM troch serv sú pripojené k 2, 3, 4 kolíkom Arduina a kolíky +ve a -ve všetkých serv sú pripojené k kladným a záporným lištám dosky. s týmto sú naše spojenia hotové.

Krok 3: Kód pre projekt

knižnice MPU6050 a Servo si môžete stiahnuť z internetu a použiť ich na projekt. Zostavte a nahrajte nasledujúci kód do Arduina a projekt je pripravený. Nakloňte senzor a uvidíte, ako sa bludisko nakláňa rovnakým smerom! Vyriešenie hlavolamu trvá nejaký čas, pretože je to trochu náročné, ale je zábavné ho hrať.

#zahrnúť

#zahrnúť

#zahrnúť

Servo Servo1;

Servo Servo2;

Servo Servo3;

Snímač MPU6050;

int servoPos1 = 90;

int servoPos2 = 90;

int servoPos3 = 90;

int16_t sekera, ay, az;

int16_t gx, gy, gz;

neplatné nastavenie ()

{

Servo1.attach (2);

Servo2.attach (3);

Servo3.attach (4);

Wire.begin ();

Serial.begin (9600);

}

prázdna slučka ()

{

sensor.getMotion6 (& ax, & ay, & az, & gx, & gy, & gz);

sekera = mapa (sekera, -17000, 17000, 0, 180);

ay = mapa (ay, -17000, 17000, 0, 180);

Serial.print ("ax =");

Sériový.tlač (sekera);

Serial.print ("ay =");

Serial.println (ay);

if (sekera <80 && ay <80) {

Servo1.write (servoPos1 ++);

Servo2.write (servoPos2--);

Servo3.write (servoPos3--); }

ak (sekera 120) {

Servo1.write (servoPos1--);

Servo2.write (servoPos2 ++);

Servo3.write (servoPos3--); }

ak (sekera> 120 && ay> 0) {

Servo1.write (servoPos1--);

Servo2.write (servoPos2--);

Servo3.write (servoPos3 ++); }

if (ax == 90 && ay == 90) {

Servo1.write (0);

Servo2.write (0);

Servo3.write (0);

}

}