Projets Arduino pour voitures. Ordinateur de bord et bien d'autres projets DIY Arduino utiles pour les voitures. Panneau de contrôle basé sur Arduino et smartphone

Les technologies ne s'arrêtent pas et aujourd'hui les passionnés d'automobile se voient proposer une variété de diverses options pour améliorer leurs « chevaux de fer ». L'un d'eux est Arduino. Cet appareil est un outil utilisé pour concevoir appareils électroniques. Dans le cas d'une voiture, la conception est généralement réalisée sur pare-brise. Comment créer un ordinateur de bord à l'aide d'Arduino et comment le configurer correctement - lisez cet article.

[Cacher]

Idées pour une voiture basée sur une petite carte avec un petit processeur - Arduino

Les ordinateurs font depuis longtemps partie de nos vies. La plate-forme matérielle Arduino est l'une des derniers développements avec ouvert code de programme, qui est construit sur l'habituel circuit imprimé. En savoir plus sur la façon d'utiliser une telle planche pour réaliser différents appareils pour les voitures, nous vous le dirons plus loin.

Colombie-Britannique

À l'aide d'une carte Arduino, vous pouvez construire un ordinateur de bord de voiture capable de :

  • calculer la consommation de carburant ;
  • afficher des informations sur la température de l'antigel ;
  • calculer la vitesse de déplacement, ainsi que la distance du trajet ;
  • éliminer le combustible usé sur un certain kilométrage ;
  • déterminer la vitesse du moteur, etc. (l'auteur de la vidéo est le canal Arduino Tech PTZ).

En plus du périphérique Arduino, vous aurez également besoin d'un module LCD, d'un adaptateur Bluetooth NS-05, ainsi que d'un scanner ELM327 et d'un dispositif à résistance de 10 kOhm. Bien entendu, il faut préparer et indicateur sonore, les fils d'installation et le corps de l'appareil lui-même.

La procédure de montage est la suivante :

  1. Nous avons d’abord configuré l’adaptateur Bluetooth. Vous devez souder les fils aux broches de l'appareil - aux deux contacts inférieurs et supérieurs.
  2. Le module lui-même est connecté à la carte pour la configuration ; pour ce faire, vous devez ouvrir Programme Arduino IDE 1.0.6 ou toute autre version, puis téléchargez le croquis sur le circuit via la sortie USB.
  3. Une fois le téléchargement terminé, vous devez accéder au menu Outils - Port Monitor et régler la vitesse sur 9600.
  4. Ensuite, un circuit est assemblé avec une carte, un adaptateur et un écran pré-préparé. Tout d’abord, connectez l’adaptateur Bluetooth.
  5. Après cela, un affichage est ajouté au circuit. Plus description détaillée Les connexions peuvent être trouvées sur la photo ci-dessous.
  6. Un élément de résistance 10K est utilisé pour contrôler la luminosité et le contraste de l'écran. Par conséquent, lors de la première connexion, vous remarquerez peut-être qu'il n'y a pas d'image, si tel est le cas, il vous suffit alors de l'ajuster en tournant la résistance.
  7. Ensuite, une clé supplémentaire est connectée, qui remplira la fonction de commutation d'écrans avec des informations. Un contact du bouton va à l'élément GND, le second à la broche 10. Pour connecter le bip, le contact positif est connecté à la broche 13 et le contact négatif à GND.
  8. Ensuite, en utilisant le même logiciel Arduino IDE 1.0.6, vous devez télécharger le croquis. Il ne vous reste plus qu'à configurer l'ordinateur de bord et à le connecter à la voiture.

Galerie de photos « Schéma de connexion BC »

Traceur GPS

Pour assembler un traceur GPS sur Basé sur Arduino, vous aurez besoin de :

  • la carte elle-même, le processus est décrit à l'aide de l'exemple du modèle Mega 2560 ;
  • Module GSM/GPRS, qui sera utilisé pour transférer les données vers le serveur ;
  • ainsi qu'un récepteur GPS Arduino, dans l'exemple nous examinerons le modèle SKM53 (l'auteur de la vidéo sur la création d'un tracker utilisant la carte SIM 808 comme exemple - canal Alex Vas).

Comment connecter le circuit :

  1. Tout d'abord, le module est connecté à la carte principale ; le taux de transfert de données par défaut est de 115 200.
  2. Après la connexion, vous devez allumer l'appareil et définir la même vitesse pour tous les ports - série et logiciel.
  3. L'émetteur GSM est connecté aux broches 7 et 8 de la puce principale.
  4. Ensuite, le module est configuré en entrant des commandes. Nous ne décrirons pas toutes les commandes ; elles peuvent être trouvées sur Internet sans aucun problème. Considérons uniquement les plus élémentaires. AT+SAPBR=3,1, « CONTYPE », « GPRS » - la commande détermine le type de connexion, en dans ce cas c'est le GPRS. AT+SAPBR=3,1,« APN »,« internet.***.ru », où *** est l'adresse de l'opérateur réseau mobile, qui sera utilisé. AT+HTTPINIT - cette commande initialise HTTP.
  5. Une nuance doit être notée : lors de l'écriture du composant serveur de l'interface, il est conseillé de prévoir la réception et la sortie des données pour plusieurs adaptateurs. Vous devez régler le commutateur sur trois positions, cela permettra de recevoir les données de huit voitures.
  6. Ensuite, le croquis est écrit sur le microcircuit. Le croquis lui-même peut également être trouvé sur Internet ; il n'est pas nécessaire de l'écrire. Veuillez noter que si deux ports série actifs sont utilisés, cela peut entraîner des erreurs dans la transmission et l'envoi des informations.

Parktronique

Pour construire un capteur de stationnement, vous aurez besoin des composants suivants :

  • la puce elle-même ;
  • appareil à ultrasons, dans ce cas il s'agit du télémètre HC-SR04 :
  • six éléments LED ;
  • six éléments de résistance avec une résistance de 220 Ohms ;
  • fils de connexion mâle-mâle ;
  • élément piézodynamique ;
  • schéma d'implantation pour l'assemblage.

La procédure de construction est la suivante :

  1. Pour commencer, sur le schéma de la maquette, vous devez installer Éléments LED préparé à l'avance. Le contact négatif de toutes les LED sera commun. Contact court- cathode - doit être connectée au bus négatif, disponible sur la maquette.
  2. Aux contacts les plus longs des diodes, c'est-à-dire les anodes, vous devez connecter des éléments de résistance de 200 Ohm ; si vous ne les utilisez pas, les diodes grilleront.
  3. L'installation s'effectue sur la partie centrale appareil à ultrasons. Il y a quatre broches sur ce contrôleur. Vcc est la broche d'alimentation de cinq volts, Echo est la broche de sortie, Trig est l'entrée et GND est la masse.
  4. Une fois le télémètre installé, le câblage doit être connecté à ses sorties. En particulier, la broche Echo est connectée à la sortie 13, Trig - à la broche 12. GND, par conséquent, doit être connecté à la terre, qui est disponible sur le circuit du contrôleur, et la sortie Vcc restante est connectée à l'alimentation 5 volts sur Carte Arduino.
  5. Après avoir terminé ces étapes, vous devez connecter le câblage aux contacts des éléments de résistance. Ils sont également connectés en série aux broches de la carte – les broches 2 à 7 sont utilisées.
  6. La prochaine étape sera de connecter un bip piézoélectrique, qui avertira le conducteur à l'approche d'un obstacle. La sortie négative, en option, peut être combinée avec le contact négatif d'un télémètre préalablement installé. Quant au contact positif, il se connecte à la broche numéro 11 de la puce.
  7. Pour que l'appareil fonctionne finalement en mode normal, vous devrez en outre écrire puis charger le code du programme sur la carte. Dans ce code, il est nécessaire d'indiquer avec précision la distance à l'approche de laquelle les éléments de diode s'allumeront et le buzzer sera activé. De plus, le ton du bip doit être différent afin que le conducteur puisse savoir que l'approche d'un obstacle sera critique. Le code lui-même est soit écrit indépendamment, soit une version prête à l'emploi est extraite d'Internet. Il existe de nombreuses options de croquis, il vous suffit de choisir celle qui convient le mieux à votre appareil (l'auteur de la vidéo est la chaîne Arduino Prom).

Conclusion

Comme vous pouvez le constater, la microcarte Arduino est option universelle, avec lequel vous pouvez créer de nombreux appareils différents. En plus des appareils décrits ci-dessus, vous pouvez également construire un compteur de vitesse qui affichera des informations de vitesse directement sur le pare-brise, un bouton start-stop et même une alarme pour véhicule. En général, il existe de nombreuses options en matière de fabrication gadget fait maison c'est vrai, alors vous réussirez.

Bien entendu, pour ce faire, vous devez avoir des connaissances dans le domaine de l’électronique et de l’électrotechnique, alors que des compétences minimales ne suffiront probablement pas. Lors de la fabrication d'appareils, vous devrez prendre vos propres décisions, qui peuvent ne pas être disponibles sur Internet. Par conséquent, préparez-vous à ce que le processus d’assemblage puisse prendre beaucoup de temps.

Vidéo « Comment construire un système de contrôle pour un moteur de cuisinière électrique ? »

Dans la vidéo ci-dessous, vous pouvez apprendre à configurer la climatisation en modifiant le régulateur du système de chauffage en utilisant l'exemple d'une voiture VAZ 2115 (l'auteur de la vidéo est Ivan Nikulshin).

Nos voitures sont depuis longtemps devenues non seulement un moyen de transport, mais un tout solution globale des systèmes complexes et parfois très productifs indirectement liés au mouvement. Il s'agit notamment du multimédia responsable du divertissement et du confort dans la cabine, des dispositifs qui améliorent la visualisation des feux de signalisation et des dispositifs qui reproduisent divers sons. signaux d'information, et des capteurs, ainsi que d’autres options. Ainsi, nous souhaitons dans un premier temps caractériser et mentionner les microcontrôleurs et les dispositifs microélectroniques travaillant à notre bénéfice. De plus, de tels appareils peuvent être ajoutés à notre voiture selon nos souhaits et nos capacités. L'un de ces appareils, jouets et assistants uniques, est Arduino.

Qu’est-ce qu’Arduino et pourquoi est-il dans une voiture ?

Parlons d’abord de ce qu’est Ardiuino, car tout le monde ne sait probablement pas pourquoi une telle chose se trouve dans une voiture. Il faut dire, sans aucune ironie, qu'il s'agit d'un dispositif fonctionnel presque prêt à l'emploi qui peut être configuré en y téléchargeant un programme et en définissant ainsi certains fonctionnalités utiles. Disons un feu stop clignotant selon votre algorithme ou un clignotant paresseux, ou fournissons une indication et une lecture (son, lumière) de l'activation du capteur. Oui, nous n’avons pas assez d’imagination pour lister tout ce qu’on peut faire avec cet appareil. En bref, vous fixez certaines conditions pour la mise en œuvre de certaines actions, mais les cerveaux qui assurent un tel travail seront Arduino. Alors si vous avez problèmes de logique que vous aimeriez résoudre dans la voiture, alors confiez-le à votre petite aide. Cependant, comme tous les assistants, notre Arduino veut aussi manger. Et il est alimenté par l’électricité du réseau de bord de la voiture. Dans ce cas, la logique Arduino fonctionne sur 5 et 3,3 volts. Bien entendu, l'Arduino est livré en standard avec un stabilisateur de tension, mais cela peut ne pas suffire à fournir la puissance requise pour l'alimentation. C'est pourquoi le paragraphe suivant sera consacré à la réduction de la tension de connexion de l'Arduino.

De quelle tension Arduino a-t-il besoin dans une voiture ?

Alors maintenant, parlons de la chose la plus importante, à savoir le sujet sur lequel notre article a été écrit. Oui, bien sûr, on pourrait simplement diriger le lecteur vers la page « Comment convertir le 12 volts en 5 volts dans une voiture », et tout oublier... Cependant, puisque nous avons assumé ce fardeau, continuons de manière thématique .

Si tu regardes dedans spécifications techniques Arduino, vous pouvez alors trouver des informations sur ce que Arduino UNO Alimenté par 9 volts. En fait, une tension aussi surestimée est tout à fait justifiée, car si vous fournissez 5 volts à l'Arduino d'un coup, cela risque de ne pas suffire. Le fait est qu'Arduino a ses propres stabilisateurs de tension sur la carte, et ils ont également une certaine efficacité. En conséquence, si vous appliquez la tension de fonctionnement nominale, elle sera ensuite inférieure à la tension nominale en raison de la propre résistance des stabilisateurs. Encore une fois, si vous appliquez 12-14 volts, ce sera trop. Après tout, les stabilisateurs sont généralement fabriqués dans le boîtier SOT-223, et dans un tel boîtier, la dissipation de puissance des stabilisateurs de la série 1117 n'est que de 0,8 W. Voyons cela. Si vous connectez une charge équivalente à 8 à 10 LED, elle sera d'environ 100 mA. En conséquence, les stabilisateurs standards chuteront de 7 à 9 volts. Il s'avère que 0,1*9=0,9 W. Autrement dit, dans ce cas, la puce stabilisatrice nécessitera déjà un radiateur, ce qui n'est a priori pas disponible dans Arduino. C'est là que nous arrivons à la conclusion que l'alimentation électrique optimale est de 7 à 9 volts. Et puis Arduino lui-même obtiendra ce dont il a besoin de cette tension. Parlons maintenant de la façon d'obtenir une telle tension.

Alimentation (connexion) de l'Arduino à la machine (convertisseurs)

Commençons par quelque chose d'absurde, mais peut-être par quelque chose qui pourrait même arriver à quelqu'un ! Lors de l'alimentation de l'Arduino, on abandonne immédiatement les résistances connectées en série et on réduit la tension. Peu importe qu’ils soient puissants et capables de se disperser la puissance requise. Le fait est qu'Arduino peut consommer à différentes périodes de temps puissance différente, ce qui signifie que la résistance de limitation de courant doit changer, ce qui est impossible avec une résistance statique ordinaire, pour ainsi dire !

Nous devons donc disposer d'un composant évoluant de manière dynamique dans l'alimentation du microcontrôleur. C'est le moment de se tourner vers les microcircuits - stabilisateurs. Disons que les LM7809, 7808 sont capables de fournir un courant jusqu'à 1,5 A et de réduire la tension. Voyons cela ici aussi. 14-9=5. 5 volts doivent être éteints par le stabilisateur. Supposons que la consommation de courant soit de 150 mA. En conséquence, 0,15 * 5 = 0,75 W devra être dissipé sur le corps du TO-220. Eh bien, que puis-je dire, tout est tout à fait vital et réel. Une partie de la chaleur sera dissipée sur le stabilisateur externe, et une autre sur le stabilisateur standard. Encore une fois, nous répétons qu'il ne faut pas prendre le 7805, car ce sera une alimentation trop faible pour l'Arduino, et de plus, la dissipation de puissance sur un tel stabilisateur doublera, ce qui signifie que vous devrez certainement installer un radiateur.

(La connexion du 7809 et du 7805 est similaire)

Eh bien, si vous restez dans l'air du temps, cela vaut peut-être la peine de prêter attention à l'alimentation PWM. Large modulation d'impulsions C'est à ce moment-là que la tension n'est pas fournie à la charge en permanence, mais par impulsions. Dans ce cas, la valeur moyenne de la valeur totale des impulsions reste à la charge. En fin de compte, les pauses entre ces impulsions permettent d'économiser sur les coûts énergétiques lors de l'alimentation électrique et ne nécessitent pas d'éléments de dissipation thermique - radiateurs. La seule chose est que le PWM est un peu plus cher que de simples microcircuits stabilisateurs, et presque personne n'assemblera un tel circuit de ses propres mains. Plus facile à acheter bloc prêt, mais répétons cela de manière plus progressive.

Pour résumer...

Eh bien, en principe, nous pouvons déjà le résumer ici. Si vous devez connecter Arduino au réseau de bord de la voiture, la meilleure option serait d'utiliser un module PWM, avec une tension de fonctionnement de 7 à 9 volts. Arduino fera le reste lui-même. Les modules pour 5 volts et les microcircuits stabilisateurs pour la même tension ne sont pas recommandés, car en raison des pertes, l'alimentation électrique peut être inférieure à celle nominale.

Vidéo sur la connexion d'Arduino au 12 volts dans une voiture

Arduino est une plateforme universelle pour les microcontrôleurs DIY. Il existe de nombreux boucliers (cartes d'extension) et capteurs pour cela. Cette diversité vous permet de créer un certain nombre de projets intéressants visant à améliorer votre vie et à augmenter son confort. Les domaines d'application du conseil sont illimités : automatisation, systèmes de sécurité, systèmes de collecte et d'analyse de données, etc.

À partir de cet article, vous apprendrez quelles choses intéressantes vous pouvez faire avec Arduino. Quels projets seront spectaculaires et lesquels seront utiles.

Que pouvez-vous faire avec Arduino

Aspirateur-robot

Nettoyer un appartement est une tâche routinière et peu esthétique, d’autant plus qu’elle prend du temps. Vous pouvez le sauvegarder si vous déléguez une partie du ménage à un robot. Ce robot a été assemblé par un ingénieur électronicien de Sotchi - Dmitry Ivanov. Structurellement, il s'est avéré être de qualité suffisante et son efficacité n'est pas inférieure.

Pour l'assembler, vous aurez besoin de :

1. Arduino Pro-mini, ou tout autre similaire et de taille adaptée...

2. Adaptateur USB-TTL si vous utilisez Pro mini. Si vous avez choisi Arduino-Nano, alors ce n'est pas nécessaire. Il est déjà installé sur la carte.

3. Le pilote L298N est nécessaire pour contrôler et inverser les moteurs CC.

4. Petits moteurs avec boîte de vitesses et roues.

5. 6 capteurs infrarouges.

6. Moteur pour turbine (plus gros).

7. La turbine elle-même, ou plutôt la turbine d'un aspirateur.

8. Moteur pour brosses (petites).

9. 2 capteurs de collision.

10. 4 piles 18650.

11. 2 convertisseurs Tension continue(de haut en bas).

13. Contrôleur pour le fonctionnement (charge et décharge) des batteries.

Le système de contrôle ressemble à ceci :

Et voici le système électrique :

Ces nettoyants évoluent, les modèles fabriqués en usine disposent d'algorithmes intelligents complexes, mais vous pouvez essayer de créer votre propre conception dont la qualité ne sera pas inférieure à celle de ses homologues coûteux.

Capables de produire un flux lumineux de n'importe quelle couleur, ils utilisent généralement des LED dans le boîtier desquelles se trouvent trois cristaux brillant de couleurs différentes. Pour les contrôler, des contrôleurs RVB spéciaux sont vendus ; leur essence est de réguler le courant fourni à chacune des couleurs ; Bande LED, par conséquent, l'intensité de la lueur de chacun des trois couleurs(séparément).

Vous pouvez créer votre propre contrôleur RVB à l'aide d'Arduino. De plus, ce projet implémente le contrôle via Bluetooth.

La photo montre un exemple d'utilisation d'une LED RVB. Pour contrôler la bande, vous aurez besoin bloc supplémentaire alimentation à 12V, ils contrôleront ensuite les portails transistors à effet de champ inclus dans le circuit. Le courant de charge de la grille est limité par des résistances de 10 kOhm ; elles sont installées entre la broche Arduino et la grille, en série avec celle-ci.

Panneau de contrôle basé sur Arduino et smartphone

En utilisant un microcontrôleur, vous pouvez faire télécommande universelle télécommande contrôlé avec téléphone mobile.

Pour cela vous aurez besoin de :

    Arduino de n'importe quel modèle ;

    Récepteur IR TSOP1138 ;

    LED infrarouge ;

    Module BluetoothHC-06.

Le projet peut lire les codes des télécommandes d'usine et enregistrer leurs valeurs. Après quoi, vous pourrez contrôler ce produit fait maison via Bluetooth.

La webcam est installée sur un mécanisme rotatif. Il est connecté à un ordinateur sur lequel un logiciel est installé. Il est basé sur la bibliothèque de vision par ordinateur - OpenCV ( Source ouverte Computer Vision Library), une fois que le programme détecte un visage, les coordonnées de son mouvement sont transmises via un câble USB.

Arduino commande le mécanisme de rotation et positionne l'objectif de la caméra. Une paire de servos est utilisée pour déplacer la caméra.

La vidéo montre le fonctionnement de cet appareil.

Gardez un œil sur vos animaux !

L'idée est de savoir où se déplace votre animal, cela peut intéresser recherche scientifique et juste pour le plaisir. Pour ce faire, vous devez utiliser un tracker GPS. Mais pour stocker les données de localisation sur une sorte de périphérique de stockage.

Dans ce cas, les dimensions de l'appareil jouent ici un rôle décisif, puisque l'animal ne doit pas en ressentir de gêne. Pour enregistrer des données, vous pouvez l'utiliser pour travailler avec des cartes mémoire Micro-SD.

Vous trouverez ci-dessous un schéma de la version originale de l'appareil.

DANS version originale Le projet a utilisé la carte TinyDuino et des boucliers. Si vous n’en trouvez pas, il est tout à fait possible d’utiliser des petites copies Arduino : mini, micro, nano.

Un élément Li-ion de faible capacité a été utilisé pour l’alimentation électrique. La petite batterie dure environ 6 heures. L’auteur a fini par tout mettre dans un pot Tic-Tac coupé. Il est à noter que Antenne GPS doit rechercher pour obtenir des lectures de capteur fiables.

Cambrioleur serrures à combinaison

Pour casser les serrures à combinaison à l'aide d'Arduino, vous aurez besoin d'un servomoteur et d'un moteur pas à pas. Ce projet a été développé par le hacker Samy Kamkar. Il s'agit d'un projet assez complexe. Le fonctionnement de cet appareil est montré dans la vidéo, où l'auteur explique tous les détails.

Bien sûr pour application pratique Il est peu probable qu’un tel appareil fonctionne, mais c’est une excellente démo.

Arduino en musique

Il ne s'agit probablement pas d'un projet, mais d'une petite démonstration de la manière dont cette plateforme a été utilisée par les musiciens.

Boîte à rythmes sur Arduino. Il est remarquable qu'il ne s'agisse pas d'une recherche ordinaire d'échantillons enregistrés, mais, en principe, d'une génération de sons à l'aide de dispositifs « matériels ».

Évaluations des pièces :

    Transistor de type NPN, par exemple 2n3904 - 1 pc.

    Résistance 1 kOhm (R2, R4, R5) - 3 pcs.

    330 ohms (R6) - 1 pièce.

    10 kOhms (R1) - 1 pièce.

    100 kOhm (R3) - 1 pièce.

    Condensateur électrolytique 3,3 uF - 1 pièce.

Pour que le projet fonctionne, vous devrez connecter la bibliothèque pour une expansion rapide de la série de Fourier.

C'est assez simple et projet intéressant de la catégorie « vous pouvez vous vanter auprès de vos amis ».

3 projets de robots

La robotique est l'un des domaines les plus intéressants pour les geeks et pour ceux qui aiment faire quelque chose d'inhabituel de leurs propres mains, j'ai décidé de faire une sélection de plusieurs projets intéressants.

Robot BEAM sur Arduino

Pour assembler un robot marcheur à quatre pattes, vous aurez besoin de :

    Pour déplacer les jambes, vous avez besoin de servomoteurs, par exemple Tower Hobbies TS-53 ;

    Un morceau de fil de cuivre d'épaisseur moyenne (pour supporter le poids de la structure et ne pas se plier, mais pas trop épais, car cela n'a aucun sens) ;

    Microcontrôleur - AVR ATMéga 8 ou carte Arduino de n'importe quel modèle ;

    Pour le châssis, la conception indique qu'un cadre Sintra a été utilisé. C'est quelque chose comme du plastique, il se plie dans n'importe quelle forme lorsqu'il est chauffé.

En conséquence, vous obtiendrez :

Il est à noter que ce robot ne conduit pas, mais marche, peut enjamber et grimper jusqu'à 1 cm de hauteur.

Pour une raison quelconque, ce projet m'a rappelé le robot du dessin animé Wall-e. Sa particularité est son utilisation pour charger des batteries. Il se déplace comme une voiture, sur 4 roues.

Ses éléments constitutifs :

    Bouteille en plastique de taille appropriée ;

  • Pulls maman-papa;

    Panneau solaire avec une tension de sortie de 6 V ;

    En tant que donateur de roues, moteurs et autres pièces - une voiture radiocommandée ;

    Deux servos à rotation continue ;

    Deux servos conventionnels (180 degrés) ;

    Support pour piles AA et pour « couronne » ;

    Capteur de collision ;

    LED, photorésistances, résistances fixes pour 10 kOhm - seulement 4 pièces ;

    Diodes 1n4001.

Voici la base : une carte Arduino avec un proto-shield.

Voici à quoi ressemblent les pièces de rechange des roues.

La structure est presque assemblée, les capteurs sont installés.

L'essence du travail du robot est qu'il va vers la lumière. Il a besoin d'abondance pour naviguer.

Il s'agit plus d'une machine CNC que d'un robot, mais le projet est très amusant. C'est une machine à dessiner à 2 axes. Voici une liste des principaux composants qui le composent :

    Lecteurs de (DVD)CD - 2 pièces ;

    2 pilotes pour moteurs pas à pas A498 ;

    servomoteur MG90S ;

    ArduinoUno ;

    Alimentation 12V ;

    Stylo à bille et autres éléments de design.

Depuis le lecteur disques optiques des blocs avec un moteur pas à pas et une tige de guidage sont utilisés pour positionner la tête optique. Le moteur, l'arbre et le chariot sont retirés de ces blocs.

Contrôler un moteur pas à pas sans équipement supplémentaire vous n'y arriverez pas, ils utilisent donc des cartes de commande spéciales ; il est préférable que le radiateur du moteur y soit installé au moment du démarrage ou du changement de sens de rotation.

Le processus complet d'assemblage et de fonctionnement est présenté dans cette vidéo.

Conclusion

Cet article ne couvre qu'un petit échantillon de tout ce que vous pouvez faire sur cette plateforme populaire. En fait, tout dépend de votre imagination et de la tâche que vous vous fixez.

Vous comprenez, explique l'éditeur, il faut que ce soit divertissant, frais, plein d'aventures intéressantes... Pour que le lecteur ne puisse pas s'en arracher.
I. Ilf, E. Petrov "Comment Robinson a été créé".


Il est toujours plus intéressant de commencer à travailler avec Arduino, comme avec toute autre plateforme logicielle ou matérielle, à partir de certaines vrai projet. Dans le même temps, les programmeurs écrivent du code qui affiche « Bonjour tout le monde » et les Arduinos font clignoter la LED. Et tout le monde est heureux comme des enfants.


J'ai décidé de démarrer avec un projet avancé, incluant l'espoir secret d'arracher la jeune génération à Counter-Strike (ça n'a pas marché).


Comme son nom l’indique RoboCar4W, le premier projet était une voiture robot à quatre roues. Quand j’ai commencé à travailler, j’avais déjà de l’expérience en programmation, je savais souder depuis longtemps, mais je ne connaissais même pas le brochage de l’Arduino et je n’ai pas du tout lu la documentation. J'ai étudié toute la sagesse pendant la pièce et Google m'a aidé.


Étant donné que le projet lui-même n'est pas fondamentalement nouveau, il existe suffisamment de descriptions similaires sur Internet, tous les composants sont connus et aucune surprise n'est attendue. L’idée a donc été formulée de la manière la plus aperçu général et l'objectif principal était de me plonger dans le « monde des choses » en utilisant Arduino comme plateforme de prototypage rapide. Dans cet opus, peut-être que quelqu'un se reconnaîtra au tout début de son voyage.


Tout le matériel a été acheté sur eBay et, d'après ma propre expérience, je voudrais dire qu'il est plus facile d'acheter un kit de démarrage tout de suite (recherchez le kit de démarrage Arduino) plutôt que de l'assembler en détail. Oui, et tout arrivera en même temps. Il a été décidé de ne pas perdre de temps en bagatelles, d'acheter un châssis normal, des roues normales, des moteurs normaux, pour que ce soit « cher ».


Le principal secret d'un achat réussi sur eBay est d'acheter auprès de vendeurs ayant note élevée et en même temps lisez attentivement la description du produit. Il existe de nombreux articles à ce sujet sur Internet.


Quelle carte Arduino choisir ?


j'ai pris Arduino UNO, il existe de nombreux projets avec des descriptions. Mais maintenant je le prendrais Arduino Méga 2560, il possède davantage de broches numériques et analogiques et est entièrement compatible avec les projets UNO.

Description générale du projet

Dans le monde du développement logiciel celles-ci sont également appelées « exigences du système ».


L'idée du projet était la suivante. La première version de la voiture robotique, appelée RoboCar4W, devrait effectuer des actions simples :

  • avancer, reculer, faire des virages
  • mesurer la distance aux obstacles
  • être capable d'éviter automatiquement les obstacles devant vous.

La deuxième version de la machine doit être contrôlée manuellement via Bluetooth avec Téléphone Android UN.


Pour améliorer votre travail, voici tout projet final RoboCar4W assemblé (ici sans bluetooth).



Voici une vidéo des essais en mer.


Dans la première vidéo, RoboCar4W roule en mode automatique, évitant les obstacles sur deux différentes versions"micrologiciel", c'est-à-dire croquis, donc si quelqu'un a les yeux les plus aigles et a remarqué que le comportement du robot dans différents épisodes est légèrement différent.



Dans la deuxième vidéo, RoboCar4W se déplace à l'aide de commandes transmises par le « conducteur » via Bluetooth depuis un téléphone mobile Android. Le téléphone a le programme « Bluetooth RC Car » installé. De plus, s'il y a un obstacle proche devant, le robot s'arrête, c'est-à-dire vous ne pourrez pas enfoncer quelque chose (cependant, il y a un bouton "secret" qui s'éteint mode sans échec).



Dans la troisième vidéo, RoboCar4W montre un programme de démonstration préprogrammé pour conduire avec des virages. Le programme de démonstration est activé par commande depuis le même téléphone mobile Android. Le robot roule pendant un moment et effectue des virages.

Algorithme de contrôle de mouvement

C’est une erreur d’appeler notre méthode « algorithme d’évitement d’obstacles » ou « recherche de chemin ». Ce sont des disciplines mathématiques distinctes, des mathématiques pures. Si vous aimez vraiment, vraiment les mathématiques, recherchez les phrases indiquées sur Google et vous recevrez du matériel de lecture pendant six mois.


Pour l’instant, nous nous intéressons à des choses beaucoup plus simples. Par conséquent, nous l'appellerons simplement - algorithme de contrôle de mouvement à 4 voies robot à roues. Bien sûr nous parlons deà propos contrôle automatique sans intervention humaine.


Cet algorithme simple est écrit avec des mots ; pour les algorithmes plus complexes, vous devrez (que vous le vouliez ou non) établir des organigrammes.

  1. Nous mesurons la distance jusqu'à l'obstacle devant nous.
  2. Si cette distance mesurée est inférieure à la valeur de DST_TRH_BACK (abréviation de seuil de distance), alors nous nous arrêtons et roulons en marche arrière en tournant. On choisit le sens de virage comme suit : si on a déjà tourné à gauche, alors on tourne à droite et vice versa.
  3. Si la distance mesurée est supérieure à DST_TRH_BACK, mais inférieure à DST_TRH_TURN, alors on tourne simplement. Le sens de rotation est choisi aléatoirement.
  4. Si l’obstacle est loin, nous avançons simplement.
  5. Nous répétons tout depuis le début.

Qu'est-ce qu'il y a de bien à avoir 4 roues et que tout soit motrice ? On peut effectuer (programmer) plusieurs types de virages :

  • Virage en douceur. Toutes les roues tournent, mais les roues d’un côté tournent plus vite.
  • Tongues. Les roues ne tournent que d'un seul côté.
  • Faites demi-tour sur place. Comme un tracteur, les roues d’un côté tournent vers l’arrière et l’autre côté tourne vers l’avant.

Dans la deuxième version du programme, lorsqu'il est contrôlé depuis un téléphone Android, le mode sans échec, lorsque le robot tente d'éviter les collisions frontales, peut être désactivé si vous appuyez deux fois sur le bouton dans le programme


et je l'ai rallumé en appuyant une fois dessus.


Remarque importante. Toute la logique est sous Contrôle Arduino. Android agit ici simplement comme une télécommande de jeu (sans cerveau) depuis la console, sa tâche est de transmettre bêtement les pressions sur les boutons (c'est-à-dire les commandes) via Bluetooth à l'Arduino RoboCar4W.

Composants

Initialement, la machine comprenait un servomoteur qui faisait tourner le télémètre à ultrasons selon un certain angle pour mesurer dans trois directions. Mais pendant les tests, en raison d'une manipulation imprudente, le servomoteur a grillé, donc maintenant le capteur de distance est simplement fixé de manière rigide devant le boîtier.


Chaque nuage a une lueur d’espoir, mais le croquis est devenu un peu plus simple.


Pour l'avenir, achetez le servomoteur le plus simple et le moins cher, une puissance, une vitesse et une précision de rotation spéciales pour angle spécifié ne sont pas nécessaires et il s’avère assez facile d’endommager le servo. Le SG90 à 2 $ fera très bien l’affaire.


Ainsi, les composants du projet RoboCar4W, une description en anglais est donnée pour faciliter la recherche sur ebay et autres :

  • Arduino UNO R3
  • Châssis prêt à l'emploi, plate-forme de robot Mobile à 4 roues motrices, châssis de voiture intelligente, Compatible Arduino
  • Moteurs à courant continu (DC) avec rotation dans les deux sens - 4 pcs.
  • Roues - 4 pièces.
  • Carte de contrôle de 4 moteurs DC Motor Drive Shield L293D
  • Télémètre à ultrasons HC-SR04, Module ultrasonique, capteur de mesure de Distance
  • Piles Ni-MH 1,2 V - 8 pièces.
  • Support de boîte en plastique pour piles, support de boîte à piles 4 piles AA - 2 pcs.
  • Type de batterie « Krona » 8,4 V - 1 pc.
  • Interrupteur à bascule en option - interrupteur d'alimentation

Le châssis, les moteurs à courant continu et les roues ont été achetés immédiatement en kit et même avec des instructions de montage.


Les entrées analogiques peuvent être utilisées comme sorties numériques ports d'entrée/sortie. Les broches Arduino correspondant aux entrées analogiques sont numérotées de 14 à 19. Cela s'applique uniquement aux broches Arduino, pas aux nombres physiques Broches du microcontrôleur Atmega.


Vous n'êtes pas obligé de dessiner, vous pouvez simplement tout mettre dans un tableau. Je l'ai fait comme ça.



Les broches D4, D7, D8, D12 seront occupées si des moteurs à courant continu ou des moteurs pas à pas sont utilisés.


Les broches D9 (contrôle du servo #1), D10 (contrôle du servo #2) ne seront occupées que si des servos sont utilisés.


La carte elle-même permettant de contrôler les moteurs Motor Drive Shield L293D n'utilise pas de broches Arduino.


Les broches d'alimentation 3,3 V, 5 V et la masse sont dupliquées sur le blindage d'entraînement du moteur en quantité suffisante. Il n’y a donc pas lieu de s’inquiéter de leur pénurie.


Si vous souhaitez toujours dessiner magnifiquement, le programme gratuit Fritzing vous aidera.


C'est le deuxième très point important. Cela dépend beaucoup de la nutrition. Par exemple, lorsqu'un servomoteur fait tourner un arbre selon un angle donné, il commence à consommer courant élevé. De plus, si le servo est connecté à une alimentation Arduino 5 V, une chute de tension se produit et le reste du circuit commence à tomber en panne, et l'Arduino peut même redémarrer en même temps.


Dans tous les cas, si vous utilisez des moteurs dans votre embarcation, un Motor Drive Shield (ou un circuit similaire) est nécessaire.


Nous avons donc 4 moteurs à courant continu (DC), un servomoteur, la carte Arduino elle-même et plusieurs capteurs. Les moteurs sont les plus gourmands en énergie, mais les capteurs peuvent être alimentés avec succès à partir des connecteurs de la carte Arduino elle-même, donc tout est simple avec eux. Pour plus de commodité, j'ai résumé l'ensemble du ménage dans un seul tableau.


Tension recommandée ou typique. Consommation actuelle Tension maximale Que comptez-vous manger ? Remarques
Carte Arduino UNO R3 7 - 12 V, 200 mA (moyenne) 6 - 20 "Krona 9V" Li-ion 650mAh, 8,4V Connecteur avec positif au centre
Servomoteur MG-995 5-6 V, 0,1 - 0,3A (crête) 4.8 - 7.2 Piles (5) pcs. Ni-MH 1,2 V = 6 V L'alimentation est fournie uniquement à partir d'une source distincte. Si vous l'alimentez avec l'Arduino, tout va mal. Tension Piles Ni-Mh 4 pcs. * 1,2 V = 4,8 V ne suffit pas. Certains prétendent que ce servo ne devrait pas être utilisé à 6 volts, seulement 4,8
Moteurs à courant continu (4 pièces) 6 - 8 V, courant de 70 mA à 250 mA 3 - 12 piles (5+3) pcs. Ni-MH 1,2 V = 9,6 V Vous ne pourrez pas faire fonctionner correctement les moteurs avec une pile 9V, alors ne perdez même pas votre temps (et vos piles) !
Bouclier d'entraînement moteur L293D pas obligatoire 4.5 - 36 pas obligatoire
Module Bluetooth HC-0506 3,3 V, 50 mA 1.8-3.6 Depuis la broche 3,3 V de la carte Arduino
Télémètre à ultrasons HC-SR04 5 V, 2 mA 5 Depuis la broche 5V de la carte Arduino

Je n'avais pas de convertisseur de tension DC/DC. Krona 9V s'est avéré pas très bon bonne source de la nourriture, je viens de l'avoir déjà mangée.


Mais d'usage Batteries Li-ion grande capacité J'ai refusé. Premièrement, parce que coût élevé, deuxièmement, dans les magasins en ligne chinois, il est facile de tomber sur des contrefaçons. Plus précisément, pas « facile », mais « toujours ». De plus, le Li-ion nécessite une manipulation particulière et n’est pas sécuritaire.


Ainsi, comme le montre le tableau, nous avons besoin de 3 sources d'alimentation indépendantes :

  • Pour carte Arduino et capteurs.
  • Pour servomoteur.
  • Pour 4 moteurs DC.

Où puis-je en obtenir autant ? Dans tous les cas, la carte Arduino elle-même doit être alimentée par une source distincte, car Lorsque la tension « fléchit », par exemple suite à la mise en marche des moteurs, la carte peut redémarrer ou simplement tomber en panne. Ici, nous utilisons une batterie au facteur de forme Krona 9V, et le connecteur qui se connectera à l'Arduino doit être avec un « plus au centre ».


Pour un servomoteur et 4 moteurs DC, vous pouvez vous contenter d’une seule source d’alimentation. Le seul problème est que le servomoteur est conçu pour une tension de 5 à 6 V (maximum 7,2 V) et un courant de 100 à 300 mA (crête), tandis que les moteurs à courant continu nécessitent 6 à 8 V (maximum 12 V) et un courant de 250 mA.


Pour résoudre le problème, il existe des convertisseurs DC-DC, mais je n’en avais pas. En conséquence, j'ai utilisé mon schéma de connexion « propriétaire » (sans aucun abaisseur circuits électroniques, uniquement tension et courant respectueux de l'environnement !) : connecté 8 pcs. batteries à 1,2V en série et prises en aux bons endroits, comme le montre le schéma.



6 V sont allés au servomoteur et 9,6 aux moteurs à courant continu. Il est clair que les batteries 1 à 5 connaîtront une charge accrue.


Pour contrôler les servomoteurs et les moteurs à courant continu, j'ai utilisé un blindage de commande de moteur à 4 canaux basé sur la puce L293D.


Assemblez le châssis fini petit problème. Mais ne pensez pas que sans le terminer, tout s’enchaînera tout de suite. Alors préparez vos limes à aiguilles.




Il n'est normalement pas possible de connecter plusieurs moteurs, un servomoteur ou un moteur pas à pas directement à l'Arduino. Puisque les broches (conclusions) d'Arduino sont à faible courant. Pour résoudre le problème, il y a module supplémentaire contrôle d'entraînement - Motor Drive Shield basé sur la puce L293D, qui est l'une des puces les plus courantes conçues à cet effet. La puce L293D est également connue sous le nom de H-Bridge.


J'ai utilisé une carte qui fournit 4 canaux de connectivité sur deux puces L293D et registre à décalage. Disponible sur eBay pour 5 $.


Cette carte de module de commande de variateur présente les caractéristiques suivantes.

  • Bouclier d'entraînement moteur L293D compatible avec Arduino Mega 1280 et 2560, UNO, Duemilanove, Diecimila
  • Contrôle 4 canaux
  • alimentation moteur de 4,5V à 36V
  • courant de charge admissible 600 mA par canal, courant de crête - 1,2 A
  • protection contre la surchauffe
  • 2 interfaces avec une minuterie Arduino précise (il n'y aura pas de « jitter ») pour connecter les servomoteurs à une tension de 5 V si la tension d'alimentation est nécessaire plus élevée, alors la connexion d'alimentation doit être refaite comme décrit ci-dessous ;
  • Vous pouvez contrôler simultanément 4 moteurs à collecteur CC bidirectionnels ou 2 moteurs pas à pas et 2 servomoteurs
  • 4 moteurs CC bidirectionnels connectés chacun à un bus 8 bits pour une sélection individuelle de vitesse
  • connexion jusqu'à 2 entraînements pas à pas (unipolaires ou bipolaires), simple bobine, double bobine ou pas alterné
  • prise de connexion source externe pour alimentation séparée de la logique de commande et des moteurs
  • Bouton RÉINITIALISATION Arduino
  • La bibliothèque Adafruit AFMotor est utilisée pour le contrôle.

Motor Drive Shield nécessite une petite modification pour pouvoir connecter quoi que ce soit après. J'ai soudé les connecteurs nécessaires par dessus, et voilà ce qui s'est passé.



Les moteurs peuvent être connectés à une source d'alimentation supplémentaire à la carte Arduino. C'est la méthode de connexion que je recommande. Pour ce faire, vous devez retirer et ouvrir le cavalier, comme indiqué sur l'image.



Dans ce cas, l’Arduino est alimenté et les moteurs sont alimentés indépendamment les uns des autres.


La LED sur le capot du moteur s'allume lorsque les moteurs sont alimentés ; si elle n'est pas allumée, les moteurs ne fonctionneront pas.


Nouveau problème.


La position du cavalier d'alimentation n'affecte pas les servomoteurs ; ils seront toujours alimentés par l'Arduino 5V. Étant donné que les servos consomment généralement beaucoup de courant et s'il n'y a pas assez de puissance, l'ensemble de l'appareil commence à tomber en panne ; dans le « meilleur » des cas, seul le servo tombera en panne - il ne tournera pas à un angle donné, ou tout le temps avant. à chaque tour, il tournera d'abord à 0 degré, et ensuite seulement à un angle donné (et s'il en a le temps). Par conséquent, je recommande d'alimenter le servo également à partir de source supplémentaire nutrition. Pour ce faire, vous devrez modifier légèrement le schéma de connexion : mordre le fil positif (généralement rouge) du connecteur standard et le connecter directement au positif de la source d'alimentation.



Lors de la connexion du Motor Drive Shield, les broches analogiques ne sont pas utilisées. Les broches numériques 2, 13 ne sont pas utilisées.


Les broches ci-dessous ne sont utilisées que si des moteurs à courant continu ou des moteurs pas à pas appropriés sont connectés et utilisés :

  • D11 : Moteur DC #1 / Stepper #1 (activation et contrôle de vitesse)
  • D3 : Moteur DC #2 / Stepper #1 (activation et contrôle de vitesse)
  • D5 : Moteur DC #3 / Stepper #2 (activation et contrôle de vitesse)
  • D6 : Moteur DC #4 / Stepper #2 (activation et contrôle de vitesse)

Ces broches seront occupées si des DC/steppers sont utilisés : D4, D7, D8, D12.


Les broches ci-dessous ne seront occupées que si les servos correspondants sont utilisés :

  • D9 : Commande du servo #1
  • D10 : Commande du servo #2


Pour démarrer avec Motor Drive Shield, vous devez télécharger et installer la bibliothèque Adafruit AFMotor.


Exemple de code pour contrôler les moteurs :


#inclure // inclut la bibliothèque Adafruit #include // connecte la bibliothèque du servomoteur AF_DCMotor motor(1); // crée un objet moteur, spécifiant le numéro du connecteur du moteur à courant continu sur la carte blindée du moteur et, éventuellement, la fréquence du servomoteur ; // crée un objet servomoteur servo.attach(10); // connectez le servo à la broche 9 ou 10 (le connecteur le plus à l'extérieur de la carte blindée du moteur) motor.setSpeed(speed); // définit la vitesse du moteur à courant continu de 0 (arrêt) à 255 (pleins gaz) motor.run(RELEASE); // Arrêt du moteur à courant continu motor.run(FORWARD); // Moteur à courant continu en avant motor.run(BACKWARD); // Servo inverse du moteur à courant continu.write(90); // faites pivoter le servo de 90 degrés.

Mon moteur à courant continu n'a commencé à tourner que lorsque la vitesse était réglée à plus de 100 ; si elle était inférieure, il bourdonnait simplement. Vous devrez déterminer expérimentalement la vitesse minimale de votre moteur.


Pour les moteurs connectés à M1 et M2, vous pouvez régler la fréquence : MOTOR12_64KHZ, MOTOR12_8KHZ, MOTOR12_2KHZ, MOTOR12_1KHZ. Vitesse la plus élevée la rotation est obtenue à 64 KHz, cette fréquence sera audible, fréquence et vitesse inférieures à 1 KHz mais consomme également moins d'énergie. Les moteurs 3 et 4 fonctionnent toujours à 1 KHz ; les autres valeurs sont ignorées. La valeur par défaut est de 1 KHz partout.


Après cela, vous devez effectuer un test moteur. . Au début du croquis, changez le numéro du moteur dans une ou plusieurs lignes comme :


Moteur AF_DCMotor(...);

Le croquis fait tourner le(s) moteur(s) vers l'avant lorsque le robot se déplace pendant un certain temps, puis vers l'arrière. Regardez attentivement si le moteur tourne dans le mauvais sens et changez la polarité de la connexion si nécessaire.


Nous connectons le module ultrasonique de télémètre à ultrasons HC-SR04. Brochage :

  • Trig(T)
  • Écho (R)

Temps passé par un télémètre à ultrasons sur les mesures (déterminé empiriquement) :

  • maximum 240 ms si la distance est trop grande (hors de portée)
  • minimum 1 ms si la distance est trop courte
  • une distance de 1,5 m est déterminée en 10 ms environ


Le capteur télémétrique à ultrasons, de par sa nature physique, et non parce que la Chine, détermine dans certains cas mal la distance à un obstacle :

  • s'il y a un obstacle forme complexe, alors les ultrasons sont réfléchis sous différents angles et le capteur se trompe,
  • Les ultrasons sont parfaitement absorbés (c'est-à-dire non réfléchis) par les meubles rembourrés ou les jouets, et le capteur pense qu'il n'y a rien devant eux.

En d'autres termes, idéalement pour un télémètre à ultrasons, ce serait formidable si tous les obstacles se présentaient sous la forme d'un plan solide perpendiculaire à la direction du rayonnement ultrasonore.


Certains problèmes peuvent être résolus en utilisant un capteur de distance infrarouge. Mais ce n'est pas parfait non plus :

  • petite portée maximale par rapport aux ultrasons : 0,3-0,8 m contre 4 m
  • grande distance minimale par rapport aux ultrasons : 10 cm contre 2 cm
  • Dépendance de la sensibilité du capteur à l'éclairage général.

Bien que si ces télémètres étaient installés par paires, leurs performances augmenteraient sensiblement.

Connectez le Bluetooth HC-05

Comme nous pouvons le voir sur la fiche technique, les principales broches du HC-05 « nu » :

  • Transmission TX (broche 1)
  • RX (broche 2) reçoit
  • Alimentation 3,3 V (broche 12) 3,3 V
  • GND (broche 13) masse
  • Indicateur de mode PIO8 (broche 31)
  • État de connexion PIO9 (broche 32), si la connexion est établie, la sortie sera élevée
  • PIO11 (broche 34) pour activer le mode de commande AT

Notre module est soudé au Breakout/Base Board, qui dispose déjà d'un diviseur de tension, sa plage de tension de fonctionnement est donc de 3,3 V à 6 V.


Nous connectons notre ensemble de modules Bluetooth :

  • Arduino (TX)-(RX) HC-05
  • Arduino (RX)-(TX) HC-05
  • Arduino (+5V) - (VCC) Bluetooth
  • Arduino (GND) - (GND) Bluetooth
  • Les broches LED et KEY ne sont pas utilisées

Une fois le module Bluetooth HC-05 alimenté, le voyant situé dessus doit clignoter, ce qui signifie que le Bluetooth fonctionne.


Nous activons le Bluetooth sur le mobile, trouvons l'appareil portant le nom HC-05 et nous connectons, le mot de passe est 1234.


Pour tester, remplissez Arduino simple esquisser:


nombre entier = 0 ; void setup() ( Serial.begin(9600); Serial.println("Test Arduino + Bluetooth. http://localhost"); ) void loop() ( count++; Serial.print("Count = "); Serial. println(compte); délai(1000);

Sur un téléphone Android, nous installons le terminal Bluetooth. Nous nous connectons à l'appareil HC-05 et regardons les lignes avec un compteur croissant sur l'écran du téléphone.


Pour que le module accepte les commandes AT, il doit être mis dans le mode approprié - pour ce faire, vous devez régler la broche KEY (PIO11) sur la logique 1. Sur certaines cartes de dérivation/base, au lieu de la broche KEY, il y a une broche EN (ENABLE), qui peut ou non être soudée à une broche sur la puce elle-même. Cela s'applique uniquement aux puces HC05. C'est juste que ma broche EN de la carte n'est soudée nulle part. Il peut donc être soudé fil séparéà la broche KEY(PIO11) de la puce. Ou, pendant le fonctionnement, pour mettre le HC05 en mode de commande AT, court-circuitez la broche de la puce KEY(PIO11) avec la broche d'alimentation Vcc pendant quelques secondes. Pour HC06, la broche KEY n’est pas nécessaire.

Logiciel

Note. Chaque fois avant de charger un programme dans l'Arduino, assurez-vous que le module Bluetooth n'est pas connecté à l'Arduino. Cela entraînera des problèmes pour remplir le croquis. Débranchez simplement l'alimentation de Module Bluetooth ou des fils reliant les broches du module Arduino et RX, TX.


Au début du croquis, modifiez les numéros de moteur en lignes comme :


Moteur AF_DCMotor(...);

Si vous remplacez la ligne


débogage d'octet = 0 ;

débogage d'octets = 10 ;

alors le mode de débogage s’activera.


En mode débogage, le robot RoboCar4W ne conduira pas et ne fera pas tourner ses roues. Activez plutôt le moniteur port série et là, vous verrez comment il « conduit » virtuellement. Au lieu d'avancer réellement, la chaîne « Forward » sera écrite sur le moniteur du port série, au lieu d'inverser avec un virage à gauche - « Turn Back L(eft) », etc. Le capteur de distance à ultrasons ne fait rien non plus, mais les distances jusqu'aux obstacles sont générées par programme et de manière aléatoire.

Ajouter des balises

Des questions ?

Signaler une faute de frappe

Texte qui sera envoyé à nos rédacteurs :