ArduBot (3 / 8 étapes)

Étape 3: Arduino Motorshield

Une fois que votre carte arduino est monté, le motorshield se glisse facilement dans. Connecter les interruptions sur les bornes de planches.

Une fois votre flasque arrière est connecté, il devient une question de programmation votre arduino :

const int DIRB = 13 ; ensembles de gauche en direction de moteur
const int DIRA = 12 ; définit le sens du moteur droit
const int PWMB = 11 ; analogique ; définit la vitesse du moteur
const int PW101 = 3 ;  analogique ; définit la vitesse du moteur

int PWMAfwd, PWMArev, PWMAleft, PWMAright, PWMAhalt, PWMBfwd, PWMBrev, PWMBleft, PWMBright ;

void setup() {}
pinMode (DIRB, sortie) ;
pinMode (PWMB, sortie) ;
pinMode (PW101, sortie) ;
pinMode (DIRA, sortie) ;
Serial.Begin(9600) ;
PWMAfwd = 200 ;      utilisé pour tailler les motorspeeds pour les exécutions différentes de robot
PWMBfwd = 255 ;
PWMArev = 200 ;
PWMBrev = 255 ;
PWMAleft = 200 ;
PWMBleft = 255 ;
PWMAright = 200 ;
PWMBright = 255 ;
}

Sub fwd () {//sets moteurs de transmettre
digitalWrite (DIRA, élevé) ;
digitalWrite (DIRB, élevé) ;
analogWrite (PW101, PWMAfwd) ;
analogWrite (PWMB, PWMBfwd) ;

}

Sub rev () {//sets moteurs pour inverser
digitalWrite (DIRB, faible) ;
digitalWrite (DIRA, faible) ;
analogWrite (PWMB, PWMBrev) ;
analogWrite (PW101, PWMArev) ;
}

vide laissé () {bot de //turns a laissé sur place
digitalWrite (DIRB, faible) ;
digitalWrite (DIRA, élevé) ;
analogWrite (PWMB, PWMBleft) ;
analogWrite (PW101, PWMAleft) ;
}

void droite () {/ / tourne bot droite sur place
digitalWrite (DIRB, élevé) ;
digitalWrite (DIRA, faible) ;
analogWrite (PWMB, PWMBright) ;
analogWrite (PW101, PWMAright) ;
}

halt Sub () {//stops moteurs
digitalWrite (PWMB, basse) ;
digitalWrite (PW101, basse) ;

}

void directiontest () {}

FWD () ;
retarder (1000) ;
stopper () ;
retarder (1000) ;
Rev () ;
retarder (1000) ;
stopper () ;
retarder (1000) ;
(de gauche) ;
retarder (1000) ;
stopper () ;
retarder (1000) ;
(de droite) ;
retarder (1000) ;
stopper () ;
retarder (1000) ;

}

void loop () {}
directiontest() ;
}

Si les mouvements de votre bot ne correspond pas à vos noms de fonction, vous pouvez re positionner les câbles du moteur afin que les direction broche haute ensembles d’écriture avant les moteurs, ou vous pouvez l’ajuster dans votre programme.

Il n’est pas nécessaire de définir des variables pour chaque processus de modulation de largeur impulsion, mais je voulais être en mesure de régler les vitesses de moteurs dans différentes fonctions.

Articles Liés

Une Arduino Infrared contrôlé et Obstacle Avoidance Robot

Une Arduino Infrared contrôlé et Obstacle Avoidance Robot

Salut tout le monde,Cette Instructables est divisé en deux phases, qui le rend approprié pour les débutants et les concepteurs de robot intermédiaire.La première phase couvre l'utilisation de l'arduino nano Conseil seulement comme contrôleur. Avec ce
Plate-forme robotique expérimentale

Plate-forme robotique expérimentale

Salut! Mon nom est Andrew, et je suis un étudiant en informatique.J'ai commencé à travailler sur ce robot pour les deux amusant et dans le cadre de ma thèse de licence.Tout a commencé quand j'ai acheté un kit de robot provenant d'un site appelé Conra