武术擂台仿人机器人系统及电路设计 - 图文(3)

2019-02-15 15:32

可以根据这三个传感器的值来判断机器人当前的方向。另外可以根据 4个灰度传感器的平均值来判断机器人在场地上的位置。接近场地中心时,平均值较小,接近场地边沿时,平均值较大。得到这些逻辑,就可以在编写控制程序时使用。

6.4 红外测距传感器的标定

红外测距传感器的输出是非线性的,所以需要对其进行标定。其标定比较简单,使用直尺就可以进行传感器的标定。

6.4 红外开关的校准

由于擂台外70cm处有白色的围栏,为了防止误判断,同时增加红外探测的稳定性,寻敌红外开关的探测距离调在65cm。

6.5 运动轨迹的调校

机器人发现侧边有障碍物并要对障碍物发起攻击时,机器人转弯的幅度要迅速、合适,才能在转弯后面对障碍物并对障碍物发起攻击。另外,不同状态下的行进速度也不一样,例如在没有发现障碍物的时候,行进速度可以稍微降低;当发现敌方机器人在前方时,机器人应该加速前进;当机器人发现正处于边缘时,应该迅速逃离。

7

7 总结与展望

本文正是一个本着学习、实践和创新的思想的机器人设计。让机器人根据比赛现场复杂的环境变化,按照自己的想法和目的战斗。我选择自动化专业,正是要加入自动化这个大家庭,在吸取知识的同时不断提高自己,不断的走近自己的梦想。

经过一段时间的现场测试,现有机器人的一些设计漏洞也渐渐浮出水面。所以接下去的工作是:

(1)改良现有的硬件结构。底盘的结构需要作更进一步的优化,轮子的固定需要更牢靠;部分关节需要严格按照力学原理重新设计。另外,去掉铲形披风、设计更加合理的普通构形势在必行。

(2)改良电机和电机驱动器。现用的直流空心杯电机由于功率不足,导致驱动力不足,加速缓慢,动作不是很灵活;再加上驱动器最大只能承受10A电流,刹车时无法承受很大的反向电流,制约了机器人的刹车效果。

(3)机器人隐身机构的改进。目前四壁贴的泡沫材料虽然可以减少被对方发现的几率,但隐身效果依然不够理想,所以在隐身材料这一方面上依然需要进行大量的试验。

(4)红外探测模块接收部分由于采用了单级放大,并且没有输出漂移控制电路,降低了该传感器的可靠性;由于没有采用带通滤波器,导致放大电路引入的噪声缩短了该传感器的探测距离。所以,红外接收放大电路需要更进一步的研发。

(5)控制器的研发、改良等相关工作;硬件上,开发更小尺寸的控制器,并且使各种接口更加完善,运行更加稳定。软件上,当前控制器的底层软件执行效率有提升空间,另外,完善现有的机器人地图算法,使其自定位效率更高且更加精准,可以有效提高机器人的作战能力。一款稳定的、性能优秀的控制器不仅有利于机器人团队的后续赛事,而且有利于开展教学工作,激发同学们对机器人制作的热情,开拓同学们视野,甚至可以举行校内赛。

8

参考文献

[1] 2009武术擂台赛比赛规则2.2.0版.2009.

[2] 杨学军,丁盖盖.防守型武术擂台机器人的研究与实践[J]. 机器人技术与应用.2009(4):44-46. [3] 李卫国,王志刚.进攻型武术擂台机器人的研究与实践[J]. 机器人技术与应用.2009(4):41-43. [4] 郝俊青.武术擂台赛机器人的设计策略[J]. 科技情报开发与经济.2009,19(9):124-126. [5] InnoSTAR实验指导书.2009

[6] 林浩岳,章敏鹏,周增元.韩山师范学院“韩鹰队”队伍描述[D].韩山师范学院,2008. [7] 张俊.匠人手记[M].北京航空航天大学出版社.2008.107-113. [8] 王志良,周桌,靳松.竞赛机器人制作技术[M].机械工业出版社,2007.

[9] 江海波,王桌然,耿德根.深入浅出AVR单片机--从ATmega48/88/168开始[M].北京:中同电力出版社,2008:34—37.

[10] Cang Ye, Johann Borenstein. Characterization of a 2-D Laser Scanner for Mobile Robot Obstacle Negotiation. In 编者,edited. Proc. IEEE Int.Conf. On Robotics and Automation, Washington DC, December 2002, pp.2512-2518.

9

附录1 CDS5500机器人舵机控制程序

CDS5500数字舵机的控制程序例子如下:(MCU:Mega128,Crystal:8Mhz) #include #include #include \

#define TXD_ENABLE PORTD&=~(1<<6) #define RXD_ENABLE PORTD|=(1<<6)

typedef unsigned char uint8; /* 无符号8位整型变量 */ typedef signed char int8; /* 有符号8位整型变量 */ typedef unsigned short int uint16; /* 无符号16位整型变量 */ typedef signed short int int16; /* 有符号16位整型变量 */ typedef unsigned long int uint32; /* 无符号32位整型变量 */ typedef signed long int int32; /* 有符号32位整型变量 */

uint8 Parameter[20]={0x1e,0x00,0x01,0x00,0x02}; //位置和速度控制数据队列 //UART0 initialize // desired baud rate: 1M // actual: baud rate:1M (0.0%) // char size: 8 bit // parity: Disabled

void uart0_init(void) //因为采用的是8M的晶振,所以采用倍速的方式产生1M的波特率 {

UCSR0B = 0x00; //disable while setting baud rate UCSR0A = 0x02; //设置为倍速模式

UCSR0C = 0x06; //设置串口以8位数据传送数据 UBRR0L = 0x00; //设置波特率 UBRR0H = 0x00; //设置波特率

UCSR0B = 0x98; //开串口0的发送使能,以及接受使能 }

10

void init_devices(void) {

//stop errant interrupts until set up CLI(); //disable all interrupts uart0_init();

SEI(); //re-enable interrupts

//all peripherals are now initialized }

void TxPacket(uint8 ID, uint8 ParameterLength,uint8 Instruction) {

uint8 i; uint16 j;

uint16 checksum=0;

TXD_ENABLE;

UDR0=0xFF;

while ( !( UCSR0A & (1<

UDR0=0xFF; //发送两个字头; while ( !( UCSR0A & (1<

UDR0=ID; //发送ID; while ( !( UCSR0A & (1<

UDR0=ParameterLength+2; //发送字长; while ( !( UCSR0A & (1<

UDR0=Instruction; //发送指令

for(i=0;i

while ( !( UCSR0A & (1<

} //发送所有参数 checksum=ID+ParameterLength+Instruction+2;

for(i=0;i

11

while ( !( UCSR0A & (1<


武术擂台仿人机器人系统及电路设计 - 图文(3).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:概率统计习题册详细答案

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: