Plus Simple Linienfolger

Bonjour Ensemble

Aujourd’hui, je voudrais vous présenter un projet dont nous avons pris connaissance grâce à une demande du client. Nous construisons un robot simple qui suit la ligne.

Le projet est conçu pour faire fonctionner le code avec des robots à deux roues et à quatre roues et représente un compromis. Pour un fonctionnement continu, l’esquisse et l’interconnexion doivent être modifiées, car la charge des quatre moteurs sur un IC est très élevée.

Avec l’aide de deux capteurs, le véhicule fait la distinction entre le fond blanc et le noir et corrige la direction du voyage en conséquence, nous utilisons nos nouveaux modules de capteurs sans poti.

Le principe est assez simple et le code correspondant en conséquence compact, que nous avons beaucoup aimé sur ce projet. 

Pour ce projet, j’ai créé un ensemble pour vous, cela peut être trouvé Ici

Nous avons donc besoin de :

Nous commençons par l’assemblage du châssis :

Tout d’abord, vous devriez décoller les foils de protection, nous n’avons pas fait cela, parce que les plaques transparentes peuvent être photographiés encore pire.

Pour un assemblage plus facile, vous devriez filer les moteurs avant l’installation.

Pour ce faire, les câbles de soudeur aux petits drapeaux en laiton des moteurs. Là où le rouge et le noir sont attachés n’a pas d’importance pour le moment. Pour une courte compréhension : la direction du déplacement des moteurs peut être modifiée en tournant le poteau. 

Ensuite, branchez les supports pour les moteurs à travers le châssis.

Attachez ensuite les moteurs câblés avec les longues vis fermées et fixez-les avec les noix :

Ensuite, mettez les boulons en laiton à travers la plaque et attachez-les avec les noix fermées, où vous les attachez dépend de votre conception et plus tard l’utilisation. Les positions sont variables.

Comme une prochaine étape, vous pouvez déjà monter le haut et le visser sur:

Pour une meilleure compréhension, voici une photo de la page:

 

Vous pouvez également déterminer où vous attachez votre contrôleur et dans quelle direction la ligne suit. Cela complète l’assemblage de la mécanique. Comme l’étape suivante, vous devriez soudit les en-têtes broche sur le bouclier moteur, comme indiqué ici dans l’image:

Ceux-ci sont nécessaires afin d’être en mesure de connecter les capteurs plus tard.

Les éviers de chaleur collés ne sont pas nécessairement nécessaires, mais fortement recommandés. Il est facilement possible de distribuer la charge à plusieurs CI et de connecter les quatre moteurs séparément au bouclier (peut également être changé dans le croquis).

Ensuite, la connexion des moteurs: d’abord nous commutons les deux moteurs du côté gauche et le côté droit ensemble. Ici, vous devez essayer quelque chose jusqu’à ce que les moteurs d’un côté, et les moteurs de l’autre côté courir ensemble dans la même direction. Comme déjà mentionné, cela peut être facilement changé en échangeant les poteaux.

Connectez les moteurs ici:

Les connecteurs sont étiquetés sur le plateau avec M3 et M4, chacun les moteurs gauches sur un terminal, et le droit sur le deuxième terminal.

Maintenant, l’alimentation: Le bouclier fournit également le microcontrôleur avec de l’énergie.

Les deux flèches en bas à droite de l’image marquent les connecteurs pour A4 et A5, où nous connectons nos capteurs de suivi de ligne.

Puisque nous remodelons notre robo-voiture plus souvent, nous avons seulement temporairement attaché les capteurs avec du ruban adhésif. Le capteur gauche sur la broche A4, le capteur droit sur A5, comme indiqué ici dans l’image:

Il est important de ne pas monter les capteurs à l’avant, mais de les voir légèrement obliquement sur les flancs, comme on le voit dans l’image ci-dessus.

Avant de nous consacrer au code que nous avons emprunté à Aarav, nous avons besoin d’une bibliothèque pour le bouclier moteur. Nous avons utilisé l’Adafruit Libary que vous Ici Trouver.

Voici le code:

 

   ////////////////////////////////////////////////////////   LinoBot v1.0 /             
 Par Aarav Garg
////////////////////////////////////////////////////////

J’ai ajouté les possibilités de tests
Les valeurs de analogRead pourrait être changé pour le tir problème

y compris les bibliothèques
#include <AFMotor (EN).H (en)>

définir les broches et les variables
#define Gauches A4 
#define Droits A5 

définir les moteurs
AF_DCMotor moteur1(4, MOTOR12_8KHZ); 
AF_DCMotor moteur2(3, MOTOR12_8KHZ);
/*
AF_DCMotor moteur3(1, MOTOR12_8KHZ);
AF_DCMotor moteur4(2, MOTOR12_8KHZ);
 */

Vide Configuration() {   réglage de la vitesse des moteurs   moteur1.setSpeed setSpeed setSpeed setS(100);   moteur2.setSpeed setSpeed setSpeed setS(100);   déclarant les types d’épingles   pinMode(Gauches,Entrée);   pinMode(Droits,Entrée);   commencer la communication en série   Série.Commencer(9600);    }

Vide Boucle(){   valeurs d’impression des capteurs au moniteur de série   Série.println(analogRead (en)(Gauches));   Série.println(analogRead (en)(Droits));   ligne détectée par les deux   Si(analogRead (en)(Gauches)<=400 && analogRead (en)(Droits)<=400){     Arrêter     moteur1.Courir(Libération);     moteur2.Courir(Libération);   }   ligne détectée par capteur gauche   Autre Si(analogRead (en)(Gauches)<=400 && !analogRead (en)(Droits)<=400){     tourner à gauche     moteur1.Courir(Arrière);     moteur2.Courir(Avant);     /*
 motor1.run(RELEASE);
 motor2.run (FORWARD);
     */   }   ligne détectée par capteur droit   Autre Si(!analogRead (en)(Gauches)<=400 && analogRead (en)(Droits)<=400){     tourner à droite     moteur1.Courir(Avant);     moteur2.Courir(Arrière);     /*
 motor1.run (FORWARD);
 motor2.run (RELEASE);
     */   }   ligne détectée par aucun   Autre Si(!analogRead (en)(Gauches)<=400 && !analogRead (en)(Droits)<=400){     Arrêter     moteur1.Courir(Avant);     moteur2.Courir(Avant);     /*
 motor1.run(BACKWARD);
 motor2.run(BACKWARD);
     */   }    }


Soit dit en passant, les broches analogiques ont été utilisés parce que, contrairement aux broches numériques sur le bouclier, ils sont facilement accessibles.

Le projet est conçu pour faire fonctionner le code avec des robots à deux roues et à quatre roues et représente un compromis. Pour un fonctionnement continu, l’esquisse et l’interconnexion doivent être modifiées, car la charge des quatre moteurs sur un IC est très élevée.

Définir la direction de course pour les moteurs de traction peut être un peu difficile, ici un peu de patience est nécessaire.

Amusez-vous à reconstruire et jusqu’à la prochaine fois :) 

 

Pour arduinoProjets pour les débutantsCapteurs

3 commentaires

Stefan

Stefan

Der set link funktioniert nicht.

Lg

Moritz

Moritz

Hallo,
die vier Motoren sind im Beitrag oben am Shield an M3 und M4 angeschlossen. Das funktioniert bei uns wunderbar, allerdings ist die Last auf den IC recht hoch. Die Last lässt sich bei zusätzlicher Nutzung von M1 und M2 auf dem Shield verteilen, sprich je einen Motor pro Anschluss. Den Sketch müssen Sie dann erweitern, indem Sie die beiden zusätzlichen Motoren zuerst definieren und anschließend mit motor3.run und motor4.run erweitern.

Frank Raddau

Frank Raddau

Hallo,
Wie würde der Sketch und die Verschaltung für eine Dauerbelastung aussehen?
Danke im voraus.

Laisser un commentaire

Tous les commentaires sont modérés avant d'être publiés

Messages de blogs recommandés

  1. Installez maintenant ESP32 via l'administrateur de la carte
  2. Lüftersteuerung Raspberry Pi
  3. Arduino IDE - Programmieren für Einsteiger - Teil 1
  4. ESP32 - das Multitalent
  5. OTA-Over the Air-ESP Programmation par WiFi