Thank you.
How should it be, for me as a beginner?
// these are good quotemarks
Default item=Rollo10 label="Fenster" labelcolor=[IT_Rollo10_Runter==ON="red",IT_Rollo10_Hoch==ON="red" ]
}
// these are bad quotemarks
// and you will see errors in your openhab.log
Frame label=“Light Switch” icon=“attic” {
// always be careful when copy-pasting stuff
Thank you rossko57.
Is anyone pretty keen in configuation openHAB with Siemens Logo, especially analog values?
I have a Siemens Logo! 12/24 RCE from which I want to get the analog Input values.
These values should be displayed in OH2.
These are the Sensors, I want to implement.
Unfortunately it`s not really clear for me, what needs to be configured, in Logo.things / Logo.items / Logo.rules and the Sitemap file.
My Logo “Logo8_1” is ONLINE.
I have also attached the analog blocks, which are also online.
Thank you in advance for your help.
Have a nice evening.
Hello everybody,
my shutters are working now-at least for one shutter.
As I tried to copy the files and renamed it for Shutter Haustechnik, Shutter Küche, etc. nothing worked anymore (p.cs. picture below).
My Question is, what do I need to change if I want to use 16 shutters?
Is it just about to change the Name “RolloWC, RolloHaustechnik, etc.”, or do I need to change more?
Is only one Rule-File enough, or do I have to create one rule for every shutter?
Can someone please give me an example for two shutters?
Additionally I`m working on a light switch, which skazi described in post #242.
The optical view or change in openHAB is good, but if I use the Online-Test in Logo Soft Comfort I don`t see any changes.
My files are as following:
logo.items
// Lichtschalter
Switch Relay7 “Relay#7” (LOGO1) { channel=“plclogo:digital:Logo8_3:Outputs:Q6” }
Switch Logo8_3_NI7 “Logo8_3_NI7” (LOGO1) { channel=“plclogo:pulse:Logo8_3:VB200_0” }
logo.things
// Rollos
Bridge plclogo:device:Logo8_3 “Logo8_3” [ address=“192.168.178.14”, family=“0BA8”, localTSAP=“0x2000”, remoteTSAP=“0x1000”, refresh=1000 ]
{
Thing digital Inputs “Logo8_3 Inputs” [ kind=“I” ]
Thing digital Outputs “Logo8_3 Outputs” [ kind=“Q” ]
// Rollo1
Thing pulse VB100_2 [ block=“VB100.2”, observe=“VB100.2”, pulse=500 ] // NI3 rollo control-bit pulse up
Thing pulse VB100_4 [ block=“VB100.4”, observe=“VB100.4”, pulse=500 ] // NI4 rollo control-bit pulse down
Thing memory VW27 [ block=“VW27”] // rollo position memory value-word
}
// Lichtschalter
Thing digital Outputs [ kind=“Q” ]
Thing pulse VB200_2 [ block=“VB200.0”, pulse=100 ]
logo.rules
rule “forward Relay7 command to logo NI7”
when
Item Relay7 received command
then
sendCommand(Logo8_3_NI7, ON) // short pulse
end
sitemap
Group item=EG_Garage label="Garage" icon="garagedoor-closed" {
Switch item=Relay7 label="Spitzboden"
}
Can please someone help me-what am I doing wrong here?
I configured the Logo (ONLINE)
Thank you in advance for any help.
Have a nice sunday.
@Bastler36 it looks like your “Lichtschalter” things are outside of the “Bridge” thing. Move it together with other things (no need for two “Outputs” things).
Another thing is that I don’t use the observe
feature in pulse things. I don’t think it will work with my example and observe
.
Thanks a lot, skazi,
To make it more clear for me, can you please explain what you mean, or how it should be?
I followed an example here in this forum.
I just want to have a light switch to turn on a light outside.
Having a light switch would be great. This should give an impule to the relay like for this circuit:
Both actions are quite similiar.
The target is to switch it ON/OFF and to get a Feedback Green=ON/Red=OFF.
Thank you again.
Hi @Bastler36,
Thing pulse VB100_2 [ block=“VB100.2”, observe=“VB100.2”, pulse=500 ] // NI3 rollo control-bit pulse up
Thing pulse VB100_4 [ block=“VB100.4”, observe=“VB100.4”, pulse=500 ] // NI4 rollo control-bit pulse down
it’s not a really good idea to observe the same block as used for setting. The *.thing file shall look as
// Rollos
Bridge plclogo:device:Logo8_3 “Logo8_3” [ address=“192.168.178.14”, family=“0BA8”, localTSAP=“0x2000”, remoteTSAP=“0x1000”, refresh=1000 ]
{
Thing digital Inputs “Logo8_3 Inputs” [ kind=“I” ]
Thing digital Outputs “Logo8_3 Outputs” [ kind=“Q” ]
// Rollo1
Thing pulse VB100_2 [ block=“VB100.2”, observe=“NI3”, pulse=500 ] // NI3 rollo control-bit pulse up
Thing pulse VB100_4 [ block=“VB100.4”, observe=“NI4”, pulse=500 ] // NI4 rollo control-bit pulse down
Thing memory VW27 [ block=“VW27”] // rollo position memory value-word
// Lichtschalter
Thing pulse VB200_2 [ block=“VB200.0”, pulse=100 ]
}
Edit: pulse value of 100ms may be too short. Try to increase pulse width to 250
// Lichtschalter
Thing pulse VB200_2 [ block=“VB200.0”, pulse=250 ]
Kind regards,
Alexander
Thank you all for your great support.
I will try this and give you a feedback.
Dear openHAB-Friends,
I succeeded a lot regarding openHAB Bindings like Weather, Calendar, Heat Pump, Fresh Air System, Fuel Prices, etc.
So far so good.
The main problem is to implement my functions I have in my 4 Logo`s.
I know you gave me already hints here, but no one was working.
So I decided to make it more simple for me and created the two sample circuits:
I have the following files:
logo.items
// Licht Garage
Switch Licht_Garage "Licht Garage" <light> {channel=""}
Switch ReadOutput01 {channel="plclogo:digital:Logo8_3:Outputs:Q6"}
Switch invisibleSwitch01 {channel="plclogo:pulse:Logo8_3:VB200_0:state"}
// Licht Treppenhaus
Switch Licht_Treppenhaus "Licht Treppenhaus" <light> {channel=""}
Switch ReadOutput02 {channel="plclogo:digital:Logo8_3:Outputs:Q10"}
Switch invisibleSwitch02 {channel="plclogo:pulse:Logo8_3:VB200_2:state"}
logo.things
Bridge plclogo:device:Logo8_3 [ address="192.168.178.14", family="0BA8", localTSAP="0x2000", remoteTSAP="0x1000", refresh=100 ]
{
// VB1XX.X = rollershutter
// VB1XX.0 = up
// VB1XX.1 = down
//
// Allgemeine Initialisierung
Thing digital Inputs [ kind="I" ]
Thing digital Outputs [ kind="Q" ]
Thing digital Marker [ kind="M" ]
// Fenster WC
Thing pulse TH_Taster_Rollo1_Auf [ block="VB100.2", pulse=200 ]
Thing pulse TH_Taster_Rollo1_Ab [ block="VB100.4", pulse=200 ]
Thing pulse TH_Taster_Rollo1_Zwischen [ block="VB100.9", pulse=200 ]
Thing memory TH_Rollo1_Status [ block="VD27" ]
// Fenster Haustechnik
Thing pulse TH_Taster_Rollo2_Auf [ block="VB101.2", pulse=200 ]
Thing pulse TH_Taster_Rollo2_Ab [ block="VB101.4", pulse=200 ]
Thing pulse TH_Taster_Rollo2_Zwischen [ block="VB100.9", pulse=200 ]
Thing memory TH_Rollo2_Status [ block="VD29" ]
// Fenster Wohnzimmer Ost
Thing pulse TH_Taster_Rollo3_Auf [ block="VB102.2", pulse=200 ]
Thing pulse TH_Taster_Rollo3_Ab [ block="VB102.4", pulse=200 ]
Thing pulse TH_Taster_Rollo3_Zwischen [ block="VB100.9", pulse=200 ]
Thing memory TH_Rollo3_Status [ block="VD31"
// Test Licht Garage
Thing pulse VB200_0 [ block="VB200.0", observe="Q6", pulse=500 ]
// Test Licht Treppenhaus
Thing pulse VB200_2 [ block="VB200.2", observe="Q10", pulse=500 ]
}
taster.rules
// Licht Garage
rule "Switch Light Garage"
when
Item ReadOutput01 changed or // light changed external
Item Licht_Garage received command // light changed internal
then
if(receivedCommand==ON ||receivedCommand==OFF) { // ensure there was a received command, so second item triggered rule
if (ReadOutput01.state != receivedCommand) { // only if state changed
invisibleSwitch01.sendCommand(ON) // send an ON
invisibleSwitch01.sendCommand(OFF) // send an OFF
}
}
else { // no trigger from proxy switch, so state changed externally
if (ReadOutput01.state != Licht_Garage.state) { // if state changed really
Licht_Garage.postUpdate(ReadOutput01.state) // update the state without triggering the rule
}
}
end
// Licht Treppenhaus (mit Ausschaltverzögerung)
rule "Switch Light Treppenhaus"
when
Item ReadOutput02 changed or // light changed external
Item Licht_Treppenhaus received command // light changed internal
then
if(receivedCommand==ON ||receivedCommand==OFF) { // ensure there was a received command, so second item triggered rule
if (ReadOutput02.state != receivedCommand) { // only if state changed
invisibleSwitch02.sendCommand(ON) // send an ON
invisibleSwitch02.sendCommand(OFF) // send an OFF
}
}
else { // no trigger from proxy switch, so state changed externally
if (ReadOutput02.state != Licht_Treppenhaus.state) { // if state changed really
Licht_Treppenhaus.postUpdate(ReadOutput02.state) // update the state without triggering the rule
}
}
end
sitemap
Text label="Licht" icon="light" {
Default item=Licht_Garage label="Garage"
Default item=Licht_Treppenhaus label="Treppenhaus"
}
Thing 01 is running. If I copy this and rename it like I did (02…) both are not running anymore.
Can please someone give an example, what needs to be renamed considering Switch01 if I want to have two or even more Switches-especially in the logo.things and taster.rules files?
Thank you very much in advance.
Hi, syntax error?
Thing memory TH_Rollo3_Status [ block="VD31"
vs
Thing memory TH_Rollo3_Status [ block="VD31" ]
And is it really double value and not word (VD vs VW) ?
Kind regards,
Alexander
Hi, I’m using the pulse thing to get a short pulse to my trigger input of a Logo Comfort Switch block which is switching my output, like:
Thing pulse Logo204OfficeLight [ block=“VB460.0”, pulse=200 ]
Thats working fine. While reading the docs I came across the “observe” property which I never used before and is somehow confusing me. Can someone please give me a hint for which use-case the “observe” property of the pulse thing is helpful? Documentation says:
If
observe
is set and differ fromblock
, binding will wait for value change onobserve
and send then a pulse with lengthpulse
milliseconds to block
But that’s not true! I have the following Thing:
Thing pulse Logo204OfficeLight [ block=“VB460.0”, observe=“Q7”, pulse=200 ]
When changing the “observed” Q7 from off to on (e.g. by using my wall switch) no pulse is sent to VB460.0 as described in the documentation. So what is the “observe” property really mentioned for and which use-case the author had in mind when adding this to the pulse thing?
Hi @PacmanII ,
i think i can answer your question. The main idea was to get feedback from logo, if the change was really received. We have follow network topology: openhab server <-------> Logo. Now, some memory block was modified. It takes some time, the new value arrived on Logo side. OpenHab obeserves the value on “observe” channel with polling intervall. And if, the change was detected, it sends the opposite value after timeout “pulse”. The implementation is very hard due to settings. It depends on relation of pulse length and polling intervall. I tried to draw a timing diagramm:
Kind regards,
Alexander
Dear all,
I have already installed an configured OH3 where I read analog values from my Logo like Temperature, Water Level, etc.
Unfortunately the Values are shown in OH3 with false decimal places:
Target: 2,9°C
actual: 29°C
Target: 83,5% (Water Level in my cistern)
actual: 835%
Until now I didn`t find out how I can change this.
Thank you in advance for any help.
Dear all,
is anyone here wh has already implemented most of his automation in OH3 via PLC?
I have a lot more things running than in OH2. It`s just easier for me to work with OH3.
What is still just partly running is a switch, like for a light.
What I did:
→ I turn on the Button (Icon is red)
→ switch colour turns to green/moves to right (function given in SoftComfort, Online Test), Icon turns to green
→ to turn off the light, I must push the button again, colour is not changing
Is there a possibility to do this more comfortable?
Just like using a time relay which deactivates after 1 min (switch moves back to origin position, colour changes from green to red)?
Most of my switches are used with a relais.
I hope it`s possible to understand what I mean.
Thank you.
This is like a pulse relay? Push a button to turn ON , push same button to turn OFF? And of course you have to release the button in between.
Expire feature can do this for you.
But that will leave you with a UI switch that has no relation to whether the real lights are on or off, same as an un-pushed button.
Look here
Thank you both for your support!
@ Bassdriver: I have used the UDF and tried it several times.
If I switch via NI, it pulses but Q will not stay ON (like using a relay).
Have you used this UDF for your configuration?
Did you had success with that?
I thougt there might be a easy way in OH3 to use that.
I am still using oh2 so I don’t know. I think the simplest solution is the second last one.
it works perfectly for me ,normal wall switch
oh3 ,logo8!
UDF
things
Bridge plclogo:device:Logo8 "Logo8 PLC" [ address="192.168.3.250", family="0BA8", localTSAP="0x0200", remoteTSAP="0x0200", refresh=1000 ]
{
Thing digital Inputs "Logo8 Inputs" [ kind="I" ]
Thing digital Outputs "Logo8 Outputs" [ kind="Q" ]
Thing memory VB100_4 [ block="VB100.4", force=false ]
}
items
Group:Switch:OR(ON, OFF) gLight "Φωτισμός [(%d)]" <light>
Group:Switch:OR(ON, OFF) gLightNI "Όλα τα φώτα [(%d)]" <light>
Switch Logo8_NI1 "NI1 Light" (gLightNI) ["Lighting"] { channel="plclogo:memory:Logo8:VB100_4:state" }
Switch Logo8_NI2 "NI2 Light" (gLightNI) ["Lighting"] { channel="plclogo:memory:Logo8:VB101_4:state" }
Switch Logo8_NI3 "NI3 Light" (gLightNI) ["Lighting"] { channel="plclogo:memory:Logo8:VB102_4:state" }
Switch Logo8_Q1 "Q1" (gLight) { channel="plclogo:digital:Logo8:Outputs:Q1" }
Switch Logo8_Q2 "Q2" (gLight) { channel="plclogo:digital:Logo8:Outputs:Q2" }
Switch Logo8_Q3 "Q3" (gLight) { channel="plclogo:digital:Logo8:Outputs:Q3" }
roule
update openhab for wall switch changes
rule "Logo lights"
when
Member of gLight changed
then
val Logo_Nx= triggeringItem.name.replace("Logo8_Q","Logo8_NI")
Logo_Nx.postUpdate(triggeringItem.state.toString)
end
Hi mpampinos,
thank you for sharing your configuration.
I`m still dispairing with my PLC-configuration.
I just try to have some switches to get my lights running.
Sometimes one switch workes, others not.
I don`t really know why.
Until I read your comments I have used Pulse Things.
Im also using OH3 with 5 Logo
s (12/24 RCE and 230 RCE) for more than 90% of my home automation.
Would you please be so kind and provide more information, maybe screenshots about your OH3-configuration?
- My PLC are all ONLINE
- I have created for example a thing for Light
- linked to a Item
With this configuation it`s not working.
I would appreciate it, if you might check what I have done wrong.
Thank you in advance.
kind regard.