Télécharger Imprimer la page

DFRobotShop Mini Rover Mode D'emploi page 30

Publicité

Encodeurs (en option)
Le code ci-dessous compte simplement le nombre de changements tels qu'ils sont visualisés
par un encodeur analogique à canal unique. L'encodeur suggéré (Tamiya Encoder Kit) utilise un
disque avec 8x sections blanches et 8x découpes. Cela fournira un compte de 16 par rotation
de 360 degrés. À vous de l'optimiser et de l'intégrer à votre code. Le code envoie également
des commandes aux moteurs pour les faire tourner.
int
rawsensorValue = 0;
int
sensorcount0 = 0;
int
sensorcount1 = 0;
long
count = 0;
void
setup() {
int
i;
for(i=5;i<=8;i++)
pinMode(i, OUTPUT);
Serial.begin(9600);
int
leftspeed = 255;
int
rightspeed = 255;
}
void
loop() {
analogWrite
digitalWrite(12,LOW);
analogWrite
digitalWrite(13,LOW);
delay(20);
rawsensorValue = analogRead(0);
if
(rawsensorValue < 600){
state chance can be done at 600.
sensorcount1 = 1;
}
else
{
sensorcount1 = 0;
}
if
(sensorcount1 != sensorcount0){
count ++;
}
sensorcount0 = sensorcount1;
Serial.println(count);
}
// Store the value coming from the sensor
//255 is maximum speed
(10,255);
(11,255);
//Min value is 400 and max value is 800, so
29

Publicité

loading