Better yet, have a look at the capabilities of the STATE block. Sequencing of outputs for valves as you describe can be done easily here. -----Original Message----- From: kevin.fitzgerrell@xxxxxxxxxxxx [mailto:kevin.fitzgerrell@xxxxxxxxxxxx] Sent: Wednesday, November 21, 2001 3:36 PM To: foxboro@xxxxxxxxxxxxx Subject: Re: [foxboro] a simple challenge Michael, If I understand correctly you want to trigger a series of solenoid valves in sequence every X seconds. Each solenoid valve to stay open for Y seconds, with the next solenoid valve in sequence to open as the prior one closes. I'd probably do the logic in a CALCA or CALC block. Something like this ought to work. BO01 - 4 are outputs to drive solenoids. I'd just use COUT blocks or an MCOUT connected to BO01-4 to drive simple solenoids. type = CALCA period = 2 (execute each second) ii01 = seconds between cycle repeats ii02 = seconds for each solenoid timini = 1 (so OSPs don't trigger on initialize) 1 in ii02 2 stm m01 ; store SV on time in mem for osp 3 inc io01 4 in io01 ; 5 in ii01 ; 6 sub 7 bip 11 ; on new cycle go to init 8 clr bo05 ; otherwise clear cycle flag 9 gto 13 ; and skip initialize 10 clr io01 ; initialize second counter 11 set bo05 ; set in cycle flag 12 13 in bo05 ; on bo01 to 1 14 osp m01 ; generate signal for SV 1 15 out bo01 16 in ~bo01 ; on SV1 finish 17 osp m01 ; generate signal for SV 2 18 out bo02 ; 19 in ~bo02 ; on SV2 finish 20 osp m01 ; generate signal for SV 3 21 out bo03 ; 22 in ~bo03 ; on SV3 finish 23 osp m01 ; generate signal for SV 4 24 out bo04 25 end 27 Regards, Kevin FitzGerrell Systems Engineer Foxboro New Zealand ------------------------------------ Tel: +64 (9) 573 7690 Fax: +64 (9) 573 7691 mvandenberg@xxxxxx Sent by: To: foxboro@xxxxxxxxxxxxx foxboro-bounce@fre cc: elists.org Subject: [foxboro] a simple challenge 11/21/01 08:24 PM Please respond to foxboro Hi list, We are going to replace a local relay / timer driven filter cleaning sequence by "something" in I/A. We therefore need to separately activate 4 solenoids, one after the oth= er, for a variable number of seconds (most likely 2). The interval between activating the solenoids should also be variable. I have already made something with a Calc block that generates seconds = ( 0 to 62) connected to a AIN block. On the four boolean alarm limits I connected the solenoids using a GDEV with the pulse option on. But ther= e must be something more brilliant than this, without the use of a DEP bl= ock. The solenoids will be connected (2?wire) to FBM41C/42C, therefore a PLB= solution is an option. All suggestions are more than welcome. thanks, Michel Michel van den Berg PFW Aroma Chemicals B.V. PO Box 415 3770 AK Barneveld the Netherlands Phone : (31)342 - 407 791 Fax : (31)342 - 407 789 email : mvandenberg@xxxxxx FedEx : Nijverheidsweg 60 3771 ME Barneveld the Netherlands ___________________________________________________________________ This list is neither sponsored nor endorsed by The Foxboro Company. Use the information obtained here at your own risk. For disclaimer, see http://www.thecassandraproject.org/disclaimer.html#maillist list info: //www.freelists.org/list/foxboro subscribe: mailto:foxboro-request@xxxxxxxxxxxxx?subject=join unsubscribe: mailto:foxboro-request@xxxxxxxxxxxxx?subject=leave ___________________________________________________________________ This list is neither sponsored nor endorsed by The Foxboro Company. Use the information obtained here at your own risk. For disclaimer, see http://www.thecassandraproject.org/disclaimer.html#maillist list info: //www.freelists.org/list/foxboro subscribe: mailto:foxboro-request@xxxxxxxxxxxxx?subject=join unsubscribe: mailto:foxboro-request@xxxxxxxxxxxxx?subject=leave