你可以使用UaExpert软件测试与RoboDK OPC UA服务器的连接。
我们可以在该网站下载免费的UaExpert软件:https://www.unified-automation.com/downloads/opc-ua-clients.html 。

启用UaExpert,点击按钮"+",即可添加RoboDK插件OPC UA服务器。

在Add Server窗口,展开Custom Discovery,选择<Double Click to Add Server...> 选项,即可添加RoboDK OPC UA 服务器。

输入上一步配置的OPC UA 服务器URL:opc.tcp://127.0.0.1:48440。

以"None"安全性连接OPC UA服务器。

服务器就配置好了。

现在,你可以在UaExpert连接到RoboDK OPC UA服务器。

创建连接后,你可以看到节点和方法。

RoboDK OPC UA服务器内有一些节点,可传输工作站的一些信息。
RoboDK节点:提供RoboDK软件实际版本的节点。

本案例使用的版本:RoboDK 64 Bit v5.5.3.23031。

SimulationSpeed节点:显示实际仿真速度,并允许用户覆盖当前仿真速度。

节点值参考模拟速度的滑动条。
可以从该节点读取当前的模拟结果,并可以覆盖模拟速度。

Station节点:用户获取RoboDK中当前站名称。

如下所示,Station节点在 RoboDK 中引用了你的工作站名称:New Station(1)。

站参数(StationParameter)和站值(StationValue)是一对设置节点,允许用户获取或设置站内的任何参数。RoboDK OPC UA 服务器将持续监控 "StationParameter "的实际值,并从 "Station Value "节点返回该 "StationParameter "的值。
Note:如果站参数不存在,则返回空字符串。

在RoboDK中右键单击工作站,点击:工作站参数。

在固定参数模块,我们可以看到工作站的默认参数和值。

工作站参数指的是"Parameter"字段,台站值指的是"Value"字段。

在工作站参数窗口,点击按钮:添加,我们就可以创建参数。

这样就添加了一个新的工作站参数。

输入参数名称和值,然后点击应用即可保存。

你还可以获得自己的站点的参数。

time节点:可以获取RoboDK站当前的时间。

返回值是DataTime格式。

会自动更新数据。

RoboDK OPC UA服务器还提供了一些方法,允许用户动态访问RoboDK工作站数据。
只需要右键点击你需要的方法,选择Call…,即可执行该方法。

getItem方法:getItem是一个通过设备名称获取对象指针(内存地址引用)的关键方法,主要用于跨系统交互时精确定位工作站内的设备。

对于InputArguments(输入参数),设备名称是必需的,你可以将设备名称想象为你的站名、机器人名称等。项目 ID 是输出参数,用于返回该设备的指针。

在本例中,我们可以看到,接收到的ABB机器人的项目Item Name:ABB_RB1。

如果项目名称无效或在站内不存在,则返回 0。

getJonits是一种允许用户根据项目 ID 从站台获取机器人关节值的方法。

Item ID 是 Item 的指针值,可以通过 getItem() 方法获取。

我们将通过 "ABB_RB1 "项目名称获取项目 ID,并返回一个 UInt64 值。

在上一个方法中传递项目 ID 时,会返回关节值。

getJointsStr 是一种允许用户根据字符串值获取关节值的方法。

我们可以在此方法中传递机器人名称(字符串)。

在示例工作站中,ABB_RB1 是我的机器人名称。

我们只需在机器人名称参数中输入 "ABB_RB1",然后调用该方法--以字符串格式返回关节值。

setJointsStr 是一个允许用户根据字符串值设置机器人关节值的方法。

在机器人名称中,传递的是 ABB_RB1,我们只需在关节参数中传递一个包含关节值的字符串即可。
举例来说:-0.000000,0.000000,-0.000000,-0.000000,-0.0,-0.000000
