Epuck2测距板使用教程

概述

该板允许本地代理进行本地通信,同时获得发射器的范围和方位,而无需任何集中控制或任何外部参考。因此,该板允许机器人拥有一个具体的、分散的和可扩展的通信系统。该系统依赖于带频率调制的红外通信,由两个相互连接的模块组成,用于数据和功率测量。

测距教程.png

下表列出了I2C的寄存器映射:

地址

0

如果数据可用1,否则0

-

1

数据MSB

-

2

数据LSB

-

3

Bearing MSB

-

4

Bearing LSB:

double((MSB<<8)+LSB)*0.0001

以获得角度(以度为单位)

-

5

Range MSB

-

6

Range LSB

-

7

最大峰值(ADC读数)MSB

-

8

最大峰值(ADC读数)LSB

-

9

接收数据的传感器(0-11)

-

12

-

设置传输功率(通信范围):在0(最大范围)和255(最小范围)之间

13

-

数据LSB(准备)

14

-

数据MSB(发送(MSB<<8)+LSB)

16

-

0存储光照条件(校准)

17

-

1=车载计算,0=主机计算

测距板固件源代码

测距板固件代码是开源的,可作为git存储库使用。要下载源代码,您需要在系统上安装 git:

sudo apt-get install git

源代码可以通过git命令下载:终端下输入指令: 

git clone https://github.com/gctronic/range_and_bearing_firmware.git

e-puck2

e-puck2 标准固件包含测距板的示例用法。当选择器处于位置4时,机器人被设置为接收器,当处于位置5时,机器人同时是发射器和接收器。

在这两个演示中,接收到的信息(接收到的数据、方位、距离和传感器 ID)将通过蓝牙的方式打印。

请注意,机器人与测距板之间唯一可用的通信通道是I2C总线,UART通道不适用于e-puck2。