- Beiträge
- 6.630
- Reaktionspunkte
- 2.333
-> Hier kostenlos registrieren
Deine Bilder werden nicht angezeigt.
Folge dem Video um zu sehen, wie unsere Website als Web-App auf dem Startbildschirm installiert werden kann.
Anmerkung: Diese Funktion ist in einigen Browsern möglicherweise nicht verfügbar.
Deine Bilder werden nicht angezeigt.
Deine Bilder werden nicht angezeigt.
Du hast andere Variablen definiert/deklariert, als Du im Programmcode verwendet hast:Heute nachdem ich die neue CPU genommen habe, ist bei mir Start 1 und Start 2 und Ausgangszähler rot.
TIA meint ich soll diese Operanten definieren.
Was mache ich schon wieder falsch.
Den Eingang gibt es bei Deiner projektierten SPS nicht. Das kannst Du auf dem 3. Bild unten in der Geräteübersicht bei den E- und A-Adressen nachlesen:Habe z.B. EIngang I124.0 eingegebn aber der nimmt den nicht.
Was mache ich schon wieder falsch.
Hut ab....... Du hast aber eine Engelsgeduld
Das er und ich Harzer sind, wenn auch in unterschiedlichen Randgebieten.@SoftMachine
Was willst du jetzt damit zum Ausdruck bringen?
@SoftMachine
Was willst du jetzt damit zum Ausdruck bringen?
LG
EMZ
Das er und ich Harzer sind, wenn auch in unterschiedlichen Randgebieten.
@SoftMachine
wenns so ist, will ich auch gern ein Harzer sein
LG
EMZ
[FONT=Courier New] // Schrittbegrenzung
IF #Schritte > 500 THEN
#Schritte := 500;
END_IF;
// Startbedingung erfüllt?
IF #Start1 AND #Start2 AND SEL (G:= #Flanke, IN0:= true, IN1:= NOT #Start_Old) THEN
#Start := true;
END_IF;
#Start_Old:= #Start1 AND #Start2;
// Flankenerkennung Eingang Takt
#Schieben := #Takt AND NOT #Takt_Old;
#Takt_Old := #Takt;
// Schieberegister
IF #Schieben THEN
// Register weiterschieben
FOR #Index := #Schritte TO 1 BY -1 DO
#Schieberegister[#Index] := #Schieberegister[#Index - 1];
END_FOR;
// Startbedingung ins Schieberegister übernehmen
#Schieberegister[0] := #Start;
#Start := false;
// Ausgang Schieberegister
IF #Schieberegister[#Schritte] THEN
#Ausgangszaehler := #Laenge;
END_IF;
// Ausgabe
#Ausgabe := #Ausgangszaehler > 0;
// Zähler Ausgabelänge
IF #Ausgabe THEN
#Ausgangszaehler := #Ausgangszaehler - 1;
END_IF;
// Zähler
#Ausgabelaenge := SEL (G:= #Ausgabe, IN0:= 0, IN1:= #Ausgabelaenge + 1);
#Taktzaehler:= SEL (G:= #Reset, IN0:= #Taktzaehler + 1, IN1:= 0);
END_IF;[/FONT]
Input
Start1 Bool ... false True Startbedienung
Start2 Bool ... false True Startbedienung 2
Takt Bool ... false True Impuls-Eingang
Schritte Int ... 100 True Impulszahl bis zur Ausgabe
Flanke Bool ... false True Flanke
Reset Bool ... false True Quittieren
Laenge Int ... 4 True Ausgabelänge des Impulses in Takten
Output
Ausgabelaenge Int ... 0 True Laenge
Taktzaehler DWord ... 0 True Taktzaehler
Ausgabe Bool ... false True Impulsausgabe
InOut
Static
Takt_Old Bool ... false True Flankenmerker für Eingang Takt
Start Bool ... false True Startbedingung erfüllt
Schieberegister Array [0..500] of Bool ... True statische Variablen
Ausgangszaehler Int ... 0 True Zähler für Ausgabelänge
Start_Old Int ... 0 True
Temp
Schieben Bool ... False positive Flanke Eingang Takt
Index Int ... False Array-Zeiger
Ich habe Probleme mit der "Start_Old" Variable. Die bleibt bei mir rot, habe es vermutlich falsch gemacht, aber ich weiß nicht wie ich die Variable definieren soll.
[FONT=Courier New]//Variablendeklaration
//Start1: Bool;
//Start2: Bool;
//Start_Old: Int;
#Start_Old:= #Start1 AND #Start2[/FONT]
Wir verwenden essentielle Cookies, damit diese Website funktioniert, und optionale Cookies, um den Komfort bei der Nutzung zu verbessern.
Siehe weitere Informationen und konfiguriere deine Einstellungen