EPICS Phoebus手册1

1、介绍

Phoebus是一个控制系统Stdio工具集的更新,它移除了对Eclipse RCP和SWT的依赖。

虽然Eclipse RCP快速启动了原先的CS-Studio的实现,并且为CS-Stdio也提供了大约十年的服务,因为RCP也增加了对控制系统用户接口开发的限制。

Phoebus项目的目标:

1) 保留关键的CS-Stdio工具的功能,尤其窗口创建器(Display Builder), 数据浏览器(Data Browser), PV Table, PV Tree, Alarm UI, Scan UI, ...用100%兼容性支持它们原来的配置文件。

2) 提供免受RCP限制的窗口放置的完全控制,例如,允许我们保存/恢复面板布局。

3) 使用Java FX作为图形库来客服SWT的限制。

4) 只要可能,优先选择核心的Java功能而不是外部库:Java FX作为已经提及,SPI用于定位扩展,java.util用于日志和优先项。在将来,我们也可以使用在Java 9中引入的模块机制来捆绑。

5) 减少构建系统复杂性,用起初一步获取外部依赖,接着支持一个完全独立的,可重复的构建过程,允许多种构建方法而不是被限制于一种构建方法。

2、启动CS-Stdio/Pheobus

需要构建说明,参考网址网址中README.md

需要预构键二进制文件,见CS-Studio (Phoebus)

从命令行,调用phoebus.sh -help,它将看起来类似如下,但检查你CS-Stdio/Phoebus副本的完整列表:

 _______           _______  _______  ______            _______
(  ____ )|\     /|(  ___  )(  ____ \(  ___ \ |\     /|(  ____ \
| (    )|| )   ( || (   ) || (    \/| (   ) )| )   ( || (    \/
| (____)|| (___) || |   | || (__    | (__/ / | |   | || (_____
|  _____)|  ___  || |   | ||  __)   |  __ (  | |   | |(_____  )
| (      | (   ) || |   | || (      | (  \ \ | |   | |      ) |
| )      | )   ( || (___) || (____/\| )___) )| (___) |/\____) |
|/       |/     \|(_______)(_______/|/ \___/ (_______)\_______)

Command-line arguments:

   -help                                   -  This text
   -splash                                 -  Show splash screen
   -nosplash                               -  Suppress the splash screen
   -settings settings.xml                  -  Import settings from file, either exported XML or property file format
   -export_settings settings.xml           -  Export settings to file
   -logging logging.properties             -  Load log settings
   -list                                   -  List available application features
   -server port                            -  Create instance server on given TCP port
   -app probe                              -  Launch an application with input arguments
   -resource  /tmp/example.plt             -  Open an application configuration file with the default application
   -layout /path/to/Example.memento        -  Start with the specified saved layout instead of the default 'memento'
   -clean                                  -  Start with a blank workspace. Overrides -app, -resource and -layout.
   -main org.package.Main                  -  Run alternate application Main
  • help:显示此文本。
  •  splash:显示启动窗口。
  • nosplash:不显示启动窗口。
  • settings settings.xml:从文件导入设置,要么导入的XML或者属性文件格式。
  • export_settings settings.xml:导出设置到文件。
  • logging logging.properties:装载日志设置。
  • list:列出可用的程序特性。
  • server port:在指定TCP端口上创建实例服务器。
  • app probe:用输入参数启动一个程序。
  • resource /tmp/example.plt:用默认程序打开一个程序配置文件。
  • layout /path/to/Eample.memeto:用指定保存的结构而不是默认'memeto'启动。
  • clean:用一个空白工作区启动。重写-app, -resouce和-layout。
  • main org.package.Main:运行备用应用程序Main。

 程序的命令行参数

要从命令行打开一个像"probe"或"pv_tree"的程序特性,使用以下示例参数。

打开空的probe实例:

phoebus.sh -app probe

示例: 

./phoebus.sh -app probe

打开空的PV Table:

phoebus.sh -app pv_table

 示例:

./phoebus.sh -app pv_table

用合适的程序特性打开一个文件(在这种情况中PV Table):

phoebus.sh -resource "/path/to/example.pvs"

'-resoure'参数可以是一个文件或者一个web链接的URI。

phoebus.sh -resource "http://my.site/path/to/example.pvs"

示例:

一个名为arduino.pvs的文件:

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<pvtable enable_save_restore="true" version="3.0">
    <timeout>60.0</timeout>
    <pvlist>
        <pv>
            <selected>true</selected>
            <name>ARDUINO:CH:DO0</name>
            <tolerance>0.1</tolerance>
            <saved_value_timestamp/>
            <completion>true</completion>
        </pv>
        <pv>
            <selected>true</selected>
            <name>ARDUINO:CH:DO1</name>
            <tolerance>0.1</tolerance>
            <saved_value_timestamp/>
            <completion>true</completion>
        </pv>
        <pv>
            <selected>true</selected>
            <name>ARDUINO:CH:DO2</name>
            <tolerance>0.1</tolerance>
            <saved_value_timestamp/>
            <completion>true</completion>
        </pv>
        <pv>
            <selected>true</selected>
            <name>ARDUINO:CH:DI0</name>
            <tolerance>0.1</tolerance>
            <saved_value_timestamp/>
            <completion>true</completion>
        </pv>
        <pv>
            <selected>true</selected>
            <name>ARDUINO:CH:DI1</name>
            <tolerance>0.1</tolerance>
            <saved_value_timestamp/>
            <completion>true</completion>
        </pv>
        <pv>
            <selected>true</selected>
            <name>ARDUINO:CH:DI2</name>
            <tolerance>0.1</tolerance>
            <saved_value_timestamp/>
            <completion>true</completion>
        </pv>
        <pv>
            <selected>true</selected>
            <name>ARDUINO:CH:VI0</name>
            <tolerance>0.1</tolerance>
            <saved_value_timestamp/>
            <completion>true</completion>
        </pv>
        <pv>
            <selected>true</selected>
            <name>ARDUINO:CH:VI1</name>
            <tolerance>0.1</tolerance>
            <saved_value_timestamp/>
            <completion>true</completion>
        </pv>
        <pv>
            <selected>true</selected>
            <name>ARDUINO:CH:VI2</name>
            <tolerance>0.1</tolerance>
            <saved_value_timestamp/>
            <completion>true</completion>
        </pv>
        <pv>
            <selected>true</selected>
            <name>ARDUINO:CH:VO0</name>
            <tolerance>0.1</tolerance>
            <saved_value_timestamp/>
            <completion>true</completion>
        </pv>
        <pv>
            <selected>true</selected>
            <name>ARDUINO:CH:VO1</name>
            <tolerance>0.1</tolerance>
            <saved_value_timestamp/>
            <completion>true</completion>
        </pv>
        <pv>
            <selected>true</selected>
            <name>ARDUINO:CH:VO2</name>
            <tolerance>0.1</tolerance>
            <saved_value_timestamp/>
            <completion>true</completion>
        </pv>
    </pvlist>
</pvtable>

 使用以下命令打开以上文件:

PS D:\Program Files\phoebus-win\phoebus-4.7.3-SNAPSHOT> .\phoebus.bat -resource 'D:\Program Files\phoebus-win\boy\arduino.pvs'

结果如下: 

某些类型被多个程序支持。例如,一个窗口文件"my_display.bob"可以被"display_runtime"和"display_editor"程序处理。一个首选项设置"org.phoebus.ui/default_apps"定义了哪个程序将默认被使用,并且一个特定程序可以像这样被请求:

phoebus.sh -resource "/path/to/my_display.bob?app=display_editor"

示例:

PS D:\Program Files\phoebus-win\phoebus-4.7.3-SNAPSHOT> .\phoebus.bat -resource 'D:\Program Files\phoebus-win\boy\arduino.bob'

 打开了如下窗口:

这个模式'pv://?PV1&PV2&PV3'被用于传递PV名称,而'app=..'请求参数挑选一个特定程序打开这个资源。

由于这样的资源URLs可以包含像&的字符,其也被Linux shell解析,最好在引号中包含所有资源。

示例:

用一个PV名称打开probe:

phoebus.sh -resource "pv://?sim://sine&app=probe"

示例:

 ./phoebus.sh  -resource "pv://?FILTER12CH:BO00B&app=probe"

用某些PVs打开PV Table:

phoebus.sh -resource "pv://?MyPV&AnotherPV&YetAnotherPV&app=pv_table"

 注意:所有这些示例使用这个程序特性的内部名称,例如“pv_table”,而非被显示用户接口的名称,如"PV Table"。使用-list选项查看所有可用的用户特性的名称。

示例:

 ./phoebus.sh -resource "pv://?FILTER12CH:BO00B&FILTER12CH:BO01B&app=pv_table"

用一个特定布局开始:

phoebus.sh -layout /path/to/mylayout.memento

 恢复被保存在一个(非默认)memento文件中的布局。用户可以从菜单选项Windows->Save Layout As ...创建这样一个文件。

用干净的工作区开始:

phoebus.sh -clean

为了用一个空工作区启动这个程序,这将抑制恢复被保存在默认memento文件中的布局。如果指定了clean,将忽略-resouce, -app和-layout。

服务器模式

默认,phoebus.sh ...的每次调用将启动一个新实例,有其自己的主窗口。

在一间控制室环境中,在一台指定计算机上仅运行一个实例经常是有利的。对于这样的场景,用-server选项调用phoebus.sh,使用你为那台计算机上这种使用保留的一个TCP端口,例如:

phoebus.sh -server 6666

你首次用这种方式启动pheobus,它将实际上打开这个主窗口。之后的调用,例如:

phoebus.sh -server 6666 -resource "/path/to/some/file.pvs"

将连接已经运行的实例并且使他打开被请求的文件。

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
以下是在Linux上安装EPICS的步骤: 1. 下载EPICS软件包: - 访问EPICS官方网站(https://epics.anl.gov/)并下载最新的EPICS Base软件包。 2. 解压EPICS软件包: - 打开终端,进入下载目录。 - 使用以下命令解压EPICS软件包: ```shell tar -xvf epics-base-x.x.x.tar.gz ``` 其中,x.x.x是EPICS Base软件包的版本号。 3. 设置环境变量: - 打开终端,进入EPICS Base目录。 - 使用以下命令设置EPICS环境变量: ```shell source ./setEpicsEnv.sh ``` 这将设置EPICS的环境变量,使其在终端中可用。 4. 编译EPICS Base: - 在EPICS Base目录中,使用以下命令编译EPICS Base: ```shell make ``` 这将编译EPICS Base并生成所需的库文件和可执行文件。 5. 创建IOC实例: - 在EPICS Base目录中,使用以下命令创建IOC实例: ```shell makeBaseApp.pl -t ioc myioc ``` 其中,myioc是IOC实例的名称,可以根据需要进行更改。 6. 进入IOC实例目录: - 使用以下命令进入IOC实例目录: ```shell cd myioc ``` 7. 编译IOC实例: - 在IOC实例目录中,使用以下命令编译IOC实例: ```shell make ``` 这将编译IOC实例并生成所需的库文件和可执行文件。 8. 运行IOC实例: - 在IOC实例目录中,使用以下命令运行IOC实例: ```shell ./st.cmd ``` 这将启动IOC实例并运行EPICS应用程序。 请注意,上述步骤仅适用于EPICS Base的安装和IOC实例的创建。如果需要安装其他EPICS模块或进行更高级的配置,请参考EPICS官方文档或相关教程。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值