Sisällysluettelo:
Video: TA-ZON-BOT (linjan seuraaja): 3 vaihetta (kuvilla)
2024 Kirjoittaja: John Day | [email protected]. Viimeksi muokattu: 2024-01-30 09:03
TA-ZON-BOT
El tazón siguelineas
Hemos realizado este robot siguelineas con la ayuda de los nuestros alumnos, (gracias minimakers).
Ha sido un proyecto express on poder osallistuja OSHWDEN de A Coruñassa.
oshwdem.org/2017/06/oshwdem-2017/
traductor google
TA-ZON-BOT
Kulho seuraa linjaa
Olemme tehneet tämän robotin seuraamaan sinua oppilaidemme avulla (kiitos pienvalmistajille).
Osallistuminen A Coruñan OSHWDENiin on ollut nimenomainen projekti.
oshwdem.org/2017/06/oshwdem-2017/
Google kääntäjä
Vaihe 1: Vaihe 1: Komponentit
Los komponentit que hemos utilizados
han sido los siguientes.
Una pieza redonda de metacrilato. (Podéis utilizar cualquier diseño, nuestra base mide lo justo para colocar el tazón bocabajo).
1 Tazón de desayuno (que sirve para koncentrar al robot en la linea).
2 ruedas de un juguete reciclado.
2 moottoripyörää erityislaskennassa:
Erittelyt (6V kohta):
Mitat: 26 x 10 x 12 mm
Vähennyssuhde: 30: 1
Halkaisija: 3 mm (con ranura de bloqueo)
Nimellinen jännite: 6Vcc (puede funcionar entre 3 a 9Vcc)
Velocidad de giro sin carga: 1000 rpm
Virrankulutus: 120 mA (1600 mA)
Vääntö: 0,6 kg/cm (enintään)
Peso: 10 grammaa
Liitä tienna verkossa:
1 paikka Arduino UNO (reciclada de un proyecto antiguo)
1 shield para motores Adafruit v2.3:
1 Unporta pilas de 8 pilas AAA (no utilizamos 2 fuentes de alimentación).
6 tornillos y tuercas para unir los elementos como se ve en la imagen
bridas para los motores, una goma elástica para sujetar el porta pilas y un trozo de una lamina de plásticos para la base del porta pilas.
1 joukko sensores QTR-8RC con las siguientes características;
QTR-8x-heijastustunnistinjärjestelmän tekniset tiedot • Mitat: 2,95 "x 0,5" • QTR-8RC: n esitysmuoto: 8 digitaalista I/O-yhteensopivaa signaalia, jotka voidaan lukea ajastettuna korkeana pulssina • Optimaalinen tunnistusetäisyys: 3 mm (0,125 ") • Suurin suositeltu tunnistusetäisyys QTR-8A: lle: 0,25" (6 mm) • Suurin suositeltu tunnistusetäisyys QTR-8RC: lle: 9,5 mm (0,375 tuumaa) • Paino ilman nastatappeja: 3,1 g (0,11 oz) Lo podéis encontrar en:
tienda.bricogeek.com/componentes/257-array-…
Ensamblar todo… próximamente un vídeo other detallado…
Käytetyt komponentit ovat olleet seuraavat.
Pyöreä pala metakrylaattia. (Voit käyttää mitä tahansa mallia, meidän pohja mittaa juuri sen verran, että laittaa kulhon ylösalaisin).
1 Aamiaishuone (käytetään robotin keskittämiseen siimalle).
2 pyörää kierrätettyä lelua.
2 moottoria, joilla on seuraavat tiedot:
Tekniset tiedot (6 V: lle): Mitat: 26 x 10 x 12 mm Vähennyslaitteen suhde: 30: 1 Akselin halkaisija: 3 mm (lukitusuran kanssa) Nimellisjännite: 6 V DC (voi toimia 3 - 9 V DC: n välillä) ilman kuormaa: 120 mA (1600 mA kuormitettuna) Vääntö: 0,6 kg / cm (enintään) Paino: 10 grammaa
Linkki verkkokauppaan:
1 Arduino UNO -levy (kierrätetty vanhasta projektista)
1 kilpi Adafruit v2.3 -moottoreille:
1 Paristopidike, jossa on 8 AAA -paristoa (emme käytä kahta virtalähdettä).
6 ruuvia ja mutteria elementtien liittämiseksi kuvan mukaisesti
moottorin laipat, elastinen kumi akun pidikkeen pitämiseksi ja muovilevy paristopidikkeen pohjalle.
1 sarja QTR-8RC-antureita, joilla on seuraavat ominaisuudet;
QTR-8x-heijastustunnistinjärjestelmän tekniset tiedot • Mitat: 2,95 "x 0,5" • QTR-8RC: n esitysmuoto: 8 digitaalista I / O-yhteensopivaa signaalia, jotka voidaan lukea ajastettuna korkeana pulssina • Optimaalinen tunnistusetäisyys: 3 mm (0,125 ") • Suurin suositeltu tunnistusetäisyys QTR-8A: lle: 0,25" (6 mm) • Suurin suositeltu tunnistusetäisyys QTR-8RC: lle: 9,5 mm (0,375 tuumaa) • Paino ilman nastatappeja: 3,1 g (0,11 oz) Löydät sen osoitteesta:
tienda.bricogeek.com/componentes/257-array-de-sensores-infrarojos-qtr-8rc-digital.html
Kokoa kaikki… pian yksityiskohtaisempi video…
Vaihe 2: Vaihe 2: Inspiraatio
Para probar el funcionamiento del los
motores hemos seguido esta ayuda del blogi www.programarfacil.com
programarfacil.com/blog/arduino-blog/adafr…
Es unumente muy bueno de los diferentes motores que controla esta shield.
Kalibraattorianturi QTR-8RC, jossa on opetusohjelma
Y un ultimo enlace que os puede ayudar es este instructable;
www.instructables.com/id/Arduino-based-lin…
Voit testata moottorien suorituskykyä seuraamalla tätä blogitukea www.programarfacil.com
programarfacil.com/blog/arduino-blog/adafruit-motor-shield-arduino/
Se on erittäin hyvä yhteenveto eri moottoreista, joita tämä kilpi ohjaa.
Voit kalibroida QTR-8RC-anturin noudattamalla opetusohjelmaa
www.youtube.com/watch?v=_ZeybIDd80s&list=PLlNY7ygeCIzCuq0jSjPD8_LfcAsPKUcGL&index=6
Ja viimeinen linkki, joka voi auttaa sinua, on tämä opettavainen;
www.instructables.com/id/Arduino-based-line-follower-using-Pololu-QTR-8RC-l/
Vaihe 3: Vaihe 3: Koodi
las conexiones entre el array de
sensores y las placas las hicimos de la siguiente manera:
El Led ON va al pin digital 12
Los 8 sensores van desde el
número 1 nasta 8
número 2 nasta 9
número 3 nasta 2
número 4 nasta 3
número 5 nasta 4
número 6 nasta 5
número 7 tai nasta 6
número 8 tai nasta 7
El código va sin repasarlo (se aceptan sugerencias)
#sisältää
#sisältää
#sisältää
#sisältää
// Luo moottorin suojaobjekti, jolla on oletus I2C -osoite
Adafruit_MotorShield AFMS = Adafruit_MotorShield ();
// Tai luo se toisella I2C -osoitteella (esimerkiksi pinoamiseen)
// Adafruit_MotorShield AFMS = Adafruit_MotorShield (0x61);
// Valitse portti M1, M2, M3 tai M4. Tässä tapauksessa M1
Adafruit_DCMotor *moottori1 = AFMS.getMotor (1);
// Voit myös tehdä toisen moottorin porttiin M2
Adafruit_DCMotor *moottori2 = AFMS.getMotor (2);
// Muuta alla olevia arvoja robotin moottoreiden, painon, pyörätyypin jne. Mukaan.
#määrittele KP.2
#määrittele KD 5
#define M1_DEFAULT_SPEED 50
#define M2_DEFAULT_SPEED 50
#define M1_MAX_SPEED 70
#define M2_MAX_SPEED 70
#define MIDDLE_SENSOR 4
#define NUM_SENSORS 8 // käytettyjen antureiden määrä
#define TIMEOUT 2500 // odottaa 2500 meitä, kunnes anturilähdöt laskevat
#define EMITTER_PIN 12 // lähetintä ohjaa digitaalinen nasta 2
#define DEBUG 0 // asetetaan arvoon 1, jos tarvitaan sarjamuotoinen virheenkorjaus
QTRSensorsRC qtrrc ((unsigned char ) {8, 9, 2, 3, 4, 5, 6, 7}, NUM_SENSORS, TIMEOUT, EMITTER_PIN);
unsigned int sensorValues [NUM_SENSORS];
mitätön asennus ()
{
viive (1000);
manuaalinen_kalibrointi ();
set_motors (0, 0);
}
int lastError = 0;
int viimeinen_suhde = 0;
int integraali = 0;
tyhjä silmukka ()
{
Sarja.alku (9600); // määritä sarjakirjasto nopeudella 9600 bps
Serial.println ("Adafruit Motorshield v2 - DC -moottoritesti!");
AFMS.begin (); // luo oletustaajuudella 1,6 KHz
//AFMS.begin(1000); // TAI eri taajuudella, esimerkiksi 1KHz
// Aseta käynnistysnopeus 0 (pois päältä) - 255 (maksiminopeus)
moottori1-> setSpeed (70);
moottori1-> käy (ETEENPÄIN);
// käynnistä moottori
motor1-> run (RELEASE);
moottori2-> setSpeed (70);
moottori2-> käy (ETEENPÄIN);
// käynnistä moottori
motor2-> run (RELEASE);
allekirjoittamattomat int -anturit [5];
int -asema = qtrrc.readLine (anturit);
int virhe = sijainti - 2000;
int motorSpeed = KP * virhe + KD * (virhe - viimeinen virhe);
lastError = virhe;
int leftMotorSpeed = M1_DEFAULT_SPEED + motorSpeed;
int rightMotorSpeed = M2_DEFAULT_SPEED - motorSpeed;
// aseta moottorin nopeudet yllä olevien kahden moottorin nopeusmuuttujan avulla
set_motors (leftMotorSpeed, rightMotorSpeed);
}
void set_motors (int motor1speed, int motor2speed)
{
if (moottorin1 nopeus> M1_MAX_SPEED) moottorin1 nopeus = M1_MAX_SPEED; // rajoittaa huippunopeutta
if (moottorin2 nopeus> M2_MAX_SPEED) moottorin2 nopeus = M2_MAX_SPEED; // rajoittaa huippunopeutta
jos (moottorin1 nopeus <0) moottorin1 nopeus = 0; // pidä moottori yli 0
jos (moottorin2 nopeus <0) moottorin2 nopeus = 0; // pitää moottorin nopeus yli 0
moottori1-> setSpeed (moottori1nopeus); // aseta moottorin nopeus
moottori2-> setSpeed (moottori2nopeus); // aseta moottorin nopeus
moottori1-> käy (ETEENPÄIN);
moottori2-> käy (ETEENPÄIN);
}
void manual_calibration () {
int i;
(i = 0; i <250; i ++) // kalibrointi kestää muutaman sekunnin
{
qtrrc.kalibroi (QTR_EMITTERS_ON);
viive (20);
}
if (DEBUG) {// jos tosi, luo anturitiedot sarjaliitännän kautta
Sarja.alku (9600);
(int i = 0; i <NUM_SENSORS; i ++)
{
Serial.print (qtrrc.calibratedMinimumOn );
Serial.print ('');
}
Sarja.println ();
(int i = 0; i <NUM_SENSORS; i ++)
{
Serial.print (qtrrc.calibratedMaximumOn );
Serial.print ('');
}
Sarja.println ();
Sarja.println ();
}
}
Bueno a ver que tal se nos da este proyecto “express” en la kilpailua OSHWDEM.
Suositeltava:
Linjan seuraaja Tinkercadissa: 3 vaihetta
Linjan seuraaja Tinkercadissa: A-linjan seuraajarobotti, kuten nimestä voi päätellä, on automatisoitu ohjattava ajoneuvo, joka seuraa visuaalista linjaa, joka on upotettu lattiaan tai kattoon. Yleensä visuaalinen viiva on polku, jolla linjanseurantarobotti kulkee, ja se on musta viiva
PID -linjan seuraaja Atmega328P: 4 vaihetta
PID-linjan seuraaja Atmega328P: JOHDANTO Tämä ohje on tehokkaan ja luotettavan linjaseurannan tekeminen PID (suhteellinen-integraali-johdannainen) -ohjauksella (matemaattinen) aivoissa (Atmega328P). Linjan seuraaja on itsenäinen robotti, joka seuraa joko b
Yksinkertainen linjan seuraaja Arduinon avulla: 5 vaihetta
Yksinkertainen linjanseuraaja Arduinon avulla: Arduino -linjan seuraajarobotti Tässä opetusohjelmassa keskustelemme Arduino -linjan seuraavan robotin toiminnasta, joka seuraa mustaa viivaa valkoisella taustalla ja ottaa oikean käännöksen aina, kun se saavuttaa tiensä käyrät. Arduino Linen seuraajayhteisö
Osa 3: GPIO: ARM-kokoonpano: Linjan seuraaja: TI-RSLK: 6 vaihetta
Osa 3: GPIO: ARM-kokoonpano: Linjan seuraaja: TI-RSLK: Hei. Tämä on seuraava erä, jossa käytämme edelleen ARM-kokoonpanoa (korkeamman tason kielen sijasta). Tämän Instructablein inspiraationa on Texas Instruments Robotics System Learning Kit -laboratorion laboratorio 6 tai TI-RSLK. Käytämme mikrofonia
GoPiGo3 -linjan seuraaja: 8 vaihetta
GoPiGo3 -linjan seuraaja: Tässä opetusohjelmassa otamme linjan seuraajan ja käytämme sitä GoPiGo3: ssa, jotta se seuraa mustaa viivaa