Checking relay output

This commit is contained in:
Bernardo Carvalho
2021-12-09 15:07:43 +00:00
parent 2eeafe3581
commit 3813c99704
6 changed files with 225 additions and 140 deletions

View File

@@ -228,9 +228,9 @@ record(calc, "$(P)$(R)Emergency" ) {
############### ###############
############### ###############
############################# ###################################
# ROTARY1 PUMP # # ROTARY1 PUMP Relay 5 NC #
############################# ###################################
record( bo, "$(P)$(R)RPump1-Motor" ) { record( bo, "$(P)$(R)RPump1-Motor" ) {
field(DESC,"Power to Rotatory Pump 1. Relay 5") field(DESC,"Power to Rotatory Pump 1. Relay 5")
field(OUT, "$(P)$(R)PCF8574:60:REGISTER.B0 PP" ) field(OUT, "$(P)$(R)PCF8574:60:REGISTER.B0 PP" )
@@ -240,9 +240,9 @@ record( bo, "$(P)$(R)RPump1-Motor" ) {
field(ZSV,"MINOR") field(ZSV,"MINOR")
} }
############################# ####################################
# ROTARY1 VALVE # # ROTARY1 VALVE Relay 4 NC #
############################# ####################################
record( bo, "$(P)$(R)RPump1-Valve" ) { record( bo, "$(P)$(R)RPump1-Valve" ) {
field(DESC,"Abre a valvula da bomba rot. Relay 4") field(DESC,"Abre a valvula da bomba rot. Relay 4")
field(OUT, "$(P)$(R)PCF8574:60:REGISTER.B1 PP" ) field(OUT, "$(P)$(R)PCF8574:60:REGISTER.B1 PP" )

View File

@@ -54,9 +54,10 @@ record( mbbiDirect, "$(P)$(R)PCF8574:57:REGISTER:READ" ) {
field(FLNK, "$(P)$(R)PCF8574:57:REGISTER:READ:FNOUT") field(FLNK, "$(P)$(R)PCF8574:57:REGISTER:READ:FNOUT")
} }
##################################################### ################################################################
# ### Read/Write pcf8574 address 0x3c=60 register ### # # ### Read/Write pcf8574 address 0x3c=60 register #
################################################### # I2C power up with output at 1 (Relay coils are de-energized)#
################################################################
record( mbboDirect, "$(P)$(R)PCF8574:60:REGISTER") { record( mbboDirect, "$(P)$(R)PCF8574:60:REGISTER") {
field( DTYP, "stream") field( DTYP, "stream")
field( OUT, "@pcf8574.proto wReg(60) $(BUS)") field( OUT, "@pcf8574.proto wReg(60) $(BUS)")

View File

@@ -21,6 +21,7 @@ record(mbbi, "$(P)$(R)OPSTATE") {
field(FRVL, "4") field(FRVL, "4")
field(FVVL, "5") field(FVVL, "5")
field(SXVL, "6") field(SXVL, "6")
field(SVVL, "7")
field(ZRST, "Stopped") field(ZRST, "Stopped")
field(ONST, "Starting") field(ONST, "Starting")
field(TWST, "Idle") field(TWST, "Idle")
@@ -28,6 +29,7 @@ record(mbbi, "$(P)$(R)OPSTATE") {
field(FRST, "WaitShot") field(FRST, "WaitShot")
field(FVST, "Stopping") field(FVST, "Stopping")
field(SXST, "Emergency") field(SXST, "Emergency")
field(SVST, "UPSEmergency")
field(VAL, "0") field(VAL, "0")
} }
record(mbbo, "$(P)$(R)LASTOPSTATE") { record(mbbo, "$(P)$(R)LASTOPSTATE") {
@@ -40,6 +42,7 @@ record(mbbo, "$(P)$(R)LASTOPSTATE") {
field(FRVL, "4") field(FRVL, "4")
field(FVVL, "5") field(FVVL, "5")
field(SXVL, "6") field(SXVL, "6")
field(SVVL, "7")
field(ZRST, "Stopped") field(ZRST, "Stopped")
field(ONST, "Starting") field(ONST, "Starting")
field(TWST, "Idle") field(TWST, "Idle")
@@ -47,6 +50,7 @@ record(mbbo, "$(P)$(R)LASTOPSTATE") {
field(FRST, "WaitShot") field(FRST, "WaitShot")
field(FVST, "Stopping") field(FVST, "Stopping")
field(SXST, "Emergency") field(SXST, "Emergency")
field(SVST, "UPSEmergency")
# field(VAL, "0") # field(VAL, "0")
} }

View File

@@ -44,17 +44,17 @@ short CLNST_Cleaning5 = 5;
short WSHTST_NonShoting = 0; short WSHTST_NonShoting = 0;
short WSHTST_WaitTrg = 1; short WSHTST_WaitTrg = 1;
short WSHTST_Shoting2 = 2; short WSHTST_Shooting2 = 2;
short WSHTST_Shoting3 = 3; short WSHTST_Shooting3 = 3;
short WSHTST_Shoting4 = 4; short WSHTST_Shooting4 = 4;
short WSHTST_Shoting5 = 5; short WSHTST_Shooting5 = 5;
short WSHTST_Shoting6 = 6; short WSHTST_Shooting6 = 6;
short WSHTST_Shoting7 = 7; short WSHTST_Shooting7 = 7;
short WSHTST_Shoting8 = 8; short WSHTST_Shooting8 = 8;
short WSHTST_Shoting9 = 9; short WSHTST_Shooting9 = 9;
short WSHTST_Shoting10 = 10; short WSHTST_Shooting10 = 10;
short WSHTST_Shoting11 = 11; short WSHTST_Shooting11 = 11;
short WSHTST_Shoting12 = 12; short WSHTST_Shooting12 = 12;
short WSHTST_ShotEnd = 13; short WSHTST_ShotEnd = 13;
short STPST_NonStopping = 0; short STPST_NonStopping = 0;
@@ -71,6 +71,7 @@ short POS_Clean =3;
short POS_WaitShot=4; short POS_WaitShot=4;
short POS_Stopping=5; short POS_Stopping=5;
short POS_Emergency=6; short POS_Emergency=6;
short POS_UPSEmergency=7;
short ON=1; short ON=1;
short OFF=0; short OFF=0;
@@ -426,7 +427,7 @@ ss PulseSequence {
IsttokOPREQ = STOP; IsttokOPREQ = STOP;
pvPut(IsttokOPREQ); pvPut(IsttokOPREQ);
/* State change to Stopping */ /* State change to Stopping */
IsttokOPSTATE = POS_Stopping; IsttokOPSTATE = POS_UPSEmergency;
pvPut(IsttokOPSTATE); pvPut(IsttokOPSTATE);
} state Stopping } state Stopping
@@ -517,15 +518,16 @@ ss PulseSequence {
pvPut(IsttokOPSTATE); pvPut(IsttokOPSTATE);
} }
when (IsttokupsBatteryON == ON) { when (IsttokupsBatteryON == ON) {
strcpy(msg, "Power Emergency, go to Stopping"); strcpy(msg, "Power Emergency, go to UPSEmergency");
pvPut(msg); pvPut(msg);
errlogSevPrintf(MAJOR, "%s\n",msg); errlogSevPrintf(MAJOR, "%s\n",msg);
IsttokOPREQ = STOP; IsttokOPREQ = STOP;
pvPut(IsttokOPREQ); pvPut(IsttokOPREQ);
/* State change to Stopping */ /* State change to UPSEmergency */
IsttokOPSTATE = POS_Stopping; IsttokOPSTATE = POS_UPSEmergency;
pvPut(IsttokOPSTATE); pvPut(IsttokOPSTATE);
} state Stopping } state UpsEmergency
when(IsttokEmergency == ON){ when(IsttokEmergency == ON){
strcpy(msg, "Emergency from WaitShot"); strcpy(msg, "Emergency from WaitShot");
pvPut(msg); pvPut(msg);
@@ -558,6 +560,21 @@ ss PulseSequence {
state Stopping { state Stopping {
entry{ entry{
/*Just to be sure */ /*Just to be sure */
IsttokShotShot_TorPSDisable = PCF_RELAY_OFF;
pvPut(IsttokShotShot_TorPSDisable);
IsttokShotCapBank_Charge = PCF_RELAY_OFF;
pvPut(IsttokShotCapBank_Charge);
IsttokShotCapBank_Discharge = PCF_RELAY_OFF;
pvPut(IsttokShotCapBank_Discharge);
IsttokShotGasIS_Valves = PCF_RELAY_OFF;
pvPut(IsttokShotGasIS_Valves);
IsttokShotVVessel_Filament = PCF_RELAY_OFF;
pvPut(IsttokShotVVessel_Filament);
IsttokProcReq = STOP; IsttokProcReq = STOP;
pvPut(IsttokProcReq); pvPut(IsttokProcReq);
@@ -655,9 +672,72 @@ ss PulseSequence {
pvPut(IsttokOPSTATE); pvPut(IsttokOPSTATE);
} state Stopped } state Stopped
} }
/*State UpsEmergency*/
state UpsEmergency {
entry {
strcpy(msg, "Emergency Toroidal Shot Disable");
errlogSevPrintf(MAJOR, "%s\n",msg);
IsttokShotShot_TorPSDisable = PCF_RELAY_OFF;
pvPut(IsttokShotShot_TorPSDisable);
strcpy(msg, "EMERGENCY: CAPBANK Charge OFF");
errlogSevPrintf(NO_ALARM, "%s\n",msg);
IsttokShotCapBank_Charge = PCF_RELAY_OFF;
pvPut(IsttokShotCapBank_Charge);
strcpy(msg, "EMERGENCY: CAPBANK CrowBar Close");
errlogSevPrintf(NO_ALARM, "%s\n",msg);
IsttokShotCapBank_Discharge = PCF_RELAY_OFF;
pvPut(IsttokShotCapBank_Discharge);
strcpy(msg, "EMERGENCY: GIS Valves CLOSE");
errlogSevPrintf(NO_ALARM, "%s\n",msg);
IsttokShotGasIS_Valves = PCF_RELAY_OFF;
pvPut(IsttokShotGasIS_Valves);
strcpy(msg, "UPS EMERGENCY: Filament OFF");
pvPut(msg);
errlogSevPrintf(MAJOR, "%s\n",msg);
IsttokShotVVessel_Filament = PCF_RELAY_OFF;
pvPut(IsttokShotVVessel_Filament);
}
when (IsttokupsBatteryON == ON) {
/* Pulse state change to Stopping */
strcpy(msg, "State to Stopping");
pvPut(msg);
errlogSevPrintf(NO_ALARM, "%s\n",msg);
IsttokProcReq = STOP;
pvPut(IsttokProcReq);
IsttokOPSTATE = POS_Stopping;
pvPut(IsttokOPSTATE);
} state Stopping
when (delay(6.0) && (IsttokupsBatteryON == OFF) && (IsttokOPSTATE == POS_Idle)){
/* Pulse state change to Idle */
strcpy(msg, "State to Idle");
pvPut(msg);
errlogSevPrintf(NO_ALARM, "%s\n",msg);
IsttokOPSTATE = POS_Idle;
pvPut(IsttokOPSTATE);
} state Idle
/*
when (delay(6.0) && (IsttokupsBatteryON == OFF) &&
((IsttokOPSTATE == POS_Starting)) || (IsttokOPSTATE == POS_Stopping)){
// TODO Check these 2 transictions
strcpy(msg, "State to Stopping");
pvPut(msg);
errlogSevPrintf(NO_ALARM, "%s\n",msg);
IsttokOPREQ = STOP;
pvPut(IsttokOPREQ);
// Pulse state change to Stopping
IsttokOPSTATE = POS_Stopping;
pvPut(IsttokOPSTATE);
} state Stopping
*/
}
} }
/* Starting State Set */ /*********** Starting SUB-State Set ************/
ss StartingSequence { ss StartingSequence {
state NonStarting { state NonStarting {
entry { entry {
@@ -960,15 +1040,15 @@ ss ShotSequence {
pvPut(msg); pvPut(msg);
IsttokShotCountdown = -70; IsttokShotCountdown = -70;
pvPut(IsttokShotCountdown); pvPut(IsttokShotCountdown);
WSHOTINGSTATE = WSHTST_Shoting2; WSHOTINGSTATE = WSHTST_Shooting2;
pvPut(WSHOTINGSTATE); pvPut(WSHOTINGSTATE);
PulseNumber +=1; PulseNumber +=1;
pvPut(PulseNumber); pvPut(PulseNumber);
} state Shoting2 } state Shooting2
} }
state Shoting2 { state Shooting2 {
when (IsttokOPSTATE != POS_WaitShot) { when (IsttokOPSTATE != POS_WaitShot) {
strcpy(msg, "Shoting 2 Out"); strcpy(msg, "Shooting 2 Out");
pvPut(msg); pvPut(msg);
errlogSevPrintf(NO_ALARM, "%s\n",msg); errlogSevPrintf(NO_ALARM, "%s\n",msg);
} state ShotWaitTrg } state ShotWaitTrg
@@ -988,13 +1068,13 @@ ss ShotSequence {
errlogSevPrintf(NO_ALARM, "%s\n",msg); errlogSevPrintf(NO_ALARM, "%s\n",msg);
IsttokShotLab_WarningLight = PCF_RELAY_ON; IsttokShotLab_WarningLight = PCF_RELAY_ON;
pvPut(IsttokShotLab_WarningLight); pvPut(IsttokShotLab_WarningLight);
WSHOTINGSTATE = WSHTST_Shoting3; WSHOTINGSTATE = WSHTST_Shooting3;
pvPut(WSHOTINGSTATE); pvPut(WSHOTINGSTATE);
} state Shoting3 } state Shooting3
} }
state Shoting3 { state Shooting3 {
when (IsttokOPSTATE != POS_WaitShot) { when (IsttokOPSTATE != POS_WaitShot) {
strcpy(msg, "Shoting3 Out"); strcpy(msg, "Shooting3 Out");
pvPut(msg); pvPut(msg);
errlogSevPrintf(NO_ALARM, "%s\n",msg); errlogSevPrintf(NO_ALARM, "%s\n",msg);
} state ShotWaitTrg } state ShotWaitTrg
@@ -1004,26 +1084,26 @@ ss ShotSequence {
errlogSevPrintf(NO_ALARM, "%s\n",msg); errlogSevPrintf(NO_ALARM, "%s\n",msg);
IsttokShotGasIS_Valves = PCF_RELAY_ON; IsttokShotGasIS_Valves = PCF_RELAY_ON;
pvPut(IsttokShotGasIS_Valves); pvPut(IsttokShotGasIS_Valves);
WSHOTINGSTATE = WSHTST_Shoting4; WSHOTINGSTATE = WSHTST_Shooting4;
pvPut(WSHOTINGSTATE); pvPut(WSHOTINGSTATE);
} state Shoting4 } state Shooting4
} }
state Shoting4 { state Shooting4 {
when (IsttokOPSTATE != POS_WaitShot ) { when (IsttokOPSTATE != POS_WaitShot ) {
strcpy(msg, "Shoting4 Out"); strcpy(msg, "Shooting4 Out");
pvPut(msg); pvPut(msg);
errlogSevPrintf(NO_ALARM, "%s\n",msg); errlogSevPrintf(NO_ALARM, "%s\n",msg);
WSHOTINGSTATE = WSHTST_NonShoting; WSHOTINGSTATE = WSHTST_NonShoting;
pvPut(WSHOTINGSTATE); pvPut(WSHOTINGSTATE);
} state NonShoting } state NonShoting
when (IsttokShotCountdown == -59) { when (IsttokShotCountdown == -59) {
WSHOTINGSTATE = WSHTST_Shoting5; WSHOTINGSTATE = WSHTST_Shooting5;
pvPut(WSHOTINGSTATE); pvPut(WSHOTINGSTATE);
} state Shoting5 } state Shooting5
} }
state Shoting5 { state Shooting5 {
when (IsttokOPSTATE != POS_WaitShot) { when (IsttokOPSTATE != POS_WaitShot) {
strcpy(msg, "Shoting5 Out"); strcpy(msg, "Shooting5 Out");
pvPut(msg); pvPut(msg);
errlogSevPrintf(NO_ALARM, "%s\n",msg); errlogSevPrintf(NO_ALARM, "%s\n",msg);
WSHOTINGSTATE = WSHTST_NonShoting; WSHOTINGSTATE = WSHTST_NonShoting;
@@ -1035,13 +1115,13 @@ ss ShotSequence {
errlogSevPrintf(NO_ALARM, "%s\n",msg); errlogSevPrintf(NO_ALARM, "%s\n",msg);
IsttokShotCapBank_Charge = PCF_RELAY_ON; IsttokShotCapBank_Charge = PCF_RELAY_ON;
pvPut(IsttokShotCapBank_Charge); pvPut(IsttokShotCapBank_Charge);
WSHOTINGSTATE = WSHTST_Shoting6; WSHOTINGSTATE = WSHTST_Shooting6;
pvPut(WSHOTINGSTATE); pvPut(WSHOTINGSTATE);
} state Shoting6 } state Shooting6
} }
state Shoting6 { state Shooting6 {
when (IsttokOPSTATE != POS_WaitShot) { when (IsttokOPSTATE != POS_WaitShot) {
strcpy(msg, "Shoting6 Out"); strcpy(msg, "Shooting6 Out");
pvPut(msg); pvPut(msg);
errlogSevPrintf(MINOR, "%s\n",msg); errlogSevPrintf(MINOR, "%s\n",msg);
WSHOTINGSTATE = WSHTST_NonShoting; WSHOTINGSTATE = WSHTST_NonShoting;
@@ -1053,13 +1133,13 @@ ss ShotSequence {
errlogSevPrintf(NO_ALARM, "%s\n", msg); errlogSevPrintf(NO_ALARM, "%s\n", msg);
IsttokShotCapBank_Charge = PCF_RELAY_OFF; IsttokShotCapBank_Charge = PCF_RELAY_OFF;
pvPut(IsttokShotCapBank_Charge); pvPut(IsttokShotCapBank_Charge);
WSHOTINGSTATE = WSHTST_Shoting7; WSHOTINGSTATE = WSHTST_Shooting7;
pvPut(WSHOTINGSTATE); pvPut(WSHOTINGSTATE);
} state Shoting7 } state Shooting7
} }
state Shoting7 { state Shooting7 {
when (IsttokOPSTATE != POS_WaitShot) { when (IsttokOPSTATE != POS_WaitShot) {
strcpy(msg, "Shoting7 Out"); strcpy(msg, "Shooting7 Out");
pvPut(msg); pvPut(msg);
errlogSevPrintf(MINOR, "%s\n",msg); errlogSevPrintf(MINOR, "%s\n",msg);
WSHOTINGSTATE = WSHTST_NonShoting; WSHOTINGSTATE = WSHTST_NonShoting;
@@ -1076,13 +1156,13 @@ ss ShotSequence {
errlogSevPrintf(NO_ALARM, "%s\n",msg); errlogSevPrintf(NO_ALARM, "%s\n",msg);
IsttokShotVVessel_Filament = PCF_RELAY_ON; IsttokShotVVessel_Filament = PCF_RELAY_ON;
pvPut(IsttokShotVVessel_Filament); pvPut(IsttokShotVVessel_Filament);
WSHOTINGSTATE = WSHTST_Shoting8; WSHOTINGSTATE = WSHTST_Shooting8;
pvPut(WSHOTINGSTATE); pvPut(WSHOTINGSTATE);
} state Shoting8 } state Shooting8
} }
state Shoting8 { state Shooting8 {
when (IsttokOPSTATE != POS_WaitShot) { when (IsttokOPSTATE != POS_WaitShot) {
strcpy(msg, "Shoting8 Out"); strcpy(msg, "Shooting8 Out");
pvPut(msg); pvPut(msg);
errlogSevPrintf(MINOR, "%s\n",msg); errlogSevPrintf(MINOR, "%s\n",msg);
WSHOTINGSTATE = WSHTST_NonShoting; WSHOTINGSTATE = WSHTST_NonShoting;
@@ -1095,13 +1175,13 @@ ss ShotSequence {
// PS Trigger Pulse // PS Trigger Pulse
IsttokShotShot_TorPSTrigger = ON; IsttokShotShot_TorPSTrigger = ON;
pvPut(IsttokShotShot_TorPSTrigger); pvPut(IsttokShotShot_TorPSTrigger);
WSHOTINGSTATE = WSHTST_Shoting9; WSHOTINGSTATE = WSHTST_Shooting9;
pvPut(WSHOTINGSTATE); pvPut(WSHOTINGSTATE);
} state Shoting9 } state Shooting9
} }
state Shoting9 { state Shooting9 {
when (IsttokOPSTATE != POS_WaitShot) { when (IsttokOPSTATE != POS_WaitShot) {
strcpy(msg, "Shoting9 Out"); strcpy(msg, "Shooting9 Out");
pvPut(msg); pvPut(msg);
errlogSevPrintf(MINOR, "%s\n",msg); errlogSevPrintf(MINOR, "%s\n",msg);
WSHOTINGSTATE = WSHTST_NonShoting; WSHOTINGSTATE = WSHTST_NonShoting;
@@ -1111,13 +1191,13 @@ ss ShotSequence {
strcpy(msg, "Ready for SHOT" ); strcpy(msg, "Ready for SHOT" );
pvPut(msg); pvPut(msg);
errlogSevPrintf(NO_ALARM, "%s\n", msg); errlogSevPrintf(NO_ALARM, "%s\n", msg);
WSHOTINGSTATE = WSHTST_Shoting10; WSHOTINGSTATE = WSHTST_Shooting10;
pvPut(WSHOTINGSTATE); pvPut(WSHOTINGSTATE);
} state Shoting10 } state Shooting10
} }
state Shoting10 { state Shooting10 {
when (IsttokOPSTATE != POS_WaitShot) { when (IsttokOPSTATE != POS_WaitShot) {
strcpy(msg, "Shoting10 Out"); strcpy(msg, "Shooting10 Out");
pvPut(msg); pvPut(msg);
errlogSevPrintf(MINOR, "%s\n",msg); errlogSevPrintf(MINOR, "%s\n",msg);
WSHOTINGSTATE = WSHTST_NonShoting; WSHOTINGSTATE = WSHTST_NonShoting;
@@ -1129,13 +1209,13 @@ ss ShotSequence {
errlogSevPrintf(NO_ALARM, "%s\n", msg); errlogSevPrintf(NO_ALARM, "%s\n", msg);
IsttokShotCapBank_Discharge = PCF_RELAY_OFF; IsttokShotCapBank_Discharge = PCF_RELAY_OFF;
pvPut(IsttokShotCapBank_Discharge); pvPut(IsttokShotCapBank_Discharge);
WSHOTINGSTATE = WSHTST_Shoting11; WSHOTINGSTATE = WSHTST_Shooting11;
pvPut(WSHOTINGSTATE); pvPut(WSHOTINGSTATE);
} state Shoting11 } state Shooting11
} }
state Shoting11 { state Shooting11 {
when (IsttokOPSTATE != POS_WaitShot) { when (IsttokOPSTATE != POS_WaitShot) {
strcpy(msg, "Shoting11 Out"); strcpy(msg, "Shooting11 Out");
pvPut(msg); pvPut(msg);
errlogSevPrintf(MINOR, "%s\n",msg); errlogSevPrintf(MINOR, "%s\n",msg);
WSHOTINGSTATE = WSHTST_NonShoting; WSHOTINGSTATE = WSHTST_NonShoting;
@@ -1152,13 +1232,13 @@ ss ShotSequence {
errlogSevPrintf(NO_ALARM, "%s\n", msg); errlogSevPrintf(NO_ALARM, "%s\n", msg);
IsttokShotVVessel_Filament = 1; IsttokShotVVessel_Filament = 1;
pvPut(IsttokShotVVessel_Filament); pvPut(IsttokShotVVessel_Filament);
WSHOTINGSTATE = WSHTST_Shoting12; WSHOTINGSTATE = WSHTST_Shooting12;
pvPut(WSHOTINGSTATE); pvPut(WSHOTINGSTATE);
} state Shoting12 } state Shooting12
} }
state Shoting12 { state Shooting12 {
when (IsttokOPSTATE != POS_WaitShot) { when (IsttokOPSTATE != POS_WaitShot) {
strcpy(msg, "Shoting6 Out"); strcpy(msg, "Shooting6 Out");
pvPut(msg); pvPut(msg);
errlogSevPrintf(MINOR, "%s\n",msg); errlogSevPrintf(MINOR, "%s\n",msg);
WSHOTINGSTATE = WSHTST_NonShoting; WSHOTINGSTATE = WSHTST_NonShoting;
@@ -1185,7 +1265,7 @@ ss ShotSequence {
} }
} }
/* Stopping State Set */ /* Stopping Sub-State Set */
ss StoppingSequence { ss StoppingSequence {
state NonStopping { state NonStopping {
entry { entry {
@@ -1260,12 +1340,12 @@ ss StoppingSequence {
strcpy(msg, "Toroidal Field Recovered" ); strcpy(msg, "Toroidal Field Recovered" );
pvPut(msg); pvPut(msg);
errlogSevPrintf(NO_ALARM, "%s\n", msg); errlogSevPrintf(NO_ALARM, "%s\n", msg);
WSHOTINGSTATE = WSHTST_Shoting12; WSHOTINGSTATE = WSHTST_Shooting12;
pvPut(WSHOTINGSTATE); pvPut(WSHOTINGSTATE);
} state Shoting12 } state Shooting12
state Shoting12 { state Shooting12 {
when ((IsttokOPSTATE != POS_WaitShot ) && (IsttokShotCountdown == 160) ) { when ((IsttokOPSTATE != POS_WaitShot ) && (IsttokShotCountdown == 160) ) {
strcpy(msg, "Shoting12 Out"); strcpy(msg, "Shooting12 Out");
pvPut(msg); pvPut(msg);
errlogSevPrintf(NO_ALARM, "%s\n", msg); errlogSevPrintf(NO_ALARM, "%s\n", msg);
WSHOTINGSTATE = WSHTST_NonShoting; WSHOTINGSTATE = WSHTST_NonShoting;

View File

@@ -1,4 +1,4 @@
# autosave R5.3 Automatically generated - DO NOT MODIFY - 211129-172335 # autosave R5.3 Automatically generated - DO NOT MODIFY - 211209-150038
ISTTOK:central:PULSE-NUMBER.VAL 0 ISTTOK:central:PULSE-NUMBER.VAL 0
ISTTOK:central:LogMessage.VAL ISTTOK:central:LogMessage.VAL
ISTTOK:central:LASTOPSTATE.VAL 5 ISTTOK:central:LASTOPSTATE.VAL 5

View File

@@ -19,7 +19,7 @@ SNCSEQ=$(SUPPORT)/seq-2-2
# #
# SEQ is required for testIPServer # SEQ is required for testIPServer
#SNCSEQ=$(SUPPORT)/seq-2-2-5 #SNCSEQ=$(SUPPORT)/seq-2-2-5
SNCSEQ= #SNCSEQ=
## For sCalcout support in asynOctet - applications include asynCalc.dbd ## For sCalcout support in asynOctet - applications include asynCalc.dbd
#CALC=$(SUPPORT)/calc-3-7-3 #CALC=$(SUPPORT)/calc-3-7-3
@@ -30,5 +30,5 @@ PCRE=
#SSCAN=$(SUPPORT)/sscan-2-11-3 #SSCAN=$(SUPPORT)/sscan-2-11-3
# EPICS_BASE 3.14.6 or later is required # EPICS_BASE 3.14.6 or later is required
EPICS_BASE=/home/pi/EPICS/epics-base EPICS_BASE=/home/pi/Apps/epics7/epics-base