one-shot (momentary) output?

Describe your system and processes, and post your config file.
Post Reply
clearwaterbrewer
Posts: 383
Joined: Wed Feb 09, 2011 3:43 pm
Bot?: No
Location: Clearwater, FL
Contact:

one-shot (momentary) output?

Post by clearwaterbrewer »

Can outputs be one-shot? I want to be able to 'start' the system with an output triggering the same thing as a momentary 'start' button on the panel, and the E-Stop breaks the self-sealing contactor circuit (obviously, the all-stop in BCS does too).. I suppose I could use a process and a timer to do this... hate to use up a process... maybe ladder logic to have the output reset if the e-stop contacts open?
User avatar
ECC
Posts: 676
Joined: Fri Sep 12, 2008 12:29 pm
Bot?: No
Contact:

Re: one-shot (momentary) output?

Post by ECC »

So you want an output to start a process? Yeah, definitely possible with some ladder logic. But unfortunately this uncovered a bug with using outputs as contacts in ladder logic, so it'll require an update.. I'll post the solution as soon as its available.
clearwaterbrewer
Posts: 383
Joined: Wed Feb 09, 2011 3:43 pm
Bot?: No
Location: Clearwater, FL
Contact:

Re: one-shot (momentary) output?

Post by clearwaterbrewer »

Hey, I just found that bug! glad I looked before posting it... more information for Posterity

I built this(rung 2-3):
Din0 = start button (will be paralleled with a reg or similar for web-based start)
Din = stop button

Din0 - OFF.png
Din0 - OFF.png (10.63 KiB) Viewed 7461 times
when I assert D0, it goes on...
Din0 - ON.png
Din0 - ON.png (10.66 KiB) Viewed 7461 times
when I stop asserting D0, the contacts (and output ) should be still on, but like you know, they do not...

here is the photoshop of what should be:
Din0 - after.png
Din0 - after.png (14.88 KiB) Viewed 7461 times
User avatar
ECC
Posts: 676
Joined: Fri Sep 12, 2008 12:29 pm
Bot?: No
Contact:

Re: one-shot (momentary) output?

Post by ECC »

The output contact bug is now fixed in v3.4.3

Below is how I would implement a one-shot output controlling a process. The first rung sets a register when Out0 is on. When Out0 is off (momentary), Reg0 is still on because its own contact feeds it. A normally closed DIN2 in the feedback loop provides a kill switch.

Reg0 is then tied to Proc3 on the next rung, which starts/stops the process. This is (currently) programmed into the demo, so you can play with it if you'd like. You can verify that asserting Out0 turns on Proc3, and Proc3 stays on even when Out0 is deasserted. Also, since the outputs are physically wired back to dins in the demo, asserting Out2 asserts Din2 which will turn the process off.
ll_out1shot.png
ll_out1shot.png (12.8 KiB) Viewed 7439 times
flux
Posts: 14
Joined: Sun Aug 21, 2011 9:25 am
Bot?: No

Re: one-shot (momentary) output?

Post by flux »

if your using DIN2 as a kill it should be in series with OUT2 and your hold in. otherwise OUT2 could prevent it from dropping out REG0.
User avatar
ECC
Posts: 676
Joined: Fri Sep 12, 2008 12:29 pm
Bot?: No
Contact:

Re: one-shot (momentary) output?

Post by ECC »

Agreed, just depends on what you want to give priority. ymmv
bonanza
Posts: 14
Joined: Mon Mar 12, 2012 8:52 am
Bot?: No

Re: one-shot (momentary) output?

Post by bonanza »

I am trying to start a process with a momentary botton, I want to have this button doing the same as we have in the process menue, touch it once the process starts, touch it again the process should be stopped.

I'm wondering if someone has done this and maybe I could save some hours with a good hint.

I tried to assert a DIN to Process but that didn't work.

Thanks for any help in advance

Joe
clearwaterbrewer
Posts: 383
Joined: Wed Feb 09, 2011 3:43 pm
Bot?: No
Location: Clearwater, FL
Contact:

Re: one-shot (momentary) output?

Post by clearwaterbrewer »

you would need to have another process run at startup, and hitting the button spawns the main process and kills the startup process, then that button is programmed in the main process to kill that main process and start the startup process..


-mike
Post Reply