Table des matières:
- Étape 1: ce dont vous aurez besoin
- Étape 2: Documentation
- Étape 3: préparer le support du capteur à ultrasons
- Étape 4: Montez le tout sur une carte de prototypage
- Étape 5: Établir les connexions finales
- Étape 6: démarrage du programme
- Étape 7: Comprendre le code C
- Étape 8: Comprendre le code Java
- Étape 9: Conclusion
Vidéo: Projet 3 : SonarDuino : 9 étapes
2024 Auteur: John Day | [email protected]. Dernière modifié: 2024-01-30 09:08
Cher ami amateur, Dans ce projet, nous explorerons la possibilité d'avoir un système radar à 360 degrés pour la détection d'objets. Le fait d'avoir ce module réglé séparément permettra à votre robot de locomotion de détecter les limites de son environnement. Il peut également servir d'outil de navigation à l'obscurité, mais uniquement lorsque vous marchez assez lentement;p
Étape 1: ce dont vous aurez besoin
Pour réaliser cette construction, vous devrez acheter les éléments suivants:
Arduino Nano:
Cartes de prototypage: https://www.ebay.com/itm/20pcs-set-4Size-Double-Side-Protoboard-Circuit-Universal-DIY-Prototype-PCB-Board/192076517108?epid=506557101&hash=item2cb8a70ef4:g:cQ4AAOSwN ~Zbl232:rk:13:pf:0
Servomoteurs:
Capteurs à ultrasons: https://www.ebay.com/itm/5PCS-Ultrasonic-Sensor-Module-HC-SR04-Distance-Measuring-Sensor-for-arduino-SR04/170897438205?epid=18020663283&hash=item27ca47f5fd:g:w ~IAAOSw--xbD5Fp:rk:2:pf:0
Étape 2: Documentation
Comme certains d'entre vous le savent peut-être déjà, ce projet est inspiré d'un autre projet open source appelé "Arduino Radar Project" réalisé par Dejan à partir de "How to Mechatronics" @ le lien suivant: https://howtomechatronics.com/projects/arduino -projet-radar/
Un autre point nécessitant une documentation est de télécharger les deux bibliothèques suivantes dans votre environnement de développement:
Bibliothèque Adafruit-GFX:
Adafruit_SSD1306:
Cela étant dit, pour vraiment comprendre le code C, vous devrez documenter les deux bibliothèques ci-dessus. En dehors de cela, les fonctions que j'ai utilisées dans mon code ont des noms révélateurs de ce qu'elles font.
Étape 3: préparer le support du capteur à ultrasons
Prenez n'importe quel morceau de carton et coupez-le en fonction de la dimension des câbles de connexion attachés au capteur comme indiqué sur la première image. Après cela, pliez ce dernier et collez-le sur le support du servomoteur. Une fois cela fait, collez les deux capteurs à ultrasons selon la dernière photo. Notez que l'en-tête des capteurs doit être soudé de manière à laisser les câbles sortir vers l'extérieur devant le capteur. Cela permettra aux câbles du capteur de ne pas interférer les uns avec les autres lorsque la rotation à 360 degrés est mise en œuvre.
Étape 4: Montez le tout sur une carte de prototypage
Dans cette étape, vous commencerez par monter le collecteur préparé à l'étape précédente dans son servomoteur respectif. Une fois le servomoteur soigneusement habitué, vous monterez le tout ensemble dans une carte de prototypage. Vous commencerez par souder l'Arduino Nano puis par coller le servo juste à côté. Enfin, vous souderez le petit écran OLED à l'autre bord de la carte.
Étape 5: Établir les connexions finales
Cette étape conclura le côté matériel de ce projet. Vous devrez suivre les schémas fournis pour établir toutes les connexions requises.
Étape 6: démarrage du programme
Il y a deux codes dont vous aurez besoin pour démarrer
Arduino (C):
Traitement (java):https://github.com/ReconaissantL/RadarDuino/blob/master/radarduino_java.pde
Lors de l'exécution du code, vous aurez le choix entre deux options:
Option 1: À l'aide de l'écran OLED, vous devrez pour cela définir la variable MODE dans le code C sur 0.
Option 2: Utilisation de votre moniteur, pour cela vous devrez définir la variable MODE dans le code C à 1. De plus, vous devrez télécharger et installer Processing development environment et télécharger la police radar à partir de ce lien: https:// github.com/lastralab/ArduinoRadar/blob/ma…
Et ajoutez ce fichier à votre fichier de code de traitement afin que votre code Java reconnaisse la police lorsqu'il est appelé.
Étape 7: Comprendre le code C
Le code se compose principalement de deux boucles « for ». L'un est corrélé à la passe avant tandis que l'autre est à la passe arrière. A l'intérieur des deux, la fonction principale draw_scanner(), qui tracera les lignes du radar sur l'écran, est appelée plusieurs fois. Après avoir testé plusieurs configurations, je suis arrivé à la conclusion qu'il fallait écraser les lignes radar blanches à l'instant t par ces mêmes lignes radar en noir à l'instant t+1 afin de les supprimer. Sinon, un scintillement se produirait à chaque fois que vous nettoyez l'affichage à l'aide de la fonction "clearDisplay()" avant de pousser la nouvelle grille de pixels. Comme je traitais avec 7 lignes - à des fins de conception - je devais continuer à enregistrer et à transmettre un tableau entier de 7 éléments, où chaque élément représente le rayon entre le centre du radar et l'objet détecté, le cas échéant. Dans cet esprit, le reste du code doit être simple à comprendre.
Étape 8: Comprendre le code Java
Dans Processing, j'ai dû contourner l'appel de fonction pour serialEvent(), qui ne fonctionne qu'avec les ports série nommés COM. Comme je travaillais sur un Mac, mes ports série portaient un nom différent. Cela étant dit, j'ai décompressé cette fonction dans la fonction principale du traitement de "draw()". Concernant tout le reste, j'ai mis à jour l'application pour répondre à la conception de la révolution complète. Enfin, j'ai mis à jour toutes les formes et textes dessinés en respectant la largeur de l'écran afin que le produit final s'adapte à différentes résolutions d'écran. Je l'ai personnellement testé pour les résolutions 1000X1000 et 500X500, et cela a bien fonctionné:).
Étape 9: Conclusion
Ce travail peut être amélioré pour avoir 3 capteurs à ultrasons, chacun couvrant un angle de vue de 120, ou même 4 capteurs (90 degrés * 4) -> plus rapide à 360 degrés. analyse.
Vous pouvez également étendre la portée du radar de 40 cm à 60 cm voire 80 cm. J'ai personnellement testé la fonction pulseIn et ajusté la variable TIMEOUT par rapport à 40 cm. Cette variable dépend de nombreux facteurs, y compris la longueur de l'impulsion envoyée et la surface de l'objet où l'impulsion est réfléchie.
Enfin, comme indiqué précédemment, la prochaine étape consiste à incorporer radarDuino avec un robot de locomotion pour balayer le périmètre environnant.
Conseillé:
Linefollower HoGent - Projet de synthèse : 8 étapes
Linefollower HoGent - Syntheseproject: Voor het vak syntheseproject kregen we de opdracht een linefollower te maken. Dans deze instructable zal ik uitleggen hoe ik deze gemaakt heb, en tegen welke problemen ik o.a ben aangelopen
Projet de stabilisateur de cardan : 9 étapes (avec photos)
Gimbal Stabilizer Project : Comment faire un cardanApprenez à faire un cardan à 2 axes pour votre caméra d'actionDans la culture d'aujourd'hui, nous aimons tous enregistrer des vidéos et capturer les moments, surtout lorsque vous êtes un créateur de contenu comme moi, vous avez certainement été confronté au problème de un vide si tremblant
Crédit supplémentaire de projet final ECG-BME 305 automatisé : 7 étapes
ECG automatisé - BME 305 Projet final Crédit supplémentaire : Un électrocardiogramme (ECG ou ECG) est utilisé pour mesurer les signaux électriques produits par un cœur qui bat et il joue un rôle important dans le diagnostic et le pronostic des maladies cardiovasculaires. Certaines des informations obtenues à partir d'un ECG incluent le rythme
Projet de bol automatisé de nourriture pour animaux de compagnie : 13 étapes
Projet de bol automatisé pour animaux de compagnie : cette instructable décrira et expliquera comment construire une mangeoire automatisée et programmable pour animaux de compagnie avec des bols de nourriture attachés. J'ai joint une vidéo décrivant le fonctionnement des produits et leur apparence
Graveur alimenté par USB ! Ce projet peut brûler à travers les plastiques/bois/papier (le projet amusant doit également être du bois très fin) : 3 étapes
Graveur alimenté par USB ! Ce projet peut brûler à travers du plastique/du bois/du papier (le projet amusant doit également être du bois très fin) : NE PAS FAIRE CELA EN UTILISANT UN USB !!!! J'ai découvert qu'il peut endommager votre ordinateur à partir de tous les commentaires. mon ordinateur va bien. Utilisez un chargeur de téléphone 600ma 5v. Je l'ai utilisé et cela fonctionne bien et rien ne peut être endommagé si vous utilisez une prise de sécurité pour arrêter l'alimentation