ImageVerifierCode 换一换
格式:DOC , 页数:15 ,大小:1.34MB ,
资源ID:2232117      下载积分:15 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/2232117.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(单片机控制智能小车.doc)为本站会员(b****3)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

单片机控制智能小车.doc

1、单片机项目实验报告单片机项目报告智能小车控制 班级:自动化21091姓名:邸维汉 刘会丽 石钱坤学号:102010330420101032152010103122目录一、 前言二、 方案设计与论证1) 控制器模块选取2) 电机模块选取3) 电机驱动器模块选取4) 电源模块选取三、 硬件设计1) 主控系统2) 电机模块3) 电机驱动模块4) 电源模块5) 按键模块四、 软件设计1) 直行设计2) 转弯设计3) 调速设计五、 调试中存在的问题六、 参考文献一、前言:随着汽车工业的迅速发展,关于汽车的研究也就越来越受人关注。全国电子大赛和省内电子大赛几乎每次都有智能小车这方面的题目,全国各高校也都很

2、重视该题目的研究。可见其研究意义很大。本设计就是在这样的背景下提出的,指导教师已经有充分的准备。本题目是结合科研项目而确定的设计类课题。我们设计的智能电动小车该具有圆形运行、三角形运行、矩形运行和三者一起运行的功能。都是运行一循环自动停车。根据题目的要求,确定如下方案:在现有玩具电动车的基础上,加了四个按键,实现对电动车的运行轨迹的启动,并将按键的状态传送至单片机进行处理,然后由单片机根据所检测的各种按键状态实现对电动车的智能控制。这种方案能实现对电动车的运动状态进行实时控制,控制灵活、可靠,精度高,可满足对系统的各项要求。本设计采用STC89C52单片机。以STC89C52为控制核心,利用按

3、键的动作,控制电动小汽车的轨迹。实现四种运行轨迹。STC89C52是一款八位单片机,它的易用性和多功能性受到了广大使用者的好评。二、方案设计与论证1) 控制器模块选取我们采用STC公司的STC89S52单片机作为主控制器,STC公司的单片机内部资源比起ATMEL公司的单片机来要丰富的多,它在5V供电情况下,最多支持80M晶振、且内部有512B的RAM数据存储器、片内含8k空间的可反复擦些1000次的Flash只读存储器、1K的EEPROM、8个中断源、4个优先级、3个定时器、32个IO口、片机自带看门狗、双数据指针等。但是不兼容Atmel。从方便使用的角度考虑,我们选择了此方案2) 电机模块选

4、取采用普通直流电机。直流电机运转平稳,精度有一定的保证。直流电机控制的精确度虽然没有步进电机那样高,但完全可以满足本题目的要求。通过单片机的PWM输出同样可以控制直流电机的旋转速度,实现电动车的速度控制。并且直流电机相对于步进电机价格经济。3) 电机驱动器模块选取采用电机驱动芯片L298N。L298N为单块集成电路,高电压,高电流,四通道驱动,可直接的对电机进行控制,无须隔离电路。通过单片机的I/O输入改变芯片控制端的电平,即可以对电机进行正反转,停止的操作,非常方便,亦能满足直流减速电机的大电流要求。调试时在依照芯片手册,用程序输入对应的码值,能够实现对应的动作。4) 电源模块选取在本系统中

5、,需要用到的电源有单片机的5V,L298N芯片的电源5V和电机的电源7-15V。所以需要对电源的提供必须正确和稳定可靠。用9V的锌电源给前、后轮电机供电,然后使用7805稳压管来把高电压稳成5V分别给单片机和电机驱动芯片供电。因此为了方便,这里我们采用12V电源给电机供电,再用7805转换成5V电源给单片机使用。三、硬件设计小车采用四轮驱动,一侧的前后两个车轮共用一个电机驱动,另外两个前后轮共用一个驱动,调节左右车轮转速从而达到控制转向的目的。按键模块单片机最小系统L298N电源模块电机模块系统结构框图 实物连接:3.2、电机驱动模块L298N驱动直流电机,它靠两个引脚控制一个电机的运动。小车

6、采用四轮驱动,小车两侧的电机短接起来各接到L298N的一个输出端。通过调制两边轮子的转速或正反转来达到控制小车转向的目的。芯片引脚和功能如图1,驱动电路如图2。EN A(B)IN1(IN3)IN2(IN4)电机运行情况HHL正转HLH反转H同IN2(IN4)同IN2(IN4)快速停止LXX停止将L298N的IN0、1、2、3,接到P1.0到P1.3上,ENA、ENB接到P3.2、P3.3。3.3、电机模块电机模块采用4块电机同时驱动,这里将同一侧电机短接接到L298N的一个输出端。3.4、电源模块采用两片7805电压稳压5V后给单片机系统和其他芯片供电供电,但缺点是压降过大,消耗的功率过大,发

7、热量过大。3.5、 按键模块本系统添加4个按键,用来选择控制小车。并接于P2.0到P2.3口上。四、软件设计是否有键按下?开始 检测按下哪个键?运行三角形运行圆形运行矩形NY总体流程图运行以上3个轨迹S1按下S2按下S3按下S4按下4.1、小车直行设计:若要求小车直走,这需要给4个电机正转命令。根据L298N芯片手册EN A(B)IN1(IN3)IN2(IN4)电机运行情况HHL正转HLH反转H同IN2(IN4)同IN2(IN4)快速停止LXX停止这里将P1=0xfa。4.2、小车转弯设计:若要求小车转弯,需要给一侧电机正转,一侧电机反转或者不旋转。这样将P1=0xf8或者P1=0xf9.4.

8、3、小车调速设计:若要求车调速,只需用PWM来控制L298N的ENA和ENB就可以对小车进行调速。这里我使用定时器T0的工作模式2自动重装。并赋初值TH0=0xf6;TL0=0xf6;U产生高频脉冲。C语言源代码实现:#includeT#define uchar unsigned char#define uint unsigned intvoid trigon(uint ,uint ,uint ,uint ,uint ,uint);void round(uint ,uint);void rectangle(uint, uint, uint, uint, uint ,uint, uint, ui

9、nt);void delay(uint k);void PWMA(uchar n);void PWMB(uchar n);uchar keys();sbit P3_2=P32;sbit P3_3=P33;void main()uchar key;TMOD=0x12;EA=1;ET0=1;ET1=1;TH0=0xf6;TL0=0xf6;TH1=(65536-50000)/256;TL1=(65536-50000)%256;TR0=1;TR1=1;P2=0XFF;while(1)jump=0;key=keys(); / c稳定运行 d转向 e稳定运行 f转向 g稳定运行 h转向 if(key=0x

10、fe)/ c d e f g h trigon(30,5,30,10,30,16); if(key=0xfd)round(13,70); / c稳定运行 d转向 e稳定运行 f转向 g稳定运行 h转向 i稳定运行 j转向if(key=0xfb)/ c d e f g h i jrectangle(30,4,30,4,30,4,30,16);if(key=0xf8)trigon(30,5,30,10,30,16);jump=0;delay(1000);round(13,70);jump=0;delay(1000);rectangle(30,4,30,4,30,4,30,16);void time

11、r0() interrupt 1num0+;void timer1() interrupt 3num1+;TH1=(65536-50000)/256;TL1=(65536-50000)%256;void trigon(uint c,uint d,uint e,uint f,uint g,uint h)uint aa,bb,cc,dd,ee;aa=c+d;bb=aa+e;cc=bb+f;dd=cc+g;ee=dd+h;delay(3000);num1=0;num0=0;while(!jump& key!=0)if(num1=1) / 正转稳定运行P1=0xfa;PWMB(70);PWMA(70)

12、;if(num1c+1)&num1(aa+1)&num1(bb+1)&num1(cc+1)&num1(dd+1)&num1ee) /停止num1=0;num0=0;P1=0xf0;jump=1;P3_2=0;P3_3=0;key=0;void PWMA(uchar n)if(num0=100)num0=0;五、 调试中出现的问题1 转向时间需要慢慢调,时间长,旋转弧度大;时间短,旋转弧度小。2 直行时,由于每个电机的性能不一样,导致两侧占空比一样时,小车会存在转弯,这样需要微调占空比。六、 参考文献1 楼然苗,李光飞. 51系列单片机设计实例.北京航空航天大学出版社2 何希才. 常用集成电路应用实例.电子工业出版社3 王静霞 单片机应用技术(C语言版) 电子工业出版社 第 15 页 共 15 页

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1