4智能避障小车系统的设计与实现

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

智能避障小车系统的设计与实现

电子信息工程 200709837 王小龙

罗维薇

摘要

本设计以单片机STC89C52为控制核心,设计实现具有避障和里程显示功能的智能小车。其主要由三部分组成:液晶显示模块、避障模块和电机驱动模块。

智能避障小车分别运用直接反射式红外传感器TCRT5000和霍尔传感器3144来进行路径检测和里程计算,并将实时数据传送到液晶显示模块和单片机分别进行显示和数据处理。并用L298N电机驱动芯片控制小车的运行状态。

Abstract

This design based on the single chip computer STC89C52 as control core, design a car with obstacle avoidance and mileage display function. It mainly consists of three parts: the liquid crystal display module, obstacle avoidance module and motor driver module.

Intelligence obstacle avoidance car detecting external environment by direct reflex respectively infrared sensor TCRT5000 and hall sensor 3144, transfer the real-time data to LCD module and single chip microcomputer to display respectively and data processing. And use L298N motor drive chip to control the operation status of the car.

一、绪论

1.课题背景介绍

随着单片机技术的迅速发展,其控制能力越来越强大。人们利用单片机强大的控制功能设计出各种各样的系统,全国电子设计大赛几乎每次都有智能小车这方面的题目,全国各高校也都很重视该题目的研究。本设计就是在这样的背景下提出的,设计的智能小车能够通过光电开关完成避障功能,并且可以计算和显示出小车的行驶距离。

2.设计的主要内容

(1)采用STC89C52单片机作为控制小车的核心器件,用收发一体的红外传感器光电TCRT5000来检测和感应外界环境。

(2)用L298N驱动芯片控制电动小车的运行。

(3)用霍尔传感器计算小车行驶的距离并用1602液晶显示器显示。

这种方案能实现对智能小车的运动状态进行实时控制,控制灵活、可靠,可满足对系统的各项要求。

二、系统的总体设计

1.硬件总体设计

以AT89C51单片机为核心的控制电路,采用模块化的设计方案,运用红外光电传感器、霍尔传感器,实现小车在行驶中自动躲避障碍物、测量里程等问题。并将测量数据传送至单片机进行处理,然后由单片机根据所检测的各种数据实现对电动小车的智能化控制。

在本系统中,反射式红外光电传感器检测障碍物,然后将信号传送到单片机系统进行处理,使小车沿轨道自主行走;通过霍尔元件测量小车行驶里程;采用L298N芯片控制电机的转向,实现电动小车的正反向行驶、快慢速行驶及转弯;采用1602液晶显示器显示小车行驶的路程。此系统采用软件方法来解决复杂的硬件电路部分,使系统硬件简洁化,各类功能易于实现,能满足系统的要求,其原理图如图1所示。

0图2 主程序流程图

在主程序模块中,需要完成对各模块接口的初始化,LCD1602的初始化、中断向量的设计以及开中断、循环等等待工作。另外,在主程序模块中还需要设置启动/清除标志寄存器,并对它们进行初始化,然后分别完成不同的操作,主程序流程图如图2所示。

三、系统的具体实现

1.硬件设计

(1) LCD液晶显示电路

图3 液晶显示器连接电路

(2)电机驱动电路

本设计采用L298N作为电机的驱动芯片,L298N是SGS公司的产品,内部包含四通道逻辑驱动电路。是一种二相和四相电机的专用驱动器,内含两个H桥的高电压大电流双全桥式驱动器,接收标准TTL 逻辑电平信号,可驱动46V、2A以下的电机。其连接如图4所示。

VCC

M2

图4 L298N驱动电路原理图

(1)液晶显示模块程序

进入主函数后,执行完1602LCD的初始化函数,然后用write_com(0x80)指令,命令先将数据指针定位在第一行第一个字处,然后写入第一行要显示的数据;在第二行重新定位数据指针write_com(0x80+0x40),将数据指针定位在第二行,然后再将第二行所要显示的数据写入,继而显示。

(2)里程计算程序

设车轮转动了N次,智能小车车轮的半径为R,则里程S为:S=N×2π×R。

四、系统测试及总结

1.测试

(1)测试仪器

测试仪器包括数字万用表、MCS51仿真机、直流稳压电源等。

(2)测试结果

在程序烧入完成之后,将智能小车放在如图5所示的迷宫入口处,小车根据光电开关等装置发送和接收的信息,基本在距墙面12mm处能够躲避障碍,最终顺利地走出迷宫。

2.实物图

图5 智能避障小车实物图

3.结论

本次设计的智能小车能够显示智能小车行驶的路程,能够控制智能小车避开障碍物或走出迷宫。但是由于自己的能力有限,本次设计还存在许多不足之处。如:不能控制小车行驶的速度、小车的转弯速度较慢、红外传感器的检查距离过短仅有12mm。希望今后有机会再对此设计进行改进。

参考文献

[1] 潘晓宁.单片机程序设计实践教程.北京:清华大学大学出版社,2009

[2] 江志红.51单片机技术与应用系统开发案例精选.北京:清华大学大学出版社,2008

[3] 来清民.传感器与单片机接口及实例.北京:航空航天大学出版社,2008

[4] 蔡明文.单片机课程设计.湖北:华中科技大学出版社,2007

[5] 刘同法.单片机外围接口电路与工程实践.北京:航空航天大学出版社,2009

相关文档
最新文档