Go Down

Topic: Besoin d'aide arduino & max tout simple (Read 1 time) previous topic - next topic

gael-l

Grrrrr
J'ai bien un truc équivalent dans mon code, mais à tout hasard je viens de retester en remplaçant la sortie analogique de la LED par un angle de servo...
...et toujours rien. La carte semble bien recevoir des choses (la Rx clignote quand je bouge mon slider) mais ça ne tourne pas !

Le pire c'est que je suis convaincu que c'est une connerie qui coince.

#include <Servo.h>
// on déclare le servomoteur comme une variable typée
Servo servo1;

void setup()
{
 servo1.attach(9); // le servomoteur est sur une patte PWM
 Serial.begin(9600);
}
   
void loop()
{
byte val;

// check if data has been sent from the computer
if (Serial.available()) {
  // read the most recent byte (which will be from 0 to 255)
  val = Serial.read();
  // set the brightness of the LED
  servo1.write(val);
}
}

...et sur max, un slider sur la première entrée d'un objet [serial a 9600]

zener57

#6
Mar 14, 2010, 09:52 pm Last Edit: Mar 14, 2010, 10:23 pm by zener57 Reason: 1
salut
on se rapproche de la soluce, je suppose que c'est un servo ordinaire avec + - et entrée PWM
remplace la ligne
byte val;  par
int val;

et visualise Val avec Serial.println(Val); pour voir si tu as bien l'info par Max
et met analogWrite(servo1, val);
si tu met une led a la place de la servo tu dois voir l'intensité de la led bouger :o
je me trompe peut-etre ,mais on ne sait jamais
william
P.S:normalement avec servo1.write(val);ça devrai fonctionner  :-/ :-?

gael-l

Bon, ben pas réussi avec cette méthode :(

Cela dit, j'ai fait autrement, et de façon plus simple, car la dernière version de Firmata permet d'utiliser des servos !
Du coup, ça va me permettre d'utiliser une seule carte pour piloter le servo et pour récupérer des données de capteurs.
Cool.

Donc si jamais d'autres arrivent ici : ce qui a fonctionné pour moi, c'est Firmata 2.1 sur la Arduino, et l'objet [arduino] de Maxuino dans max/msp.

Merci zener57 de t'être intéressé à mon problème (et cela dit, sur un plan théorique, je ne comprends toujours pas pourquoi ces manips n'ont pas marché : apparemment la carte ne recevait pas les données... même si j'essaye de les afficher, nada)

zener57

Salut
ouai ,c'est dommage,de plus je n'avais plus Max5 ,j'aurai bien voulu faire des essais de mon coté.je pense que ça m'aurai énervé de ne pas trouver  ;D
je n'avais pas eu ce probleme avec Processing  :-[
juste une petite question tu travail avec quelle Arduino ??
@+
et bon boulot pour l'avenir
William

gael-l

Je travaille avec une Duemilanove Atmega168

(et j'y retourne !! maintenant que j'ai décoincé, je suis à fond !)

Go Up