Commit Hugo

This commit is contained in:
Bernardo Carvalho
2019-12-05 17:13:48 +00:00
parent 50e2202f61
commit 5d5b5160fb
4 changed files with 43 additions and 187 deletions

View File

@@ -151,8 +151,8 @@ record(bi , "$(P)$(R)TMPump2-Acceleration") {
#################################### ####################################
record(bi , "$(P)$(R)TTSystem-tzero" ) { record(bi , "$(P)$(R)TTSystem-tzero" ) {
field(DESC,"Trigger control 60s before shot") field(DESC,"Trigger control 60s before shot")
# field(INP, "$(P)$(R)PCF8574:57:REGISTER:READ.B7") field(INP, "$(P)$(R)PCF8574:57:REGISTER:READ.B7")
field(VAL,"1") # field(VAL,"1")
field(ZNAM, "OFF" ) field(ZNAM, "OFF" )
field(ONAM, "ON" ) field(ONAM, "ON" )
} }
@@ -306,7 +306,6 @@ record(bo, "$(P)$(R)Lab-WarningLight" ) {
############################## ##############################
record(bo, "$(P)$(R)Clean-TorContactor" ) { record(bo, "$(P)$(R)Clean-TorContactor" ) {
# field(DESC," Contactor 220V do transformador para a fonte de campo toroidal das descargas de limpeza (500 A) ") # field(DESC," Contactor 220V do transformador para a fonte de campo toroidal das descargas de limpeza (500 A) ")
# record(bo, "$(P)$(R)ToroidalCleanContactorOnOff" ) {
field( OUT, "$(P)$(R)PCF8574:60:REGISTER.B7 PP" ) field( OUT, "$(P)$(R)PCF8574:60:REGISTER.B7 PP" )
field( ZNAM, "On" ) field( ZNAM, "On" )
field( ONAM, "Off" ) field( ONAM, "Off" )
@@ -324,7 +323,6 @@ record(bo, "$(P)$(R)Clean-TorContactor" ) {
############################ ############################
record(bo, "$(P)$(R)Clean-TorPneuBreaker" ) { record(bo, "$(P)$(R)Clean-TorPneuBreaker" ) {
## field(DESC," Interruptor de ar comprimido do transformador para a fonte de campo toroidal das descargas de limpeza (500 A)") ## field(DESC," Interruptor de ar comprimido do transformador para a fonte de campo toroidal das descargas de limpeza (500 A)")
#record(bo, "$(P)$(R)ToroidalCleanBreakerOnOff" ) {
field( OUT, "$(P)$(R)PCF8574:61:REGISTER.B0 PP" ) field( OUT, "$(P)$(R)PCF8574:61:REGISTER.B0 PP" )
field( ZNAM, "On" ) field( ZNAM, "On" )
field( ONAM, "Off" ) field( ONAM, "Off" )
@@ -333,7 +331,6 @@ record(bo, "$(P)$(R)Clean-TorPneuBreaker" ) {
record(bo, "$(P)$(R)Shot-TorPSDisable" ) { record(bo, "$(P)$(R)Shot-TorPSDisable" ) {
# field(DESC," É desligado na emergência e em qualquer estado que não seja Process ou Wait Shot.") # field(DESC," É desligado na emergência e em qualquer estado que não seja Process ou Wait Shot.")
# record(bo, "$(P)$(R)ToroidalShotEnableOnOff" ) {
field( OUT, "$(P)$(R)PCF8574:61:REGISTER.B1 PP" ) field( OUT, "$(P)$(R)PCF8574:61:REGISTER.B1 PP" )
field( ZNAM, "Off" ) field( ZNAM, "Off" )
field( ONAM, "On" ) field( ONAM, "On" )
@@ -342,17 +339,14 @@ record(bo, "$(P)$(R)Shot-TorPSDisable" ) {
record(bo, "$(P)$(R)Shot-TorPSTrigger" ) { record(bo, "$(P)$(R)Shot-TorPSTrigger" ) {
field(DESC," Trigger da FRAEP") field(DESC," Trigger da FRAEP")
# record(bo, "$(P)$(R)ToroidalShotTriggerOnOff" ) {
field( ZNAM, "Off" ) field( ZNAM, "Off" )
field( ONAM, "Pulse" ) field( ONAM, "Pulse" )
field( HIGH, "2.5") field( HIGH, "2.5")
field( FLNK, "$(P)$(R)Shot-TorPSTriggerInv" ) field( FLNK, "$(P)$(R)Shot-TorPSTriggerInv" )
field(VAL,"0") field(VAL,"0")
# field( FLNK, "$(P)$(R)ToroidalShotTriggerOnOffInv" )
} }
record(calcout, "$(P)$(R)Shot-TorPSTriggerInv" ) { record(calcout, "$(P)$(R)Shot-TorPSTriggerInv" ) {
# field(DESC," $(R)") # field(DESC," $(R)")
#record(calcout, "$(P)$(R)ToroidalShotTriggerOnOffInv" ) {
field( INPA, "$(P)$(R)ToroidalShotTriggerOnOff NPP MS" ) field( INPA, "$(P)$(R)ToroidalShotTriggerOnOff NPP MS" )
field( OUT, "$(P)$(R)PCF8574:61:REGISTER.B2 PP MS" ) field( OUT, "$(P)$(R)PCF8574:61:REGISTER.B2 PP MS" )
field( OOPT, "On Change" ) field( OOPT, "On Change" )

View File

@@ -195,23 +195,6 @@ record(mbbi, "$(P)$(R)STARTINGSTATE") {
field(VAL, "0") field(VAL, "0")
} }
#record(mbbi, "$(P)$(R)STOPPINGSTATE") {
# field(DESC, "Stopping State Sequence")
# field(ZRVL, "0")
# field(ONVL, "1")
# field(TWVL, "2")
# field(THVL, "3")
# field(FRVL, "4")
# field(FVVL, "5")
# field(ZRST, "NonStopped")
# field(ONST, "Stopping1")
# field(TWST, "Stopping2")
# field(THST, "Stopping3")
# field(FRST, "Stopping4")
# field(FVST, "Stopping5")
# field(VAL, "0")
#}
record(mbbi, "$(P)$(R)CLEANINGSTATE") { record(mbbi, "$(P)$(R)CLEANINGSTATE") {
field(DESC, "Cleaning State Sequence") field(DESC, "Cleaning State Sequence")
field(ZRVL, "0") field(ZRVL, "0")
@@ -230,7 +213,7 @@ record(mbbi, "$(P)$(R)CLEANINGSTATE") {
} }
record(mbbi, "$(P)$(R)WSHOTINGSTATE") { record(mbbi, "$(P)$(R)WSHOTINGSTATE") {
field(DESC, "Shooting State Sequence") field(DESC, "Plasma Shot State Sequence")
field(ZRVL, "0") field(ZRVL, "0")
field(ONVL, "1") field(ONVL, "1")
field(TWVL, "2") field(TWVL, "2")
@@ -243,8 +226,10 @@ record(mbbi, "$(P)$(R)WSHOTINGSTATE") {
field(NIVL, "9") field(NIVL, "9")
field(TEVL, "10") field(TEVL, "10")
field(ELVL, "11") field(ELVL, "11")
field(TLVL, "12")
field(TTVL, "13")
field(ZRST, "NonShooting") field(ZRST, "NonShooting")
field(ONST, "Shooting1") field(ONST, "ShotWTrig")
field(TWST, "Shooting2") field(TWST, "Shooting2")
field(THST, "Shooting3") field(THST, "Shooting3")
field(FRST, "Shooting4") field(FRST, "Shooting4")
@@ -255,6 +240,8 @@ record(mbbi, "$(P)$(R)WSHOTINGSTATE") {
field(NIST, "Shooting9") field(NIST, "Shooting9")
field(TEST, "Shooting10") field(TEST, "Shooting10")
field(ELST, "Shooting11") field(ELST, "Shooting11")
field(TVST, "Shooting12")
field(TTST, "ShotEnd")
field(VAL, "0") field(VAL, "0")
} }

View File

@@ -30,14 +30,7 @@ short STRST_Starting2 = 2;
short STRST_Starting3 = 3; short STRST_Starting3 = 3;
short STRST_Starting4 = 4; short STRST_Starting4 = 4;
short STRST_Starting5 = 5; short STRST_Starting5 = 5;
/*
short STPST_NonStopping = 0;
short STPST_Stopping1 = 1;
short STPST_Stopping2 = 2;
short STPST_Stopping3 = 3;
short STPST_Stopping4 = 4;
short STPST_Stopping5 = 5;
*/
short CLNST_NonCleaning = 0; short CLNST_NonCleaning = 0;
short CLNST_Cleaning1 = 1; short CLNST_Cleaning1 = 1;
short CLNST_Cleaning2 = 2; short CLNST_Cleaning2 = 2;
@@ -47,7 +40,6 @@ short CLNST_Cleaning5 = 5;
short WSHTST_NonShoting = 0; short WSHTST_NonShoting = 0;
short WSHTST_WaitTrg = 1; short WSHTST_WaitTrg = 1;
//short WSHTST_Shoting1 = 1;
short WSHTST_Shoting2 = 2; short WSHTST_Shoting2 = 2;
short WSHTST_Shoting3 = 3; short WSHTST_Shoting3 = 3;
short WSHTST_Shoting4 = 4; short WSHTST_Shoting4 = 4;
@@ -59,7 +51,7 @@ short WSHTST_Shoting9 = 9;
short WSHTST_Shoting10 = 10; short WSHTST_Shoting10 = 10;
short WSHTST_Shoting11 = 11; short WSHTST_Shoting11 = 11;
short WSHTST_Shoting12 = 12; short WSHTST_Shoting12 = 12;
short WSHTST_Shoting13 = 13; short WSHTST_ShotEnd = 13;
short POS_Stopped =0; short POS_Stopped =0;
short POS_Starting=1; short POS_Starting=1;
@@ -282,15 +274,15 @@ ss PulseSequence {
IsttokShotClean_TorContactor = PCF_RELAY_OFF; IsttokShotClean_TorContactor = PCF_RELAY_OFF;
pvPut(IsttokShotClean_TorContactor); pvPut(IsttokShotClean_TorContactor);
IsttokShotShot_TorPSTrigger= PCF_RELAY_OFF;
pvPut(IsttokShotShot_TorPSTrigger);
IsttokShotShot_TorPSDisable = PCF_RELAY_OFF; IsttokShotShot_TorPSDisable = PCF_RELAY_OFF;
pvPut(IsttokShotShot_TorPSDisable); pvPut(IsttokShotShot_TorPSDisable);
IsttokTMPump2_Motor = PCF_RELAY_OFF; IsttokTMPump2_Motor = PCF_RELAY_OFF;
pvPut(IsttokTMPump2_Motor); pvPut(IsttokTMPump2_Motor);
IsttokShotShot_TorPSTrigger= OFF;
pvPut(IsttokShotShot_TorPSTrigger);
IsttokTMPump1_ControllerOff = OFF; IsttokTMPump1_ControllerOff = OFF;
pvPut(IsttokTMPump1_ControllerOff); pvPut(IsttokTMPump1_ControllerOff);
@@ -470,16 +462,14 @@ ss PulseSequence {
strcpy(msg, "State to Process"); strcpy(msg, "State to Process");
pvPut(msg); pvPut(msg);
errlogSevPrintf(NO_ALARM, "%s\n",msg); errlogSevPrintf(NO_ALARM, "%s\n",msg);
/*Just to be sure /*Just to be sure */
IsttokProcReq = STOP; IsttokProcReq = STOP;
pvPut(IsttokProcReq); pvPut(IsttokProcReq);
*/
/* Pulse state change to Process */ /* Pulse state change to Process */
IsttokOPSTATE = POS_Process; IsttokOPSTATE = POS_Process;
pvPut(IsttokOPSTATE); pvPut(IsttokOPSTATE);
} state Process } state Process
when((IsttokEmergency == ON)){ when(IsttokEmergency == ON){
strcpy(msg, "Emergency from Clean"); strcpy(msg, "Emergency from Clean");
pvPut(msg); pvPut(msg);
errlogSevPrintf(NO_ALARM, "%s\n",msg); errlogSevPrintf(NO_ALARM, "%s\n",msg);
@@ -542,7 +532,7 @@ ss PulseSequence {
/*State Emergency*/ /*State Emergency*/
state Emergency { state Emergency {
when (delay(1.0) && (IsttokEmergency == OFF) && ((IsttokOPSTATE == POS_WaitShot) || (IsttokOPSTATE==POS_Clean)) ){ entry {
strcpy(msg, "Toroidal Shot Disable"); strcpy(msg, "Toroidal Shot Disable");
pvPut(msg); pvPut(msg);
errlogSevPrintf(NO_ALARM, "%s\n",msg); errlogSevPrintf(NO_ALARM, "%s\n",msg);
@@ -572,6 +562,8 @@ ss PulseSequence {
errlogSevPrintf(NO_ALARM, "%s\n",msg); errlogSevPrintf(NO_ALARM, "%s\n",msg);
IsttokShotVVessel_Filament = PCF_RELAY_OFF; IsttokShotVVessel_Filament = PCF_RELAY_OFF;
pvPut(IsttokShotVVessel_Filament); pvPut(IsttokShotVVessel_Filament);
}
when (delay(1.0) && (IsttokEmergency == OFF) && ((IsttokOPSTATE == POS_WaitShot) || (IsttokOPSTATE==POS_Clean)) ){
/* Pulse state change to Process */ /* Pulse state change to Process */
strcpy(msg, "State to Process"); strcpy(msg, "State to Process");
@@ -584,30 +576,6 @@ ss PulseSequence {
} state Process } state Process
when (delay(1.0) && (IsttokEmergency == OFF) && (IsttokOPSTATE == POS_Process)){ when (delay(1.0) && (IsttokEmergency == OFF) && (IsttokOPSTATE == POS_Process)){
strcpy(msg, "EMERGENCY: CAPBANK Charge OFF");
pvPut(msg);
errlogSevPrintf(NO_ALARM, "%s\n",msg);
IsttokShotCapBank_Charge = PCF_RELAY_OFF;
pvPut(IsttokShotCapBank_Charge);
strcpy(msg, "EMERGENCY: CAPBANK Discharge ON");
pvPut(msg);
errlogSevPrintf(NO_ALARM, "%s\n",msg);
IsttokShotCapBank_Discharge = PCF_RELAY_OFF;
pvPut(IsttokShotCapBank_Discharge);
strcpy(msg, "EMERGENCY: GIS Valves CLOSE");
pvPut(msg);
errlogSevPrintf(NO_ALARM, "%s\n",msg);
IsttokShotGasIS_Valves = PCF_RELAY_OFF;
pvPut(IsttokShotGasIS_Valves);
strcpy(msg, "EMERGENCY: Filament OFF");
pvPut(msg);
errlogSevPrintf(NO_ALARM, "%s\n",msg);
IsttokShotVVessel_Filament = PCF_RELAY_OFF;
pvPut(IsttokShotVVessel_Filament);
/* Pulse state change to Process */ /* Pulse state change to Process */
strcpy(msg, "State to Process"); strcpy(msg, "State to Process");
pvPut(msg); pvPut(msg);
@@ -617,32 +585,6 @@ ss PulseSequence {
} state Process } state Process
when (delay(1.0) && (IsttokEmergency == OFF) && (IsttokOPSTATE == POS_Starting)){ when (delay(1.0) && (IsttokEmergency == OFF) && (IsttokOPSTATE == POS_Starting)){
strcpy(msg, "EMERGENCY: CAPBANK Charge OFF");
pvPut(msg);
errlogSevPrintf(NO_ALARM, "%s\n",msg);
IsttokShotCapBank_Charge = PCF_RELAY_OFF;
pvPut(IsttokShotCapBank_Charge);
strcpy(msg, "EMERGENCY: CAPBANK Discharge ON");
pvPut(msg);
errlogSevPrintf(NO_ALARM, "%s\n",msg);
IsttokShotCapBank_Discharge = PCF_RELAY_OFF;
pvPut(IsttokShotCapBank_Discharge);
strcpy(msg, "EMERGENCY: GIS Valves CLOSE");
pvPut(msg);
errlogSevPrintf(NO_ALARM, "%s\n",msg);
IsttokShotGasIS_Valves = PCF_RELAY_OFF;
pvPut(IsttokShotGasIS_Valves);
strcpy(msg, "EMERGENCY: Filament OFF");
pvPut(msg);
errlogSevPrintf(NO_ALARM, "%s\n",msg);
IsttokShotVVessel_Filament = PCF_RELAY_OFF;
pvPut(IsttokShotVVessel_Filament);
strcpy(msg, "State to Stopped"); strcpy(msg, "State to Stopped");
pvPut(msg); pvPut(msg);
errlogSevPrintf(NO_ALARM, "%s\n",msg); errlogSevPrintf(NO_ALARM, "%s\n",msg);
@@ -654,47 +596,17 @@ ss PulseSequence {
} state Stopped } state Stopped
when (delay(1.0) && (IsttokEmergency == OFF) && (IsttokOPSTATE == POS_Stopped)){ when (delay(1.0) && (IsttokEmergency == OFF) && (IsttokOPSTATE == POS_Stopped)){
IsttokOPSTATE = POS_Emergency;
pvPut(IsttokOPSTATE);
strcpy(msg, "State to Emergency");
pvPut(msg);
errlogSevPrintf(NO_ALARM, "%s\n",msg);
strcpy(msg, "EMERGENCY: CAPBANK Charge OFF");
pvPut(msg);
errlogSevPrintf(NO_ALARM, "%s\n",msg);
IsttokShotCapBank_Charge = PCF_RELAY_OFF;
pvPut(IsttokShotCapBank_Charge);
strcpy(msg, "EMERGENCY: CAPBANK Discharge ON");
pvPut(msg);
errlogSevPrintf(NO_ALARM, "%s\n",msg);
IsttokShotCapBank_Discharge = PCF_RELAY_OFF;
pvPut(IsttokShotCapBank_Discharge);
strcpy(msg, "EMERGENCY: GIS Valves CLOSE");
pvPut(msg);
errlogSevPrintf(NO_ALARM, "%s\n",msg);
IsttokShotGasIS_Valves = PCF_RELAY_OFF;
pvPut(IsttokShotGasIS_Valves);
strcpy(msg, "EMERGENCY: Filament OFF");
pvPut(msg);
errlogSevPrintf(NO_ALARM, "%s\n",msg);
IsttokShotVVessel_Filament = PCF_RELAY_OFF;
pvPut(IsttokShotVVessel_Filament);
strcpy(msg, "State to Stopped"); strcpy(msg, "State to Stopped");
pvPut(msg); pvPut(msg);
errlogSevPrintf(NO_ALARM, "%s\n",msg); errlogSevPrintf(NO_ALARM, "%s\n",msg);
IsttokOPREQ = STOP;
pvPut(IsttokOPREQ);
/* Pulse state change to Stopped */ /* Pulse state change to Stopped */
IsttokOPSTATE = POS_Stopped; IsttokOPSTATE = POS_Stopped;
pvPut(IsttokOPSTATE); pvPut(IsttokOPSTATE);
} state Stopped } state Stopped
} }
} }
ss StartingSequence { ss StartingSequence {
state NonStarting { state NonStarting {
entry { entry {
@@ -829,8 +741,6 @@ ss StartingSequence {
ss CleaningSequence{ ss CleaningSequence{
state NonCleaning{ state NonCleaning{
entry{ entry{
strcpy(msg, "State to Process");
pvPut(msg);
strcpy(msg, "GIS Valves CLOSE"); strcpy(msg, "GIS Valves CLOSE");
pvPut(msg); pvPut(msg);
IsttokShotGasIS_Valves = PCF_RELAY_OFF; IsttokShotGasIS_Valves = PCF_RELAY_OFF;
@@ -862,7 +772,7 @@ ss CleaningSequence{
errlogSevPrintf(NO_ALARM, "%s\n",msg); errlogSevPrintf(NO_ALARM, "%s\n",msg);
} }
when(delay(1.0) && IsttokCLEANINGMANMODE == 0 && IsttokOPSTATE == POS_Clean){ when(delay(1.0) && IsttokCLEANINGMANMODE == 1 && IsttokOPSTATE == POS_Clean){
strcpy(msg, "Initiating Auto Cleaning..."); strcpy(msg, "Initiating Auto Cleaning...");
pvPut(msg); pvPut(msg);
strcpy(msg, "GIS Valves OPEN"); strcpy(msg, "GIS Valves OPEN");
@@ -986,12 +896,12 @@ ss ShotSequence {
strcpy(msg, "Waiting for Trigger..."); strcpy(msg, "Waiting for Trigger...");
pvPut(msg); pvPut(msg);
errlogSevPrintf(NO_ALARM, "%s\n",msg); errlogSevPrintf(NO_ALARM, "%s\n",msg);
strcpy(msg, "Initiating...");
pvPut(msg);
IsttokShotCountdown = 0; IsttokShotCountdown = 0;
pvPut(IsttokShotCountdown); pvPut(IsttokShotCountdown);
strcpy(IsttokShotCountdownScan, "1 second"); strcpy(IsttokShotCountdownScan, "1 second");
pvPut(IsttokShotCountdownScan); pvPut(IsttokShotCountdownScan);
IsttokWSHOTINGSTATE = WSHTST_WaitTrg;
pvPut(IsttokWSHOTINGSTATE);
} state ShotWaitTrg } state ShotWaitTrg
} }
state ShotWaitTrg { state ShotWaitTrg {
@@ -1037,7 +947,7 @@ ss ShotSequence {
strcpy(msg, "Lights ON"); strcpy(msg, "Lights ON");
pvPut(msg); pvPut(msg);
errlogSevPrintf(NO_ALARM, "%s\n",msg); errlogSevPrintf(NO_ALARM, "%s\n",msg);
IsttokShotLab_WarningLight = 0; IsttokShotLab_WarningLight = PCF_RELAY_ON;
pvPut(IsttokShotLab_WarningLight); pvPut(IsttokShotLab_WarningLight);
IsttokWSHOTINGSTATE = WSHTST_Shoting3; IsttokWSHOTINGSTATE = WSHTST_Shoting3;
pvPut(IsttokWSHOTINGSTATE); pvPut(IsttokWSHOTINGSTATE);
@@ -1091,13 +1001,6 @@ ss ShotSequence {
} state Shoting6 } state Shoting6
} }
state Shoting6 { state Shoting6 {
when ((IsttokOPSTATE != POS_WaitShot) && (IsttokShotCountdown == 160)) {
strcpy(msg, "Shoting6 Out");
pvPut(msg);
errlogSevPrintf(NO_ALARM, "%s\n",msg);
IsttokWSHOTINGSTATE = WSHTST_NonShoting;
pvPut(IsttokWSHOTINGSTATE);
} state NonShoting
when (IsttokShotCountdown == -16) { when (IsttokShotCountdown == -16) {
strcpy(msg, "CAPBANK Charge OFF" ); strcpy(msg, "CAPBANK Charge OFF" );
pvPut(msg); pvPut(msg);
@@ -1109,13 +1012,6 @@ ss ShotSequence {
} state Shoting7 } state Shoting7
} }
state Shoting7 { state Shoting7 {
when ((IsttokOPSTATE != POS_WaitShot) && (IsttokShotCountdown == 160)) {
strcpy(msg, "Shoting7 Out");
pvPut(msg);
errlogSevPrintf(NO_ALARM, "%s\n",msg);
IsttokWSHOTINGSTATE = WSHTST_NonShoting;
pvPut(IsttokWSHOTINGSTATE);
} state NonShoting
when (IsttokShotCountdown == -11) { when (IsttokShotCountdown == -11) {
strcpy(msg, "Buzzer 2-Sound" ); strcpy(msg, "Buzzer 2-Sound" );
pvPut(msg); pvPut(msg);
@@ -1132,6 +1028,7 @@ ss ShotSequence {
} state Shoting8 } state Shoting8
} }
state Shoting8 { state Shoting8 {
/*
when ((IsttokOPSTATE != POS_WaitShot) && (IsttokShotCountdown == 160)) { when ((IsttokOPSTATE != POS_WaitShot) && (IsttokShotCountdown == 160)) {
strcpy(msg, "Shoting8 Out"); strcpy(msg, "Shoting8 Out");
pvPut(msg); pvPut(msg);
@@ -1139,24 +1036,19 @@ ss ShotSequence {
IsttokWSHOTINGSTATE = WSHTST_NonShoting; IsttokWSHOTINGSTATE = WSHTST_NonShoting;
pvPut(IsttokWSHOTINGSTATE); pvPut(IsttokWSHOTINGSTATE);
} state NonShoting } state NonShoting
*/
when (IsttokShotCountdown == -4) { when (IsttokShotCountdown == -4) {
strcpy(msg, "Toroidal Shot Trigger"); strcpy(msg, "Toroidal PS Trigger");
pvPut(msg); pvPut(msg);
errlogSevPrintf(NO_ALARM, "%s\n",msg); errlogSevPrintf(NO_ALARM, "%s\n",msg);
IsttokShotShot_TorPSTrigger = 1; // PS Trigger Pulse
IsttokShotShot_TorPSTrigger = ON;
pvPut(IsttokShotShot_TorPSTrigger); pvPut(IsttokShotShot_TorPSTrigger);
IsttokWSHOTINGSTATE = WSHTST_Shoting9; IsttokWSHOTINGSTATE = WSHTST_Shoting9;
pvPut(IsttokWSHOTINGSTATE); pvPut(IsttokWSHOTINGSTATE);
} state Shoting9 } state Shoting9
} }
state Shoting9 { state Shoting9 {
when ((IsttokOPSTATE != POS_WaitShot ) && (IsttokShotCountdown == 160) ) {
strcpy(msg, "Shoting9 Out");
pvPut(msg);
errlogSevPrintf(NO_ALARM, "%s\n",msg);
IsttokWSHOTINGSTATE = WSHTST_NonShoting;
pvPut(IsttokWSHOTINGSTATE);
} state NonShoting
when (IsttokShotCountdown == -2) { when (IsttokShotCountdown == -2) {
strcpy(msg, "Ready for SHOT" ); strcpy(msg, "Ready for SHOT" );
pvPut(msg); pvPut(msg);
@@ -1166,15 +1058,8 @@ ss ShotSequence {
} state Shoting10 } state Shoting10
} }
state Shoting10 { state Shoting10 {
when ((IsttokOPSTATE != POS_WaitShot ) && (IsttokShotCountdown == 160) ) {
strcpy(msg, "Shoting8 Out");
pvPut(msg);
errlogSevPrintf(NO_ALARM, "%s\n",msg);
IsttokWSHOTINGSTATE = WSHTST_NonShoting;
pvPut(IsttokWSHOTINGSTATE);
} state NonShoting
when (IsttokShotCountdown == 0) { when (IsttokShotCountdown == 0) {
strcpy(msg, "CAPBANK CrowBar Open" ); strcpy(msg, "CAPBANK CrowBar Close" );
pvPut(msg); pvPut(msg);
errlogSevPrintf(NO_ALARM, "%s\n", msg); errlogSevPrintf(NO_ALARM, "%s\n", msg);
IsttokShotCapBank_Discharge = PCF_RELAY_OFF; IsttokShotCapBank_Discharge = PCF_RELAY_OFF;
@@ -1184,13 +1069,6 @@ ss ShotSequence {
} state Shoting11 } state Shoting11
} }
state Shoting11 { state Shoting11 {
when ((IsttokOPSTATE != POS_WaitShot ) && (IsttokShotCountdown == 160) ) {
strcpy(msg, "Shoting11 Out");
pvPut(msg);
errlogSevPrintf(NO_ALARM, "%s\n",msg);
IsttokWSHOTINGSTATE = WSHTST_NonShoting;
pvPut(IsttokWSHOTINGSTATE);
} state NonShoting
when (IsttokShotCountdown == 1) { when (IsttokShotCountdown == 1) {
strcpy(msg, "GIS Valves CLOSE" ); strcpy(msg, "GIS Valves CLOSE" );
pvPut(msg); pvPut(msg);
@@ -1207,24 +1085,18 @@ ss ShotSequence {
} state Shoting12 } state Shoting12
} }
state Shoting12 { state Shoting12 {
when ((IsttokOPSTATE != POS_WaitShot ) && (IsttokShotCountdown == 160) ) {
strcpy(msg, "Shoting12 Out");
pvPut(msg);
errlogSevPrintf(NO_ALARM, "%s\n",msg);
IsttokWSHOTINGSTATE = WSHTST_NonShoting;
pvPut(IsttokWSHOTINGSTATE);
} state NonShoting
when (IsttokShotCountdown == 2) { when (IsttokShotCountdown == 2) {
strcpy(msg, "Lights OFF and Recovering..." ); strcpy(msg, "Lights OFF and Recovering..." );
pvPut(msg); pvPut(msg);
errlogSevPrintf(NO_ALARM, "%s\n", msg); errlogSevPrintf(NO_ALARM, "%s\n", msg);
IsttokShotLab_WarningLight = 1; IsttokShotLab_WarningLight = PCF_RELAY_OFF;
pvPut(IsttokShotLab_WarningLight); pvPut(IsttokShotLab_WarningLight);
IsttokWSHOTINGSTATE = WSHTST_Shoting13; IsttokWSHOTINGSTATE = WSHTST_ShotEnd;
pvPut(IsttokWSHOTINGSTATE); pvPut(IsttokWSHOTINGSTATE);
} state Shoting13 } state ShotEnd
} }
state Shoting13 { state ShotEnd {
/*
when ((IsttokOPSTATE != POS_WaitShot ) && (IsttokShotCountdown == 160) ) { when ((IsttokOPSTATE != POS_WaitShot ) && (IsttokShotCountdown == 160) ) {
strcpy(msg, "Shoting13 Out"); strcpy(msg, "Shoting13 Out");
pvPut(msg); pvPut(msg);
@@ -1232,14 +1104,18 @@ ss ShotSequence {
IsttokWSHOTINGSTATE = WSHTST_NonShoting; IsttokWSHOTINGSTATE = WSHTST_NonShoting;
pvPut(IsttokWSHOTINGSTATE); pvPut(IsttokWSHOTINGSTATE);
} state NonShoting } state NonShoting
*/
when (IsttokShotCountdown > 160) { when (IsttokShotCountdown > 160) {
strcpy(msg, "Terminated"); strcpy(msg, "Terminated");
pvPut(msg); pvPut(msg);
errlogSevPrintf(NO_ALARM, "%s\n", msg); errlogSevPrintf(NO_ALARM, "%s\n", msg);
IsttokShotCountdown = 0; // IsttokShotCountdown = 0;
pvPut(IsttokShotCountdown); // pvPut(IsttokShotCountdown);
IsttokWSHOTINGSTATE = WSHTST_WaitTrg;
pvPut(IsttokWSHOTINGSTATE);
} state ShotWaitTrg } state ShotWaitTrg
} }
}
/* when (IsttokShotCountdown > 159) { /* when (IsttokShotCountdown > 159) {
strcpy(msg, "Toroidal Field Recovered" ); strcpy(msg, "Toroidal Field Recovered" );
pvPut(msg); pvPut(msg);
@@ -1261,10 +1137,9 @@ ss ShotSequence {
errlogSevPrintf(NO_ALARM, "%s\n", msg); errlogSevPrintf(NO_ALARM, "%s\n", msg);
// strcpy(IsttokShotCountdownScan, "Passive"); // strcpy(IsttokShotCountdownScan, "Passive");
// pvPut(IsttokShotCountdownScan); // pvPut(IsttokShotCountdownScan);
IsttokShotCountdown = 0; // IsttokShotCountdown = 0;
pvPut(IsttokShotCountdown); // pvPut(IsttokShotCountdown);
} state ShotWaitTrg } state ShotWaitTrg
} }
*/ */
}

View File

@@ -1,4 +1,4 @@
# autosave R5.3 Automatically generated - DO NOT MODIFY - 191203-182102 # autosave R5.3 Automatically generated - DO NOT MODIFY - 191205-170936
ISTTOK:central:PULSE-NUMBER.VAL 0 ISTTOK:central:PULSE-NUMBER.VAL 0
ISTTOK:central:PROCESS-MODE.VAL 1 ISTTOK:central:PROCESS-MODE.VAL 1
ISTTOK:central:TMPump1-ManualValve.VAL 1 ISTTOK:central:TMPump1-ManualValve.VAL 1