Topic-icon Vorstellung - PHC Binding für openHAB 2

Mehr
13 Dez 2018 23:12 #16 von JS
Hi there,
I would like to do some testing this weekend. I want to start simple i.e. with an 'eingangsmodul' and an 'ausgangsmodul' but I cannot seem to find any examples of rules for this binding.

Could you please show some examples of how rules are written?
i.e. what commands are used to read the eingangsmodul, what commands are used to switch an ausgangsmodul?

Thanks in advance.

Gruß,
Jan

Bitte Anmelden oder Registrieren um der Konversation beizutreten.

Mehr
14 Dez 2018 12:17 - 28 Jan 2019 17:53 #17 von gnlpfjh
Hi,

Your connection in the picture looks good.

JS schrieb: Is there any change that I will blow the PHC system?

If you connect the power supply correctly, nothing should happen. I experimented a lot with the modules but of course I can't guarantee it. I'd like to start by just connecting one or two modules.

JS schrieb: Could you please show some examples of how rules are written?

A simple rule with the items from the Readme:
rule "switch"
when Item Input_1 received update
then
        SwitchItem output = Switch_1
	if (Input_1.state.equals(ON)){
		if (output.state.equals(ON)) sendCommand(output, OFF)
		else if (output.state.equals(OFF)) sendCommand(output, ON)
		else if (output.state.equals(NULL))sendCommand(output, ON)
	}
end

I wrote some functions to implement the behavior of the PHC controller:
val Functions$Function2 shortClick = [
	SwitchItem input,
	SwitchItem output|
	logInfo("rules", "schalten: " + output)

	if (input.state.equals(ON)){
		if (output.state.equals(ON)) sendCommand(output, OFF)
		else if (output.state.equals(OFF)) sendCommand(output, ON)
		else if (output.state.equals(NULL))sendCommand(output, ON)
	}
]
val Map<SwitchItem, Number> schalterLastCmd = newHashMap
val Map<SwitchItem, Timer> timer = newHashMap

val Functions$Function4 longClick = [
	SwitchItem input,
	SwitchItem output,
	Map<SwitchItem, Number> schalterLastCmd,
	Map<SwitchItem, Timer> timer|

	var Number toggleTime = now.millis
	if (schalterLastCmd != null){
		if (schalterLastCmd.containsKey(input)) toggleTime = now.millis - schalterLastCmd.get(input)
	}

	if (input.state.equals(ON)){
		schalterLastCmd.put(input, now.millis)
		timer.put(input, createTimer(now.plusSeconds(2), [|
			if (output.state.equals(ON)) sendCommand(output, OFF)
			else if (output.state.equals(OFF)) sendCommand(output, ON)
			else if (output.state.equals(NULL))sendCommand(output, ON)
		]))
	}else if (input.state.equals(OFF)){
		if (toggleTime <= 1150){
			timer.get(input)?.cancel
			timer.remove(input)
		}
		schalterLastCmd.put(input, 0)
	}
]

Then the rules looks like this:
rule "switch"
when Input_1 received update
then
	shortClick.apply(Input_1, Switch_1)
	longClick.apply(Input_1, Switch_2, schalterLastCmd, timer)
end

Gruß, Jonas

EMD, AMD, JRM, DIM an OpenHAB 2 mit PHC Binding
Letzte Änderung: 28 Jan 2019 17:53 von gnlpfjh.

Bitte Anmelden oder Registrieren um der Konversation beizutreten.

Mehr
17 Dez 2018 21:34 - 18 Dez 2018 15:17 #18 von JS
HI Jonas,
I connected 485- to pin 3, 485+ to pin 4 and used the data in on the power module. This way I was absolutely sure that I would not do something wrong with the power connections as according to the manual the data in doesn't contain any.

B.t.w. I was unable to load the binding from eclipse. Openhab gives error messages in the log when it tries to load the .jar file: Unresolved requirement: Import-Package: gnu.io
Am I doing something wrong here?


I managed to install the .jar :thx to earlier comment: type 'feature:install openhab-transport-serial' in console.


I did not try any rules yet but the old binding worked as the logging showed the changes of the inputs when you click on the switches in the wall.

So far it works. After my holiday I will continue testing.

Many thx!

Gruß, Jan
Letzte Änderung: 18 Dez 2018 15:17 von JS.

Bitte Anmelden oder Registrieren um der Konversation beizutreten.

Mehr
10 Okt 2019 15:40 #19 von dirks67
Hallo,

habe in meinem Haus seit 2002 PEHA am laufen. Zur Zeit habe ich ein Lan auf RS232 Gateway installiert über das auch die Peha Software (per virtuellem Com-Port) auf die Steuerung zugreift. Jetzt möchte ich openHAB2 das PHC-Binding ausprobieren. Das funktioniert im Prinzip auch relativ einfach (Module werden erkannt) aber ich kann die Ausgangsmodule nur einschalten. Eine korrekte Rückmeldung über den Schaltzustand bzw. Ausschalten funktioniert nicht.
Openhab2 läuft auf einem Raspberry 3, die Anbindung an den Peha Bus erfolgt mit einem RS485USB-Stick, der auch von openhabian erkannt wurde (ttyUSB0).
Hat jemand eine Idee woran es liegen kann, dass ich die AM's nur einschalten kann? Ich könnte mir vorstellen, dass es an der Konfiguration der Schnittstelle liegt (Baudrate), habe aber noch keine Möglichkeit gefunden, wie ich die einstellen kann. Ergänzend muss ich gleich sagen, dass ich ein Raspberry und Linux-Anfänger bin (das heißt ich kann Befehle in die Konsole kopieren, weiß aber nicht immer genau wieso und weshalb ;-) )

Bitte Anmelden oder Registrieren um der Konversation beizutreten.

Mehr
24 Nov 2019 22:37 - 24 Nov 2019 22:39 #20 von gnlpfjh
Hallo,

ich habe es leider erst jetzt gesehen.

Welchen Adapter bzw. Chip nutzt du?
Nutzt du die in OpenHAB enthaltene Version des Bindings?

Ich hatte mit der ersten Version auf dem Raspi 3 auch Probleme. Manchmal lief es, oft aber auch nicht. Dies lag zu großem Teil auch am Raspberry selbst bzw. an den Treibern auf der ARM Architektur, deshalb nutze ich jetzt ein UPBoard (x64). Um das zu überprüfen könntest du es mal auf einem Windows oder Linux PC (x64 oder x86 Architektur) laufen lassen. Die Schnittstelle wird eigentlich vom Binding mit der richtigen Baudrate usw. konfiguriert.
Zudem hakt die erste Version auch auf einem x64 oder x86 Rechner. Ich habe mittlerweile eine deutlich verbesserte Version und einen Pullrequest gestellt. Bis der integriert ist kannst du das aktuellste jar hier herunterladen. Die hab ich auf dem Raspi (noch) nicht getestet.
Mit dieser Version läuft es bei mir auf dem UPBoard mit einem FTDI Adapter sehr flüssig.

EMD, AMD, JRM, DIM an OpenHAB 2 mit PHC Binding
Letzte Änderung: 24 Nov 2019 22:39 von gnlpfjh.

Bitte Anmelden oder Registrieren um der Konversation beizutreten.

Powered by Kunena Forum