Hallo,
hat keiner eine idee dazu??
gruss
Hallo,
ich habe mir einen Hexapod gebaut, als controller habe ich eine 24ch Maestro Servocontroll von pololu,
Ich stehe noch recht am anfang, bis jetzt läft er und mit hilfe von zwei IR Sensoren entscheidet er ob Rechts oder links bei einem hinternis,
Eure Hilfe benötige ich nun, ich möchte nicht das der Hexa gleich nach dem einschalten losläuft sondern erst eine Sequenz abspielt und nach beendigung dieser dann ganz normal startet und losläuft.
hier ist der code..
Code:start: # wenn beide Sensoren on dann Back left_sensor right_sensor logical_and if back back goto start endif # wenn linker sensor on dann nach rechts left_sensor if back right right goto start endif # wenn rechter sensor on dann nach links right_sensor if back left left goto start endif # wenn kein sensor dann Vorwärts forward goto start sub left_sensor 19 get_position 512 less_than return sub right_sensor 18 get_position 512 less_than return ### Sequence subroutines: ### sub back return sub forward return sub left return sub right return
gruss
Hallo,
hat keiner eine idee dazu??
gruss
Da antworte ich doch mal ganz klassisch wie ein Roboter: "Kann Anfrage nicht bearbeiten! Zu wenig Daten!"
Aber im ernst, nur jemand der das gleiche Board verwendet wie du könnte jetzt schon eine Antwort geben. Ich kannte das Board bisher gar nicht und habe daher auch keine Ahnung wie es angesteuert wird.
Grundsätzlich hat man dieses Problem aber immer, denn im ausgeschalteten Zustand kann die Position der Servos manuell verändert werden. Wird nun eingeschaltet rucken die Servos sofort in die erste Postion unabhängig davon wo der Servo mechanisch war.
Einzige Möglichkeit das zu verhindern: vor dem Einschalten alle Servos manuell in eine mechanisch definierte Lage bringen und die "erste Position" genau auf diese Position programmieren. Danach können alle Servos sequentiell in ihre Initialposition fahren.
Hallo
HannoHupmann
Ich war nicht der meinung das man das selbe board braucht um mir zu helfen.
Ich kenne mich mit der programmierung noch nicht so aus, aber wenn ich mir den code so anschaue wird in den erste paar zeilen nur definiert was passiert wenn die Sensoren anschlagen,
Und ich möchte eigendlich nur das am anfang bevor der code goto start ausführt einfach ein subframe "zb anfang" ausführt einmal nach dem start und dann mit goto start weiter macht
Gruss Tom
Klingt einfach:
Code:start: init loop: # wenn beide Sensoren on dann Back left_sensor right_sensor logical_and if back back goto start endif # wenn linker sensor on dann nach rechts left_sensor if back right right goto start endif # wenn rechter sensor on dann nach links right_sensor if back left left goto start endif # wenn kein sensor dann Vorwärts forward goto loop sub init # Initalisieren aller Funkionen return
Lesezeichen