PNDEncoder
ABS_Encoder 参数介绍
简介
ABS_Encoder是一款为PNDbotics机器人关节执行器提供末端位置检测的模块。它具备Ethernet或者Wi-Fi通讯配置及获取绝对角度等一系列功能,为机器人主控提供关节末端绝对位置信息。
应用场景
-
场景一、机械臂的末端位置检测
-
场景二、平行执行器的末端输出轴位置检测
-
场景三、仿生双足机器人的膝关节末端位置检测
接口规格
序号 | 接口说明 |
---|---|
A1 A12 B1 B12 | GND |
A4 A9 B4 B9 | VBUS |
A6 B6 | usb差分信号D+,内部接USB转串口芯片 |
A7 B7 | usb差分信号D-,内部接USB转串口芯片 |
A10 | 以太网接收差分信号RX- |
A11 | 以太网接收差分信号RX+ |
B2 | 以太网发送差分信号TX- |
B3 | 以太网发送差分信号TX+ |
先进特征
- 支持JSON-RPC框架, 实现远程函数调用
- 灵活配置选用以太网或者Wi-Fi通信,优先采用以太网通信
- 一路Type-C USB接口实现以太网和串口通信
- OTA升级
接口定义
Name | Specs |
---|---|
物理层 | 10/100Mbps 以太网或2.4GHz Wi-Fi |
传输层协议 | TCP/UDP |
通信端口(service) | 2334 |
IP获取方式 | DHCP/Static IP |
应用层协议 | JSON-RPC |
指示灯状态说明
序号 | 闪烁模式 | 含义 |
---|---|---|
1 | 快速 紫色 呼吸闪烁 | 有线以太网连接中 |
2 | 慢速 紫色 呼吸闪烁 | 有线以太网连接成功 |
3 | 快速 青蓝色 呼吸闪烁 | Wi-Fi连接中 |
4 | 慢速 青蓝色 呼吸闪烁 | Wi-Fi连接成功 |
5 | 快速 红色 呼吸闪烁 | 错误 |
6 | 快速 翠绿色 呼吸闪烁 | OTA升级中 |
JSON-RPC协议框架
JSON-RPC,是一个无状态且轻量级的远程过程调用(RPC)传送协议,其传递内容格式以 JSON 为主。
本文的JSON-RPC协议框架,物理层可以使用有线10/100Mbps以太网,也可以使用2.4GHz Wi-Fi进行通信。支持DHCP功能,连接路由器可自动获取IP。数据采用TCP或者UDP连接通讯,服务端口(Service Port)为2334。
协议中由 id 域指定调用的序号, method
域指定调用的方法, params
域指定调用的参数,result
域指定返回的结果和参数
json-rpc请求数据帧
域 | 类型 | 描述 |
---|---|---|
“id” | 整形 | 每次请求须制定请求帧ID,否则不执行 |
“method” | 字符串 | 调用方法 |
“params” | 对象 | 调用参数。具体每一个调用方法会展开具体的参数列表 |
json-rpc响应数据帧
域 | 类型 | 描述 |
---|---|---|
“id” | 整形 | 每次请求制定的请求帧ID,响应时返回 |
“result” | 对象 | 响应参数。具体每一个调用方法的响应会展开响应参数 |
通信流程
以下所说客户端client代表用户的控制计算机(如:Raspberry Pi, PC, Mac 等),服务器server代表ABS编码器。
第1步,需要通过UDP向局域网内广播,获取设备信息 将全部ABS编码器接入局域网后。可先使用UDP广播,获取编码器的设备信息,设备信息中包含有编码器的IP地址。 广播地址为 255.255.255.255 以查询局域网内的所有设备。广播后,全部在线设备会返回设备基本信息给client。
以局域网内包含两个设备为例:
第2步,获取到ABS编码器的IP地址后,进行数据传输,获取IP地址后,可以通过TCP方式建立连接进行通讯,也可以保持UDP通讯方式。
获取配置信息
server返回如下 | |
---|---|
获取ABS编码器绝对角度
server返回如下 | |
---|---|
设置配置信息
设备的配置信息包括设备名称、型号、生产日期、硬件版本号、Wi-Fi名称、Wi-Fi密码、主机名、是否使能DHCP、静态IP、网关、DNS等。client可以单独设置某一项,也可以同时设置多项。重启设备后生效。
client向server的Service端口(2334)发送 | |
---|---|
OTA
设备接收到OTA指令后,启动http升级固件
设置配置信息
重启设备
设备接收到复位请求,并响应后,等待一秒钟后,重启。