
数控技术
基于单片机控制的机器人避障系统的设计
刘会巧
(天津理工大学中环信息学院,天津300380)
与克
摘要:本文以德音施公司的教学机器人为实验平台,它的微控制器是8位的AVR单片机(ATmega8)。本文实现通过采用红外传感器对障辞物进行探测,遇到障碍物后用发光二极管发光实现报警,并由单片机控制机器人改变运行路线的设计
关键词:单片机:机器人;避障;红外传感器
中图分类号:TP242.6 1引言
文献标识码:A
随着经济及科技的快速发展,智能机器人的应用也越来越广泛。智能机器人能够通过传感器来感知外界,并达到避障功能。如何让机器人在行进过程中识别障碍物并精准避障是一个非常重要的课题。本文通过采用红外传感器来识别有无障碍物,并在遇到障碍物时用发光二极管发光实现报警,同时用AVR单片机控制机器人改变行进路线的方法实现机器人识别障碍物并避障的功能。
2系统设计方案 2.1设计目的
本文的设计目的是机器人能从无障碍地区启动前进,感应前进路线上的障碍物后实现报警,并根据障碍物的位置选择下一步行进方向实现避障功能。
起始开始/复位蜂聘器发出报警
红外践传感器正常运转
任程保
Ye
发高二意小车数息担 Bat
小车融续保持原状态联续运
结束
图1机器人避障系统软件流程图
收稿日期:2017-07-12
产
文章编号:1007-9416(2017)07-0022-02
为了实现机器人避障,我们需要德普施公司的机器人,用AVR 单片机控制机器人的前后左右运动;需要红外传感器,其中红外发射器发出红外光来照射机器人的路线,然后确定何时有光线从障碍物反射到红外探测器,以此确定障碍物的位置;需要发光二极管,当遇到障碍物的时候,通过发光来提示机器人前方有障碍物;需要蜂鸣器,当机器人在启动和复位的时候进行提示。
2.2软件设计
根据机器人避障系统的设计目的,我们需要对AVR单片机进行编程以便实现避障报警等功能。其中机器人避障系统的软件流程图如图1所示。
其中实现红外线传输接收信号的程序:
while(1)(for(uint16_t counter=0; counter<38 ;counter++)//发送红外线脉冲
(PORTD|=_BV(PD6);delay_nus(13), PORTD&=~_BV(PD6);delay_nus(13),
if(irDetectLeft==0)&&(irDetectRight==0)//左右两边同时接收到红外线
(Backward(); Left_Tum(O),Left_Tum();baojingO; printf("前"),1
elseif(irDetectLeft==0)//只有左边接收到红外线
{BackwardO),Right_Turn(),baojing();printf("左"), elseif(irDetectRight==0)//只有右边接收到红外线
温烫肤主费
图2机器人避障系统硬件电路原理图
作者简介:刘会巧(1988一),女,天津人,硕士,助教,研究方向:电机与电器万方数据