PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Wegstreckenzähler vom Robby



sinsibo
08.02.2006, 12:56
Hi,

ich habe da mal eine Frage, weil ich da was nicht ganz verstehe.
Wenn ich den Rp5 geradeaus fahren lasse, inkrementiert er schön den Zähler von Lbyte bzw. von hbyte (wenn von nöten), aber sobald ich ihn links oder rechts fahren lassen möchte, stop der zähler und er dreht und dreht ohne aufzuhören.
Habe dann auch noch das Problem, wenn ich Ihn rechts (s.move_right) fahren lasse, dass das rechte rad sich dreht und das linke stehen bleibt, dabei soll es ja umgekehrt sein? Links klappt es

Mach ich da was falsch, oder muss ich da ganz anders rangehen.
Vlt habe ich das rechts- bzw. linksfahren falsch programmiert und wäre da auch für jedes Beispielcode dankbar.

Mein Ziel:
Ich wollte den Robby erst geradeaus fahren lassen und dann mal nach rechts oder links, wie ich gerade Lust habe, hat aber nicht geklappt.


Mein Beispiel sieht so aus:

'---------- INIT---------------
gosub SUBSYS_PWR_ON
beep 368,10,0:pause 50
'---- SYSTEM OPERATION MODE (NO INTERRUPT) ----
gosub NO_ACS_INT:beep 368,10,0:SYS ACS_MAX
'------------ ANTRIEB -------------------------
REV_L=on:REV_R=on:SYS PLM_SLOW
'--------------------------------------------
'--- WEGSTRECKENZÄHLER ---
'--------------------------------------------
gosub CLR_DISTANCE:gosub LEDSOFF:gosub move_fwd
#NO_TASK
pause 5:SYS COMNAV_STATUS
gosub R_DISTANCE <- darf ich beide überhaupt aufr
gosub L_DISTANCE <- aufrufen, wie lös ich das am
<- besten mit r&l-fahren
print "lbyte : ";lbyte; " hbyte : ";hybte <- Auswertung am Terminal
if LBYTE=25 then gosub LED1ON
if LBYTE=50 then gosub move_right <- nur das hier geändert
if LBYTE=75 then gosub LED3ON
if LBYTE=100 then goto stop
goto NO_TASK
'--------------------------------------------
#stop
gosub LED4ON:SYS FWDR:SYS FWDL:SPEED_L=0:SPEED_R=0:end
#move_fwd
SYS FWDR:SYS FWDL:SPEED_L=155:SPEED_R=155:return
#move_right
SYS FWDR:SYS FWDL:SPEED_L=100:SPEED_R=0:return
#move_left
SYS FWDR:SYS FWDL:SPEED_L=0:SPEED_R=100:return
'---------------------------------------------

Danke für jede Hilfe

Gruss
Sinsibo

sinsibo
09.02.2006, 16:21
Problem selbst gelöst

robotcool
09.02.2006, 17:24
wo kreigt man so eien streckenzähler her und wie teuer

sinsibo
09.02.2006, 19:07
Na im meinem Fall ist der schon auf dem Robby rp5, auf der Unterseite von der Platine gelötet.
Es es eine Lichtschranke der die Umdrehung des Zahnrads zählt. Am Zahnrad ist ein Loch. Beim Durchlass des Impuls wird ein Zähler aktiviert, der jeweils um 1 inkrementiert wird.

sinsibo
09.02.2006, 19:11
Auf www.Reichelt.de findest du Ihn. Kosten 0,65€.
Bestellnr.:CNY 36.

Wenn du noch fragen haben solltest, meld dich einfach.
Gruss
sinsibo

robotcool
10.02.2006, 12:35
oki danke für die antwort