Tartalomjegyzék:
Videó: TA-ZON-BOT (vonalkövető): 3 lépés (képekkel)
2024 Szerző: John Day | [email protected]. Utoljára módosítva: 2024-01-30 09:43
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 expressz, hogy részt vegyen az OSHWDEN de A Coruña -ban.
oshwdem.org/2017/06/oshwdem-2017/
traductor google
TA-ZON-BOT
A tál követi a vonalat
Ezt a robotot követtük tanítványaink segítségével (köszönet a minimakészítőknek).
Expressz projekt volt az A Coruña OSHWDEN -en való részvétel.
oshwdem.org/2017/06/oshwdem-2017/
Google Fordító
1. lépés: 1. lépés: Komponensek
Los komponentes 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 motoros a las siguientes especificaciones -ben:
Specifikáció (6V. Bekezdés):
Méretek: 26 x 10 x 12 mm
A reduktor aránya: 30: 1
Átmérő: 3 mm (con ranura de bloqueo)
Névleges feszültség: 6Vcc (puede funcionar entre 3 a 9Vcc)
Gyors sebesség: 1000 fordulat / perc
Áramfogyasztás: 120 mA (1600 mA)
Nyomaték: 0,6 kg/cm (max.)
Peso: 10 gramm
Enlee de tienda online:
1 tér Arduino UNO (reciclada de un proyecto antiguo)
1 shield para motores Adafruit v2.3:
1 Un porta 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 tömb QTR-8RC, amely a karakterisztikákat tartalmazza;
A QTR-8x reflexiós érzékelő tömb műszaki adatai • Méretek: 2,95 "x 0,5" • A QTR-8RC kimeneti formátuma: 8 digitális I/O-kompatibilis jel, amelyek időzített magas impulzusként olvashatók. • Optimális érzékelési távolság: 3 mm (0,125 ") • A QTR-8A maximális ajánlott érzékelési távolsága: 0,25" (6 mm) • A QTR-8RC maximális ajánlott érzékelési távolsága: 9,5 mm (0,375 hüvelyk) • Súly fejléc nélkül: 3,1 g
tienda.bricogeek.com/componentes/257-array-…
Ensamblar todo… próximamente un vídeo more detallado…
Az általunk használt összetevők a következők voltak.
Kerek metakrilátdarab. (Bármilyen kialakítást használhat, alapunk éppen annyi, hogy a tálat fejjel lefelé helyezzük).
1 Reggeli tál (a robotnak a vonalra való koncentrálására szolgál).
2 kerék újrahasznosított játék.
2 motor az alábbi specifikációkkal:
Műszaki adatok (6 V esetén): Méretek: 26 x 10 x 12 mm A reduktor aránya: 30: 1 Tengelyátmérő: 3 mm (reteszelő horonnyal) Névleges feszültség: 6 V DC (3 és 9 V DC között működhet) Fordulatszám terhelés nélkül: 1000 rpm terhelés nélkül: 120mA (1600mA terheléssel) Nyomaték: 0,6kg / cm (max) Súly: 10 gramm
Az online áruház linkje:
1 Arduino UNO tábla (régi projektből újrahasznosítva)
1 pajzs az Adafruit v2.3 motorokhoz:
1 Egy elemtartó 8 AAA elemmel (nem használunk 2 tápegységet).
6 csavar és anya a képen látható elemek összekapcsolásához
karimák a motorokhoz, rugalmas gumi az elemtartó tartásához, és egy darab műanyag lap az elemtartó aljához.
1 tömb QTR-8RC érzékelő a következő jellemzőkkel;
A QTR-8x reflexiós érzékelő tömb specifikációi • Méretek: 2,95 "x 0,5" • A QTR-8RC kimeneti formátuma: 8 digitális I / O-kompatibilis jel, amelyek időzített magas impulzusként olvashatók. • Optimális érzékelési távolság: 3 mm (0,125 ") • A QTR-8A maximális ajánlott érzékelési távolsága: 0,25" (6 mm) • A QTR-8RC maximális ajánlott érzékelési távolsága: 9,5 mm (0,375 hüvelyk) • Súly fejléc nélkül: 3,1 g
tienda.bricogeek.com/componentes/257-array-de-sensores-infrarojos-qtr-8rc-digital.html
Gyűjts össze mindent… hamarosan részletesebb videó…
2. lépés: 2. lépés: Inspiráció
Para probar el funcionamiento del los
motores hemos seguido esta ayuda del blog www.programarfacil.com
programarfacil.com/blog/arduino-blog/adafr…
Es un resumen muy bueno de los diferentes motores que controla esta shield.
A QTR-8RC kalibráló szenzor és az oktatóanyag keveréke
Y un ultimo enlace que os puede ayudar es este instructable;
www.instructables.com/id/Arduino-based-lin…
A motorok teljesítményének teszteléséhez követtük ezt a blogtámogatást: www.programarfacil.com
programarfacil.com/blog/arduino-blog/adafruit-motor-shield-arduino/
Nagyon jó összefoglaló a különböző motorokról, amelyeket ez a pajzs irányít.
A QTR-8RC érzékelő kalibrálásához kövesse az oktatóanyagot
www.youtube.com/watch?v=_ZeybIDd80s&list=PLlNY7ygeCIzCuq0jSjPD8_LfcAsPKUcGL&index=6
És egy utolsó link, amely segíthet, ez az oktatható;
www.instructables.com/id/Arduino-based-line-follower-using-Pololu-QTR-8RC-l/
3. lépés: 3. lépés: Kód
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 al 8
número 2 al 9
número 3 al 2
número 4 al pin 3
número 5 al 4
número 6 al 5
número 7 al 6
número 8 al 7
El código va sin repasarlo (se aceptan sugerencias)
#befoglalni
#befoglalni
#befoglalni
#befoglalni
// Hozza létre a motorpajzs objektumot az alapértelmezett I2C címmel
Adafruit_MotorShield AFMS = Adafruit_MotorShield ();
// Vagy hozza létre egy másik I2C -címmel (mondjuk halmozáshoz)
// Adafruit_MotorShield AFMS = Adafruit_MotorShield (0x61);
// Válassza ki az M1, M2, M3 vagy M4 portot. Ebben az esetben az M1
Adafruit_DCMotor *motor1 = AFMS.getMotor (1);
// Más motort is készíthet az M2 porton
Adafruit_DCMotor *motor2 = AFMS.getMotor (2);
// Módosítsa az alábbi értékeket, hogy megfeleljen a robot motorjainak, súlyának, keréktípusának stb.
#define KP.2
#define 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 // a felhasznált érzékelők száma
#define TIMEOUT 2500 // 2500 -ra vár, amíg az érzékelő kimenete alacsony lesz
#define EMITTER_PIN 12 // az adót a 2. digitális érintkező vezérli
#define DEBUG 0 // 1 -re állítva, ha soros hibakeresési kimenetre van szükség
QTRSensorsRC qtrrc ((unsigned char ) {8, 9, 2, 3, 4, 5, 6, 7}, NUM_SENSORS, TIMEOUT, EMITTER_PIN);
unsigned int sensorValues [NUM_SENSORS];
üres beállítás ()
{
késleltetés (1000);
manuális_kalibrálás ();
set_motors (0, 0);
}
int lastError = 0;
int utolsó_arányos = 0;
int integrál = 0;
üres hurok ()
{
Sorozat.kezdet (9600); // a soros könyvtár beállítása 9600 bps sebességgel
Serial.println ("Adafruit Motorshield v2 - DC motor teszt!");
AFMS.begin (); // létrehozás az 1.6KHz alapértelmezett frekvenciával
//AFMS.begin(1000); // VAGY más frekvenciával, mondjuk 1KHz
// Állítsa be az indítási sebességet 0 -tól (kikapcsolt) 255 -ig (maximális sebesség)
motor1-> setSpeed (70);
motor1-> fut (ELŐRE);
// kapcsolja be a motort
motor1-> fut (RELEASE);
motor2-> setSpeed (70);
motor2-> futás (ELŐRE);
// kapcsolja be a motort
motor2-> fut (RELEASE);
előjel nélküli int érzékelők [5];
int pozíció = qtrrc.readLine (érzékelők);
int hiba = pozíció - 2000;
int motorSpeed = KP * hiba + KD * (hiba - utolsóError);
lastError = hiba;
int leftMotorSpeed = M1_DEFAULT_SPEED + motorSpeed;
int rightMotorSpeed = M2_DEFAULT_SPEED - motorSpeed;
// állítsa be a motor fordulatszámát a fenti két motorfordulatszám -változó használatával
set_motors (leftMotorSpeed, rightMotorSpeed);
}
void set_motors (int motor1speed, int motor2speed)
{
if (motor1speed> M1_MAX_SPEED) motor1speed = M1_MAX_SPEED; // korlátozza a végsebességet
if (motor2speed> M2_MAX_SPEED) motor2speed = M2_MAX_SPEED; // korlátozza a végsebességet
if (motor1sebesség <0) motor1sebesség = 0; // tartsa a motort 0 felett
if (motor2sebesség <0) motor2sebesség = 0; // tartsa a motor fordulatszámát 0 felett
motor1-> setSpeed (motor1sebesség); // a motor fordulatszámának beállítása
motor2-> setSpeed (motor2speed); // a motor fordulatszámának beállítása
motor1-> futás (ELŐRE);
motor2-> futás (ELŐRE);
}
void manual_calibration () {
int i;
(i = 0; i <250; i ++) // esetén a kalibrálás néhány másodpercet vesz igénybe
{
qtrrc.calibrate (QTR_EMITTERS_ON);
késleltetés (20);
}
if (DEBUG) {// ha igaz, generáljon érzékelőadatokat soros kimeneten keresztül
Sorozat.kezdet (9600);
(int i = 0; i <NUM_SENSORS; i ++)
{
Serial.print (qtrrc.kalibráltMinimumOn );
Serial.print ('');
}
Sorozat.println ();
(int i = 0; i <NUM_SENSORS; i ++)
{
Serial.print (qtrrc.calibratedMaximumOn );
Serial.print ('');
}
Sorozat.println ();
Sorozat.println ();
}
}
Bueno a ver que tal se nos da este proyecto „express” en la Competición del OSHWDEM.
Ajánlott:
Haladó vonalkövető robot: 22 lépés (képekkel)
Haladó vonalkövető robot: Ez egy fejlett vonalkövető robot, amely a Teensy 3.6 és a QTRX vonalérzékelőre épül, és amelyeket én építettem, és amelyeken már régóta dolgozom. A korábbi vonalkövető robotom tervezésében és teljesítményében jelentős javulás tapasztalható. T
Vonalkövető robot PICO -val: 5 lépés (képekkel)
Vonalkövető robot PICO -val: Mielőtt képes lenne létrehozni egy robotot, amely véget vethet a civilizációnak, ahogy mi ismerjük, és képes véget vetni az emberi fajnak. Először képesnek kell lennie létrehozni az egyszerű robotokat, azokat, amelyek követhetik a földön meghúzott vonalat, és itt találja meg
Hogyan készítsük el a világ legkisebb vonalkövető robotját (robo Rizeh): 7 lépés (képekkel)
Hogyan készítsük el a világ legkisebb vonalkövető robotját (robo Rizeh): Hogyan készítsük el a világ legkisebb vonalkövető robotját (vibrobot) " roboRizeh " súly: 5gr méret: 19x16x10 mm írta: Naghi Sotoudeh A " Rizeh " egy perzsa szó, jelentése "apró". A Rizeh egy vibráción alapuló nagyon kicsi ro
Vonalkövető robot: 11 lépés (képekkel)
Vonalkövető robot: Vonalkövető robotot készítettem PIC16F84A mikroprocesszorral, 4 infravörös érzékelővel felszerelve. Ez a robot futhat a fekete -fehér vonalakon
Vonalkövető robot: 7 lépés (képekkel)
Vonalkövető robot: ez a robot fekete felületet követ fehér felületen