Indholdsfortegnelse:
Video: TA-ZON-BOT (Line Follower): 3 trin (med billeder)
2024 Forfatter: John Day | [email protected]. Sidst ændret: 2024-01-30 08:30
TA-ZON-BOT
El tazón siguelineas
Hemos realizado este robot siguelineas con la ayuda de los nuestros alumnos, (gracias minimakers).
Jeg kan ikke bruge ekspres til at deltage i poder i OSHWDEN de A Coruña.
oshwdem.org/2017/06/oshwdem-2017/
traductor google
TA-ZON-BOT
Skålen følger linje
Vi har fået denne robot til at følge dig ved hjælp af vores studerende, (tak minimakers).
Det har været et ekspresprojekt at deltage i OSHWDEN i A Coruña.
oshwdem.org/2017/06/oshwdem-2017/
Google oversætter
Trin 1: Trin 1: Komponenter
Los componentes 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 concentrar al robot en la linea).
2 ruedas de un juguete reciclado.
2 motorer med følgende egenskaber:
Specificaciones (punkt 6V):
Dimensioner: 26 x 10 x 12 mm
Ratio de la reductora: 30: 1
Dimension: 3 mm (con ranura de bloqueo)
Voltaje nominel: 6Vcc (puede funcionar entre 3 a 9Vcc)
Velocidad de giro sin carga: 1000 omdr./min
Consumo sin carga: 120mA (1600mA con carga)
Moment: 0,6 kg/cm (maks.)
Peso: 10 gram
Læg de tienda online:
1 placa Arduino UNO (reciclada de un proyecto antiguo)
1 skjold til motorer 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 array de sensores QTR-8RC con las siguientes características;
Specifikationer for QTR-8x refleksionssensormatrix • Dimensioner: 2,95 "x 0,5" • Driftsspænding: 3,3-5,0 V • Forsyningsstrøm: 100 mA • Outputformat for QTR-8A: 8 analoge spændinger, der spænder fra 0 V til leveret spænding • Outputformat til QTR-8RC: 8 digitale I/O-kompatible signaler, der kan læses som en timet høj puls • Optimal registreringsafstand: 0,125 "(3 mm) • Maksimal anbefalet registreringsafstand for QTR-8A: 0,25" (6 mm) • Maksimal anbefalet registreringsafstand for QTR-8RC: 0,375 "(9,5 mm) • Vægt uden hovedstifter: 3,11 g (0,11 oz) Lo podéis encontrar en:
tienda.bricogeek.com/componentes/257-array-…
Ensamblar todo… próximamente un vídeo más detallado…
De komponenter, vi har brugt, har været følgende.
Et rundt stykke methacrylat. (Du kan bruge ethvert design, vores base måler lige nok til at placere skålen på hovedet).
1 Morgenmadskål (bruges til at koncentrere robotten om linjen).
2 hjul af genbrugslegetøj.
2 motorer med følgende specifikationer:
Specifikationer (til 6V): Dimensioner: 26 x 10 x 12 mm Reduktionsforhold: 30: 1 Akseldiameter: 3 mm (med låsespor) Nominel spænding: 6Vdc (kan fungere mellem 3 til 9Vdc) Drejehastighed uden belastning: 1000rpm Forbrug uden belastning: 120mA (1600mA med belastning) Moment: 0,6kg / cm (maks.) Vægt: 10 gram
Link til online butik:
1 Arduino UNO board (genanvendt fra et gammelt projekt)
1 skjold til Adafruit v2.3 -motorer:
1 En batteriholder med 8 AAA batterier (vi bruger ikke 2 strømforsyninger).
6 skruer og møtrikker til at forbinde elementerne som vist på billedet
flanger til motorerne, en elastisk gummi til at rumme batteriholderen og et stykke plastik til bunden af batteriholderen.
1 array af QTR-8RC sensorer med følgende egenskaber;
Specifikationer for QTR-8x refleksionssensormatrix • Dimensioner: 2,95 "x 0,5" • Driftsspænding: 3,3-5,0 V • Forsyningsstrøm: 100 mA • Outputformat for QTR-8A: 8 analoge spændinger, der spænder fra 0 V til leveret spænding • Outputformat for QTR-8RC: 8 digitale I / O-kompatible signaler, der kan aflæses som en timet høj puls • Optimal registreringsafstand: 3 mm (0,125 ") • Maksimal anbefalet registreringsafstand for QTR-8A: 0,25" (6 mm) • Maksimal anbefalet registreringsafstand for QTR-8RC: 0,375 "(9,5 mm) • Vægt uden hovedstifter: 0,11 oz (3,1 g) Du kan finde den i:
tienda.bricogeek.com/componentes/257-array-de-sensores-infrarojos-qtr-8rc-digital.html
Saml alt … snart en mere detaljeret video …
Trin 2: Trin 2: Inspiration
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.
Til kalibreringssensor QTR-8RC podéis seguir el tutorial de
Y un ultimo enlace que os puede ayudar es este instructable;
www.instructables.com/id/Arduino-based-lin…
For at teste motorernes ydeevne har vi fulgt denne blogsupport www.programarfacil.com
programarfacil.com/blog/arduino-blog/adafruit-motor-shield-arduino/
Det er en meget god oversigt over de forskellige motorer, som dette skjold styrer.
For at kalibrere QTR-8RC-sensoren kan du følge vejledningen i
www.youtube.com/watch?v=_ZeybIDd80s&list=PLlNY7ygeCIzCuq0jSjPD8_LfcAsPKUcGL&index=6
Og et sidste link, der kan hjælpe dig, er dette instruerbare;
www.instructables.com/id/Arduino-based-line-follower-using-Pololu-QTR-8RC-l/
Trin 3: Trin 3: Kode
las conexiones entre el array de
sensorer og las placas las hicimos de la siguiente manera:
El Led ON va al pin digital 12
Los 8 sensores van desde el
nr. 1 til pin 8
nummer 2 på pin 9
nr. 3 til pin 2
nummer 4 og pin 3
nummer 5 og pin 4
nummer 6 på pin 5
nr. 7 til pin 6
nr. 8 til pin 7
El código va sin repasarlo (se aceptan sugerencias)
#omfatte
#omfatte
#omfatte
#omfatte
// Opret motorskjoldsobjektet med standard I2C -adressen
Adafruit_MotorShield AFMS = Adafruit_MotorShield ();
// Eller, opret den med en anden I2C -adresse (f.eks. For stabling)
// Adafruit_MotorShield AFMS = Adafruit_MotorShield (0x61);
// Vælg hvilken 'port' M1, M2, M3 eller M4. I dette tilfælde er M1
Adafruit_DCMotor *motor1 = AFMS.getMotor (1);
// Du kan også lave en anden motor på port M2
Adafruit_DCMotor *motor2 = AFMS.getMotor (2);
// Rediger nedenstående værdier, så de passer til din robots motorer, vægt, hjultype osv.
#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 // antal anvendte sensorer
#define TIMEOUT 2500 // venter på 2500 os, før sensorudgangene bliver lave
#define EMITTER_PIN 12 // emitter styres af digital pin 2
#define DEBUG 0 // indstillet til 1, hvis seriel fejlfindingsoutput er nødvendig
QTRSensorsRC qtrrc ((usigneret tegn ) {8, 9, 2, 3, 4, 5, 6, 7}, NUM_SENSORS, TIMEOUT, EMITTER_PIN);
usigneret int sensorValues [NUM_SENSORS];
ugyldig opsætning ()
{
forsinkelse (1000);
manuel_kalibrering ();
set_motors (0, 0);
}
int lastError = 0;
int last_proportional = 0;
int integral = 0;
hulrum ()
{
Serial.begin (9600); // konfigureret serielt bibliotek med 9600 bps
Serial.println ("Adafruit Motorshield v2 - DC Motor test!");
AFMS.begin (); // opret med standardfrekvensen 1,6KHz
//AFMS.begynder (1000); // ELLER med en anden frekvens, siger 1KHz
// Indstil hastigheden til at starte, fra 0 (fra) til 255 (maks. Hastighed)
motor1-> setSpeed (70);
motor1-> kør (FREM);
// tænde motoren
motor1-> kørsel (RELEASE);
motor2-> setSpeed (70);
motor2-> kør (FREM);
// tænde motoren
motor2-> kørsel (RELEASE);
usignerede int -sensorer [5];
int position = qtrrc.readLine (sensorer);
int fejl = position - 2000;
int motorSpeed = KP * fejl + KD * (fejl - lastError);
lastError = fejl;
int leftMotorSpeed = M1_DEFAULT_SPEED + motorSpeed;
int rightMotorSpeed = M2_DEFAULT_SPEED - motorSpeed;
// indstil motorhastigheder ved hjælp af de to motorhastighedsvariabler ovenfor
set_motors (leftMotorSpeed, rightMotorSpeed);
}
void set_motors (int motor1speed, int motor2speed)
{
hvis (motor1speed> M1_MAX_SPEED) motor1speed = M1_MAX_SPEED; // begræns topfarten
hvis (motor2speed> M2_MAX_SPEED) motor2speed = M2_MAX_SPEED; // begræns topfarten
hvis (motor1speed <0) motor1speed = 0; // hold motoren over 0
hvis (motor2speed <0) motor2speed = 0; // holde motorhastigheden over 0
motor1-> setSpeed (motor1speed); // indstil motorhastighed
motor2-> setSpeed (motor2speed); // indstil motorhastighed
motor1-> kør (FREM);
motor2-> kør (FREM);
}
void manual_calibration () {
int i;
for (i = 0; i <250; i ++) // kalibreringen vil tage et par sekunder
{
qtrrc.calibrate (QTR_EMITTERS_ON);
forsinkelse (20);
}
hvis (DEBUG) {// hvis sand, generer sensordata via seriel output
Serial.begin (9600);
for (int i = 0; i <NUM_SENSORS; i ++)
{
Serial.print (qtrrc.calibratedMinimumOn );
Serial.print ('');
}
Serial.println ();
for (int i = 0; i <NUM_SENSORS; i ++)
{
Serial.print (qtrrc.calibratedMaximumOn );
Serial.print ('');
}
Serial.println ();
Serial.println ();
}
}
Bueno a ver que tal se nos da este proyecto “express” en la competición del OSHWDEM.
Anbefalede:
Line Follower Robot With PICO: 5 trin (med billeder)
Line Follower Robot Med PICO: Før du er i stand til at skabe en robot, der kan afslutte civilisationen, som vi kender den, og er i stand til at afslutte den menneskelige race. Du skal først være i stand til at oprette de enkle robotter, dem, der kan følge en linje, der er tegnet på jorden, og her er hvor du vil
Arduino Line Follower Wallrides Classroom Whiteboard: 8 trin (med billeder)
Arduino Line Follower Wallrides Classroom Whiteboard: At følge linjen på jorden er for kedeligt! Vi har forsøgt at se på en anden vinkel på line -følgere og bringe dem til et andet fly - til skolens whiteboard. Se hvad der kom ud af det
Autonom Line Follower Drone med Raspberry Pi: 5 trin
Autonom Line Follower Drone Med Raspberry Pi: Denne tutorial viser, hvordan du i sidste ende kan lave line follower drone. Denne drone vil have en " autonom tilstand " switch, der vil gå ind i dronen til tilstand. Så du kan stadig flyve med din drone som før. Vær venligst opmærksom på, at det går
Line Follower Robot: 11 trin (med billeder)
Line Follower Robot: Jeg lavede en line follower robot med PIC16F84A mikroprocessor udstyret med 4 IR sensorer. Denne robot kan køre på de sorte og hvide linjer
Line Follower Robot: 7 trin (med billeder)
Line Follower Robot: dette er en robot, der følger sort linje på en hvid overflade