damit der encoder am anfang zurückgesetzt wird. mit encoder_set werden die werte eingetragen, und zu beginn sollten beide 0 sein.
damit der encoder am anfang zurückgesetzt wird. mit encoder_set werden die werte eingetragen, und zu beginn sollten beide 0 sein.
an welchem bautleil liegt folgendes problem :
mein asuro fährt bei konstanter 200,200 PWM FWD
zuerst einen größeren dann einen immer engerwerdenden kreis dann
fast geradeaus und anschließend einen kreis in die andere richtung ??
bei KONSTANTER PWM ?!?!?!?!
rückwärts fährt er etwas langsamer und genausowenig sinnvoll ???
beim Lichtfinden das mittlerweile schon funktioniert ^^ ( auf 2 meter )
ist es nicht so schlimm weil der asuro wenn das licht zu dunkel / wenig wird
einfach nochmal nach dem hellsten punkt sucht ( dabei verwende ich nur den normalen motor der nicht herumpowert ) und wieder etwas näher fährt
bevor er wieder in die falsche richtung schaut...
aber beim linienfolgen dürfte das schwieriger werden
.. zumindest wenn ich flüssig folgen können will ?
.. in der schule könnte ich eventuell mit einem oszilloskop signale messen
welche wären denn dann interessant ?
Wissen ist Macht!
Ich weis nichts ... macht nichts
miss mal die spannung die am motor anliegt. das müsste theoretisch ein rechtecksignal sein. wenn die frequenz oder die maximalspannung nicht konstant sind, dann liegts an der elektronik. wenn die werte fein sind, dann liegts wohl irgendwie am motor.
ansonsten: ausgleichen durch odometrie... =)
bei dem verhalten ist nichtmal garantiert dass grössere pwm auch mehr leistung bedeutet oO
naja in ca 2h werd ich mal messen und dann hoffentlich feststellen dass es am motor liegt.
Wissen ist Macht!
Ich weis nichts ... macht nichts
ok also das PWM funktioniert einwandfrei .... liegts wohl an den motoren ? oO
Wissen ist Macht!
Ich weis nichts ... macht nichts
sieht so aus. du kannst mal probieren, die einige zeit lang laufen zu lassen, also den asuro aufbocken (wenn du raucher bist: eine kippenschachtel ist prima) und die motoren 5-10 minuten auf halber kraft oder auf 200 etwa laufen lassen. vielleicht ist das öl fest geworden oder sie müssen sich einfach etwas einlaufen.
ok warum auch immer die motoren nicht funktioniert haben ... sie funktionieren momentan wieder ^^
warum wird hier nur einmal t1 ausgegeben ???Code:StartSwitch(); while(1) { PrintInt(switched); if(switched == TRUE) { // Tastendruck t1 = PollSwitch(); t2 = PollSwitch(); StartSwitch(); switched = FALSE; PrintInt(t1); PrintInt(switched); SerPrint ("\n\r"); } }
ich komm nicht dahinter ?
Wissen ist Macht!
Ich weis nichts ... macht nichts
wofür ist die if-abfrage am ende da? da ist nix drin... in deinem code werden 3 {} geöffnet, aber nur 2 geschlossen. da stimmt was nicht.
rauskopiert ... die if hat zur zeit keine verwendung
zwischen letzter } und fehlehlender } steht noch redSensors und runBehaviour }
korrigiert.
Wissen ist Macht!
Ich weis nichts ... macht nichts
liegt es daran dass du switched auf null setzt? die interruptroutine wird wohl nur einmal ausgeführt, also muss der taster erst losgelassen werden und dann wieder gedrückt werden.
Lesezeichen