0% found this document useful (0 votes)
14 views3 pages

Batch

The document describes the logic for executing 18 phases of a process. Each phase is associated with an idle and complete/aborted state. When a phase becomes idle, values are set and start times are recorded. When a phase completes or aborts, the phase number is incremented, values are moved to set points, actual values are recorded, and end times are concatenated before jumping to the next phase.

Uploaded by

ampatel23994
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
14 views3 pages

Batch

The document describes the logic for executing 18 phases of a process. Each phase is associated with an idle and complete/aborted state. When a phase becomes idle, values are set and start times are recorded. When a phase completes or aborts, the phase number is incremented, values are moved to set points, actual values are recorded, and end times are concatenated before jumping to the next phase.

Uploaded by

ampatel23994
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 3

[[XIO(Phase[1,0].Idle),XIC(R_302_Report_Ons[3].1)]ONS(R_302_Report_Ons[1].

0)MOV(0,R_302_Pre
check_Set_Value)COP(Final_Date_Time_Concat,R_302_Precheck_start_time,1),
[XIC(Phase[1,0].Complete),XIC(Phase[1,0].Aborted),XIC(R_302_Report_Ons[4].1)]ONS(R_302_Report
_Ons[0].0)MOV(1,R_302_Phase)MOV(R_302_Precheck_Set_Value,R_302_SET_Value)MOV(OperPara
[1,0].ParaValueActual[0],R_302_Actual_Value)COP(R_302_Precheck_start_time,R_302_start_time,1)
COP(Final_Date_Time_Concat,R_302_stop_time,1)JMP(R_302)];
[[XIO(Phase[1,1].Idle),XIC(R_302_Report_Ons[3].0)]ONS(R_302_Report_Ons[1].1)MOV(OperPara[1,1
].ParaValue[0],R_302_Eth_Recover_Set_Value)COP(Final_Date_Time_Concat,R_302_Eth_Recover_st
art_time,1),
[XIC(Phase[1,1].Complete),XIC(Phase[1,1].Aborted),XIC(R_302_Report_Ons[4].0)]ONS(R_302_Report
_Ons[0].1)MOV(2,R_302_Phase)MOV(R_302_Eth_Recover_Set_Value,R_302_SET_Value)MOV(Oper
Para[1,1].ParaValueActual[0],R_302_Actual_Value)COP(R_302_Eth_Recover_start_time,R_302_start
_time,1)COP(Final_Date_Time_Concat,R_302_stop_time,1)JMP(R_302)];
[XIO(Phase[1,2].Idle)ONS(R_302_Report_Ons[1].2)MOV(OperPara[1,2].ParaValue[0],R_302_Eth_co
mbination_Set_Value)COP(Final_Date_Time_Concat,R_302_Eth_Combination_start_time,1),
[XIC(Phase[1,2].Complete),XIC(Phase[1,2].Aborted)]ONS(R_302_Report_Ons[0].2)MOV(3,R_302_Pha
se)MOV(R_302_Eth_combination_Set_Value,R_302_SET_Value)MOV(OperPara[1,2].ParaValueActua
l[0],R_302_Actual_Value)COP(R_302_Eth_Combination_start_time,R_302_start_time,1)COP(Final_D
ate_Time_Concat,R_302_stop_time,1)JMP(R_302)];
[XIO(Phase[1,3].Idle)ONS(R_302_Report_Ons[1].3)MOV(OperPara[1,3].ParaValue[1],R_302_Eth_Sho
ts_Set_Value)COP(Final_Date_Time_Concat,R_302_Eth_Shots_start_time,1),
[XIC(Phase[1,3].Complete),XIC(Phase[1,3].Aborted)]ONS(R_302_Report_Ons[0].3)MOV(4,R_302_Pha
se)MOV(R_302_Eth_Shots_Set_Value,R_302_SET_Value)MOV(OperPara[1,3].ParaValueActual[1],R_
302_Actual_Value)COP(R_302_Eth_Shots_start_time,R_302_start_time,1)COP(Final_Date_Time_Co
ncat,R_302_stop_time,1)JMP(R_302)];
[XIO(Phase[1,4].Idle)ONS(R_302_Report_Ons[1].4)MOV(OperPara[1,4].ParaValue[0],R_302_Ro_Set_
Value)COP(Final_Date_Time_Concat,R_302_Ro_start_time,1),
[XIC(Phase[1,4].Complete),XIC(Phase[1,4].Aborted)]ONS(R_302_Report_Ons[0].4)MOV(5,R_302_Pha
se)MOV(R_302_Ro_Set_Value,R_302_SET_Value)MOV(OperPara[1,4].ParaValueActual[0],R_302_Act
ual_Value)COP(R_302_Ro_start_time,R_302_start_time,1)COP(Final_Date_Time_Concat,R_302_sto
p_time,1)JMP(R_302)];
[XIO(Phase[1,5].Idle)ONS(R_302_Report_Ons[1].5)MOV(OperPara[1,5].ParaValue[0],R_302_Agitator
_On_Set_Value)COP(Final_Date_Time_Concat,R_302_Agitator_On_start_time,1),
[XIC(Phase[1,5].Complete),XIC(Phase[1,5].Aborted)]ONS(R_302_Report_Ons[0].5)MOV(6,R_302_Pha
se)MOV(R_302_Agitator_On_Set_Value,R_302_SET_Value)MOV(OperPara[1,5].ParaValueActual[0],
R_302_Actual_Value)COP(R_302_Agitator_On_start_time,R_302_start_time,1)COP(Final_Date_Time
_Concat,R_302_stop_time,1)JMP(R_302)];
[XIO(Phase[1,6].Idle)ONS(R_302_Report_Ons[1].6)MOV(OperPara[1,6].ParaValue[0],R_302_Agitator
_Off_Set_Value)COP(Final_Date_Time_Concat,R_302_Agitator_Off_start_time,1),
[XIC(Phase[1,6].Complete),XIC(Phase[1,6].Aborted)]ONS(R_302_Report_Ons[0].6)MOV(7,R_302_Pha
se)MOV(R_302_Agitator_Off_Set_Value,R_302_SET_Value)MOV(OperPara[1,6].ParaValueActual[0],
R_302_Actual_Value)COP(R_302_Agitator_Off_start_time,R_302_start_time,1)COP(Final_Date_Tim
e_Concat,R_302_stop_time,1)JMP(R_302)];
[XIO(Phase[1,7].Idle)ONS(R_302_Report_Ons[1].7)MOV(OperPara[1,7].ParaValue[0],R_302_Charge_
Cellulose_Set_Value)COP(Final_Date_Time_Concat,R_302_Charge_Cellulose_start_time,1),
[XIC(Phase[1,7].Complete),XIC(Phase[1,7].Aborted)]ONS(R_302_Report_Ons[0].7)MOV(8,R_302_Pha
se)MOV(R_302_Charge_Cellulose_Set_Value,R_302_SET_Value)MOV(OperPara[1,7].ParaValueActua
l[0],R_302_Actual_Value)COP(R_302_Charge_Cellulose_start_time,R_302_start_time,1)COP(Final_D
ate_Time_Concat,R_302_stop_time,1)JMP(R_302)];
[XIO(Phase[1,8].Idle)ONS(R_302_Report_Ons[1].8)MOV(OperPara[1,8].ParaValue[0],R_302_Time_D
elay_Set_Value)COP(Final_Date_Time_Concat,R_302_Time_Delay_start_time,1),
[XIC(Phase[1,8].Complete),XIC(Phase[1,8].Aborted)]ONS(R_302_Report_Ons[0].8)MOV(9,R_302_Pha
se)MOV(R_302_Time_Delay_Set_Value,R_302_SET_Value)MOV(OperPara[1,8].ParaValueActual[0],R
_302_Actual_Value)COP(R_302_Time_Delay_start_time,R_302_start_time,1)COP(Final_Date_Time_
Concat,R_302_stop_time,1)JMP(R_302)];
[XIO(Phase[1,9].Idle)ONS(R_302_Report_Ons[1].9)MOV(OperPara[1,9].ParaValue[0],R_302_Charge_
Caustic_Set_Value)COP(Final_Date_Time_Concat,R_302_Charge_Caustic_start_time,1),
[XIC(Phase[1,9].Complete),XIC(Phase[1,9].Aborted)]ONS(R_302_Report_Ons[0].9)MOV(10,R_302_Ph
ase)MOV(R_302_Charge_Caustic_Set_Value,R_302_SET_Value)MOV(OperPara[1,9].ParaValueActual
[0],R_302_Actual_Value)COP(R_302_Charge_Caustic_start_time,R_302_start_time,1)COP(Final_Dat
e_Time_Concat,R_302_stop_time,1)JMP(R_302)];
[XIO(Phase[1,10].Idle)ONS(R_302_Report_Ons[1].10)MOV(OperPara[1,10].ParaValue[1],R_302_Tem
p_on_Set_Value)COP(Final_Date_Time_Concat,R_302_Temp_on_start_time,1),
[XIC(Phase[1,10].Complete),XIC(Phase[1,10].Aborted)]ONS(R_302_Report_Ons[0].10)MOV(11,R_302
_Phase)MOV(R_302_Temp_on_Set_Value,R_302_SET_Value)MOV(OperPara[1,10].ParaValueActual[
0],R_302_Actual_Value)COP(R_302_Temp_on_start_time,R_302_start_time,1)COP(Final_Date_Time
_Concat,R_302_stop_time,1)JMP(R_302)];
[XIO(Phase[1,11].Idle)ONS(R_302_Report_Ons[1].11)MOV(OperPara[1,11].ParaValue[0],R_302_Tem
p_Off_Set_Value)COP(Final_Date_Time_Concat,R_302_Temp_Off_start_time,1),
[XIC(Phase[1,11].Complete),XIC(Phase[1,11].Aborted)]ONS(R_302_Report_Ons[0].11)MOV(12,R_302
_Phase)MOV(R_302_Temp_Off_Set_Value,R_302_SET_Value)MOV(OperPara[1,11].ParaValueActual[
0],R_302_Actual_Value)COP(R_302_Temp_Off_start_time,R_302_start_time,1)COP(Final_Date_Tim
e_Concat,R_302_stop_time,1)JMP(R_302)];
[XIO(Phase[1,12].Idle)ONS(R_302_Report_Ons[1].12)MOV(OperPara[1,12].ParaValue[0],R_302_Tem
p_Check_Set_Value)COP(Final_Date_Time_Concat,R_302_Temp_Check_start_time,1),
[XIC(Phase[1,12].Complete),XIC(Phase[1,12].Aborted)]ONS(R_302_Report_Ons[0].12)MOV(13,R_302
_Phase)MOV(R_302_Temp_Check_Set_Value,R_302_SET_Value)MOV(OperPara[1,12].ParaValueAct
ual[0],R_302_Actual_Value)COP(R_302_Temp_Check_start_time,R_302_start_time,1)COP(Final_Dat
e_Time_Concat,R_302_stop_time,1)JMP(R_302)];
[XIO(Phase[1,13].Idle)ONS(R_302_Report_Ons[1].13)MOV(OperPara[1,13].ParaValue[0],R_302_Char
ge_Eph_Set_Value)COP(Final_Date_Time_Concat,R_302_Charge_Eph_start_time,1),
[XIC(Phase[1,13].Complete),XIC(Phase[1,13].Aborted)]ONS(R_302_Report_Ons[0].13)MOV(14,R_302
_Phase)MOV(R_302_Charge_Eph_Set_Value,R_302_SET_Value)MOV(OperPara[1,13].ParaValueActu
al[0],R_302_Actual_Value)COP(R_302_Charge_Eph_start_time,R_302_start_time,1)COP(Final_Date_
Time_Concat,R_302_stop_time,1)JMP(R_302)];
[XIO(Phase[1,14].Idle)ONS(R_302_Report_Ons[1].14)MOV(OperPara[1,14].ParaValue[0],R_302_Char
ge_Mca_Set_Value)COP(Final_Date_Time_Concat,R_302_Charge_Mca_start_time,1),
[XIC(Phase[1,14].Complete),XIC(Phase[1,14].Aborted)]ONS(R_302_Report_Ons[0].14)MOV(15,R_302
_Phase)MOV(R_302_Charge_Mca_Set_Value,R_302_SET_Value)MOV(OperPara[1,14].ParaValueAct
ual[0],R_302_Actual_Value)COP(R_302_Charge_Mca_start_time,R_302_start_time,1)COP(Final_Dat
e_Time_Concat,R_302_stop_time,1)JMP(R_302)];
[XIO(Phase[1,15].Idle)ONS(R_302_Report_Ons[1].15)MOV(OperPara[1,15].ParaValue[0],R_302_Xfr_
Batch_Set_Value)COP(Final_Date_Time_Concat,R_302_Xfr_Batch_start_time,1),
[XIC(Phase[1,15].Complete),XIC(Phase[1,15].Aborted)]ONS(R_302_Report_Ons[0].15)MOV(16,R_302
_Phase)MOV(R_302_Xfr_Batch_Set_Value,R_302_SET_Value)MOV(OperPara[1,15].ParaValueActual[
0],R_302_Actual_Value)COP(R_302_Xfr_Batch_start_time,R_302_start_time,1)COP(Final_Date_Tim
e_Concat,R_302_stop_time,1)JMP(R_302)];
[XIO(Phase[1,16].Idle)ONS(R_302_Report_Ons[1].16)MOV(OperPara[1,16].ParaValue[0],R_302_Caus
tic_Recir_Set_Value)COP(Final_Date_Time_Concat,R_302_Caustic_Recir_start_time,1),
[XIC(Phase[1,16].Complete),XIC(Phase[1,16].Aborted)]ONS(R_302_Report_Ons[0].16)MOV(17,R_302
_Phase)MOV(R_302_Caustic_Recir_Set_Value,R_302_SET_Value)MOV(OperPara[1,16].ParaValueAct
ual[0],R_302_Actual_Value)COP(R_302_Caustic_Recir_start_time,R_302_start_time,1)COP(Final_Da
te_Time_Concat,R_302_stop_time,1)JMP(R_302)];
[XIO(Phase[1,17].Idle)ONS(R_302_Report_Ons[1].17)STOR(OperPara[1,17].StringValue,R_302_Flush
_Eth_Xfr_Line_Set_Value)COP(Final_Date_Time_Concat,R_302_Flush_Eth_Xfr_Line_start_time,1),
[XIC(Phase[1,17].Complete),XIC(Phase[1,17].Aborted)]ONS(R_302_Report_Ons[0].17)MOV(18,R_302
_Phase)MOV(R_302_Flush_Eth_Xfr_Line_Set_Value,R_302_SET_Value)MOV(OperPara[1,17].ParaVal
ueActual[0],R_302_Actual_Value)COP(R_302_Flush_Eth_Xfr_Line_start_time,R_302_start_time,1)C
OP(Final_Date_Time_Concat,R_302_stop_time,1)JMP(R_302)];
LBL(R_301)JSR(R_301_Stack_logic,0); ;

You might also like