Guide de bouclier pour le contrôle RobotPower MultiMoto (2 / 3 étapes)

Étape 2: programmation

La programmation semble plus confuse qu’il est vraiment, il y a juste beaucoup de variables à initialiser. Une fois que tout est mis en place le contrôle est facile.

Ce code s’exécute le programme d’installation, puis déplace les actionneurs et sortir à moitié vitesse et à pleine vitesse.

Les choses importantes à noter lorsque vous contrôlez le MultiMoto :

-Utiliser digitalWrite() pour activer les moteurs, faible = activé, élevée = désactivé

-DigitalWrite() utilisation sur les broches de direction pour définir la direction des moteurs. 1 ou 0 comme extension ou rétraction dépend de comment vous connecté l’actionneur sur les bornes de M1 à M4.

-Utiliser analogWrite() sur les broches PWM pour régler la vitesse (0-255)

 /* Example code to control up to 4 actuators,using the Robot Power MultiMoto driver. Hardware: - Robot Power MultiMoto - Arduino Uno Wiring: - Connect actuators to the M1, M2, M3, M4 connections on the MultiMoto board. - Connect the negative (black) to the right connection, positive (red) to the left. - Connect a 12 volt source (minimum 1A per motor if unloaded, 8A per motor if fully loaded)to the BAT terminals. Ensure that positive and negative are placed in the correct spots. Code modified by Progressive Automations from the example code provided by Robot Power <a href="http://www.robotpower.com/downloads/" rel="nofollow"> http://www.robotpower.com/downloads/</a> Robot Power MultiMoto v1.0 demo This software is released into the Public Domain */ // include the SPI library: #include <SPI.h> // L9958 slave select pins for SPI #define SS_M4 14 #define SS_M3 13 #define SS_M2 12 #define SS_M1 11 // L9958 DIRection pins #define DIR_M1 2 #define DIR_M2 3 #define DIR_M3 4 #define DIR_M4 7 // L9958 PWM pins #define PWM_M1 9 #define PWM_M2 10 // Timer1 #define PWM_M3 5 #define PWM_M4 6 // Timer0 // L9958 Enable for all 4 motors #define ENABLE_MOTORS 8 int pwm1, pwm2, pwm3, pwm4; boolean dir1, dir2, dir3, dir4; void setup() { unsigned int configWord; // put your setup code here, to run once: pinMode(SS_M1, OUTPUT); digitalWrite(SS_M1, LOW); // HIGH = not selected pinMode(SS_M2, OUTPUT); digitalWrite(SS_M2, LOW); pinMode(SS_M3, OUTPUT); digitalWrite(SS_M3, LOW); pinMode(SS_M4, OUTPUT); digitalWrite(SS_M4, LOW); // L9958 DIRection pins pinMode(DIR_M1, OUTPUT); pinMode(DIR_M2, OUTPUT); pinMode(DIR_M3, OUTPUT); pinMode(DIR_M4, OUTPUT); // L9958 PWM pins pinMode(PWM_M1, OUTPUT); digitalWrite(PWM_M1, LOW); pinMode(PWM_M2, OUTPUT); digitalWrite(PWM_M2, LOW); // Timer1 pinMode(PWM_M3, OUTPUT); digitalWrite(PWM_M3, LOW); pinMode(PWM_M4, OUTPUT); digitalWrite(PWM_M4, LOW); // Timer0 // L9958 Enable for all 4 motors pinMode(ENABLE_MOTORS, OUTPUT); digitalWrite(ENABLE_MOTORS, HIGH); // HIGH = disabled / /******* Set up L9958 chips ********* ' L9958 Config Register ' Bit '0 - RES '1 - DR - reset '2 - CL_1 - curr limit '3 - CL_2 - curr_limit '4 - RES '5 - RES '6 - RES '7 - RES '8 - VSR - voltage slew rate (1 enables slew limit, 0 disables) '9 - ISR - current slew rate (1 enables slew limit, 0 disables) '10 - ISR_DIS - current slew disable '11 - OL_ON - open load enable '12 - RES '13 - RES '14 - 0 - always zero '15 - 0 - always zero */ // set to max current limit and disable ISR slew limiting configWord = 0b0000010000001100; SPI.begin(); SPI.setBitOrder(LSBFIRST); SPI.setDataMode(SPI_MODE1); // clock pol = low, phase = high // Motor 1 digitalWrite(SS_M1, LOW); SPI.transfer(lowByte(configWord)); SPI.transfer(highByte(configWord)); digitalWrite(SS_M1, HIGH); // Motor 2 digitalWrite(SS_M2, LOW); SPI.transfer(lowByte(configWord)); SPI.transfer(highByte(configWord)); digitalWrite(SS_M2, HIGH); // Motor 3 digitalWrite(SS_M3, LOW); SPI.transfer(lowByte(configWord)); SPI.transfer(highByte(configWord)); digitalWrite(SS_M3, HIGH); // Motor 4 digitalWrite(SS_M4, LOW); SPI.transfer(lowByte(configWord)); SPI.transfer(highByte(configWord)); digitalWrite(SS_M4, HIGH); //Set initial actuator settings to pull at 0 speed for safety dir1 = 0; dir2 = 0; dir3 = 0; dir4 = 0; // Set direction pwm1 = 0; pwm2 = 0; pwm3 = 0; pwm4 = 0; // Set speed (0-255) digitalWrite(ENABLE_MOTORS, LOW);// LOW = enabled } // End setup void loop() { dir1 = 1; pwm1 = 255; //set direction and speed digitalWrite(DIR_M1, dir1); analogWrite(PWM_M1, pwm1); // write to pins dir2 = 0; pwm2 = 128; digitalWrite(DIR_M2, dir2); analogWrite(PWM_M2, pwm2); dir3 = 1; pwm3 = 255; digitalWrite(DIR_M3, dir3); analogWrite(PWM_M3, pwm3); dir4 = 0; pwm4 = 128; digitalWrite(DIR_M4, dir4); analogWrite(PWM_M4, pwm4); delay(5000); // wait once all four motors are set dir1 = 0; pwm1 = 128; digitalWrite(DIR_M1, dir1); analogWrite(PWM_M1, pwm1); dir2 = 1; pwm2 = 255; digitalWrite(DIR_M2, dir2); analogWrite(PWM_M2, pwm2); dir3 = 0; pwm3 = 128; digitalWrite(DIR_M3, dir3); analogWrite(PWM_M3, pwm3); dir4 = 1; pwm4 = 255; digitalWrite(DIR_M4, dir4); analogWrite(PWM_M4, pwm4); delay(5000); }//end void loop 

Articles Liés

Description de bouclier pour le contrôle de la MegaMoto RobotPower

Description de bouclier pour le contrôle de la MegaMoto RobotPower

MegaMoto Plus H bridge et les gradateurs MegaMoto GT sont les boucliers pour l'Arduino pour commander des moteurs. Le MegaMoto Plus prend une tension d'entrée de 5-28V et peut produire 20 a du courant, avec des pointes de 40 a. La MegaMoto GT, avec l
Guide de survie pour Airsoft : débutant

Guide de survie pour Airsoft : débutant

Hé les gars,Il s'agit d'un Guide de survie pour Airsoft destiné à aider les débutants dans la communauté de l'Airsoft. Ici seront des instructions étape par étape pour transformer un débutant en un expert bien éduqué.Étape 1: S'informer Avoir informé
Rendre Amarino évaluation bouclier pour Arduino-Android-Bluetooth expériences

Rendre Amarino évaluation bouclier pour Arduino-Android-Bluetooth expériences

cet article vous montre les étapes pour faire l'évaluation Amarino bouclier conçu et réalisé par www.buildcircuit.com. Le bouclier présenté sur cet article est une réplique d'un bouclier publié sur buildcircuit, sauf que le commutateur de Bluetooth a
Comment construire un bouclier pour le Linkit One

Comment construire un bouclier pour le Linkit One

Salut tout le monde! Carbone pur ici avec un autre Instructable. Aujourd'hui, je vais vous montrer comment construire un bouclier personnalisé pour le Conseil un Linkit. Avant d'entrer dans qui cependant je dois vous dire pourquoi je suis allé sur ce
Appareil de bricolage pour stores contrôle distants

Appareil de bricolage pour stores contrôle distants

Si vous cherchez à améliorer de façon significative les détails et le style de votre maison, alors vous devriez considérer construction et installation dispositif DIY pour stores de contrôle distants.C'est super facile et amusant à construire et peut
Serveur Web pour le contrôle des appareils ménagers

Serveur Web pour le contrôle des appareils ménagers

Cette instructable décrit comment faire un serveur Web simple mais puissant, utilisé pour le contrôle d'appareils électroménagers. Au coeur du circuit est le microcontrôleur ATmega328. J'ai choisi ce parce que je voulais utiliser les bibliothèques de
Remèdes à la maison simple pour le contrôle de gestion et de l’obésité poids

Remèdes à la maison simple pour le contrôle de gestion et de l’obésité poids

gestion du poids est la plus grande préoccupation.Il y a quelques remèdes maison pour le contrôle de l'obésité, qui sont vraiment tres simple n facile à suivre.mais on doit suivre « Seulement un remède à la fois »SOLUTION 1-C'est le plus commun. n qu
Un guide de noobs pour airsoft

Un guide de noobs pour airsoft

tout ce que le titre dit que c'est, un guide de noobs pour airsoft.Étape 1: Votre équipe Votre équipe est très important. Vous ne pouvez pas jouer sans une bonne équipe, même avec une bonne équipe vous serez presque imparable. Vous avez besoin d'au m
Guide de Minecraft pour tout chapitre 2 ; plus de choses

Guide de Minecraft pour tout chapitre 2 ; plus de choses

Nouveau! guide de Minecraft pour tout cette instructable a plus de 5 fun rempli de sujets et plus de 5 instructions pour chacun des sujets. Il s'agit de biger de façon que le précédent. Cela aussi a des instructions pour ps3 edition x-box 360 editon
D-moteur pilote bouclier (pour contrôle de vitesse)

D-moteur pilote bouclier (pour contrôle de vitesse)

"D-moteur pilote bouclier v1.0"-Un bouclier économique moteur et pilote pour les cartes arduinoCe projet vise à encourager les amateurs de robot pour diminuer ses dépenses lors de robotsparce que toutes les parties d'un robot doivent être idéale
DIY Apple Remote bouclier pour l’Arduino

DIY Apple Remote bouclier pour l’Arduino

avez-vous déjà souhaité faire un apple remote ? Ou peut-être envie d'avoir une de vos créations arduino en contrôle iTunes sur votre Mac, votre iPod ou votre Apple TV ? Maintenant vous pouvez !Quelque temps en arrière, je travaillais sur un projet qu
Hacking A trousseau appareil photo numérique pour le contrôle de l’Arduino

Hacking A trousseau appareil photo numérique pour le contrôle de l’Arduino

options de photographie de l'Arduino sont peu nombreuses et espacées. Webcams ne sont pas pratiques pour les applications comme la photographie de cerf-volant ou photographie publique, à moins que vous envie d'acheter un câble USB 200 pieds. Et les t
Smartphone Arduino RBL BLE bouclier RGB Led contrôleur

Smartphone Arduino RBL BLE bouclier RGB Led contrôleur

Il s'agit d'un projet, que j'ai pensé pendant un certain temps. Je voulais avoir quelques lumières de RVB led sur mon bateau contrôlé à distance par mon Iphone.Il s'agit d'un projet intermédiaire car nous aurons besoin de souder, qui peut être diffic
Guide de capteur pour Linkit One de couleur

Guide de capteur pour Linkit One de couleur

Salut, j'ai fait capteur de couleur récemment et j'ai senti que ce n'était pas un guide bien clair quant à son utilisation avec arduino et j'ai un linkit une planche aussi, alors j'ai pensé à publier une instructable sur cette base. Profitez!!Étape 1