Page 1 of 1

Newbie project: General setup, garage door

Posted: Tuesday 24 January 2017 16:02
by softmonaut
Hi,

as a newbie with a concrete project in mind, I've some questions regarding what is possible with Domoticz.

I'd like to manage the garage door which is currently operated manually. The operation depends on short signals ('->', ~1sec) triggered by a remote control or a push button switch (both non z-wave). Besides running a full cycle (i.e. completely opened/closed) the operation could be interrupted which leaves the door in an intermediate position. The next signal lets the door run in the oposite direction:

Code: Select all

Signal: IsClosed -> IsOpening -> IsOpen
Signal: IsOpening -> IsStopOpening
Signal: IsStopOpening -> IsClosing -> IsClosed	
Signal: IsOpen -> IsClosing -> IsClosed
Signal: IsClosing -> IsStopClosing
Signal: IsStopClosing -> IsOpening -> IsOpen
I've planned to set up a Z-wave network using the following parts:
  • a Synology DS116play running Domoticz
  • a Z-wave USB Stick
  • Qubino Flush 1D Relais EU Z-Wave Plus (ZMNHND1) to generate the required signals
  • 1 Fibaro FIBEFGK-101-ZW5 sensors to get the "door is closed" information
Here are the questions:
  1. Any fundamental comments on the list of parts?
  2. What Z-wave USB Stick would you recommend when you take the list of parts into account?
  3. The procedure requires a maximum amount of 2 signals to close the door regardless of the current state. The first signal opens the door remaining in an intermediate position and the second one finally should close it. All other transitions to close the door require just one or no signal. The procdure (written in some sort of a imperative meta programming language) looks as follows:

    Code: Select all

    precedure CLOSEDOOR {
    	for(int i = 0; i < 2 && Fibaro:IsClosed == false; i++) {
    		Qubino:Close	// Create a signal: Relais closes for 1sec
    		Wait 1s
    		Qubino:Open
    		Wait 60s	// Time to operate one full door cycle	
    	}
    	if(Fibaro:IsClosed == false) {
     		alert("Door couldn't be closed.");
    	}
    }
    
    Is this possible to realize this behavior? Any suggestions/comments/ideas?
Many thx and regards
Jörg