Advanced features on CTouch (Mono) required

Discussion in 'C-Touch/HomeGate/SchedulePlus/PICED Software' started by renaulth, Jan 5, 2007.

  1. renaulth

    renaulth

    Joined:
    Jan 5, 2007
    Messages:
    1
    Likes Received:
    0
    Hi all

    I have to program a CTouch panel together with a Comfort Minder panel to achieve the following:

    I'm controlling a clients 5 irrigation zones through CTouch and Minder, 5 c-bus on/off buttons on the touchpanel switches on/off 5 groups which are in turn read by Minder as 5 counters, which activates/deactivates the Output wired to that specific irrigation zone.

    What the client wants is to have the 5 buttons to select a zone, and then an up/down button to increment/decrement a timer (0 - 60minutes), a 'timer/clock' component that indicates the selected time and a stop/start button. So basically he wants a variable timer for his irrigation system, on the CTouch panel. He also wants additional intelligence and feedback, e.g. the timer must then visually count down till 0 and deactivate the output, the 5 zone butons must have an interlock-type feature where only one can be active at any given moment.

    This seems like quite a feat, if at all possible. Can anyone steer me into some direction?

    Thanks
    RH
     
    renaulth, Jan 5, 2007
    #1
  2. renaulth

    smeebag

    Joined:
    Aug 14, 2008
    Messages:
    16
    Likes Received:
    0
    Bump!

    Hi all. Have been searching for something like this and this is all i have found.
    I want to do a similar thing with some lights, so the user can set a time for the lights to run.

    Any thoughts?
     
    smeebag, Sep 22, 2009
    #2
  3. renaulth

    Mark

    Joined:
    Oct 28, 2004
    Messages:
    196
    Likes Received:
    1
    Location:
    Grenoble, France
    Touchscreen with Logic

    Hi,

    It'll take a little bit of work, but you can achieve this sort of functionality on a touchscreen with Logic, so either the colour touchscreen or B&W Mk2.

    I would do something like:
    - Create a SystemIO value for the run time, display it on a page and provide buttons to edit it.
    - Have buttons to turn the Groups on and also enable a logic module.
    - In the logic module, seed a Logic Timer with the SystemIO value on the first execution.
    - On expiration of the logic timer turn the group address off.
    - Also display the Logic Timer value on the screen to show run time remaining

    The interlocking could be done by:
    - Using scenes - so when button is pushed it turns the other groups off and the required one on.
    - Logic, if timing is critical. Change the button function to just enable the logic module. First execution can turn off the other groups, then a later execution can turn on the required group, enforcing a changeover time.

    Cheers,
    Mark
     
    Mark, Sep 22, 2009
    #3
  4. renaulth

    smeebag

    Joined:
    Aug 14, 2008
    Messages:
    16
    Likes Received:
    0
    As i was fearing, I'll have to buff up my coding skills :)
    I'll also need some math to convert logic timer to hh:mm etc ?
    I better go do some homework!

    Thanks Mark.
     
    smeebag, Sep 22, 2009
    #4
  5. renaulth

    smeebag

    Joined:
    Aug 14, 2008
    Messages:
    16
    Likes Received:
    0
    Tada!!

    Thanks Mark, definately put me on track.

    I have the guts of it sorted and working.

    once (GetLightingState("start1") = ON) then
    begin
    duration1 := (GetIntSystemIO("hr1")*3600) + (GetIntSystemIO("mm1")*60) + (GetIntSystemIO("ss1")*1) ;

    PulseCBusLevel("ex1", "Lighting", "Kitchen", 50%, "4s", duration1, 0);


    end;

    The pulse command works a treat and countdown display is provided by simple cbus timer clock tool.

    I had to use 3 seperate io's for hr,mm,ss to allow for more rapid setting by the user.

    Just need to add a couple of lines to clear the io's when finished etc.
     
    smeebag, Sep 22, 2009
    #5
  6. renaulth

    Mark

    Joined:
    Oct 28, 2004
    Messages:
    196
    Likes Received:
    1
    Location:
    Grenoble, France
    User System Io

    Hi,

    Great to hear you have it working!

    For next time, it may be easier to use a Time type User System IO value, which you can display directly on a clock component and use to seed the logic timer directly (its just an integer underneath). You can then create button to nudge up/down by 3600/60/1 seconds for setting the hours/minutes/seconds.

    Cheers,
    Mark
     
    Mark, Sep 23, 2009
    #6
  7. renaulth

    smeebag

    Joined:
    Aug 14, 2008
    Messages:
    16
    Likes Received:
    0
    Yes mate, i had a play with the logic timers, but couldn't work out how to display a countdown timer . . . till just now

    timeset - timertime DUH!

    Its all good now, thanks for the help.
     
    smeebag, Sep 23, 2009
    #7
Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments (here). After that, you can post your question and our members will help you out.