清洁机器人系统设计 - 图文(7)

2019-08-26 18:55

zkb2分别为ENA和ENB的占空比,取值0?50之间。

图5.2

两组PWM波产生程序流程图

具体的程序设计如下: //初始化定时器 中断 void init() {

TMOD=0x01; TH0=0xFF; TL0=0xF6; EA=1; ET0=1;

26

}

TR0=1;

//中断函数+脉宽调制 void timer0() interrupt 1 { }

5.2 台阶检测

清洁机器人在执行清洁工作时,由于对环境没有认知性,在台阶和楼梯边上有可能会跌倒,而损坏本身电子元件。为了更好地保护清洁机器人,本设计在清洁机器人的底盘前方设置了两个红外传感器器来检测台阶,当其中一个传感器检测到有信号输入,单片机会做出反应,使行走电机停止,然后后退一段距离,而后原地中心旋转一个角度,继续前行,避开台阶和楼梯。

程序设计如下: //台阶检测 void step_deal()

27

TH0=0xFF; //恢复定时器初始值 TL0=0xF6; t++; if(t>=50)

{t=0;}

if(t<=zkb1) //当小于占空比值时输出低电平

{ENA=0;} //高于时是高电平,从而实现占空比的调整

else

{ENA=1;}

if(t<=zkb2)

{ENB=0;}

else

{ENB=1;}

{

}

5.3 避障处理

主动回避障碍是清洁机器人的一个基本的安全运动要求,也是机器人能否实现自主作业的关键。 5.3.1 未知环境探测

清洁机器人被置于一个未知环境下,对环境一无所知,不存在任何先验信息, 包括环境大小、形状、障碍物位置等等,而且环境中不存在如路标等人为设定的参照物。这就需要避障系统首先要求对清洁机器人四周环境进行探测,显然,单一传感器是不能满足要求的。考虑到传感器价位和技术水平的实际情况,用红外传感器和碰撞传感器组成传感器网络对周围环境进行探测是较好的选择,红外传感器有一定的预瞻能力,机械式碰撞传感器性能可靠。关于这两种传感器在第三章已有详细介绍,此处不再赘述。利用红外传感器可以及早地发现远处存在的障碍物,再综合碰撞传感器的探测情况,依据一定的算法,对传感器给出的不确定信息融合,可以得出较为真实的环境状况,从而有利于机器人做出正确的判断。

if(tj_1==1||tj_2==1) { }

delay(5);

if(tj_1==1||tj_2==1) { }

back(); delay(5); turn(); delay(5);

28

5.3.2 实时避障方法的实现

在室内环境中,不仅障碍物形状复杂、摆放零乱,而且由于人员的走动等经常会带来运动的障碍物,这样,为保证机器人能够在室内环境中及时、安全、有效的避障显得尤其重要。

对于避障问题的研究,每年都有许多新的方法或者对传统方法的改进出现,比较常见的方法有势场法、栅格法等。由于本文所涉及到的机器人行为,不需要机器人到达精确的目标位置,因此本文给出的是实际应用中一种简单有效的基于多传感器的反应式实时避障策略,它具有快速、实时、高效的特点,特别适合在未知动态环境中进行避障。

部分程序设计如下: void bizhang() {

if(from==1&&left==1&&right==1&&p_left==1&&p_right==1) //没有障碍 { }

if(p_left==0) //左边碰撞传感器有信号 { }

if(p_right==0) //右边碰撞传感器有信号 {

29

go();

delay(5); if(p_left==0) { }

back(); delay(5); turn_R(); delay(5);

}

delay(5); if(p_right==0) { }

back(); delay(5); turn_L(); delay(5);

if(from==0&&left==0) //前、左红外传感器有信号 { }

if(from==0&&right==0) //前、右红外传感器有信号 {

delay(5);

if(from==0&&right==0) { }

30

delay(5);

if(from==0&&left==0) { }

back(); delay(5); turn_R(); delay(5);

back(); delay(5); turn_L(); delay(5);


清洁机器人系统设计 - 图文(7).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:汉中市茶叶生产企业名录2018版201家 - 图文

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

马上注册会员

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