Pi-puck基本介绍

2019年,Pi-puck面市。

特征

  • Raspberry PiZeroW(rPi)通过I2C连接到机器人
  • 机器人基础摄像头和rPi之间通过USB接口
  • 1个数字麦克风和1个扬声器
  • USB集线器连接到rPi,带有2个空闲端口
  • uUSB连接到rPi uart端口。也适合充电
  • 2个充电器。1个用于机器人电池,1个用于辅助电池在扩展的顶部
  • 在前面充电接触点以进行自动充电。外部扩展坞可用
  • 几种扩展选项;6个i2C通道,2个ADC输入几个LED显示rPi和电源/充电器的状态

入门

  本介绍性部分说明了使用安装在Pi-puck扩展板上的Raspberry Pi Zero W所需的最少程序,并概述了随Micro SD刷新的系统附带的可用基本演示和脚本。在以下单独的部分(例如ROS)中描述了更高级的演示,但是此处记录的步骤是基本的,因此请务必完全理解它们。
该扩展程序主要是e-puck机器人和Raspberry Pi之间的接口,因此您可以利用Linux机器的计算能力来扩展机器人功能。
在大多数情况下,Pi-puck扩展程序将被附加到机器人上,但是有趣的是,当不需要与机器人交互时,它也可以单独使用。
除非另有说明,否则以下各节采用完整配置(机器人+扩展名)。

要求

  为了通过I2C总线与安装在Pi-puck扩展架上的Raspberry Pi进行通信,必须为机器人编程特殊的固件。所有设备(相机,IMU,距离传感器,其他扩展),主微控制器和Raspberry Pi共享相同的I2C总线。由于Raspberry Pi充当I2C主设备,因此无法直接从充当I2C从设备的机器人主微控制器直接访问这些设备。

  必须使用以下固件e-puck2_main-processor_extension.elf(07.06.19)对e-puck2机械手进行编程,并且选择器必须位于位置10。

扩展板 开/关机

  要打开扩展名,您需要按auxON如下图所示按钮。这也会同时打开机器人(如果尚未打开)。同样,如果打开机械手,则扩展名也会自动打开。

 

要关闭Pi-puck,您需要按住auxON按钮2秒钟;这将启动掉电程序。
请注意,如果通过其他方式(如微型USB电缆或二次电池)供电,则扩展名将不会自动关闭。您需要使用其电源关闭按钮将其关闭。相反,如果没有其他电源,则通过关闭Epuck2,也将关闭扩展(不是干净的)。

控制台模式

Pi-puck扩展板带有一个预配置的系统,无需任何其他配置即可运行。
为了以控制台方式从PC访问系统,必须执行以下步骤:

  1. 将Micro USB电缆从PC连接到扩展模块。如果需要,可以在以下链接USB至UART桥驱动程序中找到驱动程序 。
  2. 执行一个终端程序,并使用115200-8N1配置连接(无流量控制)。串行设备是将扩展名连接到计算机时创建的串行设备 。
  3. 打开机械手的电源(扩展名将自动打开)。现在,终端应显示Raspberry Pi启动信息。如果没有机器人,则可以使用相关按钮直接打开扩展板电源
  4. 登录使用user = pi,password = raspberry

电池充电

您只需插入Micro USB电缆,即可为机器人电池或连接至Pi-puck扩展的附加电池或两块电池充电。
下图显示了备用电池的连接器。

如果有充电墙,则机器人也可以自动给自己充电。Pi-puck扩展装置的正面包括两个弹簧触点,使机器人可以轻松地与充电壁接触并对其进行充电。充电壁和弹簧触点如下图所示:

操作系统

  该系统基于Raspbian Stretch,可从以下链接下载:gctronic-stretch-ros-kinetic-opencv3.4.1.img.tar.gz

user / pw:pi / raspberry 

  系统以控制台模式启动,切换到桌面(LXDE)模式发出命令startx。
  第一次启动时,首先要做的是扩展文件系统,以便使用micro sd上的所有可用空间:
  1 终端输入

sudo raspi-config

  2.选择Advanced Options然后选择Expand Filesystem
  3.重新启动reboot

机器人出厂已安装的软件

  • ROS Kinetic
  • OpenCV 3.4.1
  • zram
  • SSH

机器人配置

  •  必须使用以下固件e-puck2_main-processor_gumstix.elf对e-puck2机器人进行编程
  •  并且必须将选择器置于位置10. 这是为了通过I2C与机器人交换数据。

运行ROS节点

  ROS工作区位于 ~/rosbots_catkin_ws/
  在树莓派上启动e-puck2 ROS节点之前,请发出以下命令:

export ROS_IP=raspberry-ip
export ROS_MASTER_URI=http://pc-ip:11311

raspberry-ip指的是树莓派(pi-puck)机器人的ip,pc-ip指的是您的笔记本的ip。

要启动e-puck2 ROS节点,请发出以下命令:

roslaunch epuck_driver_cpp epuck_minimal.launch debug_en:=true ros_rate:=20

此启动文件将启动e-puck2节点和摄像机节点。
PC端,在一个终端中发出以下命令:

export ROS_IP=pc-ip
export ROS_MASTER_URI=http://pc-ip:11311
roscore

然后在另一个终端启动rviz:

rviz rviz

打开single_epuck_driver_rviz.rviz您可以在epuck_driver_cpp/config/目录中找到的命名配置文件
可以从git下载最后一个版本的e-puck2 ROS节点:

 git clone -b e-puck2 https://github.com/gctronic/epuck_driver_cpp.git

下图显示了e-puck2驱动程序节点发布的所有主题:

获取源代码

 可以从git下载e-puck2 ROS节点的最新版本:

git clone -b pi-puck https://github.com/gctronic/epuck_driver_cpp.git

要更新到最新版本,请按照下列步骤操作:

cd ~/rosbots_catkin_ws/src/
rm -R -f epuck_driver_cpp
git clone -b pi-puck https://github.com/gctronic/epuck_driver_cpp.git
cd ~/rosbots_catkin_ws/
catkin_make --pkg epuck_driver_cpp

OpenCV

Blob跟踪
  开发了一个简单的演示来跟踪橙色斑点。它被认为是与omnivision扩展运行。机器人在找到目标时朝向目标旋转。
代码可以从以下repo下载:

git clone https://github.com/e-puck2/e-puck2_pi_blob-tracking.git

 

posted @ 2019-04-11 09:29  kay880  阅读(466)  评论(0编辑  收藏  举报