Hypervisor下如何读取PPC硬按键状态

<< 点击显示目录 >>

主页  Hypervisor使用助手 > 应用案例 >

Hypervisor下如何读取PPC硬按键状态

 

问题描述

硬件配置如上图,PPC2100 使用带按钮的屏 5AP99D.156B-B62,在使用 Hypervisor 技术时无法通过VC4 的 Key mapping 方式使用面板上的按钮。

clip0027

解决方法

通过 ADI OPC UA Server,通过通讯的方式读写按钮和 LED 灯变量。

1.安装 ADI OPC UA Server

 

clip0021

在官网下载 ADI OPC UA Server 安装文件,并在 PPC2100 上安装。

在安装目录中 appsettings.json 文件中可以找到 Server 的用户名和密码,在之后的 AS 端 Client 配置时需要使用:

 

clip0022

 

2.确定按钮和 LED 灯的变量 BrowsePathes

 

clip0023

通过 OPCUA 客户端软件连接 PPC2100 的 GPOS 网口

首先找到按钮所在的位置:

 

clip0024

通过测试得到所有按钮和 LED 灯的路径:

(数据类型为 32 位整型,按钮值为 1 时为按下状态,值为 0 时为松开状态;LED 灯 0 为熄灭,1 为慢速闪烁,2 为快速闪烁,3 为常亮。)

 


eys/4:Key011

Button5

/0:Root/0:Objects/2:DeviceSet/0:PC/0:SubDevices/0:Panel&#15/2:ParameterSet/4:K eys/4:Key012

急停

/0:Root/0:Objects/2:DeviceSet/0:PC/0:SubDevices/0:Panel&#15/2:ParameterSet/4:K eys/4:Key014

 

Button1 黄灯

/0:Root/0:Objects/2:DeviceSet/0:PC/0:SubDevices/0:Panel&#15/2:ParameterSet/4:Led s/4:Led000

Button2 黄灯

/0:Root/0:Objects/2:DeviceSet/0:PC/0:SubDevices/0:Panel&#15/2:ParameterSet/4:Led s/4:Led001

Button3 黄灯

/0:Root/0:Objects/2:DeviceSet/0:PC/0:SubDevices/0:Panel&#15/2:ParameterSet/4:Led s/4:Led002

Button4 黄灯

/0:Root/0:Objects/2:DeviceSet/0:PC/0:SubDevices/0:Panel&#15/2:ParameterSet/4:Led s/4:Led003

Button5 黄灯

/0:Root/0:Objects/2:DeviceSet/0:PC/0:SubDevices/0:Panel&#15/2:ParameterSet/4:Led s/4:Led004

Button1 红灯

/0:Root/0:Objects/2:DeviceSet/0:PC/0:SubDevices/0:Panel&#15/2:ParameterSet/4:Led s/4:Led016

Button2 红灯

/0:Root/0:Objects/2:DeviceSet/0:PC/0:SubDevices/0:Panel&#15/2:ParameterSet/4:Led s/4:Led017

Button3 红灯

/0:Root/0:Objects/2:DeviceSet/0:PC/0:SubDevices/0:Panel&#15/2:ParameterSet/4:Led s/4:Led018

Button4 红灯

/0:Root/0:Objects/2:DeviceSet/0:PC/0:SubDevices/0:Panel&#15/2:ParameterSet/4:Led s/4:Led019

Button5 红灯

/0:Root/0:Objects/2:DeviceSet/0:PC/0:SubDevices/0:Panel&#15/2:ParameterSet/4:Led s/4:Led020

Button1 白灯

/0:Root/0:Objects/2:DeviceSet/0:PC/0:SubDevices/0:Panel&#15/2:ParameterSet/4:Led s/4:Led032

Button2 白灯

/0:Root/0:Objects/2:DeviceSet/0:PC/0:SubDevices/0:Panel&#15/2:ParameterSet/4:Led s/4:Led033

Button3 白灯

/0:Root/0:Objects/2:DeviceSet/0:PC/0:SubDevices/0:Panel&#15/2:ParameterSet/4:Led s/4:Led034

Button4 白灯

/0:Root/0:Objects/2:DeviceSet/0:PC/0:SubDevices/0:Panel&#15/2:ParameterSet/4:Led s/4:Led035

Button5 蓝灯

/0:Root/0:Objects/2:DeviceSet/0:PC/0:SubDevices/0:Panel&#15/2:ParameterSet/4:Led s/4:Led036

在手册看到这个面板灯环还支持绿色,但是通过 OPCUA 或者直接在 PPC2100 的 Control Center 测试时都没有绿色的灯。

 

3.AS 中配置

在 PPC2100 的 Hypervisor 内部网络中添加 OpcUa_any,配置 ADI OPC UA Server 的地址和用户名密码,然后在变量通道中按照上面的表格中的地址填写 Browse Path:

 

clip0025

最后,通过 OpcUa_any 中的 IO Mapping 连接程序变量,就可以控制按钮和 LED 灯环了:

 

clip0026