基于树莓派的Firebird‐V六足机器人监视与控制

摘要

六足步行机器人在不规则区域执行任务时,需要具备高水平的稳定性与精确性。本文旨在实现Firebird‐V六足机器人的功能,使其能够快速、平稳且稳定地移动。Firebird‐V六足机器人由六个腿部结构组成,构建于Firebird‐V机器人平台之上,每条腿包含3个伺服电机,因此该机器人共有18个自由度。为实现所提出的设计,需综合考虑机械结构、腿部构型、运动条件以及步态。机器人上安装有摄像头用于监视,并与树莓派连接,从而实现实时视频流功能。Firebird‐V所搭载的ATmega2560控制器与树莓派相连接。控制方面,指令由树莓派传输至ATmega2560。通过无线网络,可使用网页浏览器和操纵杆对机器人的监控和控制进行操作。

关键词

Firebird-V,六足机器人,树莓派,网络服务器,ATmega2560

一、引言

一些工业领域正在使用人工控制的机器人臂来执行机械操作,如定位、放置、抓取等。例如,在工业的包装区域,各种机械臂需要以特定的速度进行精确移动。运动学在其中起着至关重要的作用。在某些情况下,机械臂用于移动危险化学品。此时,准确性和安全至关重要。对机器人或机械臂进行监控和控制将有助于上述应用。控制可通过基于PC的技术实现,而监控则可通过实时视频流[1][2]实现。建议使用树莓派通过网站[3]对机器人臂进行监控和控制。

底盘是机器人的重要组成部分。腿式底盘、轮式底盘和履带式底盘是不同类型的底盘。腿式底盘速度较慢,但在崎岖地形中具有极强的鲁棒性。这种底盘能够跨越较大的障碍物或孔洞。通常腿式底盘被用于太空任务。六足行走车辆也可用于多种任务,如森林采伐、协助人类进行货物运输、作为服务机器人以及娱乐用途。[4]

F. 特代斯基等人通过参考早期的设计方案和最新成果,对六足机器人行走机器人的前沿技术进行了综述。文中特别关注了影响技术可行性和运行性能的主要设计问题和约束条件[4]。

扎克等人研究了六足(即六条腿)行走机器人的设计、构建与控制,基本介绍了足式机器人的基本特性、一些现有机器人及其优缺点。本项目中设计、构建并测试了一款六足机器人。该机器人可采用三脚架步态、波动步态和波纹步态行走,并配备了超声波声呐、力敏电阻、编码器和液晶显示屏。腿上的地面传感器可实现地面检测,使机器人能够在崎岖地形中行走[6]。

根据Priandana等人在多足机器人领域的研究,腿部协调在定义机器人运动中起着至关重要的作用。通常,多足机器人按照预设步态进行移动。针对六足机器人控制器[7],提出了基于简单几何和逆运动学方法定义的三脚架步态运动。

哈斯娜等人提出,六足机器人是使用六条腿行走的机械车辆。这一类别因多种原因而引人关注。本文介绍了具有高效坐标系设置的足式机器人结构,并提出了一种针对六足机器人建模三角步态的特定方法[5]。

Fire Bird V 机器人是 Fire Bird 系列机器人的第五代产品。前两个版本的机器人专为印度理工学院孟买分校计算机科学与工程系嵌入式实时系统实验室设计。Firebird‐V ATMEGA‐2560 为实验、算法开发和测试提供了卓越的环境。从第3版开始,这些平台已实现商业化[9]。

许多六足机器人受到六足昆虫运动方式的启发。像蜘蛛一样,六足机器人有六条腿,为了实现稳定可靠的运动,必须合理协调各条腿的动作。通常情况下,腿的数量越多,机器人的稳定性越高。由于三脚架步态具有较高的静态稳定性,即使在超过三条腿支撑的情况下也是如此,这表明六足机器人在全向运动方面具备良好的灵活性。如果一条腿发生故障,机器人仍可执行双足步态(也称为两腿双足步态),该步态比三角步态更快,但适用于平坦地形。本系统采用Atmel Studio 7结合Firebird‐V实现。使用代码编译器、Python、Arduino和PHP工具来实现所提出的系统。

II. 所提出的方法

在所提出的系统中,基于Firebird‐V的六足机器人与用户之间通过树莓派和无线网络建立无线通信。该机器人的操作通过网页经由树莓派板进行控制。

示意图0

摄像头安装在六足机器人顶部位置,并与树莓派连接,而操纵杆则与Arduino Nano连接。操纵杆的位置信息通过无线网络发送到树莓派服务器,以调节摄像头的位置。安装在六足机器人上的树莓派作为服务器,操作端作为客户端。用户需在客户端使用谷歌浏览器等网页浏览器输入树莓派的本地IP地址。在客户端有一个包含按钮和来自摄像头的实时视频流的网页。这些按钮用于控制六足机器人的移动。该网页可以从任何设备(如笔记本电脑、平板电脑、计算机等)访问。

客户端通过无线网络从网络服务器获取网页内容。服务器与客户端之间的通信使用超文本传输协议(HTTP)。操作步骤如下:
- 打开六足机器人和树莓派。
- 运行操纵杆访问的客户端和服务器代码。
- 打开笔记本电脑或类似设备的无线网络并连接到服务器。
- 输入本地主机IP地址。
- 摄像头将开始实时传输,并显示用于操作六足机器人的按钮。

Firebird‐V六足机器人配备了一个 ATMEGA‐2560芯片,具有3个用于串行通信的硬件串行端口。客户端通过SSH(安全外壳)协议在无线接口上连接到树莓派,该协议使用端口22进行通信。在客户端一侧有一个包含按钮和来自摄像头的实时视频流的网页。按钮用于控制六足机器人的运动。当用户按下网页上的按钮时,树莓派中的Python会生成一个唯一的ASCII码,并将其传输到Firebird‐V,以调用由ATMEGA‐2560执行的相应子程序。该网页可以从任何设备(如笔记本电脑、平板电脑、计算机等)访问。一个Arduino Nano连接到装有操纵杆的笔记本电脑上。操纵杆为摄像头的云台/倾斜提供平稳操作。云台/倾斜的通信通过 Python套接字实现,在操作时延迟几乎小于10ms。

所有设备都连接到同一个网络,如果连接到不同的网络也可以实现。为此需要使用端口转发。

III. 设计与实现

以下硬件模块在所提出的工作中起着非常重要的作用:
1. 树莓派2
2. 基于 Firebird‐V的六足机器人
3. Arduino Nano
4. Pi摄像头
5. 伺服电机

Firebird‐V六足机器人基于Firebird‐V机器人构建,共有6条腿,每条腿包含3个舵机。因此,该机器人总共具有18个自由度。

示意图1

步态通常可以被看作是哺乳动物的一种行走方式。通常,昆虫或动物具有多种类型的步态,为了获得最大效率,会根据地形状况和所需速度来改变步态类型。每种昆虫或动物的步态并不相同,它们彼此之间可能存在差异。以四足动物为例,若选择消耗较少能量的步态,则优选行走步态;若要提高速度,可采用疾驰步态,但这将导致能量消耗增加。

主要处理3项任务:

A. 运动:

共有12种不同的运动方向(6个方向对应其6条腿,另外6个方向对应两条腿之间的运动方向)。实现的步态包括:三脚架步态、连续三脚架步态、四足动物步态、挥手打招呼、波动步态和涟漪步态。

1) 三角步态 :如果六足机器人的腿从1到6编号,则腿1、3和5组成一个三脚架,腿2、4和6组成另一个。在行走过程中,六足机器人通过两个三脚架交替移动。经过一个完整周期后达到稳定状态。

2) 连续三脚架步态 :这种步态类似于三角步态,因为在运动过程中始终未达到稳定状态,即当一个三脚架向前移动时,另一个三脚架正在为其做准备。

3) 四足动物 :六足机器人用四条腿站立而非六条腿。剩余的两条腿悬在空中,可根据需要用于抓取和放置。

4) 挥手打招呼 :六足机器人的1号腿做出挥手打招呼的动作。

5) 波动步态 :在波动步态中,所有腿依次向前移动。然后在另一侧重复此过程。

6) 波纹步态 :每侧执行一个由不重叠的抬起阶段组成的局部波,且两侧的波彼此正好180度反相。例如,如果 1st, 2nd, 3rd腿形成一个波,则在 4th, 5th和 6th腿上存在一个180度反相的波。

示意图2

B. 转向:

六足机器人可以顺时针或逆时针转向。实现的步态包括:三角步转向、连续三角步转向。

C. 无线通信:

机器人的运动可以通过网站上的按钮进行无线控制。操纵杆用于控制摄像头舵机的云台/倾斜。

IV. 结果与讨论

A. 三角步态

由于最稳定的步态是三角步态,因此实现这一功能以检查六足机器人是否物理上稳定并能够用三条腿站立显得尤为重要。此时六足机器人将由三条腿支撑,共有九个舵机承受负载。实现该步态的最常见方法是区分偶数腿对和奇数腿对,即在某一时刻所有偶数腿着地以保持六足机器人的平衡,而在另一些时刻则由奇数腿着地,如此交替进行。该方案已成功应用于Firebird‐V,以便进一步实现更多步态。

示意图3

B. 四足模式

这使得六足机器人用四条腿站立,而其余两条腿处于自由状态。这种情况会进一步导致六足机器人的不稳定性,使其在四条腿上向前移动变得非常困难。在此情况下,三角步态可能有效也可能无效,必须仔细设计并考虑六足机器人的重量以及所使用的舵机。如有需要,剩余的两条腿可用于执行抓取和放置操作。

示意图4

C. 伺服云台/俯仰

当普通摄像头安装在六足机器人上时,六足机器人的视场角(FOV)非常重要。视场角即摄像头所观察的方向。例如,用户希望以抬高的角度向左看;只有通过伺服电机控制摄像头的运动才能实现这一点。安装在六足机器人上的Pi摄像头被固定在一个位于另一伺服电机上方的伺服电机上,其中伺服电机1负责水平旋转运动,伺服电机2负责俯仰。

示意图5

传输完全无线,借助Python套接字和树莓派上的 GPIO引脚完成。

V. 结论

基于Firebird‐V ATMEGA‐2560的六足机器人为主人提供了卓越的实验、算法开发与机器人学测试环境。通过树莓派和网页,利用Wi‐Fi网络对Firebird‐V六足机器人进行监控与控制已成功实现。在用户向机器人发送指令以及机器人向用户反馈响应的过程中,未发生任何中断。该机器人可通过个人电脑或智能手机轻松控制。六种不同的步态已被成功实现并进行远程控制。实时视频流以极小的延迟出现在网页上。通过端口转发可以将整个网络连接到互联网,从而能够从任何地方控制六足机器人。

Logo

DAMO开发者矩阵,由阿里巴巴达摩院和中国互联网协会联合发起,致力于探讨最前沿的技术趋势与应用成果,搭建高质量的交流与分享平台,推动技术创新与产业应用链接,围绕“人工智能与新型计算”构建开放共享的开发者生态。

更多推荐