Hi Giovanni,
You can't activate 3 different job at the same time, but you can trick them to swap between job at the specific time you need.
For your problem, I think there's 2 ways to do it:
Poll
You need to put increment/ decrement on user define function :
Profile"Function""F1_Label"="Time 0 Increment"
Profile"Function""F1_Command"="1CV=1CV+10CV"
Profile"Function""F2_Label"="Time 0 Decrement"
Profile"Function""F2_Command"="1CV=1CV-10CV"
Profile"Function""F3_Label"="Time 1 Increment"
Profile"Function""F3_Command"="2CV=2CV+10CV"
Profile"Function""F4_Label"="Time 1 Decrement"
Profile"Function""F4_Command"="2CV=2CV-10CV"
Profile"Function""F5_Label"="Time 2 Increment"
Profile"Function""F5_Command"="3CV=3CV+10CV"
Profile"Function""F6_Label"="Time 2 Decrement"
Profile"Function""F6_Command"="3CV=3CV-10CV"
Profile"Function""F7_Label"="Hour"
Profile"Function""F7_Command"="10CV=3600"
Profile"Function""F8_Label"="Minute"
Profile"Function""F8_Command"="10CV=60"
Profile"Function""F9_Label"="Seconds"
Profile"Function""F9_Command"="10CV=1"
Profile"Function""F10_Label"="Run"
Profile"Function""F10_Command"="Do{XA}"
Begin"Job"
1..3CV=0
'This schedule is active when function 10 selected
RAX
Do{RA1M}
If(T==1CV){XB}
If(T==2CV){XC}
If(T==3CV){XD}
' The first test, this schedule will be activated when the time 0 is set
' After active, schedule run every minute
' After 480 minute (8 hours), the schedule stop
RBX LogonB
Do{RB1M}
11CV=11CV+1
1*L("Transducer1")
If(11CV==480){RBX}
' The second test, this schedule will be activated when the time 1 is set
' After active, schedule run every minute
' After 120 minute (2 hours), the schedule stop
RCX LogonC
Do{RC1M}
12CV=12CV+1
2*L("Transducer2")
If(12CV==120){RCX}
' The first test, this schedule will be activated when the time 2 is set
' After active, schedule run every minute
' After 1440 minute (24 hours), the schedule stop
RDX LogonD
Do{RD1M}
13CV=13CV+1
3*L("Transducer3")
If(13CV==1440){RDX}
End
3 different job
With 3 different job you had limited option on the time frame, you can only run each jobs sequentially. Meaning, you must finish first test (Job1) first and then start the second (Job2), etc.
With 3 jobs you may have more choice in the schedule or parameter setting. You still can use the above user define functions. Example:
Begin"**Job**"
RAX
Do{RA1M}
If(T==1CV){Runjob"Job1"}
If(T==2CV){Runjob"Job2"}
If(T==3CV){Runjob"Job3"}
End
Begin"**Job1**"
21CV=0
RA1M
1*L("Transducer1")
21CV(W)=21CV+1
LogonA
If(21CV>480){Runjob"Job"}
End
Begin"**Job2**"
31CV=0
RA1M
2*L("transducer2")
31CV(W)=31CV+1
LogonA
If(31CV>120){Runjob"Job"}
End
Begin"**Job3**"
41CV=0
RA1M
3*L("Transducer3")
41CV=41CV+1
LogonA
If(41CV>1440){Runjob"Job"}
End
Hope this help.
Note: Could you give more detail info on the process you want? Maybe I can help you.
Best regards,
Rudy Gunawan
Hi Giovanni,
You can't activate 3 different job at the same time, but you can trick them to swap between job at the specific time you need.
For your problem, I think there's 2 ways to do it:
1. Poll
You need to put increment/ decrement on user define function :
````
Profile"Function""F1_Label"="Time 0 Increment"
Profile"Function""F1_Command"="1CV=1CV+10CV"
Profile"Function""F2_Label"="Time 0 Decrement"
Profile"Function""F2_Command"="1CV=1CV-10CV"
Profile"Function""F3_Label"="Time 1 Increment"
Profile"Function""F3_Command"="2CV=2CV+10CV"
Profile"Function""F4_Label"="Time 1 Decrement"
Profile"Function""F4_Command"="2CV=2CV-10CV"
Profile"Function""F5_Label"="Time 2 Increment"
Profile"Function""F5_Command"="3CV=3CV+10CV"
Profile"Function""F6_Label"="Time 2 Decrement"
Profile"Function""F6_Command"="3CV=3CV-10CV"
Profile"Function""F7_Label"="Hour"
Profile"Function""F7_Command"="10CV=3600"
Profile"Function""F8_Label"="Minute"
Profile"Function""F8_Command"="10CV=60"
Profile"Function""F9_Label"="Seconds"
Profile"Function""F9_Command"="10CV=1"
Profile"Function""F10_Label"="Run"
Profile"Function""F10_Command"="Do{XA}"
Begin"Job"
1..3CV=0
'This schedule is active when function 10 selected
RAX
Do{RA1M}
If(T==1CV){XB}
If(T==2CV){XC}
If(T==3CV){XD}
' The first test, this schedule will be activated when the time 0 is set
' After active, schedule run every minute
' After 480 minute (8 hours), the schedule stop
RBX LogonB
Do{RB1M}
11CV=11CV+1
1*L("Transducer1")
If(11CV==480){RBX}
' The second test, this schedule will be activated when the time 1 is set
' After active, schedule run every minute
' After 120 minute (2 hours), the schedule stop
RCX LogonC
Do{RC1M}
12CV=12CV+1
2*L("Transducer2")
If(12CV==120){RCX}
' The first test, this schedule will be activated when the time 2 is set
' After active, schedule run every minute
' After 1440 minute (24 hours), the schedule stop
RDX LogonD
Do{RD1M}
13CV=13CV+1
3*L("Transducer3")
If(13CV==1440){RDX}
End
````
2. 3 different job
With 3 different job you had limited option on the time frame, you can only run each jobs sequentially. Meaning, you must finish first test (Job1) first and then start the second (Job2), etc.
With 3 jobs you may have more choice in the schedule or parameter setting. You still can use the above user define functions. Example:
````
Begin"**Job**"
RAX
Do{RA1M}
If(T==1CV){Runjob"Job1"}
If(T==2CV){Runjob"Job2"}
If(T==3CV){Runjob"Job3"}
End
Begin"**Job1**"
21CV=0
RA1M
1*L("Transducer1")
21CV(W)=21CV+1
LogonA
If(21CV>480){Runjob"Job"}
End
Begin"**Job2**"
31CV=0
RA1M
2*L("transducer2")
31CV(W)=31CV+1
LogonA
If(31CV>120){Runjob"Job"}
End
Begin"**Job3**"
41CV=0
RA1M
3*L("Transducer3")
41CV=41CV+1
LogonA
If(41CV>1440){Runjob"Job"}
End
````
Hope this help. :smile:
Note: Could you give more detail info on the process you want? Maybe I can help you.
Best regards,
Rudy Gunawan