摘要:规划了一种能顺畅完结在模仿房间内主动救活使命的智能救活机器人。计划以STM32F103嵌入式芯片为操控中心,选用传感器组收集环境信号,操控机器人举动。该智能机器人能完结主动循迹、主动避障、主动寻觅火源并敏捷精确救活、回家的功用。试验结果表明:该机器人举动灵敏快速,具有很高的精确性和稳定性。
导言
跟着人工智能和计算机技能研讨的深化,智能机器人也成为科学爱好者和高校学子研讨的热门,具有很大的开展空间。智能机器人技能触及主动操控原理、传感器技能、信息处理、人工智能等学科,具有很强的综合性,是一个国家开展水平的重要标志。
本规划的研讨初衷来源于救活机器人竞赛,竞赛场所将选用国际标准竞赛场所,竞赛场所平面图如图1所示。竞赛场所的墙面高为33cm,厚为2 cm,由木头做成。墙面刷成白色。竞赛场所的地板是被漆成黑色的润滑木制板。场所中所有的走廊和门口都是46 cm的开口,一个白色的2.5 cm宽的白色带子或白漆印迹表明房间人口,在间隔火焰30 cm的圆上有一条2.5 cm宽的白线。依据要求,该机器人要在模仿的四室一厅房间内完结发现并承认火源、救活和回家(回到起点H)等功用。
本文以STM32F103嵌入式芯片为中心,完结救活机器人的软、硬件规划。当机器人发动后,前部和左右的红外测距传感器为机器人的避障功用和沿墙走方法供给参阅信号。机器人的运动速度以及运动方向由处理器输出的PWM信号来操控。火焰传感器检测房间内火源,发现火源后机器人朝向火源方向行走,底部的灰度传感器检测地上白线判别机器人是否接近火源,操控机器人暂停,发动电扇救活,救活后回家。
1 体系硬件规划
依据规划要求,本体系首要由STM32F103、传感器模块、直流电机驱动模块、电扇模块、电源模块等构成。体系框图如图2所示。
1.1 机器人全体布局
机器人左右两轮别离用两个转速和力矩完全相同的直流电机进行驱动,机器人前部装一个万向轮,这样,能够轻松地使机器人改动运转方向和运动速度。机器人前面装有电扇、火焰传感器和红外传感器,头部底侧装有灰度传感器,左右两边各有3个红外测距传感器,两边的传感器能够别离丈量不同规模内的障碍物间隔。
1.2 微操控器模块
体系传感器模块要不断收集环境信息,要求操控芯片有较高的实时处理才能和较高的处理速度,因而,体系选用嵌入式芯片STM32F103该芯片运用ARM先进架构的Cortex—M3内核,CPU频率可达72 MHz,具有两个16位ADC用于高速收集数据收集,15个I/O端口用于衔接外部设备。I/O端口作为输进口读取检测端口和传感器组的数据,作为输出端口用于驱动电机和电扇。4个PWM定时器用于驱动大功率直流电机。芯片具有速度快、功耗低、可靠性高、实时性强等长处。
1.3 传感器模块
传感器模块首要由红外测距传感器、火焰传感器和灰度传感器三类组成。
红外测距传感器首要检测障碍物(墙面),防止机器人撞墙。本规划选用光电式红外传感器E18-D80NK,它是集红外发射模块和红外接纳模块于一体的数字传感器,有用检测规模为3~80 cm可调,指向角≤15°。依据竞赛场所特色,本规划选用7个此类传感器,这样的传感器布局能够收集所需的各种信号,精确测障,灵敏调整运转方向,确保机器人运动过程中不受阻。传感器的散布如图3所示。
火焰传感器用来检测火源,寻觅火源方位。选用5路火焰传感器组成火焰传感器组,传感器组的规划如图4所示,这种结构能够勘探180°规模内火焰信号源。机器人在房间门口就可检测房间内是否有火源,若无火源则直接退出该房间循迹下一个房间,很多节省了时刻。
地上灰度传感器装置于机器人前部的底座上,用于检测地上反射光线的强度。本规划选用QTI灰度传感器,该器材可作为红外接纳器和发射器,内嵌日光过滤器,可防止日光的搅扰。其数字信号输出首要用来检测竞赛场所中火源周围的白线,操控机器人在有火源的白色圆弧处暂停。
1.4 电机驱动模块
为了操控机器人的运动速度和方向,规划了一种H桥驱动电路。该电路以IRF4905和IRF3205 MOS管为开关元件,以IRF1210为栅极驱动芯片。主控芯片发生的PWM信号操控驱动芯片,从而操控机器人左右轮的转速和万向轮的转向。驱动电路的电路图如图5所示。救活电扇的电机选用大功率MOs驱动器,由伺服电机输出端的信号驱动。
1.5 其他模块
为确保体系正常作业和顺畅救活,体系还包含电源模块、时钟模块和电扇模块。以电源模块为例,电源模块经过专用的电源转化芯片7805发生传感器所需的5 V电源,经过LM1117发生主操控器所需的3.3 V电源。电源模块如图6所示。
2 体系软件规划
体系软件选用C言语编程,首要包含主程序、运动操控程序、救活程序和回家程序等部分,首要用到的算法有沿墙走算法和趋光走算法。在程序规划中,经过传感器收集信息,依照沿墙走算法操控机器人的举动,当发现火源后依照趋光走算法敏捷、精确地接近火源、救活并回家。程序运转中应防止机器人磕碰障碍物(墙面)。主程序操控流程图如图7所示。