Table des matières:
Vidéo: TA-ZON-BOT (suiveur de ligne) : 3 étapes (avec photos)
2024 Auteur: John Day | [email protected]. Dernière modifié: 2024-01-30 09:09
TA-ZON-BOT
El tazon siguelineas
Hemos realizado este robot siguelineas con la ayuda de los nuestros alumnos, (gracias minimakers).
Ha sido un proyecto express para poder participar en la OSHWDEN de A Coruña.
oshwdem.org/2017/06/oshwdem-2017/
traducteur Google
TA-ZON-BOT
Le bol suit la ligne
Nous avons réalisé ce robot qui vous suit avec l'aide de nos étudiants, (merci les minimakers).
Participer à l'OSHWDEN de La Corogne a été un projet express.
oshwdem.org/2017/06/oshwdem-2017/
traducteur Google
Étape 1: Étape 1: Composants
Los composants que hemos utilizados
han sido los siguientes.
Une piéza 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 concentrater al robot en la linea).
2 ruedas de un juguete reciclado.
2 motores con las siguientes especificaciones:
Spécificités (Para 6V):
Dimensions: 26 x 10 x 12 mm
Ratio de la réductrice: 30:1
Diámetro del eje: 3mm (con ranura de bloqueo)
Voltaje nominal: 6Vcc (puede funcionar entre 3 a 9Vcc)
Vélocidad de giro sin carga: 1000rpm
Consommation sans chargement: 120 mA (1600 mA avec chargement)
Couple: 0,6 kg/cm (max)
Peso: 10 grammes
Enlace de tienda en ligne:
1 place 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 plastics para la base del porta pilas.
1 tableau de capteurs QTR-8RC avec les caractéristiques suivantes;
Spécifications du réseau de capteurs de réflectance QTR-8x • Dimensions: 2,95" x 0,5" • Tension de fonctionnement: 3,3-5,0 V • Courant d'alimentation: 100 mA • Format de sortie pour le QTR-8A: 8 tensions analogiques allant de 0 V à la tension fournie • Format de sortie pour le QTR-8RC: 8 signaux numériques compatibles avec les E/S pouvant être lus comme une impulsion haute temporisée • Distance de détection optimale: 0,125" (3 mm) • Distance de détection maximale recommandée pour le QTR-8A: 0,25" (6 mm) • Distance de détection maximale recommandée pour le QTR-8RC: 0,375" (9,5 mm) • Poids sans broches d'en-tête: 0,11 oz (3,1 g) Lo podéis encontrar en:
tienda.bricogeek.com/componentes/257-array-…
Ensamblar todo … próximamente un vídeo más detallado…
Les composants que nous avons utilisés ont été les suivants.
Un morceau rond de méthacrylate. (Vous pouvez utiliser n'importe quel design, notre base mesure juste assez pour placer le bol à l'envers).
1 Bol petit-déjeuner (utilisé pour concentrer le robot sur la ligne).
2 roues d'un jouet recyclé.
2 moteurs avec les spécifications suivantes:
Spécifications (Pour 6V): Dimensions: 26 x 10 x 12 mm Ratio du réducteur: 30:1 Diamètre de l'arbre: 3mm (avec rainure de verrouillage) Tension nominale: 6Vdc (peut fonctionner entre 3 à 9Vdc) Vitesse de rotation sans charge: 1000rpm Consommation sans charge: 120mA (1600mA avec charge) Couple: 0,6kg/cm (max) Poids: 10 grammes
Lien boutique en ligne:
1 carte Arduino UNO (recyclée d'un ancien projet)
1 shield pour moteurs Adafruit v2.3:
1 Un support de 8 piles AAA (nous n'utilisons pas 2 alimentations).
6 vis et écrous pour joindre les éléments comme on le voit sur l'image
brides pour les moteurs, un caoutchouc élastique pour maintenir le support de batterie et un morceau de feuille de plastique pour la base du support de batterie.
1 réseau de capteurs QTR-8RC avec les caractéristiques suivantes;
Spécifications du réseau de capteurs de réflectance QTR-8x • Dimensions: 2,95 "x 0,5" • Tension de fonctionnement: 3,3-5,0 V • Courant d'alimentation: 100 mA • Format de sortie pour le QTR-8A: 8 tensions analogiques allant de 0 V à la tension fournie • Format de sortie pour le QTR-8RC: 8 signaux numériques compatibles E/S pouvant être lus comme une impulsion haute temporisée • Distance de détection optimale: 0,125 "(3 mm) • Distance de détection maximale recommandée pour le QTR-8A: 0,25" (6 mm) • Distance de détection maximale recommandée pour le QTR-8RC: 0,375 "(9,5 mm) • Poids sans broches d'en-tête: 0,11 oz (3,1 g) Vous pouvez le trouver dans:
tienda.bricogeek.com/componentes/257-array-de-sensores-infrarojos-qtr-8rc-digital.html
Assemblez le tout… bientôt une vidéo plus détaillée…
Étape 2: Étape 2: Inspirer
Para probar el funcionamiento del los
motores hemos seguido esta ayuda del blog www.programarfacil.com
programarfacil.com/blog/arduino-blog/adafr…
Es un résumé muy bueno de los diferentes motores que controla esta shield.
Para calibrar el sensor 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…
Pour tester les performances des moteurs, nous avons suivi ce blog support www.programarfacil.com
programarfacil.com/blog/arduino-blog/adafruit-motor-shield-arduino/
C'est un très bon résumé des différents moteurs que contrôle ce bouclier.
Pour calibrer le capteur QTR-8RC vous pouvez suivre le tutoriel de
www.youtube.com/watch?v=_ZeybIDd80s&list=PLlNY7ygeCIzCuq0jSjPD8_LfcAsPKUcGL&index=6
Et un dernier lien qui peut vous aider est ce instructable;
www.instructables.com/id/Arduino-based-line-follower-using-Pololu-QTR-8RC-l/
Étape 3: Étape 3: Coder
las conexiones entre le tableau de
sensores y las placas las hicimos de la siguiente manera:
El Led ON va al broche numérique 12
Los 8 sensores van desde el
número 1 al broche 8
número 2 al broche 9
número 3 al broche 2
número 4 al broche 3
número 5 al broche 4
número 6 al broche 5
número 7 al broche 6
número 8 al broche 7
El código va sin repasarlo (se aceptan sugerencias)
#comprendre
#comprendre
#comprendre
#comprendre
// Création de l'objet bouclier moteur avec l'adresse I2C par défaut
Adafruit_MotorShield AFMS = Adafruit_MotorShield();
// Ou, créez-le avec une adresse I2C différente (par exemple pour l'empilement)
// Adafruit_MotorShield AFMS = Adafruit_MotorShield (0x61);
// Sélectionnez quel 'port' M1, M2, M3 ou M4. Dans ce cas, M1
Adafruit_DCMotor *moteur1 = AFMS.getMotor(1);
// Vous pouvez également faire un autre moteur sur le port M2
Adafruit_DCMotor *moteur2 = AFMS.getMotor(2);
// Modifiez les valeurs ci-dessous en fonction des moteurs, du poids, du type de roue, etc. de votre robot.
#définir KP.2
#définir KD 5
#définir M1_DEFAULT_SPEED 50
#définir M2_DEFAULT_SPEED 50
#définir M1_MAX_SPEED 70
#définir M2_MAX_SPEED 70
#define MIDDLE_SENSOR 4
#define NUM_SENSORS 8 // nombre de capteurs utilisés
#define TIMEOUT 2500 // attend 2500 us pour que les sorties du capteur baissent
#define EMITTER_PIN 12 // l'émetteur est contrôlé par la broche numérique 2
#define DEBUG 0 // défini sur 1 si la sortie de débogage série est nécessaire
QTRSensorsRC qtrrc((unsigned char) {8, 9, 2, 3, 4, 5, 6, 7}, NUM_SENSORS, TIMEOUT, EMITTER_PIN);
int sensorValues non signé [NUM_SENSORS];
void setup()
{
retard(1000);
étalonnage_manuel();
set_motors(0, 0);
}
int lastError = 0;
int dernier_proportionnel = 0;
entier entier = 0;
boucle vide()
{
Serial.begin(9600); // configuration de la bibliothèque série à 9600 bps
Serial.println("Adafruit Motorshield v2 - Test du moteur à courant continu !");
AFMS.begin(); // créer avec la fréquence par défaut 1.6KHz
//AFMS.begin(1000); // OU avec une fréquence différente, disons 1KHz
// Définit la vitesse de démarrage, de 0 (off) à 255 (vitesse max)
motor1->setSpeed (70);
moteur1->run(AVANT);
// allume le moteur
motor1->run(RELEASE);
motor2->setSpeed (70);
motor2->run(FORWARD);
// allume le moteur
motor2->run(RELEASE);
capteurs int non signés[5];
position int = qtrrc.readLine(capteurs);
erreur int = position - 2000;
int motorSpeed = KP * error + KD * (error - lastError);
lastError = erreur;
int leftMotorSpeed = M1_DEFAULT_SPEED + motorSpeed;
int rightMotorSpeed = M2_DEFAULT_SPEED - motorSpeed;
// régler les vitesses du moteur en utilisant les deux variables de vitesse du moteur ci-dessus
set_motors(leftMotorSpeed, rightMotorSpeed);
}
void set_motors(int motor1speed, int motor2speed)
{
si (motor1speed > M1_MAX_SPEED) motor1speed = M1_MAX_SPEED; // limite la vitesse de pointe
si (motor2speed > M2_MAX_SPEED) motor2speed = M2_MAX_SPEED; // limite la vitesse de pointe
si (motor1speed < 0) motor1speed = 0; // garde le moteur au dessus de 0
si (motor2speed < 0) motor2speed = 0; // garde la vitesse du moteur au-dessus de 0
motor1->setSpeed(motor1speed); // régler la vitesse du moteur
motor2->setSpeed(motor2speed); // régler la vitesse du moteur
moteur1->run(AVANT);
motor2->run(FORWARD);
}
void manual_calibration() {
int je;
for (i = 0; i < 250; i++) // le calibrage prendra quelques secondes
{
qtrrc.calibrate(QTR_EMITTERS_ON);
retard(20);
}
if (DEBUG) { // si vrai, génère les données du capteur via la sortie série
Serial.begin(9600);
pour (int i = 0; i < NUM_SENSORS; i++)
{
Serial.print(qtrrc.calibratedMinimumOn);
Serial.print(' ');
}
Serial.println();
pour (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.
Conseillé:
Robot suiveur de ligne avec PICO : 5 étapes (avec photos)
Robot suiveur de ligne avec PICO : avant que vous ne soyez capable de créer un robot qui puisse mettre fin à la civilisation telle que nous la connaissons et capable de mettre fin à la race humaine. Vous devez d'abord être capable de créer les robots simples, ceux qui peuvent suivre une ligne tracée au sol, et c'est ici que vous allez t
Drone suiveur de ligne autonome avec Raspberry Pi : 5 étapes
Drone suiveur de ligne autonome avec Raspberry Pi: Ce tutoriel montre comment vous pouvez éventuellement créer un drone suiveur de ligne. Ce drone disposera d'un "mode autonome" commutateur qui entrera dans le drone en mode. Ainsi, vous pouvez toujours piloter votre drone comme avant. S'il vous plaît soyez conscient que cela va t
Comment fabriquer le plus petit robot suiveur de ligne au monde (robo Rizeh): 7 étapes (avec photos)
Comment faire le plus petit robot suiveur de ligne du monde (robo Rizeh): Comment faire le plus petit robot suiveur de ligne du monde (vibrobot) "roboRizeh" poids : 5gr taille : 19x16x10 mm par : Naghi Sotoudeh Le mot "Rizeh" est un mot persan qui signifie "petit". Rizeh est un très petit ro basé sur les vibrations
Robot suiveur de ligne : 11 étapes (avec photos)
Robot suiveur de ligne : J'ai réalisé un robot suiveur de ligne avec microprocesseur PIC16F84A équipé de 4 capteurs IR. Ce robot peut courir sur les lignes noires et blanches
Robot suiveur de ligne : 7 étapes (avec photos)
Robot suiveur de ligne : il s'agit d'un robot qui suit une ligne noire sur une surface blanche