PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Servo-Probleme (schon wieder)



MatthiasW
18.06.2005, 20:10
Hallo,
ich bin nun eigentlich blutiger Anfänger, habe aber schon ein bischen mit LED's und Tastern auf meinen Board gebastelt. Und nun wollte ich mich an die Servo-Ansteuerung machen:
Hier mein Programm:

$regfile = "2313def.dat"
$crystal = 4000000
Config Servos = 1 , Servo1 = Portb.0 , Reload = 10
Config Portb = Output
Enable Interrupts
Do
Servo(1) = 120
Portb.7 = 1
Wait 2
Servo(1) = 170
Portb.7 = 0
Wait 2
Loop
End

An b.0 habe ich den Servo, an b.7 eine LED. Nun sollte eigentlich die LED blinken (2sec.), aber sie braucht fast 5 sec. und der Servo fährt auf irgendeine Position (immer verschieden) und bleibt dort. Nun habe ich schon andere Servos und einen anderen 2313 probiert und immer das selbe Ergebnis. Eigentlich sollte es doch funktionieren, so komlex ist das Programm doch nun wirklich nicht...

Danke für Eure Hilfe
Matthias

madcyborg
18.06.2005, 20:17
ich hab vor ca 10 tagen oder auch mit nem 2313 und servos rumprobiert und bin dabi auf was gestoßen, was in diesem forum so direkt nicht angesprochen wurde:
die servofunktion von bascom funktioniert nicht einwandfrei, wenn der controller zu langsam ist.
hab mich auch dumm und dämlich probiert, bis ich das gelesen hatte.
dann hab ich testhalber den reload-wert auf 100 gesetzt, und die servowerte auf 10-20, siehe da es ging....-->man muss sich seine werte wohl oder übel austesten...

MatthiasW
18.06.2005, 20:55
@ madcyborg

Vielen Dank für den Tipp, nun funktionierts erstmal. Das man mit niedrigen Frequenzen Probleme gibt, hatte ich noch nicht gelesen. Nun werde ich einen neuen 10Mhz Quarz probieren, mal sehen...

jagdfalke
19.06.2005, 16:42
Warum benutzt ihr nicht den Servotreiber und brennt ihn auf den Coprozessor?

19.06.2005, 20:28
@ Jagdfalke

Ich bin noch absoluter Anfänger, darum kann ich mit Servotreiber usw. noch nicht viel anfangen, vielleicht kannst Du mir ein bischen helfen?

Danke schon im voraus...

Matthias

jagdfalke
19.06.2005, 20:32
Naja, du redest von einem "Board" richtig? Meinst du das RNBFRA? Wenn ja gibts dadrauf nen Cocontroller und nen Haupprozessor. Auf der beiliegeden CD findest du irgendwo ne Datei namens rns1.zip. Da drin befindet sich der servotreiber in Form eines .hex files, dass du auf den Coprozessor spielen musst. Da ist auch ne Anleitung und ein Beispielprogram dabei.
mfg
jagdfalke

19.06.2005, 20:41
Nee, ich habe ein at90s2313 Experimentier-Board, was ich selbst gebaut habe, da ist nur ein 2313 drauf.

jagdfalke
19.06.2005, 20:46
achso, na dann funzt des glaub ich nicht mit dem Treiber. Sry.