Zum Inhalt springen

Franz-Peter

Verfasste Forenbeiträge

Ansicht von 15 Beiträgen - 1 bis 15 (von insgesamt 50)
  • Autor
    Beiträge
  • Franz-Peter
    Teilnehmer

    Schau dir mal die MobaLedLib an: https://github.com/Hardi-St/MobaLedLib
    Die ist zwar eigentlich für Beleuchtungseffekte auf der Modellbahn gedacht, das sollte aber kein Hinderungsgrund sein. Jedenfalls kann man damit allerhand Effekte und Lichtspielereien realisieren.

    als Antwort auf: Unabhänige Loops Programmieren #7848
    Franz-Peter
    Teilnehmer

    Dann ist ja alles ok.

    als Antwort auf: Unabhänige Loops Programmieren #7846
    Franz-Peter
    Teilnehmer

    Woher weist Du, dass er nicht in case 2 springt?
    Dein Serial.println wird nie ausgeführt:

    break;
    
    Serial.println(“case 2”);
    case 2:
    

    da es zwischen dem break; und dem case 2: steht, steht es sozusagen im ‘Niemandsland’ und wird nie ausgeführt.

    als Antwort auf: zwei Servomotoren SG-90 mit einem Motor Treiber L293D #7528
    Franz-Peter
    Teilnehmer

    Dabei haben wir die Servos auf 360°C grad eingestellt und könnten keine Winkelvergabe mehr machen. Aber das ist nicht das Problem.

    Was habt ihr da denn gemacht? Wie Stefan schon schrieb, kann man einen Servo nur über eine H-Brücke ansteuern, wenn man die interne Elektronik komplett ausbaut, und ihn nur noch als reinen Getriebemotor betreibt.
    Wenn man die mechanische Blockade entfernt, und das Poti auf ‘Mitte’ feststellt, kann man ihn noch mit Servopulsen betreiben, wobei Richtung und Geschwindigkeit dann von der Pulslänge abhängt. Ich weis aber nicht ob das mit jedem Servo funktioniert, selbst habe ich es noch nicht gemacht.

    als Antwort auf: Unabhänige Loops Programmieren #7516
    Franz-Peter
    Teilnehmer

    Es gibt immer nur einen loop. Um zu realisieren, was Du vorhast, musst Du ‘blockadefrei’ programmieren. D.h. vor allem, dass Du keine delay verwenden darfst. Der loop muss ständig durchlaufen.
    Für meine Modellbahnkollegen habe ich mal ein Tutorial geschrieben, wie das mit meiner Lib ‘MobaTools’ geht. Vielleicht hilft es dir auch. Eine kleine Eisenbahn im Kreis laufen zu lassen, hat ja fast jeder schonmal gemacht ;).

    In den Beispielen der Lib ist auch eines dabei. wie man 2 Led’s unabhängig voneinander blinken lassen kann. Das wäre auch schonmal ein Einsieg.

    als Antwort auf: A4988 Schrittmotor-Treiber: Keine 5 V auf VDD #7451
    Franz-Peter
    Teilnehmer

    Der Vdd Anschluß am A4988 ist kein 5V Ausgang zur Versorgung anderer Logik. Vielmehr ist es der 5V Versorgungsanschluß der internen Logik.
    Du kannst da also keine 5V abzapfen, vielmehr musst Du dort 5V anlegen, um die interne Logik des A4988 zu betreiben.

    als Antwort auf: RFID & Tastenfeld Schloss #7397
    Franz-Peter
    Teilnehmer

    Leider ist dein Programm recht unübersichtlich. Was Du eigentlich brauchst, um dein Problem ordentlich zu lösen ist ein ‘endlicher Zustandsautomat’ Da kannst Du auch im Web mal nach googlen.
    Dein gesamtes System befindet sich eigentlich immer in einem bestimmten Zustand, und je nachdem welcher das gerade ist, werden nur bestimmte Aktivitäten überprüft/zugelassen.
    Z.B.:
    – Tür ist zu:
    jetzt wird nur auf die Karte gewartet Wenn die richtige Karte gelesen wird, geht es in den nächsten Zustand:
    – Passworteingabe:
    Passwort korrekt: Tür offnen und nächster Zustand ‘Tür ist offen’
    Passwort falsch; gehe zum Zustand ‘Tür ist zu’
    – Tür ist auf:
    Das könnte man jetzt über eine Zeitüberwachung machen ( Um wieder die Tür zu schließen )
    oder Du kommst jetzt wieder in den Ablauf RFID -> Passwort ( aber bei offener Tür ).
    Wichtig ist, dass der jeweilige Zustand deines Türsystems bestimmt, welche Aktivitäten jetzt überhaupt erlaubt sind bzw. abgefragt werden. Alles andere wird dann garnicht beachtet.
    Für sowas eignet sich sehr gut die switch – Anweisung .

    Wichtig ist, dass Du dir auf einem Blatt Papier erstmal die möglichen Zustände und die zugehörigen Aktivitäten klar machst. Damit bekommt Du dann auch gleich eine gute Beschreibung der Abläufe und kannst auch erkennen, ob das alles in sich schlüssig ist.

    als Antwort auf: RFID & Tastenfeld Schloss #7391
    Franz-Peter
    Teilnehmer

    Hallo Andreas,
    ich habe die Passwordlib mal kurz überflogen. So wie ich das sehe, musst Du vor jedem Eingeben eines neuen Passwortes ein password.reset() aufrufen. Sonst hängt er mit password.append die neu eingegebenen Zeichen einfach an das vorher eingegeben an, und dann ist es ja ein ungültiges Passwort, da jetzt das zuerst eingegebene und das aktuelle hintereinanderhängen und doppelt vorhanden sind.

    als Antwort auf: RFID & Tastenfeld Schloss #7368
    Franz-Peter
    Teilnehmer

    Jetzt ist es besser.
    Das while(1) loop(); ist aber immer noch drin.
    Was gibt er denn auf der seriellen Schnittstelle aus, wenn es nicht mehr funktioniert? Kommt da noch was?

    als Antwort auf: RFID & Tastenfeld Schloss #7338
    Franz-Peter
    Teilnehmer

    Na ja – noch nicht wirklich. Dein Code enthält jetzt Zeichen, die der Compiler nicht versteht. Wahrscheinlich hast Du ihn nicht direkt in Codetags gesetzt, sondern erst nachträglich, und da hat die Forumssoftware schon zugeschlagen und einiges verändert. Ausserdem soltest Du den Code ordentlich formatieren ( kannst Du direkt in der IDE machen mit ctrl+T ).
    So ist das Ganze jedenfalls sehr unübersichtlich und schwer nachzuvollziehen.

    Und zeige auch mal Links zu deinen verwendeten Bibliotheken. Die sind nicht alle so üblich – speziell die Password.h ( Die anderen kenne ich eigentlich ).

    als Antwort auf: RFID & Tastenfeld Schloss #7330
    Franz-Peter
    Teilnehmer

    Hallo Andreas,
    deine Code habe ich jetzt noch nicht im Detail gelesen ( ist auch aufgrund der fehlenden Formatierung nicht einfach ). Was mir beim Überfliegen aber gleich aufgefallen ist:

    void closeDoor(){
    for (int pos = 180; pos >= 90; pos–) {
    door.write(pos);
    delay(10);
    }
    while(1) loop();  << das geht auf keinen Fall!!!
    }

    Du darfst niemals nicht selbst loop aufrufen. Das macht das Arduino-System. Wenn Du das selbst so machst führt das mit gnadenloser Sicherheit über kurz oder lang zum Absturz des Systems. Wie sich das dann auswirkt kann man nicht vorhersagen. Das kann ein Neustart sein, der Prozessor kann sich aber auch in den Tiefen des Maschinencodes verirren und irgendwo im Kreis laufen.

    P.S. und setze deinen Code bitte in Codetags. Sonst ist er kaum zu lesen.

    als Antwort auf: Servomotor und ws2812 RGB stripe #7146
    Franz-Peter
    Teilnehmer

    Dann bin ich mal gespannt, ob es so funktioniert, und der Range Finder ‘leichtgewichtig’ genug ist.

    als Antwort auf: Servomotor und ws2812 RGB stripe #7144
    Franz-Peter
    Teilnehmer

    Wenn der nicht viel wiegt, sollte der auch einen nicht angesteuerten Servo nicht verstellen können. Dann kannst Du das mit detach/attach lösen.
    Aber wenn’s mit 2 ATtiny auch geht …

    als Antwort auf: Servomotor und ws2812 RGB stripe #7141
    Franz-Peter
    Teilnehmer

    Ist der Rangefinder so schwer, dass er das Servo verstellt? Hast Du das probiert? Durch die hohe Getriebübersetzung in den Servos braucht es auch ohne Strom oder Impulse schon einige Kraft um das Servo zu verstellen.

    als Antwort auf: Servomotor und ws2812 RGB stripe #7138
    Franz-Peter
    Teilnehmer

    Die ws2812 sind sehr kritisch, was das Timing der Signale angeht. Das bekommt man ohne abgeschaltete Interrupts nicht hin.
    Wenn – wie beim Stepper – die Bewegung des Servo und die LED-Animation immer nur abwechselnd laufen, könntest Du versuchen, den Stepper nach der Bewegung jeweils mit ‘detach’ ganz abzuschalten und bei der nächsten Bewegung dann wieder mit attach einzuschalten. Dann werden dazwischen keine Servo-Impulse erzeugt und dann können die auch nicht gestört werden. Das Servo bleibt dann einfach an der letzten angefahrenen Position stehen ( hält die aber auch nicht mehr aktiv ).

    P.S. Stromzufuhr unterbrechen würde ich eher nicht, da die meisten Servos beim Einschalten der Spannung etwas unkontrolliert ‘zucken’.

Ansicht von 15 Beiträgen - 1 bis 15 (von insgesamt 50)