一、基础支撑配置
需要准备好的软件包包括:
- devIocStats
- procServControl
- cs-studio / Phoebus
- procServ
1.1 对 devIocStats 的更改
devIocStats 的使用方式请见这里。
修改后的安装包请见随本文一起上传的 devIocStats-test。
- 加入获取本机 IP 功能
该部分的修改具体可参见文章:devIocStats中加入IP地址查询功能。
修改后的 medm 界面如下:
- 分离 db 文件
由于 devIocStats 中的 record 既包括系统信息,又包括 IOC 自身信息,因此将这两种信息的 record 分离,分别形成 iocAdminSoft_system.db 和 iocAdminSoft_IOC.db 文件。分离过程如下:
(1) 在 devIocStats/iocAdmin/Db/ 路径下,基于 ioc.template 文件,将其中的 record 分别根据用途分离到 ioc_system.template 和 ioc_IOC.template 文件中;
在 ioc_system.template 和 ioc_IOC.template 文件中稍作修改,用于显示 IOC heartbeat 状态:
(2) 基于 iocAdminSoft.substitutions 文件,分别对上述两个 template 文件形成对应的 iocAdminSoft_system.substitutions 和 iocAdminSoft_IOC.substitutions 文件,内容如下:record(calcout, "$(IOCNAME):HEARTBEAT") { field(DESC, "1 Hz counter since startup") field(CALC, "(A<2147483647)?A+1:1") field(OCAL, "A&1") field(DOPT, "Use OCAL") field(SCAN, "1 second") field(INPA, "$(IOCNAME):HEARTBEAT") field(OUT, "$(IOCNAME):WD PP") } record(bo, "$(IOCNAME):WD") { }
# iocAdminSoft_system.substitutions file ioc_system.template { pattern { IOCNAME , TODFORMAT } { $(PC) , "%m/%d/%Y %H:%M:%S" } } file iocGeneralTime.template { pattern { IOCNAME } { $(PC) } }
# iocAdminSo