Trigger/Taktgeber

Zuviel Werbung?
-> Hier kostenlos registrieren
Phoenix macht öfters mal Fehler in Dokumentationen. Sind ja auch nur Menschen.

Da sich der Motor dreht läuft anscheinend OUT1 und OUT2.

Dann musst du einfach weiterzählen. Also plus 16. Dann wären es X27 und X28.
 
Ja super, so funktionierts, danke... es funktioniert auch genau so wie ich gehofft hatte, dass es funktioniert.
Wenn IN-Richtung=0, dann ist OUT1 aktiv, bei mir dreht sich der Motor im Uhrzeigersinn, ist IN_Richtung=1, dann ist OUT2 aktiv, Motor dreht sich gegen Uhrzeigersinn.
Muss nur noch gucken, wie ich das mit dem Positionszähler hinbekomme, denn der dreht sich immer ca ne Minute, egal was ich bei Zielposition vorgebe.

Vielen Dank soweit Mobi
 
Zuviel Werbung?
-> Hier kostenlos registrieren
So, ich nochmal... das ganze sieht jetzt so aus:
PWM_2_Ausgangsworte-001.jpg

IB-IL-PWM2-001.jpg

Das Signal kommt, bis der Positionszähler den Wert der Zielposition hat, aber bei jedem start/stop fängt der Positionszähler von weiss der Geier welcher Position an zu zählen, nicht von der als letztes erreichten, warum, ne idee?
 
Zuletzt bearbeitet:
Also ich sehe keinen Anhang. Hängst du es ganz normal an? Oder nimmst du eine externe Seite?

Eine Idee warum hab ich erstmal nicht.
 
Lies doch mal die Eingangsworte ein und schau mal was Ready sagt und der Positionszähler.

Übriegens macht man das mit INT#20, BOOL#1 und BOOL#0 so nicht, wenn man Variablen einsetzt. Zum einen kannst du während der Laufzeit es nicht ändern. Wie z.B. die Zielposition. Du möchtest die bestimmt ändern im Debug-Modus.
Du kannst Anfangswerte festlegen bei der Variable. Entweder über das Variablenblatt oder über das Variablenfenster (F5).
Und wenn du eine Variable im Debug ändern willst, einfach doppelklicken auf die Variable. Und dann auf Überschreiben gehen.
 
Zuviel Werbung?
-> Hier kostenlos registrieren
ja ich hab das so probiert, weil ich die werte auch so nicht ändern kann während der laufzeit, warum auch immer... jedenfalls nicht die boolschen variablen, sprich Drehrichtung
 
Zuletzt bearbeitet:
Wenn du im Debug-Mode mit Doppelklick das Fenster öffnest, dann steht da TRUE und FALSE. Und da nur auswählen und Überschreiben.
 
Hallo Moby
Ich habe hier ein Taktsignal welches mir 20 analoge Werte schreibt. Dann beginnt das Programm wieder mit der Zeile 1.
Kannst du mir sagen wie ich die 20 Werte in eine Liste speichern kann.
Ich komme leider selber nicht drauf wie man das macht.




LDN Takt.Q
ST Takt.IN
CAL Takt(PT:= T#1000ms)


LDN Takt.Q (*Wenn Takt 0 sping Ende*)
JMPC ENDE


LD wAI_1 (*Lade Signal*)
ST Wert (*Verschiebe Signalwert in Wert*)


LD Wert (*Wert Laden*)
ST Liste [Index] (*Wert in Liste verschieben*)


LD Index
ADD 1 (*Lade nächste Zeile*)
ST Index


LD Index
EQ 21 (*Vergleicht Zeilenschritt mit Schrittende*)
JMPCN ENDE

LD 1 (*Starte wieder auf Zeile 1*)
ST Index
ENDE:
RET
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Mach bitte ein extra Thread dafür auf. Da deins ein völlig anderes Thema ist.

Aber ich selber nutze diese Retrosprache nicht. Nur ST und FUP.
Aber du kannst ja den Wert einfach in ein Array speichern.
 

Similar threads

A
Antworten
2
Aufrufe
5K
Anonymous
A
Zurück
Oben