neues Modul: SIEMENS Anbindung / S7 / Siemens Logo

Begonnen von charlie71, 12 August 2014, 15:33:23

Vorheriges Thema - Nächstes Thema

charlie71

Hallo Leute,

vielen Dank für euren Support.
Aktuell sehe ich die Lage wie folgt:
Das low level Interface sollte prinzipiell funktionieren (perlcode zur SPS Kommunikation), dass hat fo_zhou an seiner SPS und auch ich auf einer S300 mit dem Testprogramm erfolgreich getestet (auch floats werden sauber gelesen und/oder geschrieben)

Es scheint jedoch Probleme mit der Anbindung des neuen Moduls zu geben.
Meine Vermutung ist, das es ein Speicherzugriffsproblem gibt. DH zB dass Werte außerhalb des definierten Bufferbereichs gelesen wird ...
(Scheinbar treten diese Probleme nicht auf meiner Installation mit 4x Siemens Logo auf, dass lässt sich auch erklären, da ich nur dieses eine Modul verwende und somit dynamisches allokieren von Speicher nur selten Auswirkungen hat. )

lG
Charlie71



fu_zhou

#256
Hallo zusammen,

ich habe jetzt die Analogwert-Kommunikation mal rausgemschmissen und lese/ schreibe 8 bit, wobei die S7 das, was im DB23 ankommt, einfach auf das entsprechende bit im DB21 schreibt. Das funktioniert soweit einwandfrei, nur das bit 0.0 im DB21 bleibt stehen und wechselt ab und zu den Zustand mit einem anderen bit. Ein zweites mal Triggern setzt das bit 0.0 erst wieder auf 0. Bit 0.1 bis 0.7 funktioniert, d.h. beim setzen über Trigger (1 Sek), kommt das entsprechende Rückmelde-bit für 1 Sek.
FHEM auf RasPi 2, S7-300 mit ET200S über ProfiNet

charlie71

#257
Hallo fu_zhou,

Ein neuer Tag ein neues Glück  ;)
so gibt eine Neue Testversion für FHEM modul.
Es sind ein Fehler im Bereich analog read / analog write behoben.

bitte die File tauschen und Feedback geben.
Danke und lG
Charlie71

fu_zhou

#258
Hallo charlie,

Edit: entschuldige die Verwirrung...

Also Real schreiben geht jetzt, bei Real lesen ist nach wie vor was mit der Skalierung/ Darstellung im Argen.

Problem: Sowohl der erste gelesene Real-Wert als auch der erste Binär-Wert wird durch andere Werte in FHEM beeinflusst. Setze ich ein bit, ändert sich der erste real Wert zum Teil extrem, aber nur für die eine Sekunde des Triggers. Nach und nach ändert sich der Wert sogar permanent durch das setzen von bits.
Jeweils der erste ARead und DRead scheint sich irgendwo "Rauschen" einzufangen.

Auch der erste geschriebene Real Wert ändert sich nach und nach mit setzen von bits.
Auch das erste geschriebene bit wechselt von alleine ständig den Zustand im DB (TRUE-FALSE-TRUE-FALSE).


Das war aber bei der Libnodave schon so, wie ich eben festgestellt habe, nachdem ich kurz auf die 1.15 umgestiegen bin.

Und der Raspi Monitor wird mit Logeinträgen (WriteArea: sending data ...) zugeballert.
FHEM auf RasPi 2, S7-300 mit ET200S über ProfiNet

charlie71

Hallo Leute,

ich hab mal die letzten Fixes in die Version V2.1 gepackt:

* Fix: Fehler für DB ungleich 0 behoben
* Fix: AnalogRead und Analog Write

lG
Charlie71

pc1246

Hallo zusammen

Ich bin jetzt auch wieder verfuegbar, bis ca. 18:00 Uhr. Ich darf heute ins Theater!
@Charlie: Ich kann einen zweiten RPI aufsetzen, und da ein nacktes FHEM nur mit den S7-Modulen drauf laufen lassen, wenn das hilft! Jetzt checke ich erstmal die neue Version!
Gruss Christoph
HP T610
Onkyo_AVR;Enigma2; SB_Server; SB_Player; HM-USB; PhilipsTV; harmony hub; Jeelink mit PCA301; Somfy; S7-300; LGW; HUE; HM-IP auf Charly; div

fu_zhou

Hallo Charlie und Christoph,

mein Raspi B ist im Moment "nackig", d.h. es ist nur Raspbian, Perl, ftp Server und FHEM installiert. FHEM übernimmt im Moment auch keine Aufgaben außer der Kopplung zur S7.
FHEM auf RasPi 2, S7-300 mit ET200S über ProfiNet

pc1246

Hallo
Ich habe jetzt meinen "normalen" RPI mit den neuen Modulen gefuettert! Schreiben lesen von float-Werten geht jetzt!
Aber: Wenn ich mir den db-Writepuffer ansehe, dann sind da die Daten vom zweiten Teil auf den ersten dupliziert! siehe Bild
Das zweite Bit zeigt immer noch Fragezeichen!
Gruss Christoph

(//)
HP T610
Onkyo_AVR;Enigma2; SB_Server; SB_Player; HM-USB; PhilipsTV; harmony hub; Jeelink mit PCA301; Somfy; S7-300; LGW; HUE; HM-IP auf Charly; div

pc1246

#263
Hallo zusammen
Also ich habe jetzt den RPI neugestartet. Keine Kommunikation! Bei mir kommt auch immer die Fehlermeldung das kein IODEV fuer die S7-Variablen vorhanden ist! Das ist irgendwie ein Timing-Problem! Habt Ihr das nicht? Kann ich das irgendwie beeinflussen? Ich habe das auch bei einer anderen Komponente! (Jeelink ETH200)
Stop, ich sehe gerade die Kommunikation laeuft doch! Nur die Elemente die vor dem Umstieg auf 2.xx definiert waren wollen nicht!
Ok, die gehen jetzt auch, nachdem ich denen noch mal das IODEV definiert habe!
Jetzt ist noch das Problem mit dem Lesen des zweiten Bits da! Ich loesche jetzt mal das erste!
F..k! Die Fragezeichen bleiben!, aber wenn man mal einfach probiert zu Steuern, dann geht das natuerlich!
Also nur noch die Ueberschneidungen!
Gruss Christoph

Edit:
Noch mal probiert, definitiv werden die Werte auf beide zu schreibenden DB's geschrieben!
Jetzt habe ich noch schnell einen weiteren Bereich angelegt, der ueberschreibt dann die beiden anderen!
Das war doch schon bei Libnodave problematisch!?
HP T610
Onkyo_AVR;Enigma2; SB_Server; SB_Player; HM-USB; PhilipsTV; harmony hub; Jeelink mit PCA301; Somfy; S7-300; LGW; HUE; HM-IP auf Charly; div

charlie71

Hallo

ich denk ich hab das Problem lokalisiert.

Bitte einen Moment Geduld.

lG
Charlie71

charlie71

Hallo Leute,

hier zwei neue Files mit denen sollte - so vermute ich - das "Spiegeln" der DBs behoben sein.
Das Problem ist nur aufgetreten, wenn mehrere DBs konfiguriert waren und in die DBs wurde in die selben Bereich geschrieben.

Bitte um Feedback
lg
Charlie71

pc1246

Hallo Charlie
Das sieht erstmal sehr gut aus! AWrite funktioniert! Und Dwrite hatte ich jetzt eh keine Probleme bisher! Lag aber auch ganz oben im Write-Puffer!
Danke erstmal
Gruss Christoph

P.S.: Was war denn jetzt eigentlich das Problem bei den A-Modulen?
HP T610
Onkyo_AVR;Enigma2; SB_Server; SB_Player; HM-USB; PhilipsTV; harmony hub; Jeelink mit PCA301; Somfy; S7-300; LGW; HUE; HM-IP auf Charly; div

fu_zhou

Hallo Charlie,

das ist der Hammer, es funktioniert jetzt alles, trotz, oder besser gesagt, sogar mit meiner Multi-DB Konfiguration!

Super Arbeit, ich überlege gerade, wie wir dich noch beschäftigt halten können?!

Grüße, fu_zhou
FHEM auf RasPi 2, S7-300 mit ET200S über ProfiNet

charlie71

Hallo

zuerst vielen Dank für eure Testhilfe.

Die Fehler waren eigentlich ganz einfache:
Analoge Module: Die ursache war eigentlich ein Typo, ich habe ein Byte statt eine float ausgelesen und das klappt natürlich nicht.
Das zweite Problem war dass eine abfrage fehlt hat, ob bei der writer config die DB nummer übereinstimmt und somit wurden die Updates an alle writer Blöcke aktualisiert die den selben bereich hatten (egal ob die DBNr gleich war oder nicht).

PS: eine neue Release ist schon auf den Weg, darin noch ein kleiner weiter fix.

nochmals vielen Dank und schönes WO
Charlie71

pc1246

#269
Hallo Charlie
Wir geben Dir ein Bier aus! Wie wo wann! Ich bin totally happy. Morgen kann ich mich dann mal ranmachen, und all die Schalter, Lampen und Rolladen auf fhem zu bringen! Wie .... ist das denn!

Nochmals Danke
Gruss Christoph

Edit:
Signatur geaendert! Libnodave geloescht!
HP T610
Onkyo_AVR;Enigma2; SB_Server; SB_Player; HM-USB; PhilipsTV; harmony hub; Jeelink mit PCA301; Somfy; S7-300; LGW; HUE; HM-IP auf Charly; div