Étape 4: Em accrochez ensemble
Nous pouvons le faire en utilisant la sortie séquentielle de l’Arduino comme l’entrée dans le code de traitement.
Maintenant, nous avons deux morceaux de code. L’Arduino code le centre flex, rend les lectures en numéros utiles et envoie les valeurs pour le port série.
Le code de traitement sera lire les valeurs de port série et les infos pour dessiner sur l’écran.
Voici un clip vidéo :
[embeded vidéo]
Voici le code :
CODE DE TRAITEMENT
Pacman moouth ouverture/fermeture avec X d’entrée de sortie arduino (capteur flex)
Import processing.serial.* ;
Port série ;
float x = 0 ;
float val = 0 ;
void setup() {}
Size(400,400) ;
Background(100) ;
Smooth() ;
println(Serial.List()) ;
String arduinoPort = Serial.list() [1] ;
port = nouvelle série (ce, arduinoPort, 9600) ;
}
{} void draw()
Si (port.available() > 0) {}
Val = port.read() ;
Print(Val) ;
Val = mouseX ;
Print("---") ;
x = map(val,0,150,0.01,0.5) ; définition d’entrée de valeurs pour values/println(x) utile ;
println(x) ;
}
Background(100) ; dernière image claire
arc(200,200,100,100,(x)*pi,pi+(1-x)*pi) ; dessiner packman, à l’aide de radians... p21
}
Arduino Code / / /
Il s’agit d’un exemple inluded avec téléchargement IDE Arduino.
Contrôler la position du servo à l’aide d’un potentiomètre (résistance variable)
par Michal Rinott
MPC - ajouté sortie série ' n stuff
Voici le câblage :
//
Câblage-
|---Arduino Gnd
Encodeur |---analogique 0
|---5V de l’Arduino
//
//| Jaune---Digi 9 (PWM)
Servo haut de la page | Rouge---5V
//| Brun---Gnd
//
//| Jaune---Digi 10 (PWM)
Servo de fond | Rouge---5V
//| Brown---
#include ; utiliser la bibliothèque de servo
Servo myservo ; Créez l’objet servo pour contrôler un servo
Servo otherServo ;
int potpin = 0 ; broche analogique utilisé pour connecter le potentiomètre
int val ; variable pour lire la valeur de l’axe de l’analogique
valComp int ;
void setup()
{
myservo.Attach(9) ; attache le servo sur la broche 9 à l’objet de servo
otherServo.attach(10) ;
Serial.Begin(9600) ;
}
void loop()
{
Val = analogRead(potpin) ; lit la valeur du potentiomètre (valeur comprise entre 0 et 1023)
Serial.Print(Val) ;
Serial.Print("---") ;
Val = carte (val, 0,1023, 0,255) ;
valComp = val ;
Serial.println(Val) ;
Serial.Print(Val,Byte) ;
Delay(10) ;
Val = carte (val, 179, 90, 100, 10) ; redimensionnez-la pour l’utiliser avec le servo (valeur comprise entre 0 et 180)
valComp = carte (valComp, 100, 10, 0, 90) ;
myservo.Write(Val) ; définit la position du servo selon la valeur à l’échelle
Delay(10) ;
otherServo.write(valComp) ;
Delay(10) ; attend que le servo pour y arriver
}