PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : RN-Schrittmotor // Schritte richtig fahren (zählen)



alex007
02.08.2008, 17:02
hallo zusammen,

ich sitze zur zeit an meiner projektarbeit.

hardware:
- rn-control
- rn-schrittmotor
- eigenen gebastelte spannungsversorgung
- eigenen gebastelte signalanpassung für die sensoren
- ein pc der das ganze steuern soll

aufgabe:
eine teilaufgabe ist es, eine achteckige welle positionsgenau zu drehen.
auf der welle ist ein zahnrad montiert. daran montiert ist der schrittmotor.
der schrittmotor wird von dem rn-schrittmotor gesteuert.

problem:
steuere ich den schrittmotor per rs232 und mit einen pc inkl. des testprogramms an, funktioniert alles einwandfrei. d.h. gebe ich die drehrichtung und die anzahl der schritte vor, ist alles im grünen bereich.

wenn ich aber die drehrichtung und schritte per ic2 und dem rn-controll vorgebe, fährt der motor viel zu lange.

hier ein ausschnitt aus dem quellcode (testcode um das problem einzugrenzen)



I2cdaten(1) = 52 'drehrichtung
I2cdaten(2) = 1 ' Motor 1
I2cdaten(3) = 0
2csend I2crnmotorslaveadr , I2cdaten(1) , 7

I2cdaten(1) = 53 '(geschwindigkeit)
I2cdaten(2) = 1 ' Motor 1
I2cdaten(3) = 2 ' geschwindigkeit
I2cdaten(4) = 0 ' Beschleunigung
I2csend I2crnmotorslaveadr , I2cdaten(1) , 7

I2csend I2crnmotorslaveadr , I2cdaten(1) , 7
I2cdaten(1) = 55
I2cdaten(2) = 1 ' Motor 1
I2cdaten(3) = 1
I2csend I2crnmotorslaveadr , I2cdaten(1) , 7



was mache ich falsch? bzw. wo könnte das problem liegen?

vielen dank.

gruss alex

alex007
04.08.2008, 18:42
Hat keiner ne Idee??????

Gruss Alex

Astro
04.08.2008, 22:26
der ganze untere Block ist Falsch high byte kommt unter Motor dann gehts weiter mit low byte