Table des matières:

Comment faire un robot cool à partir d'une voiture RC : 11 étapes
Comment faire un robot cool à partir d'une voiture RC : 11 étapes

Vidéo: Comment faire un robot cool à partir d'une voiture RC : 11 étapes

Vidéo: Comment faire un robot cool à partir d'une voiture RC : 11 étapes
Vidéo: Fabrication d'un CAMION Miniature Radiocommandé 🚚😲 2024, Novembre
Anonim
Comment faire un robot cool à partir d'une voiture RC
Comment faire un robot cool à partir d'une voiture RC

Ce projet sympa est destiné aux lycéens ou à tout amateur qui veut faire un robot sympa. J'essayais de faire un robot interactif depuis longtemps, mais en faire un n'est pas facile si vous ne connaissez pas l'électronique ou les langages de programmation spéciaux. Il existe maintenant un langage de programmation appelé nqBASIC, totalement gratuit, pour créer votre propre robot.

Étape 1: De quoi avez-vous besoin ?

De quoi as-tu besoin?
De quoi as-tu besoin?
De quoi as-tu besoin?
De quoi as-tu besoin?
De quoi as-tu besoin?
De quoi as-tu besoin?
De quoi as-tu besoin?
De quoi as-tu besoin?

Vous aurez besoin de quelques pièces pour ce projet sympa.1) Allez trouver une voiture RC qui a deux moteurs à courant continu. J'ai trouvé une voiture très bon marché appelée Thunder tumbler pour 12 $. L'image est ci-dessous. 2) Vous aurez besoin d'une carte de contrôleur Servo Sensor appelée SSMI. Voici le lien pour l'obtenirhttps://www.technologicalarts.ca/catalog/product_info.php?currency=USD&products_id=2763) Vous aurez besoin d'un microcontrôleur pour cette carte appelé NanoCore12DXhttps://www.technologicalarts.ca/catalog/ product_info.php?cPath=50_36_92&products_id=4294) Vous avez besoin de deux capteurs si vous voulez rendre votre robot interactifhttps://www.technologicalarts.ca/catalog/product_info.php?cPath=25_147&products_id=1885) Câble série pour connecter votre ordinateur à votre robot à programmer.https://www.technologicalarts.ca/catalog/product_info.php?cPath=26&products_id=386) Un langage robot sympa développé pour ce produit s'appelle nqBASIC. Allez sur https://www.nqbasic.com et téléchargez gratuitement. Vous pouvez également poser des questions depuis leur forum.7) 4 piles AA (alcalines ou rechargeables)

Étape 2: Démontez la voiture RC

Prendre la voiture RC à part
Prendre la voiture RC à part

1) J'ai sorti toute l'électronique. Coupez les câbles de l'unité de contrôle à l'intérieur de la voiture RC, en ne laissant que la batterie, car elle était juste pour alimenter le SSMI (Carte d'interface servo/capteur/moteur pour NanoCore12DX).

Étape 3: Câbles CC et câbles de batterie connectés

Câbles CC et câbles de batterie attachés
Câbles CC et câbles de batterie attachés

Les deux moteurs à courant continu de la voiture R/C avaient déjà des câbles, alors je les ai attachés aux connecteurs enfichables (livrés avec la carte SSMI) sur mon SSMI. J'ai fait la même chose avec le câble de la batterie.

Étape 4: Câbles LED

Câbles DEL
Câbles DEL
Câbles DEL
Câbles DEL
Câbles DEL
Câbles DEL
Câbles DEL
Câbles DEL

Il reste 4 câbles. Ce sont des minces. Ce sont les câbles qui viennent des roues. Cette voiture RC a des LED à l'intérieur des roues arrière. Deux câbles sortent de chaque roue. Votre robot peut être joli avec ces LED. J'ai décidé d'utiliser ces LED pour rendre le robot plus amusant. Vous pouvez voir ces câbles sur la photo. J'ai monté un morceau de plastique noir provenant de l'arrière de la voiture sur l'avant de la voiture pour créer une belle surface plane pour monter la carte SSMI. J'ai utilisé des velcros pour monter SSMI dessus. Vous pouvez utiliser du ruban adhésif double face et des attaches si vous le souhaitez. Ensuite, j'ai inséré les câbles LED dans les trous à l'avant de la voiture. J'ai monté SSMI sur la voiture. Ensuite, j'ai branché les moteurs à courant continu et les prises de batterie à leurs emplacements.

Étape 5: Connectez les câbles LED à la carte SSMI

Connectez les câbles LED à la carte SSMI
Connectez les câbles LED à la carte SSMI
Connectez les câbles LED à la carte SSMI
Connectez les câbles LED à la carte SSMI
Connectez les câbles LED à la carte SSMI
Connectez les câbles LED à la carte SSMI

Ensuite, branchez les câbles LED aux bons endroits. Vous devez apprendre du manuel de la carte SSMI quels connecteurs vous pouvez utiliser. Allez-y et branchez-les aux mêmes endroits que moi. Plus tard, vous pourrez apprendre à placer ces câbles à différents endroits si vous le souhaitez. Voir les photos

Étape 6: Connecter les capteurs

Connecter les capteurs
Connecter les capteurs
Connecter les capteurs
Connecter les capteurs
Connecter les capteurs
Connecter les capteurs
Connecter les capteurs
Connecter les capteurs

Connectez les câbles du capteur aux bons endroits.

Étape 7: votre robot est prêt à rouler

Votre robot est prêt à rouler
Votre robot est prêt à rouler

Le matériel de votre robot est prêt. Maintenant, vous devez le programmer.

Étape 8: Installez le logiciel

Installer le logiciel
Installer le logiciel

Accédez à https://www.nqbasic.com et téléchargez le logiciel à partir du site Web. Toutes les instructions sont sur le site Web - comment installer et préparer votre ordinateur pour cela. Il y a aussi une vidéo YouTube sympa qui montre comment enregistrer le logiciel gratuitement. Ce langage de programmation est totalement gratuit. N'hésitez pas à vous inscrire. Sinon, vous ne pouvez pas compiler votre code.

Étape 9: Prêt à programmer

Prêt à programmer
Prêt à programmer

Connectez votre câble série du port série de votre ordinateur au port série SSMI.1) Lancez nqBASIC et sélectionnez project et newproject2) donnez un nom à votre projet et enregistrez-le.3) Il vous demandera quel module nanocore vous utilisez, sélectionnez NanoCore12DX de la liste. C'est le seul module qui fonctionne avec SSMI.4) Sélectionnez Fichier/Nouveau fichier. Il vous demandera si vous souhaitez ajouter ce fichier à votre projet. Dites Oui.5) Donnez un nom au fichier et cliquez sur Enregistrer.

Étape 10: Copiez et collez le code source

/* Copier d'ici à la fin de ce texteExemple pour DIP32 (8mHz)*/dim M00 comme nouveau pwm(PP0)dim M01 comme nouveau pwm(PP1)dim M11 comme nouveau pwm(PP2)dim M10 comme nouveau pwm(PP3) dim IR1 comme nouvel ADC(PAD05) //Objet ADC pour Sharp Sensor (Front)dim IR1Result as new bytedim IR2 as new ADC(PAD03) //Objet ADC pour Sharp Sensor (Back)dim IR2Result as new bytedim myChar as new byte / /Variable pour stocker les caractères reçus dim S en tant que nouveau SCI (PS0, PS1) // SCI objectdim SPK en tant que nouveau DIO (PM4) // Utilisation du haut-parleur sur le SSIM const ontime = 20dim durée en tant que nouveau wordConst A2 = 2273 // Notes de musiqueConst A3 = 1136 // Notes de musiqueConst A4 = 568 // Notes de musique pour émettre du son lorsque le robot voit quelque chose dim WLED1 comme nouveau DIO (PM2) // LED sur les roues dim WLED2 comme nouveau DIO (PM3) // LED sur la boucle dim comme nouvel octetConst OFF = 0Const ON = 1Const FOREVER = 1Const A = 200Const B = 10Const DEL_1MSEC = 1000sub DelayMsec (en octets en millisecondes) tandis que (millisecondes > 0) System. Delay (DEL_1MSEC) //Délai 1000 microsecondes pour faire 1 milliseconde milliseconde onds = millisecondes - 1 end whileend subsub stop() // pour arrêter les moteurs M00. PWM_Start(PWM_MAIN_CLK, 0, 250, 250) M01. PWM_Start(PWM_MAIN_CLK, 0, 250, 250) M10. PWM_Start(PWM_MAIN_CLK, 0, 250, 250) M11. PWM_Start(PWM_MAIN_CLK, 0, 250, 250)end subsub goback() // le robot va revenir en arrière M00. PWM_Start(PWM_MAIN_CLK, 0, 250, 180) M01. PWM_Start(PWM_MAIN_CLK, 0, 250, 250) M10. PWM_Start(PWM_MAIN_CLK, 0, 250, 180) M11. PWM_Start(PWM_MAIN_CLK, 0, 250, 250) end subsub turnright() // tourner le robot vers la droite M00. PWM_Start(PWM_MAIN_CLK, 0, 250, 250) M01. PWM_Start(PWM_MAIN_CLK, 0, 250, 180) M10. PWM_Start(PWM_MAIN_CLK, 0, 250, 250) M11. PWM_Start(PWM_MAIN_CLK, 0, 250, 250) end subsub turnleft() // tourne le robot vers la gauche M00. PWM_Start(PWM_MAIN_CLK, 0, 250, 250) M01. PWM_Start(PWM_MAIN_CLK, 0, 250, 250) M10. PWM_Start(PWM_MAIN_CLK, 0, 250, 250) M11. PWM_Start(PWM_MAIN_CLK, 0, 250, 180)end sous-titre () // faire avancer le robot M00. PWM_Start(PWM_MAIN_CLK, 0, 250, 250) M01. PWM_Start(PWM_MAIN_CLK, 0, 250, 180) //gauche dc M10. PWM_Start(PWM_MAIN_CLK, 0, 250, 250) M11. PWM_Start(PWM_MAIN_CLK, 0, 250, 180) //droit dcend subsub wait3() // mes propres délais DelayMsec(A) DelayMsec(A) DelayMsec(A)end subsub wait4() DelayMsec(A) DelayMsec(A) DelayMsec(A) DelayMsec(A)end subsub wait5() DelayMsec(A) DelayMsec(A) DelayMsec(A) DelayMsec(A) DelayMsec(A))end subsub wait10() //long delay loop = 1 while(loop < 11) DelayMsec(A) loop =loop + 1 end whileend subsub playsound() // pour jouer les notes duration = ontime while(duration > 0) SPK. PIN_Out(PM4, ON) system. Delay(A2) SPK. PIN_Out(PM4, Off) system. Delay(A2) durée = durée - 1 fin pendant DelayMsec(B) durée = ontime pendant(durée > 0) SPK. PIN_Out (PM4, ON) system. Delay(A3) SPK. PIN_Out(PM4, Off) system. Delay(A3) durée = durée - 1 fin pendant que DelayMsec(B) durée = ontime pendant(durée > 0) SPK. PIN_Out(PM4, ON) system. Delay(A4) SPK. PIN_Out(PM4, Off) system. Delay(A4) durée = durée - 1 fin pendant que DelayMsec(B)end le sous-principal PWM. PWM_Res_PP0145 (TIMER_D) IV_16, 0) PWM. PWM_Res_PP23 (TIMER_DIV_16, 0) S. SER_Setup(SER_BUFFER_4, BAUD9600) //Configurer SCI et autoriser la mise en mémoire tampon de 4 caractères System. INTS_On () //ACTIVER LES INTERRUPTIONS ! S. SER_Put_string("Ceci est un test ") S. SER_Put_char ('\n') S. SER_Put_char ('\r') while (FOREVER) IR1. ADC_Start (WAIT, ADC_MODE_8ONCE) // Lecture de la valeur du capteur avant tranchant IR1. ADC_Read (PAD05, IR1Result) IR2. ADC_Start (WAIT, ADC_MODE_8ONCE) // Lecture de la valeur du capteur back sharp IR2. ADC_Read (PAD03, IR2Result) S. SER_Put_decimal(IR2Result, FILLUP_SPACE) // envoie la valeur à l'hyper windows terminal S. SER_Put_char ('\n') // crée une nouvelle ligne sur l'hyper terminal S. SER_Put_char ('\r') if ((IR1Result == 25) ou (IR1Result > 25)) stop() playound() wait5() WLED1. PIN_Out(PM2, ON) WLED2. PIN_Out(PM3, ON) goback() wait5() if ((IR2Result == 25) ou (IR2Result > 25)) stop() playound() wait5() turnleft () wait3() goahead() end if turnright() wait3() else goahead() end if if ((IR2Result == 25) ou (IR2Result > 25)) WLED1. PIN_Out(PM2, ON) WLED2. PIN_Out(PM3, ON) stop() wait5() turnright() wait3() WLED1. PIN_Out(PM2, OFF) WLED2. PIN_Out(PM3, OFF) goahead() wait3() else goahead() end if end whileend m ain

Étape 11: compiler et charger dans votre robot

Assurez-vous de mettre des piles dans votre robot et de l'allumer. Vous devriez voir la LED d'alimentation verte briller sur le SSMI. Sur le module Nanocore12DX, il y a un petit interrupteur, assurez-vous qu'il est en position de charge. Appuyez sur l'interrupteur de réinitialisation sur le SSMI. Accédez à nqbasic et sélectionnez Build and load. Il compilera votre code et le chargera dans votre robot. Retirez le câble série de votre robot et passez de la position de charge à la position de fonctionnement sur le module NanoCore12DX. Placez votre robot sur une surface plane et appuyez sur le bouton de réinitialisation du SSMI. Félicitations ! Si vous rencontrez des problèmes avec ces étapes, n'hésitez pas à écrire sur le forum nqBASIC. Je serai là et répondrai à toutes vos questions. Amusez-vous bien !

Conseillé: