1994 1995 1996 1997 1998 1999 2000 2001 2002 2003 2004 2005 2006 2007 2008 2009 2010 2011 2012 2013 2014 2015 2016 2017 2018 2019 2020 <2021> 2022 2023 2024 2025 | Index | 1994 1995 1996 1997 1998 1999 2000 2001 2002 2003 2004 2005 2006 2007 2008 2009 2010 2011 2012 2013 2014 2015 2016 2017 2018 2019 2020 <2021> 2022 2023 2024 2025 |
<== Date ==> | <== Thread ==> |
---|
Subject: | RE: [EXTERNAL] Basics: mbbi record |
From: | "Pearson, Matthew R. via Tech-talk" <tech-talk at aps.anl.gov> |
To: | William Kirstaedter <kirstaedter at fhi-berlin.mpg.de> |
Cc: | "tech-talk at aps.anl.gov" <tech-talk at aps.anl.gov> |
Date: | Tue, 27 Jul 2021 15:25:13 +0000 |
Hi, I think you also need to initialize the value fields (ZRVL, ONVL, etc), as well as the strings. Cheers, Matt From: Tech-talk <tech-talk-bounces at aps.anl.gov>
On Behalf Of William Kirstaedter via Tech-talk Hi all, I need some help with basic EPICS records, because I'm just getting "Illegal Value"... I'm reading from a Modbus TCP device, 16 bit. Bit 7 is 1 because the Input on Pin 7 is HIGH. RVAL of the mbbi record is 128. mbbi should now convert the value und put something in VAL. heres my IOCs output: epics> dbpr FHIFEL:TBEN1:IO,7 ACKS: NO_ALARM ACKT: YES AFTC: 0 AFVL: 0 AMSG: ASG : ASP : PTR (nil) BKLNK: ELL 0 [(nil) .. (nil)] BKPT: 00 COSV: NO_ALARM DESC: DISA: 0 DISP: 0 DISS: NO_ALARM DISV: 1 DPVT: PTR 0x5586f8fc5ac0 DSET: PTR 0x7f008bcd5260 DTYP: asynInt32 EIST: Port5 DI EISV: NO_ALARM EIVL: 0x0 ELST: Port6 DXP ELSV: NO_ALARM ELVL: 0x0 EVNT: FFST: Port8 DXP FFSV: NO_ALARM FFVL: 0x0 FLNK: CONSTANT FRST: Port3 DI FRSV: NO_ALARM FRVL: 0x0 FTST: Port8 DI FTSV: NO_ALARM FTVL: 0x0 FVST: Port3 DXP FVSV: NO_ALARM FVVL: 0x0 INP : INST_IO @asyn(read_IO 0) INT32_LE LALM: 65535 LCNT: 0 LSET: PTR 0x5586f8fd0430 MASK: 65535 MLIS: ELL 0 [(nil) .. (nil)] MLOK: d0 09 fd f8 86 55 00 00 MLST: 65535 NAME: FHIFEL:TBEN1:IO NAMSG: NIST: Port5 DXP NISV: NO_ALARM NIVL: 0x0 NOBT: 16 NSEV: NO_ALARM NSTA: NO_ALARM OLDSIMM: NO ONST: Port1 DXP ONSV: NO_ALARM ONVL: 0x0 ORAW: 128 PACT: 0 PHAS: 0 PINI: NO PPN : PTR (nil) PPNR: PTR (nil) PRIO: LOW PROC: 0 PUTF: 0 RDES: PTR 0x5586f8f7e5e0 RPRO: 0 RSET: PTR 0x7f008bc1b120 RVAL: 128 SCAN: 1 second SDEF: 1 SDIS: CONSTANT SDLY: -1 SEVR: NO_ALARM SHFT: 0 SIML: CONSTANT SIMM: NO SIMPVT: PTR (nil) SIMS: NO_ALARM SIOL: CONSTANT SPVT: PTR 0x5586f8fdde00 SSCN: <nil> STAT: NO_ALARM SVAL: 0 SVST: Port4 DXP SVSV: NO_ALARM SVVL: 0x0 SXST: Port4 DI SXSV: NO_ALARM SXVL: 0x0 TEST: Port6 DI TESV: NO_ALARM TEVL: 0x0 THST: Port2 DXP THSV: NO_ALARM THVL: 0x0 TIME: 2021-07-27 17:05:46.233100930 TPRO: 0 TSE : 0 TSEL: CONSTANT TTST: Port7 DXP TTSV: NO_ALARM TTVL: 0x0 TVST: Port7 DI TVSV: NO_ALARM TVVL: 0x0 TWST: Port2 DI TWSV: NO_ALARM TWVL: 0x0 UDF : 0 UDFS: INVALID UNSV: NO_ALARM UTAG: 0 VAL : 65535 ZRST: Port1 DI ZRSV: NO_ALARM ZRVL: 0x0 epics> and the record: record(mbbi, "$(P):$(R):$(Q)") { field(DTYP, "asynInt32") field(INP,"@asyn($(PORT) $(OFFSET)) INT32_LE") field(SCAN, "1 second") field(MASK, "0") field(NOBT, "16") field(ZRST, "Port1 DI") field(ONST, "Port1 DXP") field(TWST, "Port2 DI") field(THST, "Port2 DXP") field(FRST, "Port3 DI") field(FVST, "Port3 DXP") field(SXST, "Port4 DI") field(SVST, "Port4 DXP") field(EIST, "Port5 DI") field(NIST, "Port5 DXP") field(TEST, "Port6 DI") field(ELST, "Port6 DXP") field(TVST, "Port7 DI") field(TTST, "Port7 DXP") field(FTST, "Port8 DI") field(FFST, "Port8 DXP") } can anyone tell me why its not converting the RVAL? thanks, William --
|