Go Down

Topic: Servo Scheibenwischerbetrieb, Zeit aendern (Read 683 times) previous topic - next topic

Arudnoh

Mh, das hat nicht wirklich was gebracht. Die Funktion wird zwar aufgerufen, aber der neue Wert wird nicht in die alte bereits laufende For Schleife übergeben.
Jemand Ideen?

Robert

mkl0815

Jetzt sehe ich den Fehler ....
Code: [Select]

      if (i=5)                          // habe dies aus dem folgenden Grund gemacht, dass alle 5 Grad Wischaenderung eine "Ueberpruefung"
      {                                  //erfolgt, ob das RC Signal noch das Selbe ist, und Falls nicht sollte mit dem neuen weitergearbeitet
        checkTransmitter();     //werden. Aber wo ist der Fehler? Wieso wird der neue Wert nicht in die Haupt For Schleife uebernommen
        i=0;
      }
      i++;


Mit i=5 setzt Du den Wert für "i" auf 5 aber vergleichst ihn nicht. Es muss "if (i == 5)" heissen.
Außerdem würde ich das erste checkTransmitter() in sweepfunction() mal auskommentieren, um zu sehen das die Funktionen innerhalb der Schleifen aufgerufen werden.

Arudnoh

Hi,

thx, jetzt funktioniert es. Ich mache oft so kleine dumme Fehler die ich dann nie finde und dann funktioniert es nicht. Ich hasse soetwas, danke dass du dir die Muehe gemacht hast meinen code genau anzuschauen. :)
Den ersten Checktransmitterfunctionaufruf kann ich nicht weglassen, da dieser eine Bedingung zurueckgibt, die zum Aufrufen der For-Schleife benoetigt wird. Aber in der For Schleife wird die Funktion nun aufgerufen und die Geschwindigkeit des Servos aendert sich sofort. Was mir allerdings aufgefallen ist, dass man die Zeit, die die Funktion Checktransmitter benoetigt (20ms) merkt. Nimmt man als Grenze den Wert 2 oder 3, so merkt man, dass man die maximalgeschwindigkeit des Servos niedriger ist, als bei dem Wert 10. Grund, die Funktion checktransmitter benoetigt 20ms und wenn man diese zu oft aufruft kann man den Servo nicht oft genug ansteuern und die Geschwindigkeit verringert sich.
Habe den gleichen Post nochmals im Englischsprachigen Forum stehen, wo mir ein anderer Ansatz geraten wurde, den ich nun auch verfolge. Ma schauen was da dabei rauskommt.

Gruesse
Robert

Go Up