2 主要原理
2.1 仿生六足机器人行进原理
本论文仿生六足机器人的行进方式主要参考了六足昆虫的三角步态,行进时通常将六只脚分为两组,每组三足呈三角形交替行走以保证重心的稳定。这种步态依靠腿部的前后摆动将身躯前移,虽然为了让重心保持在三角形内,导致腿部跨度小,行进速度也称不上快,但是其稳定性却无可置疑。在下列分析中假定左前、右中、左后为A组足,右前、左中、右后为B组足。
前进的流程,可分解为两个过程,以及三个状态间的转换。假设A组足先动,状态a为初始状态,左三和右三足呈对称形态。状态b为A组足角度较初始状态不变并抬起,B组足组成的重心较初始状态滞后。状态c为B组足角度较初始状态不变并抬起,A组足组成的重心较初始状态滞后。过程x为B组足落地,A组足抬起并恢复初始位置,随后B组足以足尖为支点带动身躯前移。过程y为A组足落地,B组足抬起并恢复初始位置,随后A组以足尖为支点带动身躯前移。控制流程图图如图1,状态图如图2。
图2-1 前进控制流程图
图2-2 前进步态图
2.3 图像传感器数据输出、读取原理
图像传感器的数据输出是在三个输入信号的控制下进行的,这里采用了QVGA模式输出像素。如下图:
图2-5 图像输出行时序图
3 硬件选型
3.1六足机器人控制系统芯片选型
在市面上,可作为控制器的产品主要分为单片机、嵌入式两大类,而实际上其实这两者的界限也挺模糊,有些高性能单片机并不是不能搭载计算机系统,只是效率不高,没有必要罢了,而嵌入式大部分也是基于单片机设计的,也可以说是微型计算机的裁剪版。因此,在此只是大概划分了这两类产品,并介绍其细分种类下不同系列的产品的优劣势。
对于机器人控制和学生市场而言,单片机主要考虑用51单片机,stm32系列单片机和arduino板。51单片机是由ATMEL公司推出的一种8位单片机,它的功能相对比较基础,基于汇编语言跑程序的同时,芯片处理速度慢,导致其运行速度也慢,只能进行一些简单的控制,优点是使用简单,只要将寄存器配置好,载入程序就行,并且比起其他8位单片机,具有乘除法运算,无需调用子程序来实现乘除算法。Stm32系列单片机是ST厂商推出的一款以arm为内核的32位单片机,特点是高性能、低成本、低功耗。其最高72Mhz的工作频率,大大提升了单片机的运行速度,并提供了丰富的外围接口。Stm32系列单片机较51较为复杂,主要在于大量寄存器的配置和使用,也因此可以关掉不需要使用的功能,降低功耗。而arduino板实际上是一种基于AVR单片机设计的开发板,它更多的是提供软件上的支持,而不是硬件上的支持。官方提供了丰富的库函数资源,开发者不需要去了解内部的硬件结构和寄存器的设置,只需要知道端口的作用,就能够避开底层驱动和硬件进行开发。同时在官方的开源社区,也提供了大量、具有不同功能的函数库封装,方便业余爱好者使用。
图3-1 51单片机 图3-2 STM32系列单片机
4 控制系统设计
对于六足机器人而言,主要应用于探索勘测领域。
