neues Modul: SIEMENS Anbindung / S7 / Siemens Logo

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

Vorheriges Thema - Nächstes Thema

eusebio

Hallo MichaelBerlin,

Sicher dass TSAP 01.00 links hin muss? , ist bei mir umgekehrt

Die Verbindung zur Logo geht ja auch, bricht erst ab sobald ich ein S7_DRead oder S7_DWrite definiere.

Gruß,

Andreas


MichaelBerlin

Hallo,

hab ich mich geirrt. Stimmt !

Dann sollte es funktionieren. Hab etliche LOGO getestet sowohl 0ba7 als auch 0ba8. Evtl. hast Du ein Firmwareproblem.
Es gibt eine fehlerhafte Serie von Siemens betrifft die 0ba8, der Firmwarestand Fw Ver.  V1.08.03 hat einen Bug in der Netzwerkfunktionalität.
Äußert sich eigentlich mit unkontrolliertem stoppen des Programm, es wurde aber auch von Problemen mit der Verbindung berichtet. Muss auf jeden Fall umgetauscht werden.

LG Michael

eusebio

Hallo,

habe mein Problem erkannt. Ich benutze logocontrol von http://www.frickelzeugs.de/logocontrol/.

Sobald ich logocontrol ausschalte funktioniert alles bestens.

Kann mir vielleicht jemand sagen wie ich beides parallel betreiben kann?

Gruß,

Andreas

MichaelBerlin

Hallo,

daran bastele ich auch gerade. Die LOGO lässt aber nur eine HMI Verbindung zu.
Fhem macht aber doch Logocontrol überflüssig. Alles was damit geht kann Fhem auch.

LG Michael

eusebio

Hallo,

Hier die Lösung von user Elmo aus dem Frickelzeug-Forum:

Zitat
1. Im Logo Programm eine neue Serververbindung anlegen.
2. hab hier SERVER TSAP 21.00 CLIENT TSAP 3.00 eingestellt
3. In FHEM unter /opt/fhem/FHEM im Modul 44_S7.pm folgendes in Zeile 158 + 159 editieren
$LocalTSAP = 0x2100
$RemoteTSAP = 0x0300
Passt dann zur TSAP in LOGOSoft
Hier der Auszug aus der 44_S7.pm

if ( uc $a[2] eq ,,LOGO7" || uc $a[2] eq ,,LOGO8" ) {
$ip_address = $a[3];
$LocalTSAP = 0x2100;
$RemoteTSAP = 0x0300;
$hash->{Interval} = 1;
if ( uc $a[2] eq ,,LOGO7" ) {
$hash->{S7TYPE} = ,,LOGO7";
}
else {
$hash->{S7TYPE} = ,,LOGO8";

Hab keinen anderen Weg gefunden oder versucht.
Nachteil: Bei einem FHEM Update muß dieses wieder manuell angepasst werden.

Das funktioniert einwandfrei.

Gruß,

Andreas

MichaelBerlin

Hi,

Danke für den Tip geht super. Kann jetzt mit Fhem und einem VB Prog gleichzeitig auf die LOGO zugreifen.
Hab aber trotzdem das von mir oben beschriebene Problem mit der Fehlermeldung im LOG von Fhem.
obwohl alles funktioniert sind die laufenden Verbindungsabrüche lästig.

LG Michael

eusebio

Hallo,

Da kann ich dir leider nicht weiterhelfen, bei mir gibt es keine Abbrüche mehr.

Gruß,

Andreas

MichaelBerlin

Hallo,

hab die Ursache gefunden. Die Anwesenheitserkennung via Bluetooth war der Auslöser. Irgendwie kollidieren die miteinander.
Muss das noch näher untersuchen, bin aber ein Fhem Neuling und verstehe einige Hintergründe noch nicht so.

LG Michael

Wasserwerk33

@ NONO87


ich habe es hinbekommen. Habe es aber nicht nach eurem prinzip gemacht.

hier ich hänge euch mein Prinzip mit der Batterie unten dran. ;)
<li class="halbTransparent" data-row="3" data-col="2" data-sizex="1" data-sizey="1">
<header class="headerTransparent">Jalousie</header>
<div class="">
<div class="inline">
<div class="top-space">
<div class="inline">
<div data-type="symbol"
data-device="UG_Runter_Kontrolle_"
data-get-on="on"
data-get-off="Off"
data-states='["on","off"]'
data-icons='["fa-battery-4","fa-battery-1 fa-blink"]'
data-colors='["green","firebrick"]'
class="bigger">
</div>
</li>



Black_Death_HH

#909
Moin,

ich hab mal wieder ne Frage. Im Anfängerbereich konnte man mir nicht helfen. Ich versuche Device-Readings einfach in ein S7_AWrite zu "verschieben/kopieren". Als Beispiel habe ich das temp_c aus dem Weather-Modul (wie auch im Wiki beschrieben) verwendet. Die Namen habe ich auf mein Projekt geändert. Ansonsten alles kopiert und die define-Zeile in Fhem eingefügt. Es funktioniert nur einfach nicht. Der Wert aus dem Wetter-Modul wird nicht in das S7_AWrite übergeben.

Logfile-Auszug:

2017.02.15 12:59:06 1: ERROR evaluating my $NAME='Wetter_Trelde';my $EVTPART7='1026';my $EVTPART4='W:';my $EVENT='T: 7  H: 56  W: 4  P: 1026';my $EVTPART2='H:';my $EVTPART5='4';my $EVTPART3='56';my $SELF='S7_Temp_c_notify';my $EVTPART1='7';my $EVTPART6='P:';my $TYPE='Weather';my $EVTPART0='T:';{\ fhem "set S7_Temp_c ".ReadingsVal("Wetter_Trelde","temp_c","10");;\ }: syntax error at (eval 200927) line 1, at EOF

2017.02.15 12:59:06 3: S7_Temp_c_notify return value: syntax error at (eval 200927) line 1, at EOF


Besteht eine Möglichkeit den Code über den regexp Wizard zu generieren? So mache ich vielleicht weniger Fehler.
Und kann mir jemand sagen, ob ich die Uhrzeit des Sonnenuntergangs in ein S7_AWrite schieben kann? in der SPS ist das Datenformat ja dann TOD. Muss ich das irgendwie in FHEM umwandeln? Hat das mal jemand probiert?

Gruß, Thomas


Edit: Habe es selbst hinbekommen (endlich). Allerdings nun die Frage ob man auch die Uhrzeit übermitteln kann. Diese müsste ich wahrscheinlich zerlegen oder? Wenn ja, wie würde das gehen?

reinlinde

Hallo erst mal,
ich möchte gerne mit meiner Logo7 von Logomonitor nach Fhem wechsel und brauche die DB  Wert für AI1 bis AI6 für den ARead oder die Stelle wo man das nachlesen kann.
Digital Werte einlesen klappt schon.
Bin neu hier.

Gruß Reinhard

zelli001

Zitat von: Black_Death_HH am 15 Februar 2017, 13:11:28
Moin,

ich hab mal wieder ne Frage. Im Anfängerbereich konnte man mir nicht helfen. Ich versuche Device-Readings einfach in ein S7_AWrite zu "verschieben/kopieren". Als Beispiel habe ich das temp_c aus dem Weather-Modul (wie auch im Wiki beschrieben) verwendet. Die Namen habe ich auf mein Projekt geändert. Ansonsten alles kopiert und die define-Zeile in Fhem eingefügt. Es funktioniert nur einfach nicht. Der Wert aus dem Wetter-Modul wird nicht in das S7_AWrite übergeben.

Logfile-Auszug:

2017.02.15 12:59:06 1: ERROR evaluating my $NAME='Wetter_Trelde';my $EVTPART7='1026';my $EVTPART4='W:';my $EVENT='T: 7  H: 56  W: 4  P: 1026';my $EVTPART2='H:';my $EVTPART5='4';my $EVTPART3='56';my $SELF='S7_Temp_c_notify';my $EVTPART1='7';my $EVTPART6='P:';my $TYPE='Weather';my $EVTPART0='T:';{\ fhem "set S7_Temp_c ".ReadingsVal("Wetter_Trelde","temp_c","10");;\ }: syntax error at (eval 200927) line 1, at EOF

2017.02.15 12:59:06 3: S7_Temp_c_notify return value: syntax error at (eval 200927) line 1, at EOF


Besteht eine Möglichkeit den Code über den regexp Wizard zu generieren? So mache ich vielleicht weniger Fehler.
Und kann mir jemand sagen, ob ich die Uhrzeit des Sonnenuntergangs in ein S7_AWrite schieben kann? in der SPS ist das Datenformat ja dann TOD. Muss ich das irgendwie in FHEM umwandeln? Hat das mal jemand probiert?

Gruß, Thomas


Edit: Habe es selbst hinbekommen (endlich). Allerdings nun die Frage ob man auch die Uhrzeit übermitteln kann. Diese müsste ich wahrscheinlich zerlegen oder? Wenn ja, wie würde das gehen?
Dann lass uns doch mal an deiner Lösung teilhaben

Gesendet von meinem SM-G935F mit Tapatalk


PataMat

Zitat von: reinlinde am 15 Februar 2017, 16:16:11
... brauche die DB  Wert für AI1 bis AI6 für den ARead ...

Hallo Reinhard,

die Werte hätte ich auch gerne, hab' sie aber ebensowenig gefunden (bin auch Fhem-Novize ;) ). Meine Notlösung ist, die Analogeingänge auf Analogmerker zu legen und diese auszulesen.


define AM1 S7_ARead db 0 952 s16
define AM2 S7_ARead db 0 954 s16
...
define AM10 S7_ARead db 0 970 s16
...



Gruß, Mario

FHEM 5.7 / MAX! / Rademacher / LOGO

OGOL

Zitat von: reinlinde am 15 Februar 2017, 16:16:11
brauche die DB  Wert für AI1 bis AI6 für den ARead
Zitat von: PataMat am 19 Februar 2017, 21:13:02
die Werte hätte ich auch gerne, hab' sie aber ebensowenig gefunden

LOGO!Soft Comfort Online-Hilfe: Extras -> Parameter-VM-Zuordnung  ;D

Gruß, OGOL

Esprimo Q930(Ubuntu 22.04) * nanoCUL-433 * SignalESP * SDM230M * SDM630M * 1wire * HUE * NUKI * HS110 * 3 x Logo8

PataMat

Hallo OGOL,

tatsächlich, da stehen sie! So nah und ich hab' das halbe Internet abgesucht  :-[


define AI1 S7_ARead db 0 926 s16
define AI2 S7_ARead db 0 928 s16
...
define AI8 S7_ARead db 0 940 s16


Danke Dir!

Gruß, Mario
FHEM 5.7 / MAX! / Rademacher / LOGO