Ankündigung

Einklappen
Keine Ankündigung bisher.

HS Logikbaustein: Variable als Pin?

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • Mattti
    antwortet
    Marc, das war genau das, was ich gemeint habe.

    Um ein wenig aufwändigere Sachen zu programmieren bräuchte man entweder Schleifen, die ja laut Doku nicht gehen, oder die variablen Pins.

    Ich habe meinen Baustein mittlerweile fertig, leider doppelt so lange und halb so elegant. Aber er funktioniert und darauf kommt es ja an.

    Danke an alle und auch noch ein schöner Rest des Wochenendes.

    Schöne Grüße aus Brasilien,

    Mathias

    Einen Kommentar schreiben:


  • MarcNaroska
    antwortet
    Also, wenn ich Mattti richtig verstehe, fragt er sich, ob es möglich ist, das Ergebnis nicht in eine feste Speichervariable (z.B. |x|x|3|x) zu schreiben, sondern in eine "variable" Speichervariable.
    In welche Speichervariable dabei geschrieben werden soll, steht in seinem Beispiel in SN[3], d.h. wenn in SN[3] eine 5 steht, soll in Speicher 5 geschrieben werden, wenn in SN[3] eine 9 steht, soll in Speicher 9 geschrieben werden...

    Ich habe das auch schon mal versucht, aber keine Möglichkeit gefunden, so etwas zu realisieren. Vielleicht gibt es dazu ja noch mal eine endgültige und definitive Aussage von DACOM...

    So, noch ein schönes und sonniges Wochenende.

    Einen Kommentar schreiben:


  • TRex
    antwortet
    Deine Syntax ist falsch...

    dass muss folgendermassen heissen:
    5012|0|"SC[24] and (EN[4]==1)"|"EN[24]"|""|0|0|3|0

    Die 3 vor der letzen Pipe ist schon der "Platz" SN
    Deshalb darf dort nur die Nummer rein
    Try it

    Einen Kommentar schreiben:


  • Mattti
    antwortet
    Zitat von michel38 Beitrag anzeigen
    Die Doku ist Dir bekannt?
    Jo, die hab ich. Es geht daraus aber leider nicht hervor, ob man Variablen als Pins benutzen kann.

    Zitat von michel38 Beitrag anzeigen
    Warum nimmst Du nicht den Vorhandenen?
    Der Baustein macht nicht was ich will:
    Ich habe 17 Reed kontakte. Die möchte ich als Text ausgegeben haben und zwar immer drei zusammen, damits unter eine Überschrift ins Infodisplay paßt.
    Über einen Eingang möchte ich die nächsten drei Texte angezeigt bekommen, quasi weiterblättern.

    Ich hatte das schon mal über den grafischen Logikeditor gelöst. Das wurde aber dermaßen kompliziert, daß ich mich entschieden habe einen Baustein dazu zu programmieren.
    Außerdem macht mir das programmieren Spass :-)

    Ich bin mit meinem Alternativbaustein auch schon fast fertig, muß noch n bißchen debuggen, dann gehts.

    Einen Kommentar schreiben:


  • michel38
    antwortet
    Zitat von Mattti Beitrag anzeigen
    Ich will aber tatsächlich den Pin für den Speicherplatz durch die Variable SN[3] bestimmen.
    Ich vermute stark, mein erster Ansatz nicht funktioniert, deshalb bin ich schon beim umschreiben. Der Baustein wird dann halt wesentlich größer.
    Die Doku ist Dir bekannt?

    Zitat von Mattti Beitrag anzeigen
    Der fertige Baustein soll mir die offenen Fenster als Text für das Infodisplay aufarbeiten.
    Warum nimmst Du nicht den Vorhandenen?

    Einen Kommentar schreiben:


  • Mattti
    antwortet
    Hallo Uwe,

    danke für die Antwort.

    Ich will aber tatsächlich den Pin für den Speicherplatz durch die Variable SN[3] bestimmen.

    Ich vermute stark, mein erster Ansatz nicht funktioniert, deshalb bin ich schon beim umschreiben. Der Baustein wird dann halt wesentlich größer.

    Der Code-Schnipsel kommt aus einem Teil des Bausteins der aus einer Liste Leereinträge herausfiltern soll und die gefüllten Einträge hintereinander anordnen soll.

    Der fertige Baustein soll mir die offenen Fenster als Text für das Infodisplay aufarbeiten.

    Schöne Grüße,

    Mathias

    Einen Kommentar schreiben:


  • michel38
    antwortet
    Hallo Mathias,

    Ich weiß zwar nicht was Du machen willst, aber zu Deiner Formel:

    für (EN[4]==1) kanst Du auch EN[4] schreiben
    ändere ...|0|0|SN[3]|0 in |0|0|3|0

    Einen Kommentar schreiben:


  • Mattti
    hat ein Thema erstellt HS/FS HS Logikbaustein: Variable als Pin?.

    HS Logikbaustein: Variable als Pin?

    Hallo,

    Ich versuche mich gerade an der Logikbausteinprogrammierung.

    Erstmal danke an das ganze Forum für die ganze Hilfe. Soweit bin ich mit der Suche zurecht gekommen.

    Aber jetzt:

    Ich würde gerne einen Speicherpin mit einer Variablen belegen, à la

    Code:
    5012|0|"SC[24] and (EN[4]==1)"|"EN[24]"|""|0|0|SN[3]|0
    Geht das? Es scheint bei meinem Baustein nicht zu funktionieren.
    Gibt es eine Möglichkeit das Problem zu umgehen oder mache ich vielleicht etwas falsch? (int(SN[3]) habe ich auch schon probiert)

    Ich hoffe, ihr könnt mir helfen.

    Schöne Grüße,

    Mathias
Lädt...
X