From a0a43ee5a6382388ee84b98cce7223cdd7ec1e9c Mon Sep 17 00:00:00 2001 From: Bernardo Carvalho Date: Tue, 23 Apr 2024 15:57:51 +0000 Subject: [PATCH] Added MARTe2 PVs in State Machine Signed-off-by: Bernardo Carvalho --- .../ISTTOKrpi/ISTTOKrpiApp/Db/ISTTOKmarte2.db | 57 +++++++++++++++++++ .../ISTTOKrpi/ISTTOKrpiApp/Db/ISTTOKstates.db | 34 ----------- epics/iocs/ISTTOKrpi/ISTTOKrpiApp/Db/Makefile | 1 + .../ISTTOKrpi/ISTTOKrpiApp/Db/pfeiffer.proto | 3 +- .../ISTTOKrpi/iocBoot/iocISTTOKrpi/README | 3 + .../iocBoot/iocISTTOKrpi/iocISTTOKrpi.req | 4 ++ .../ISTTOKrpi/iocBoot/iocISTTOKrpi/pvList.txt | 6 +- .../ISTTOKrpi/iocBoot/iocISTTOKrpi/st.cmd | 2 + 8 files changed, 73 insertions(+), 37 deletions(-) create mode 100644 epics/iocs/ISTTOKrpi/ISTTOKrpiApp/Db/ISTTOKmarte2.db diff --git a/epics/iocs/ISTTOKrpi/ISTTOKrpiApp/Db/ISTTOKmarte2.db b/epics/iocs/ISTTOKrpi/ISTTOKrpiApp/Db/ISTTOKmarte2.db new file mode 100644 index 0000000..b8df1e2 --- /dev/null +++ b/epics/iocs/ISTTOKrpi/ISTTOKrpiApp/Db/ISTTOKmarte2.db @@ -0,0 +1,57 @@ +# vim: sta:et:sw=4:ts=4:sts=4 +# +# Project : ISTTOK slow Control +# +# File : +# Description : Records for ISTTOK MARTe2 Control +# +## +# Author : Bernardo Carvalho (IPFN-IST) +# +# Copyright (c) : (IPFN-IST) +# Created 14-Apr-2024 +# +## + +#### PVs for ATCA-MARTe2 operation +record(mbbi, "$(P)$(R)MARTe2-Status") +{ + field(DTYP, "Soft Channel") +# Writen by MARTe2 Datasource + field(ZRVL, "0") + field(ONVL, "1") + field(TWVL, "2") + field(ZRST, "IDLE") + field(ONST, "RUN") + field(TWST, "ERROR") +} +record(mbbo, "$(P)$(R)MARTe2-Command") +{ + field(DTYP, "Soft Channel") + field(ZRVL, "0") + field(ONVL, "1") + field(ZRST, "GOTOIDLE") + field(ONST, "GOTORUN") + field(VAL, "0") +} +record( longin, "$(P)$(R)MARTe2-Reset") +{ + field(DTYP, "Soft Channel") +} + + +record(waveform, "$(P)$(R)ATCAIOP1-EO") +{ + field(DESC, "EO parameters for ATCA-IOP Board 1") + field(DTYP, "Soft Channel") + field(NELM, 16) + field(FTVL, "LONG") +} +record(waveform, "$(P)$(R)ATCAIOP1-WO") +{ + field(DESC, "WO parameters for ATCA-IOP Board 1") + field(DTYP, "Soft Channel") + field(NELM, 16) + field(FTVL, "FLOAT") +} + diff --git a/epics/iocs/ISTTOKrpi/ISTTOKrpiApp/Db/ISTTOKstates.db b/epics/iocs/ISTTOKrpi/ISTTOKrpiApp/Db/ISTTOKstates.db index df33482..e707cf7 100644 --- a/epics/iocs/ISTTOKrpi/ISTTOKrpiApp/Db/ISTTOKstates.db +++ b/epics/iocs/ISTTOKrpi/ISTTOKrpiApp/Db/ISTTOKstates.db @@ -312,37 +312,3 @@ record(mbbo, "$(P)$(R)STOPPINGSTATE") { field(VAL, "0") } -#### PVs for ATCA-MARTe2 operation -#record( mbbi, "$(P)$(R)MARTE-STATUS") - #field(DESC, "Get ATCA-MARTE2 State ") -# field(ZRVL, "0") -# field(ONVL, "1") -# field(ZRST, "IDLE") -# field(ONST, "RUN") - #field(VAL, "0") -record(mbbi, "$(P)$(R)MARTe2-Status") -{ - field(DTYP, "Soft Channel") - field(ZRVL, "0") - field(ONVL, "1") - field(TWVL, "2") - field(ZRST, "IDLE") - field(ONST, "RUN") - field(TWST, "ERROR") - #field(VAL, "0") -} -record(mbbo, "$(P)$(R)MARTe2-Command") -{ - field(DTYP, "Soft Channel") - field(ZRVL, "0") - field(ONVL, "1") - field(ZRST, "GOTOIDLE") - field(ONST, "GOTORUN") - field(VAL, "0") -} -record( longin, "$(P)$(R)MARTe2-Reset") -{ - field(DTYP, "Soft Channel") -} - - diff --git a/epics/iocs/ISTTOKrpi/ISTTOKrpiApp/Db/Makefile b/epics/iocs/ISTTOKrpi/ISTTOKrpiApp/Db/Makefile index a6074c5..0dae2f8 100644 --- a/epics/iocs/ISTTOKrpi/ISTTOKrpiApp/Db/Makefile +++ b/epics/iocs/ISTTOKrpi/ISTTOKrpiApp/Db/Makefile @@ -5,6 +5,7 @@ include $(TOP)/configure/CONFIG # Install databases, templates & substitutions like this DB += ISTTOKstates.db +DB += ISTTOKmarte2.db DB += ISTTOKmachineControl.db DB += ISTTOKpcf8574.db DB += ISTTOKpcf8591.db diff --git a/epics/iocs/ISTTOKrpi/ISTTOKrpiApp/Db/pfeiffer.proto b/epics/iocs/ISTTOKrpi/ISTTOKrpiApp/Db/pfeiffer.proto index 334b7fa..ce91146 100644 --- a/epics/iocs/ISTTOKrpi/ISTTOKrpiApp/Db/pfeiffer.proto +++ b/epics/iocs/ISTTOKrpi/ISTTOKrpiApp/Db/pfeiffer.proto @@ -1,7 +1,8 @@ Terminator = CR; inTerminator = CR; # CR and LF are control characters, respectively coded 0x0D (13 decimal) and 0x0A (10 decimal) -MaxInput = 20; +MaxInput = 30; +#MaxInput = 20; ExtraInput = Ignore; # Values in millisecond diff --git a/epics/iocs/ISTTOKrpi/iocBoot/iocISTTOKrpi/README b/epics/iocs/ISTTOKrpi/iocBoot/iocISTTOKrpi/README index 60165ca..5bd0a0c 100644 --- a/epics/iocs/ISTTOKrpi/iocBoot/iocISTTOKrpi/README +++ b/epics/iocs/ISTTOKrpi/iocBoot/iocISTTOKrpi/README @@ -7,3 +7,6 @@ and check the executable name on the first line of the st.cmd file You may need to change the name of the .dbd file given in the st.cmd's dbLoadDatabase() command before starting the ioc. + +Purge save files older than 15 days +$ find ./save/ -mindepth 1 -mtime +15 -delete diff --git a/epics/iocs/ISTTOKrpi/iocBoot/iocISTTOKrpi/iocISTTOKrpi.req b/epics/iocs/ISTTOKrpi/iocBoot/iocISTTOKrpi/iocISTTOKrpi.req index 6609f2a..e74410c 100644 --- a/epics/iocs/ISTTOKrpi/iocBoot/iocISTTOKrpi/iocISTTOKrpi.req +++ b/epics/iocs/ISTTOKrpi/iocBoot/iocISTTOKrpi/iocISTTOKrpi.req @@ -17,4 +17,8 @@ $(P)$(R)RPump1-Pressure.HIGH ISTTOK:central:RPump1-Pressure.HIHI #ISTTOK:central:RPump2-Pressure.HIGH #ISTTOK:central:RPump2-Pressure.HIHI +# MARTe2 AtcaIop +ISTTOK:central:ATCAIOP1-EO +ISTTOK:central:ATCAIOP1-WO + diff --git a/epics/iocs/ISTTOKrpi/iocBoot/iocISTTOKrpi/pvList.txt b/epics/iocs/ISTTOKrpi/iocBoot/iocISTTOKrpi/pvList.txt index cefc758..f13dd20 100644 --- a/epics/iocs/ISTTOKrpi/iocBoot/iocISTTOKrpi/pvList.txt +++ b/epics/iocs/ISTTOKrpi/iocBoot/iocISTTOKrpi/pvList.txt @@ -137,6 +137,7 @@ ISTTOK:central:STARTINGSTATE ISTTOK:central:CLEANINGSTATE ISTTOK:central:WSHOTINGSTATE ISTTOK:central:STOPPINGSTATE +ISTTOK:central:MARTe2-Command ISTTOK:SR_rebootStatus ISTTOK:SR_status ISTTOK:SR_0_Status @@ -147,8 +148,6 @@ ISTTOK:SR_4_Status ISTTOK:SR_5_Status ISTTOK:SR_6_Status ISTTOK:SR_7_Status -ISTTOK:central:MARTe2-Command -ISTTOK:central:MARTE2-Reset ISTTOK:central:PCF8591:72:ADC_CH1 ISTTOK:central:PCF8591:72:ADC_CH2 ISTTOK:central:PCF8591:72:ADC_CH3 @@ -160,6 +159,9 @@ ISTTOK:central:P003:M ISTTOK:central:P003:E ISTTOK:central:P004:M ISTTOK:central:P004:E +ISTTOK:central:MARTe2-Reset +ISTTOK:central:ATCAIOP1-EO +ISTTOK:central:ATCAIOP1-WO ISTTOK:central:TMPump1-ControllerOnInv ISTTOK:central:TMPump1-ControllerOffInv ISTTOK:central:TMPump1-MotorOnInv diff --git a/epics/iocs/ISTTOKrpi/iocBoot/iocISTTOKrpi/st.cmd b/epics/iocs/ISTTOKrpi/iocBoot/iocISTTOKrpi/st.cmd index 096618f..c44384e 100755 --- a/epics/iocs/ISTTOKrpi/iocBoot/iocISTTOKrpi/st.cmd +++ b/epics/iocs/ISTTOKrpi/iocBoot/iocISTTOKrpi/st.cmd @@ -50,6 +50,8 @@ drvAsynIPPortConfigure("L0","193.136.136.3:25",0,1,0) dbLoadRecords("db/sendmail.db", "P=ISTTOK:,PORT=L0,R=central:,L=0,A=0") +dbLoadRecords("db/ISTTOKmarte2.db","P=ISTTOK:,R=central:") + # Uncomment to Debug STREAMDEVICE serial activity # 2021/12/14 13:11:50.019969 RS0 ISTTOK:central:P002:M: No reply within 200 ms to "0020074002=?107<0d> #var streamError 1