Go Down

Topic: Arduino - Pololu Maestro Servo Controlle (Read 993 times) previous topic - next topic

gloob

Jul 14, 2012, 05:08 pm Last Edit: Jul 14, 2012, 05:18 pm by gloob Reason: 1
Hallo,

Hat jemand von euch zufällig den Maestro Servo Controller im Einsatz?

Ich verzweifle hier gerade mit dem Ding. Wenn ich Ihn an den PC anschließe funktioniert alles wunderbar.

Verbinde ich jedoch TX vom Arduino mir RX vom Maestro und nutze die 5V und Masse vom Arduino am Maestro bekomme ich den Servo nicht zum bewegen.

Folgenden Code nutze ich aktuell dafür:

Code: [Select]
#include <SoftwareSerial.h>
#define txPin 4
#define rxPin 3

SoftwareSerial mySerial(rxPin, txPin);
void setup()// run once, when the sketch starts
{
 pinMode(7,OUTPUT);
 pinMode(7,HIGH);
 delay(50);
 pinMode(7,LOW);
 
 mySerial.begin(9600);
 delay(1000);  
}

void loop()
{
  delay(1000);
  set_target(0, 8000);
  delay(1000);
  set_target(0, 4000);
}


void set_target(unsigned char servo, unsigned int target)
{
   mySerial.write(0xAA); //start byte
   mySerial.write((byte)0x00); //device id
   mySerial.write(0x84); //command number
   mySerial.write(servo); //servo number
   mySerial.write(target & 0x7F);
   mySerial.write((target >> 7) & 0x7F);
}


Hat jemand einen Tipp für mich?
http://www.panoduino.de

thewknd

Machst du nicht ein Durcheinander zwischen dem Compact und dem Pololu protocol.

http://www.pololu.com/docs/0J40/5.e

Code: [Select]
void set_target(unsigned char servo, unsigned int target)
{
    mySerial.write(0x84); //command number
    mySerial.write(servo); //servo number
    mySerial.write(target & 0x7F);
    mySerial.write((target >> 7) & 0x7F);
}
duemilanove / OSX & WIN
Arduino & Teensy: http://bit.ly/13rbdtQ

gloob

Hall.

Danke für deine Hilfe. Hab es gestern dann auch noch gesehen. Auch dass ich ein Problem beim setzen des Reset hatte. Jetzt habe ich 3 Funktionen um das Target zu setzen, einmal MiniSSC, Compact und pololu.

Besteht hier Interesse an einer Bibliothek für den Pololu Servo Controller? Ich konnte bisher noch nichts richtiges finden.
http://www.panoduino.de

Megaionstorm

Quote
Besteht hier Interesse an einer Bibliothek für den Pololu Servo Controller?


Ich denke das dies eine sehr gute Idee wäre, vielleicht kannst Du ja so etwas selber auf die Beine stellen !
Mein Arduino Projekte Blog:
http://ardu-megatank.blogspot.de/

gloob

Das ist genau das was ich mit der Anfrage jetzt vor hatte. Werd mich mal ran setzen heute für einen ersten Draft mit SoftwareSerial.
http://www.panoduino.de

Megaionstorm

Mein Arduino Projekte Blog:
http://ardu-megatank.blogspot.de/

gloob

#6
Jul 15, 2012, 05:25 pm Last Edit: Jul 15, 2012, 05:27 pm by gloob Reason: 1
So der erste Draft der Library ist fertig.  :smiley-mr-green:

Genutzt wird SoftwareSerial und verfügbar ist folgendes:

Code: [Select]
   MaestroServo(unsigned char rxPin, unsigned char txPin, int baudRate, unsigned char resetPin, unsigned char commandSendPin);
   void reset();
   
   void set_target(unsigned char servo, unsigned int target);
   void set_target(unsigned char device, unsigned char servo, unsigned int target);
   void set_target_minissc(unsigned char servoNumber, unsigned char servoPosition);
   
   void send_home();
   void send_home(unsigned char device);
   
   void set_speed(unsigned char servo, unsigned int speed);
   void set_speed(unsigned char device, unsigned char servo, unsigned int speed);

   void set_acceleration(unsigned char servo, unsigned char acceleration);
   void set_acceleration(unsigned char device, unsigned char servo, unsigned char acceleration);

   void set_servo_off(unsigned char servo);
   void set_servo_off(unsigned char device, unsigned char servo);
   
   char get_moving_state();
   char get_moving_state(unsigned char device);
   
   char get_errors();
   char get_errors(unsigned char device);


Ich denke damit ist schonmal ein guter Baustein gelegt.

Wenn Interesse daran besteht muss ich mir nur noch überlegen wie ich es sinnvoll veröffentlichen kann.
http://www.panoduino.de

Megaionstorm

Das sieht doch schonmal sehr interessant aus, habe meinen Maestro 6 bisher nur zusammen mit dem PC benutzt aber noch nicht mit dem Arduino alleine !
Mein Arduino Projekte Blog:
http://ardu-megatank.blogspot.de/

gloob

Also ich benutze den Micro Maestro zur Zeit parallel am Arduino und PC.

Per USB seh ich die Position und Einstellungen am PC und kann so checken ob der Arduino alles richtig setzt.
http://www.panoduino.de

Megaionstorm

Mein Arduino Projekte Blog:
http://ardu-megatank.blogspot.de/

thewknd


wie ich es sinnvoll veröffentlichen kann.

https://bitbucket.org/
https://github.com/

sind gute Platformen dafür.
duemilanove / OSX & WIN
Arduino & Teensy: http://bit.ly/13rbdtQ

Go Up