Guten Morgen ;o)
Wie Ihr unschwer an der Uhrzeit erkennen könnt, sitze ich schon viel zu lange an einem eigentlich wunderschönen Samstagabend vor dem Rechner – und verzweifle ein wenig. Möglicherweise sehe ich den Wald vor Bäumen nicht, aber ich habe jetzt einiges versucht und komme zu keiner Lösung.
Kurz zu mir: obwohl ich seit über 20 Jahren meinen eigenen HomeServer betreue und konfiguriert habe (begonnen mit dem guten, alten HS2, heute ein HS4), habe ich mich bislang nicht an das Schreiben eigener Logikmodule gewagt – bis heute.
Die ersten Schritte haben funktioniert, nun habe ich mich an ein konkretes Projekt gewagt und komme nicht weiter. Ich erhalte bei dem folgenden Code im Experten bei der Prüfung eine Fehlermeldung („Ausgang liefert anderes Datenformat, Kommunikationsobjekt passt nicht.“), wenn ich an den Ausgang 5 ein internes Kommunikationsobjekt verbinde, dessen Datentyp 14-Byte-Text ist.
Schließe ich an diesen Ausgang ein 1-Bit-Kommunikationsobjekt an, gibt es keine Fehlermeldung.
Hat irgendjemand eine Idee, woran das liegen kann? Weitere Infos finden sich direkt im Code.
Müde Grüße
Puki
P.S: Bitte nicht lachen über meine exzessiven Kommentare im Code ;o)
Wie Ihr unschwer an der Uhrzeit erkennen könnt, sitze ich schon viel zu lange an einem eigentlich wunderschönen Samstagabend vor dem Rechner – und verzweifle ein wenig. Möglicherweise sehe ich den Wald vor Bäumen nicht, aber ich habe jetzt einiges versucht und komme zu keiner Lösung.
Kurz zu mir: obwohl ich seit über 20 Jahren meinen eigenen HomeServer betreue und konfiguriert habe (begonnen mit dem guten, alten HS2, heute ein HS4), habe ich mich bislang nicht an das Schreiben eigener Logikmodule gewagt – bis heute.
Die ersten Schritte haben funktioniert, nun habe ich mich an ein konkretes Projekt gewagt und komme nicht weiter. Ich erhalte bei dem folgenden Code im Experten bei der Prüfung eine Fehlermeldung („Ausgang liefert anderes Datenformat, Kommunikationsobjekt passt nicht.“), wenn ich an den Ausgang 5 ein internes Kommunikationsobjekt verbinde, dessen Datentyp 14-Byte-Text ist.
Schließe ich an diesen Ausgang ein 1-Bit-Kommunikationsobjekt an, gibt es keine Fehlermeldung.
Hat irgendjemand eine Idee, woran das liegen kann? Weitere Infos finden sich direkt im Code.
Müde Grüße
Puki
P.S: Bitte nicht lachen über meine exzessiven Kommentare im Code ;o)
Code:
############################### # erster Gehversuch hsl-Logik # ############################### #5000|"Text"|Remanent(1/0)|Anz.Eingänge|.n.|Anzahl Ausgänge|.n.|.n. #5001|Anzahl Eingänge|Ausgänge|Offset|Speicher|Berechnung bei Start #5002|Index Eingang|Default Wert|0=numerisch 1=alphanummerisch #5003|Speicher|Initwert|Remanent #5004|ausgang|Initwert|runden binär (0/1)|typ (1-send/2-sbc)|0=numerisch 1=alphanummerisch #5012|abbruch bei bed. (0/1)|bedingung|formel|zeit|pin-ausgang|pin-offset|pin-speicher|pin-neg.ausgang #5000|"Text"|Remanent(1/0)|Anz.Eingänge|.n.|Anzahl Ausgänge|.n.|.n. ################################################################### 5000|"# JB\testlogik"|1|10|"E1 START / STOP (1/0)"|"E2 START auf (Wert=1)"|"E3 START ab (Wert=1)"|"E4 WEITER auf (Wert=1)"|"E5 WEITER ab (Wert=1)"|"E6 STOP (Wert=1)"|"E7 Startwert (0%)"|"E8 Zielwert (100%)"|"E9 Schrittgröße (2.5%)"|"E10 Zyklus (0.5 Sek)"|5|"A1 aktueller Wert (%)"|"A2 Zielwert erreicht (Wert=1)"|"A3 Startwert erreicht (Wert=1)"|"A4 Richtung (auf=1/ab=0)"|"Ax DUMMY"|"v0.15" #5001|Anzahl Eingänge|Ausgänge|Offset|Speicher|Berechnung bei Start ################################################################### 5001|10|5|5|5|0 #5002|Index Eingang|Default Wert|0=numerisch 1=alphanummerisch ############################################################## 5002|1|0|0 [HASHTAG="t322"]start[/HASHTAG] / STOP|default 0|numerisch 5002|2|0|0 [HASHTAG="t322"]start[/HASHTAG] auf|default 0|numerisch 5002|3|0|0 [HASHTAG="t322"]start[/HASHTAG] ab|default 0|numerisch 5002|4|0|0 #WEITER auf|default 0|numerisch 5002|5|0|0 #WEITER ab|default 0|numerisch 5002|6|0|0 #STOP|default 0|numerisch 5002|7|0|0 #Startwert|default 0|numerisch 5002|8|100|0 #Zielwert|default 100|numerisch 5002|9|2.5|0 #Schrittgröße|default 2.5|numerisch 5002|10|0.5|0 #Zyklus|default 0.5|numerisch #5004|ausgang|Initwert|runden binär (0/1)|typ (1-send/2-sbc)|0=numerisch 1=alphanummerisch ########################################################################################## 5004|1|0|0|1|0 #aktueller Wert|default 0|nicht boolean|kein sbc|numerisch 5004|2|0|0|1|0 #Zielwert erreicht|default 0|nicht boolean|kein sbc|numerisch 5004|3|0|0|1|0 #Startwert erreicht|default 0|nicht boolean|kein sbc|numerisch ######################################################################## # dies ist die Original-Zeile für Ausgang 4: numerisch und default = 0 # ######################################################################## 5004|4|0|0|1|0 #Richtung|default 0|nicht boolean|kein sbc|numerisch #################################################################################################################################### # in der folgenden Zeile habe ich bewusst zwei Fehler eingebaut: "" statt 0 an Pos. 2 und alphanumerisch statt numerisch an Pos. 5 # # Diese Zeile erzeugt aber KEINEN Fehler im Experten 4.12, wenn ich ein 1-Bit-KO an diesen Ausgang anschließe! # #################################################################################################################################### # 5004|4|""|0|1|1 #Richtung|default 0|nicht boolean|kein sbc|numerisch ############################################################################################################################ # dies ist nun der Problemkandidat: sobald ich hinter dem "#" irgendwo ein "|" einfüge, erhalte ich im Experten 4.12 einen # # Fehler, sobald ich ein 14-Bit-KO an diesen Ausgang anschließe, bei einem 1-Bit-KO aber KEINEN Fehler. # # Sobald ich den Kommentar in eine neue Zeile schreibe oder die "|" ersetze oder lösche, gibt es keinen Fehler mehr. # ############################################################################################################################ 5004|5|""|0|1|1 #DUMMY|default leer|nicht boolean|kein sbc|alphanumerisch #5004|5|""|0|1|1 #5012|abbruch bei bed. (0/1)|bedingung|formel|zeit|pin-ausgang|pin-offset|pin-speicher|pin-neg.ausgang 5012|0|"EC[1]==1"|"'Start'"|""|1|0|0|0
Kommentar