SDK 功能模块
RPC、RTDE和SCRIPT是AUBO SDK三大重要的功能模块,它们之间既相互独立,但又可以互相配合使用,通过结合使用可以实现更加灵活和高效地机器人控制方案。
RPC 模块
RPC(Remote Procedure Call)是一种远程过程调用协议,用以实现外部设备(如计算机)与机器人控制器之间远程的指令传输和数据通信。如想查看JSON-RPC协议介绍,请阅读文档 JSON-RPC协议说明。
SDK中的RPC模块,使用JSON-RPC2.0协议进行数据交换,支持客户端/服务器模式和请求/响应模式,具有简单易用、轻量、跨平台、可扩展等特点,支持多种编程语言和操作系统。
RPC模块支持多种类型的指令,如运动指令、状态指令和IO指令等,可以满足不同应用场景的需求。外部设备(如计算机)可以通过SDK中的RPC模块向控制器发送指令请求,控制器可以根据指令内容进行相应的动作,如运动、暂停、停止等,并将执行结果返回给外部设备(如计算机)。
同时,RPC模块还可以与RTDE模块或SCRIPT模块配合使用,实现更为复杂的机器人应用程序。例如,用户可以通过RPC模块来调用运动指令接口(如moveJoint、moveLine等),同时通过RTDE模块来订阅获得机器人的实时状态,如实际的位置姿态等。
RTDE 模块
RTDE(Real-Time Data Exchange)是一种实时数据交换协议,用以实现外部设备(如计算机)与机器人控制器之间的实时数据传输,比如机器人的关节角度、速度、加速度等状态信息。AUBO SDK中的RTDE模块,就是基于RTDE协议来实现控制器与外部设备之间的实时数据交换。另外,RTDE模块还可以与RPC模块或SCRIPT模块同时使用,不会破坏系统的实时性。如想查看RTDE协议介绍,请阅读文档 RTDE协议说明。
SDK中的RTDE模块,可以将控制器中的数据传输到外部设备(如计算机),并且可以将外部设备中的数据传输到控制器中。外部设备可以通过RTDE模块获取机器人的关节角度、速度、加速度等实时数据,也可以通过RTDE模块向控制器的寄存器中写入数据。
RTDE菜单是一种用于配置RTDE数据流的文件格式。它定义了数据的名称、类型等信息,例如机器人的位置、关节角度、速度、电流等信息,支持多种数据类型,包括布尔型、整型、浮点型等。如想查看定义,请阅读文档 RTDE 菜单 。
SCRIPT 模块
SDK中的SCRIPT模块,支持发送本地的脚本程序到机器人控制器,然后控制器会加载执行脚本程序。如想查看脚本协议介绍,请阅读文档 脚本协议说明。
SCRIPT模块支持Lua脚本,包括基本的语句、控制结构、函数定义等。它提供了丰富的机器人控制API,如运动控制、算法、获取机器人状态等。另外,SCRIPT模块提供了脚本程序调试和处理错误的功能,例如设置断点等。
SCRIPT模块还可以与RTDE模块或RPC模块配合使用。例如,用户可以在本地编写脚本程序,并通过SCRIPT模块将本地的脚本程序发送到机器人控制器进行执行,同时调用RTDE模块来实时监测机器人的状态。