epics base 如何安装以及配置,见 树莓派3b+ 安装 epics base 并配置开发环境
一、下载 modbus 源码
1、在 epics 目录下创建名为 modbus 的文件,在此文件下下载 modbus-R3-0.zip,并解压
pi@raspberrypi:~ $ cd Desktop/epics
pi@raspberrypi:~/Desktop/epics $ mkdir modbus
pi@raspberrypi:~/Desktop/epics $ cd modbus
pi@raspberrypi:~/Desktop/epics/modbus $ wget https://github.com/epics-modules/modbus/archive/refs/tags/R3-0.zip
pi@raspberrypi:~/Desktop/epics/modbus $ unzip R3-0.zip
解压之后的目录结构
2、修改 modbus-R3-0 中 RELEASE 文件
pi@raspberrypi:~/Desktop/epics/modbus/modbus-R3-0/configure $ vi RELEASE
修改前的 RELEASE 文件:
修改后的 RELEASE 文件:
3、保存并退出后在 modbus-R3-0 路径下执行 make 进行编译,编译若无报错,则 modbus 安装完成;若有报错,一般是路径设置不对,检查路径重新编译即可
pi@raspberrypi:~/Desktop/epics/modbus/modbus-R3-0 $ make
二、 建立 IOC 工程
1、在 epics 目录下创建 top 文件夹,并在此文件夹中建立应用连接
pi@raspberrypi:~/Desktop/epics $ mkdir top
pi@raspberrypi:~/Desktop/epics $ cd top
(1)创建应用文件夹:
pi@raspberrypi:~/Desktop/epics/top $ /home/pi/Desktop/epics/base/bin/linux-arm/makeBaseApp.pl -t example top
此时 top 目录下新增了 3 个文件
pi@raspberrypi:~/Desktop/epics/top $ ls
configure Makefile topApp
(2) 创建 IOC 启动文件夹:
pi@raspberrypi:~/Desktop/epics/top $ /home/pi/Desktop/epics/base/bin/linux-arm/makeBaseApp.pl -i -t example to
出现 Application name?,输入 top 然后 回车
Using target architecture linux-arm (only one available)
The following applications are available:
top
What application should the IOC(s) boot?
The default uses the IOC's name, even if not listed above.
Application name? top
2、这一步 top 目录下新增了一个 iocBoot 文件,接下来在 top 目录下执行 make 进行编译,若无报错则编译成功
pi@raspberrypi:~/Desktop/epics/top $ make
3、切换到 ioctop 目录下,输入 ls 查看文件夹中的文件,可以看到 st.cmd 是灰色的,是一个不可执行文件,需要增加其权限
pi@raspberrypi:~/Desktop/epics/top $ cd iocBoot/ioctop
pi@raspberrypi:~/Desktop/epics/top/iocBoot/ioctop $ ls
envPaths Makefile README st.cmd
增加启动权限:
pi@raspberrypi:~/Desktop/epics/top/iocBoot/ioctop $ chmod +x ./st.cmd
4、启动 IOC
pi@raspberrypi:~/Desktop/epics/top/iocBoot/ioctop $ ./st.cmd
查看 pv 变量
epics> dbl
piHost:ai1
piHost:ai2
piHost:ai3
piHost:aiExample
piHost:aiExample1
piHost:aiExample2
piHost:aiExample3
piHost:aSubExample
piHost:calc1
piHost:calc2
piHost:calc3
piHost:calcExample
piHost:calcExample1
piHost:calcExample2
piHost:calcExample3
piHost:compressExample
piHost:subExample
piHost:xxxExample
epics>