鼎阳SDS6204示波器EPICS IOC的搭建

三年前曾写过这个文:

 鼎阳SDS6204示波器的EPICS IOC调试

文章里有EPICS网站设备IOC搭建的指南,具体搭建IOC的步骤就没详细写了,几年后重新搭建时发现还是费了些力气才搭建起来,因此写此文记录下手把手的过程方便自己以及EPICS的初学者。

IOC的搭建

准备:

Debian11下编译ADAravis和Motor模块的一条龙过程

 按上面文,做到areaDetector需要的包这一步做完到编译:

IOC环境的准备和编译:

cd /half/epics
mkdir ioc
cd ioc
mkdir SDS6204
cd SDS6204
../../support/asyn-R4-42/bin/linux-x86_64/makeSupport.pl -t streamSCPI SDS6204
rm -rf configure
../../base/bin/linux-x86_64/makeBaseApp.pl -t ioc SDS6204
../../base/bin/linux-x86_64/makeBaseApp.pl -t ioc -i SDS6204
vi configure/RELEASE

vi SDS6204Sup/Makefile

vi SDS6204App/src/Makefile

新增下面几行: 

 之后make就行了,没有意外的话,IOC的编译就完成了。

GITEE仓库配合搭建IOC

鼎阳仪器: 鼎阳示波器等仪器的小程序 - Gitee.com

之后就是把这个目录下的扩展名是db、proto的文件下载后传到 /half/epics/ioc/SDS6204/db 目录下;扩展名为cmd的文件放到 /half/epics/ioc/SDS6204/iocBoot/iocSDS6204 目录下。

之后更改cmd文件里示波器的ip,以及自己环境的P、R以及要load读取的波形通道等相关行:

之后./***.cmd IOC就运行起来了。

OPI端环境的搭建

为了客户端通过IOC建起来的PV变量看波形,需要搭建OPI环境,以phoebus环境为例:

准备:

以debian11为例,另外开一个安装了桌面环境的虚拟机

Java环境准备:

从 Open JDK  下载:https://download.java.net/java/early_access/jdk23/14/GPL/openjdk-23-ea+14_linux-x64_bin.tar.gz

 之后解压缩包:

tar -xzvf openjdk-23-ea+14_linux-x64_bin.tar.gz

 之后把解压后的jdk-23目录放到自己喜欢放的地方,我放的位置:

phoebus下载:

 https://controlssoftware.sns.ornl.gov/css_phoebus/nightly/phoebus-linux.zip

unzip phoebus-linux.zip

 我放的位置:

修改phoebus.sh:

下载示波器客户端:

鼎阳仪器: 鼎阳示波器等仪器的小程序 - Gitee.com

从上面目录下载客户端。

运行phoebus:

 ./phoebus.sh运行起来opi,之后浏览到客户端的位置,打开ct.bob就运行起来:

界面上按鼠标右键可编辑,在mocro定义里修改P、R和IOC上的参数对应起来即可:

后记

三年前雷雷很顺利地就调试成功IOC,前一段时间让栋宇用以前做的镜像恢复运行起IOC,出现了一些问题,后来雷雷重新调试,发现因为这几年的示波器FPGA程序版本以及系统rom版本的更新,命令回读信息的前缀有变化,有些不顺利,现在跑起IOC波形并不是每次都能读到,后面需要厂家配合解决。Labview连接示波器读取波形一直很顺利,后继会再发相关测试文章。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/549181.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Matlab|基于改进粒子群算法的混合储能系统容量优化

目录 主要内容 部分程序 下载链接 主要内容 为了调高风光互补发电储能系统的经济性,减少其运行费用,研究风光互补发电储能系统的容量优化配置模型,探讨粒子群算法的改进及混合储能容量优化方法。首先通过对全生命周期费用静态模型…

【Sass】1px分割线 + 缩进分割线

效果图 1. 亮色模式效果 2. 暗色模式效果 设计思路 配色使用grey色 优点:无论在暗色模式还是亮色模式都可以看清楚分割线 使用after,before 伪元素绘制线条,并压缩线条transform: scaleY(.25) 注意事项 必须确保父级有宽高父级定位必须为position: r…

Python Web开发记录 Day13:Django part7 Ajax入门与案例(任务管理)

名人说:莫道桑榆晚,为霞尚满天。——刘禹锡(刘梦得,诗豪) 创作者:Code_流苏(CSDN)(一个喜欢古诗词和编程的Coder😊) 目录 1、Ajax入门①简介②工作原理③优点④缺点⑤使用…

【理解】Redis 中的事务及持久化方式

目录 相关传送门 1. Redis 中的事务 2. Redis 持久化 2.1 RDB 方式 2.1.1 RDB手动 2.1.2 RDB自动 2.2 AOF方式 2.2.1 AOF执行过程 2.2.2 AOF写数据的策略 2.2.3 AOF相关配置 2.2.4 AOF写数据遇到的问题 2.2.5 AOF重写 2.2.6 AOF重写规则 2.2.7 AOF重写方式 2.2.8…

java 面向对象--equals方法

Object 类的使用 类 java.lang.Object是类层次结构的根类,即所有其它类的父类。每个类都使用 Object 作为超类。 Object类型的变量与除Object以外的任意引用数据类型的对象都存在多态引用 method(Object obj){…} //可以接收任何类作为其参数 Person o new Person…

数据驱动校园管理:山海鲸可视化软件看板搭建记

随着信息化时代的到来,校园管理也逐渐向数字化、可视化转型。作为一名数据分析师,我有幸参与了使用山海鲸可视化软件搭建校园管理可视化看板的项目,山海鲸可视化软件是近些年新崛起的一款可视化产品,支持免费可视化编辑、私有化部…

蓝桥杯物联网竞赛_STM32L071_12_按键中断与串口中断

按键中断: 将按键配置成GPIO_EXTI中断即外部中断 模式有三种上升沿,下降沿,上升沿和下降沿都会中断 external -> 外部的 interrupt -> 打断 trigger -> 触发 detection -> 探测 NVIC中将中断线ENABLE 找接口函数 在接口函数中写…

【边缘智能】Jetson板卡上安装QT5与OpenCV集成

学习《OpenCV应用开发:入门、进阶与工程化实践》一书 做真正的OpenCV开发者,从入门到入职,一步到位! 安装QT5与QT Creator 如果只是简单的使用QT的GUI库,没有其它要求,其实特别容易,一行命令行…

Flutter-底部弹出框(Widget层级)

需求 支持底部弹出对话框。支持手势滑动关闭。支持在widget中嵌入引用。支持底部弹出框弹出后不影响其他操作。支持弹出框中内容固定头部和下面列表时,支持触摸头部并在列表不在头部的时候支持滑动关闭 简述 通过上面的需求可知,就是在界面中可以支持…

最细致最简单的 Arm 架构搭建 Harbor

更好的阅读体验:点这里 ( www.doubibiji.com ) ARM离线版本安装 官方提供了一个 arm 版本,但是好久都没更新了,地址:https://github.com/goharbor/harbor-arm 。 也不知道为什么不更新,我看…

CTF题型 SSTI(1) Flask-SSTI-labs 通关 题记

CTF题型 SSTI(1) Flask-SSTI-labs 通关 题记 文章目录 CTF题型 SSTI(1) Flask-SSTI-labs 通关 题记前记获取键值或下标的方式获取属性的方式 Level 1 no wafLevel 2 bl[\{\{]Level 3 no waf and blindLevel 4 bl[[, ]]获取键值或下标 Level 5 bl[\, "]Level 6 bl[_]Level …

Redis 过期删除策略和内存淘汰策略有什么区别?

资料来源 : 小林coding 小林官方网站 : 小林coding (xiaolincoding.com) Redis 的「内存淘汰策略」和「过期删除策略」,很多小伙伴容易混淆,这两个机制虽然都是做删除的操作,但是触发的条件和使用的策略都是不同的。 今天就跟大家理一理&…