epics examples

1# @Language: Markdown 2# @Software: VS Code/MacDown/Typora/Vim 3# @Author : Di Wang 4# @Email : [email protected] 缘由: 最近看到了Gabriel创建的项目 epics-examples database-examples 感觉是应用费曼学习法的良机. 于是决定创建此文, 记录相关内容. 正如Gabriel所写: This repository aims to collect examples of EPICS Databases to help newcomers (or not so new) get an idea on how to use different records. ...

May 7, 2024 · 18 min · 8912 words · DW

epics recsync

1# @Language: Markdown 2# @Software: VS Code/MacDown/Typora/Vim 3# @Author : Di Wang 4# @Email : [email protected] See epics examples 用于Channel Finder. 也就是把ioc中的record信息, epics environment以及info tag发送到一个数据库. ...

May 27, 2024 · 2 min · 582 words · DW

epics caputlog

1# @Language: Markdown 2# @Software: VS Code/MacDown/Typora/Vim 3# @Author : Di Wang 4# @Email : [email protected] See epics examples 用法 log可以有JSON格式, 需要epics 7.0.1以上. server可以使用iocLogServer. 1<IOC app name>_DBD += caPutLog.dbd # For standard format 2<IOC app name>_DBD += caPutJsonLog.dbd # For JSON format (Exists only if module is compiled with supported version of base) 3<IOC app name>_LIBS += caPutLog # Required for both output formats 需要首先配置Access security, 对于DEFAULTgroup, 添加RULE(1,WRITE,TRAPWRITE). 然后在iocsh中, 设置 ...

May 27, 2024 · 1 min · 494 words · DW

epics busy

1# @Language: Markdown 2# @Software: VS Code/MacDown/Typora/Vim 3# @Author : Di Wang 4# @Email : [email protected] See epics examples 当设定一个motor时, 我们需要确定设置已经完成, 再进行下一步操作(比如开启快门). 采集数据, 完成后然后关闭快门. 这中间, motor移动的时间不确定, 采集数据的时间不确定. 而使用轮询的方式又显得不可靠. ...

May 10, 2024 · 2 min · 598 words · DW

epics sequencer

1# @Language: Markdown 2# @Software: VS Code/MacDown/Typora/Vim 3# @Author : Di Wang 4# @Email : [email protected] See epics examples 介绍 自从去年夏天bessy被网络攻击之后, sequencer的网站 (http://www-csr.bessy.de/control/SoftDist/sequencer/) 就打不开了. Ralph建立了一个镜像仓库, 可以从此处下载源码. (http://www-csr.bessy.de/control/SoftDist/sequencer/) ...

May 10, 2024 · 1 min · 382 words · DW

epics access security

1# @Language: Markdown 2# @Software: VS Code/MacDown/Typora/Vim 3# @Author : Di Wang 4# @Email : [email protected] See epics examples 关键词 ASL: Access Security Level. ASG: Access Security Group UAG: User Access Group HAG: Host Access Group 每个record field都有ASL, 在dbd文件中定义, 可以是ASL0或者ASL1. 通常VAL field为ASL0, 其它为ASL1. ASL1的优先级高于ASL0 ...

May 8, 2024 · 2 min · 853 words · DW

epics autosave

1# @Language: Markdown 2# @Software: VS Code/MacDown/Typora/Vim 3# @Author : Di Wang 4# @Email : [email protected] See epics examples 功能 save 把record的某个field值保存到某个文件中(.sav文件) 对于vxWorks, 涉及nfs的处理 要选择保存哪些field, 用.req文件来指定, 或者用record的info field. 例: info(autosaveFields, VAL) 处理.req文件的路径以及.sav文件的路径 对于.sav文件, 还要处理备份 restore 在iocInit过程中, 从文件中恢复值. 涉及到iocInit过程中的哪个阶段(pass 0 or pass 1)恢复. autosave使用术语position和setting来区分pass0和pass1, 但显然不如直接使用pass0和pass1方便记忆. 处理不同情况的restore, 如waveform, record link. 编译 在$(HOME)/epics/R7.0.8/modules目录下编译autosave之后, 在$(HOME)/epics/R7.0.8/ioc目录下创建autosave ioc, 然后创建RELEASE.local文件. ...

May 7, 2024 · 4 min · 1583 words · DW

epics aysn

1# @Language: Markdown 2# @Software: VS Code/MacDown 3# @Author : Di Wang 4# @Email : [email protected] asyn 阅读本文需要对epics中的概念比较熟悉. 建议阅读EPICS AppDevGuide. 也许是历史原因, asyn文档中的概念很混乱. 很大程度上是源于一词多义与函数命名上的随意. 比如非常多的相似Callback函数名称. 也比如driver, support, implement等词, 既可以表达asyn中的专用概念, 也会作寻常用法使用. 还比如对driver一词的使用. 有时候是epics driver support, 有时候又是port driver, 有时候又写成device driver. 而port driver, 一般来说指一系列hardware driver, 但又容易与为了减少代码编写量而引入的asynPortDriver这一个c++ class的名字混淆. 因此我决定撰写此文便于将来的自己理解. ...

April 1, 2024 · 12 min · 5594 words · DW

Dotfiles

1# @Language: Markdown 2# @Software: VS Code 3# @Author : Di Wang 4# @Email : [email protected] dotfiles管理 什么是dotfiles? 参见https://wiki.archlinux.org/title/Dotfiles. 很多配置文件会以dot开头, 这些文件被称为dotfile. 如果我们经常在多台机器上工作, 这些机器往往有不同的硬件和操作系统, 我们会希望在不同的机器上使用同样的配置, 例如使用同样的shell快捷键, terminal有同样的UI, 因此如何在不同的机器之间同步与安装dotfiles的需求就应运而生. ...

April 1, 2024 · 6 min · 2700 words · DW

Personal Knowledge Management

1# @Language: Markdown 2# @Software: VS Code 3# @Author : Di Wang 4# @Email : [email protected] Logseq与管理 本文大致讲讲当前我的笔记软件与笔记管理方案. 本地使用Logseq记录笔记与日记, Git进行版本管理, 保存后自动push到个人服务器上的Gitea, 个人服务器上同时运行duplicati, 每日将repository强加密后增量备份存在OneDrive中. 目前挺满意. ...

May 30, 2023 · 3 min · 1156 words · DW