智能车控制系统.docx
- 文档编号:8405650
- 上传时间:2023-01-31
- 格式:DOCX
- 页数:23
- 大小:778.54KB
智能车控制系统.docx
《智能车控制系统.docx》由会员分享,可在线阅读,更多相关《智能车控制系统.docx(23页珍藏版)》请在冰豆网上搜索。
智能车控制系统
智能车控制系统
摘要本文介绍了一种配备机械手的智能车控制系统,真正摆脱了接线的束缚,移动性更强,更方便易用。
本系统采用宏晶公司生产的STC89C52RC单片机作为主控芯片,由PC上位机控制端,串口无线模块发射端,下位机接收命令端(包括智能车和机械手)组成。
该项目巧妙的将无线传输,无线控制融合在一起,形成了一套完整的系统,该系统可以方便可靠的用于货物搬运,矿井探险,灾害现场搜救以及恶劣环境下作业等领域,不仅保障了工作人员的安全,而且使工作效率大大提高。
关键词智能车系统,单片机,无线控制,机械手
ABSTRACT
Thispaperpresentsasmartcarwitharobotcontrolsystem,therealfreefromtheshacklesofcable,moremobile,moreconvenienttouse.Thesystemusesthecompany'sSTC89C52RCmacrocrystalasthemainchipmicrocontroller,PCcontrolfromthePCside,theserialtransmitterwirelessmodule,receivingthecommandendofthenextcrew(includingSmartcarsandrobot)component.Theprojectiscleverwirelesstransmission,wirelesscontroltogethertoformacompletesystemthatcanbeconvenientandreliabletransportationforgoods,mineexploration,searchandrescueanddisastersiteandotherareasofpoorworkingconditions,notonlyprotectstheStaffsafety,butalsoefficiencyisgreatlyimproved.
KeyWords:
IntelligentVehicleSystemsmicrocontroller
WirelessControlManipulator
目录
1绪论1
1.1课题的研究背景1
1.2智能车的发展状况1
1.3课题研究内容1
2系统模块组成2
3电路设计3
3.1单片机模块设计3
3.2电源模块设计7
3.3串口无线模块设计8
3.3.1无线模块简介9
3.3.2模块的典型应用电路12
3.4直流电机驱动模块设计13
3.5指示灯模块15
3.6电脑与单片机串口通信电路17
4软件设计18
4.1下位机接收端设计19
4.2上位机发射端设计21
5结论22
参考文献24
附录25
附录125
附录226
附录328
答谢29
1绪论
1.1课题的研究背景
随着通信技术的飞速发展和计算机技术的广泛应用,数据采集和数据传输技术也得到了很好的发展,应用领域也越来越广泛。
目前工业控制现场、工程、生产车间等部门以有线网络居多,但存在布线复杂的缺点,不仅如此还存在对信息实时性能要求较高条件恶劣这样的环境,在这样的环境下作业不仅危险而且效率不高。
1.2智能车的发展状况
智能车是机器人学中的一类,它整合了自动控制、人工智能、机械工程、信息融合、传感器技术、图像处理技术以及计算机等多门学科的最新研究成果,是当前科技发展最为活跃的领域之一。
智能车辆的研究可以追溯到1954年美国BarretElectronics公司研制的世界上第一台自动引导车辆系统AGVS(AutomatedGuidedVehicleSystem),并在SouthCarolina州的MercuryMotorFreight公司的仓库内投入运营,用于实现物品的自动运输。
1.3课题研究内容
本文设计的配备机械手的智能车系统使用实时控制的功能,由人在电脑端发出控制命令,通过串口和单片机实现命令传输,单片机将命令编码后传给发射模块,发射模块采用FSK方式调制在433MHz民用频段,能实现较远距离通信,收端模块解调出信号,送单片机解码后输出控制指令,控制智能车小车的运动和机械手的动作,真正实现了人机互动的功能。
本课题的基本任务如下:
熟悉设计题目涉及的相关知识;
设计系统电源模块电路,电机驱动电路;
设计系统无线传输模块电路,LED指示灯电路;
设计串口通信电路;
提供与设计相关的附录。
该系统真正摆脱了接线的束缚,移动性更强,更方便易用。
该系统的上位机可视化界面是由VB语言编写,下位机由单片机控制系统,智能车和机械手的电机驱动模块,无线数据传输模块以及LED指示灯模块组成。
连接好串口线和无线发送模块,然后打开智能车电源,通过上位机发送命令来控制智能车的运动状态和机械手的开合升降,从而使其方便有效地为我们服务。
2系统模块组成
系统采用模块化处理,包括中央处理系统,电机驱动系统,无线传输系统以及PC上位机控制软件。
系统各部分联系结构框图如图2.1和2.2所示:
图2.1下位机模块组成
图2.2上位机模块组成
3电路设计
3.1单片机模块设计
单片机是一种集成在电路芯片,是采用超大规模集成电路技术把具有数据处理能力的中央处理器CPU随机存储器RAM、只读存储器ROM、多种I/O口和中断系统、定时器/计时器等功能(可能还包括显示驱动电路、脉宽调制电路、模拟多路转换器、A/D转换器等电路)集成到一块硅片上构成的一个小而完善的计算机系统。
常用单片机芯片:
ATMEL单片机(51单片机):
ATMEl公司的8位单片机有AT89、AT90两个系列,AT89系列是8位Flash单片机,与8051系列单片机相兼容,静态时钟模式;AT90系列单片机是增强RISC结构、全静态工作方式、内载在线可编程Flash的单片机,也叫AVR单片机。
AT89S52是一种低功耗、高性能CMOS8位微控制器,具有8K在系统可编程Flash存储器。
使用Atmel公司高密度非易失性存储器技术制造,与工业80C51产品指令和引脚完全兼容。
片上Flash允许程序存储器在系统可编程,亦适于常规编程器。
在单芯片上,拥有灵巧的8位CPU和在系统可编程Flash,使AT89S52为众多嵌入式控制应用系统提供高灵活、超有效的解决方案。
AT89S52具有以下标准功能:
8k字节Flash,256字节RAM,32位I/O口线,看门狗定时器,2个数据指针,三个16位定时器/计数器,一个6向量2级中断结构,全双工串行口,片内晶振及时钟电路。
另外,AT89S52可降至0Hz静态逻辑操作,支持2种软件可选择节电模式。
空闲模式下,CPU停止工作,允许RAM、定时器/计数器、串口、中断继续工作。
掉电保护方式下,RAM内容被保存,振荡器被冻结,单片机一切工作停止,直到下一个中断或硬件复位为止。
由于AT89S52需要专门下载器,所以我们选择STC89C52。
②STC单片机:
STC公司的单片机主要是基于8051内核,是新一代增强型单片机,指令代码完全兼容传统8051,速度快8~12倍,带ADC,4路PWM,双串口,有全球唯一ID号,加密性好,抗干扰强。
本系统采用宏晶公司生产的STC89C52RC单片机作为主控芯片。
它具有加密性强,低功耗,价格实惠,高速可靠,抗干扰性能优良等特点,而且还可以直接通过ISP下载程序。
选用STC89C52单片机的理由是:
降低成本,提升性能,原有程序直接使用,硬件无需改动。
STC89C52单片机具有在系统可编程(ISP)特性,ISP的好处是:
省去购买通用编程器,单片机在用户系统上即可下载/烧录用户程序,而无须将单片机从已生产好的产品上拆下,再用通用编程器将程序代码烧录进单片机内部。
有些程序尚未定型的产品可以一边生产,一边完善,加快了产品进入市场的速度,减小了新产品由于软件缺陷带来的风险。
由于可以将程序直接下载进单片机看运行结果故也可以不用仿真器。
STC89C52单片机在销售给用户之前已在单片机内部固化有ISP系统引导程序,配合PC端的控制程序即可将用户的程序代码下载进单片机内部,故无须编程器(速度比通用编程器快)。
不要用通用编程器编程,否则有可能将单片机内部已固化的ISP系统引导程序擦除,造成无法使用STC提供的ISP软件下载用户的程序代码。
STC89C52单片机的内部RAM只有128(89C51)/256(89C52)可供使用。
低128字节的内部RAM(地址:
00H-7FH),可直接寻址或间接寻址,(data/idata);高128字节的内部RAM(地址:
80H-FFH),只能间接寻址(普通89C51没有),(idata);特殊功能寄存器SFR(地址:
80H-FFH),只能直接寻址,(data)。
特殊功能寄存器SFR和高128字节的内部RAM是通过寻址方式来区分的,STC89C52单片机扩展了256个字节RAM。
STC89C52单片机管脚图如图3.1:
图3.1STC89C52RC管脚图
使系统运行的单片机最小系统包括:
电源,时钟震荡电路,复位电路,如图3.2所示即为单片机最小系统电路图。
图3.2最小系统电路图
3.2电源模块设计
电子产品中,常见的三端稳压集成电路有正电压输出的78××系列和负电压输出的79××系列。
顾名思义,三端IC是指这种稳压用的集成电路,只有三条引脚输出,分别是输入端、接地端和输出端。
它的样子象是普通的三极管,TO-220的标准封装,也有9013样子的TO-92封装。
用78/79系列三端稳压IC来组成稳压电源所需的外围元件极少,电路内部还有过流、过热及调整管的保护电路,使用起来可靠、方便,而且价格便宜。
该系列集成稳压IC型号中的78或79后面的数字代表该三端集成稳压电路的输出电压,如7806表示输出电压为正6V,7909表示输出电压为负9V。
因为三端固定集成稳压电路的使用方便,电子制作中经常采用。
所以本系统电源我们采用7.2V飞思卡尔大容量锂电池,经L7805三端稳压器得到+5V电压给单片机系统供电,但是电机驱动模块和单片机系统一定共地,否则系统不能正常工作,电源模块电路设计如图3.3所示。
图3.3电源模块电路
3.3串口无线模块设计
CC1000是Chipcon公司推出的单片可编程RF收发芯片,它基于Chipcon'sSmartRF技术,可工作在ISM频段(300~1000MHz)。
CC1000集成了射频发射、射频接收、PLL合成、FSK调制解调、可编程控制等多种功能。
CC1000采用锁相环技术,发射频率是通过内部的频率合成器来配置的,可配置的范围为300~1000MHz,适合应用跳频协议,一般可配出10或20个频点,该芯片灵敏度为-109dBm,并可自动校准,可编程输出功率为-20dBm~+10dBm,通信速率可达78.6Kbps。
CC1000的主要工作参数可由一个串行接口编程设定,使用非常方便并且具有灵活性。
CC1000芯片的外围元件较少,且对精度要求不高,并提供三种编码方式与微控制器接口。
所以CC1000与一个微控制器和少数几个外接元件便可组成一个完整的RF收发系统。
图3.4CC1000应用电路
图3.4所示是CC1000的一个典型的应用电路,调节元器件C1-C13、L1-L3、R1的参数值可使CC1000工作在不同工作频率(300~1000MHz)。
微控制器可以通过CC1000的串行接口(PDATA、PAlE和PCLK)对CC1000进行设置,通过CC1000的DIO完成数据的接收和发送。
该系统我们使用的是基于CC1000的串口无线通信模块。
3.3.1无线模块简介
该无线数传模块是一款低成本,高性能的GFSK无线透明数据收发模块。
可工作在315/433/490/868/915MHzISM频段(国家开放免申请频段)。
具有尺寸小,功率大,灵敏度高,传输距离远,通讯数率高,内部自动完成通讯协议转换和数据收发控制等特点。
模块提供TTL或232串行数据接口,用户可通过上位机软件根据自己的需求灵活配置摸块的串行速率,工作信道,发射功率,通讯数率等参数。
该系列模块可广泛应用于各类无线数据传输领域,是设计无线数据传输产品的理想选择。
(注:
透明传输就是不改变客户的任何数据和协议)
无线模块特点:
低成本,高性能,高可靠性
GFSK调制方式,半双工通讯,空中收/发转换,网络连接,控制等操作,模块能够自动完成
433/490/868/915MHzISM频段,使用无须申请频段
最大输出功率100mW(20dBm),输出功率可在1-20dBm范围内调整
接收灵敏度高达-124dBm
接收工作电流35mA(可定做为30mA),休眠电流<10uA。
(要求定制TTL)
标准配置提供8个信道,满足用户多种通信组合方式的需求,用户可通过软件配置
通讯协议转换及射频收发切换自动完成,用户无须干预,简单易用
通讯速率1.2kbps-115.2kbps,用户可通过软件配置
传输距离远,开阔地无干扰情况下可达1.5Km以上
无线模块应用范围:
无线排队设备
防盗报警,智能卡
医疗和电子仪器仪表自动化控制
智能教学设备
家庭电器和灯光智能控制
婴儿监护
水、电、煤气,暖气自动抄表收费系统
PDA终端
无线会议表决、打分系统
工业设备数据无线传输
通讯接口定义:
无线数传模块提供了1个9针的连接器(JP1)其定义基于终端的连接方式见表1。
表1
序号
定义
说明
电平
备注
1
GND
电源地
电源地
2
VCC
电源DC
+3.6~5.0V
3
RxD/TTL
串行数据接收端
TTL
TxD
4
TxD/TTL
串行数据发射端
TTL
Rxd
5
SGND
信号地
信号地
6
A(TxD)
RS-485的A口或RS-232的TxD
7
B(RxD)
B(RxD)RS-485的B口或RS-232的RxD
8
无定义
9
无定义
接口定义中管脚3,4用于TTL电平数据收发,可与单片机或其它UART器件直接连接使用,6、7脚提供RS-232通讯接口,可与计算机串口直接相连。
通过跳线选择也可用于RS-485方式通讯,能直接连接RS-485设备。
该串口
无线模块的技术参数如表2所示。
表2技术参数
调制方式
FSK
工作频率
429.00~433.30MHz
发射功率
10dBm
接收灵敏度
-105dBm
发射电流
≤30mA
接收电流
≤10mA
接口速率
1200/2400/4800/9600/19200Bit/s用户可选
接口数据格式
8E1/8N1
工作电压
+3.6~5VDC
工作温度
-25℃~70℃
工作湿度
10%~90%相对湿度,无冷凝
外形尺寸
53mm×38mm×10mm
3.3.2模块的典型应用电路
通常串口无线模块和的发送端TXD和微处理器的接收端RXD,无线模块的接收端RXD和微处理器的发送端TXD相连接。
电脑通过串口线经MAX232电平转换后与微处理器进行正常通信,典型应用电路如图3.3.2所示。
图3.3.2典型应用电路
3.4直流电机驱动模块设计
对于智能小车来说,其驱动轮的驱动电机的选择就显得十分重要。
由于该系统中智能车运动不需要准确定位和精确测量,所以没必要选择步进电机。
我采用直流减速电机。
直流减速电机转动力矩大,体积小,重量轻,装配简单,使用方便。
由于其内部由高速电动机提供原始动力,带动变速(减速)齿轮组,可以产生较大扭力,价格比步进电机要便宜好多。
电机驱动芯片采用恒压恒流桥式2A驱动芯片L298N。
L298是SGS公司的产品,比较常见的是15脚Multiwatt封装的L298N,内部同样包含4通道逻辑驱动电路。
可以方便的驱动两个直流电机,或一个两相步进电机。
L298N芯片可以驱动两个二相电机,也可以驱动一个四相电机,输出电压最高可达50V,可以直接通过电源来调节输出电压;可以直接用单片机的IO口提供信号;而且电路简单,使用比较方便。
L298N可接受标准TTL逻辑电平信号VSS,VSS可接4.5~7V电压。
4脚VS接电源电压,VS电压范围VIH为+2.5~46V。
输出电流可达2.5A,可驱动电感性负载。
1脚和15脚下管的发射极分别单独引出以便接入电流采样电阻,形成电流传感信号。
L298可驱动2个电动机,OUT1,OUT2和OUT3,OUT4之间可分别接电动机,本实验装置我们选用驱动一组电动机。
5,7,10,12脚接输入控制电平,控制电机的正反转。
EnA,EnB接控制使能端,控制电机的停转,而且还支持PWM多级调速。
表3电机转动状态编码
左电机
右电机
左电机
右电机
电动车运行状态
1IN1
1IN2
2IN1
2IN2
1
0
1
0
正转
正转
前行
1
0
0
1
正转
反转
左转
1
0
0
0
正转
停
以左电机为中心原地左转
0
1
1
0
反转
正转
右转
0
0
1
0
停
正转
以右电机为中心原地右转
0
1
0
1
反转
反转
后退
1
1
1
1
杀停
杀停
立刻停止
由表3电机转动状态编码可知,只要设定两块L2981IN1,1IN2,2IN1,2IN2四个控制端口的不同编码,就可得到电动车的前进,后退,旋转以及机械手的开,合,升,降等不同的运行状态,且L298的最大输出电流为2.2A,可使电动车快速运行。
图3.4.1和图3.4.2为电机驱动L298N的电路图。
图3.4.1
图3.4.2
3.5指示灯模块
目前电路系统状态指示灯通常采用发光二极管(LED),LED是一种能够将电能转化为可见光的半导体,它改变了白炽灯钨丝发光与节能灯三基色粉发光的原理,而采用电场发光。
据分析,LED的特点非常明显,寿命长、光效高、无辐射与低功耗,LED的光谱几乎全部集中于可见光频段。
LED的内在特征决定了它具有很多优点,诸如:
体积小
LED基本上是一块很小的晶片被封装在环氧树脂里面,所以它非常小,非常轻。
耗电量低
LED耗电相当低,直流驱动,超低功耗(单管0.03-0.06瓦),电光功率转换接近100%。
一般来说LED的工作电压是2-3.6V,工作电流是0.02-0.03A;这就是说,它消耗的电能不超过0.1W,相同照明效果比传统光源节能80%以上。
使用寿命长
有人称LED光源为长寿灯。
它为固体冷光源,环氧树脂封装,灯体内也没有松动的部分,不存在灯丝发光易烧、热沉积、光衰等缺点,在恰当的电流和电压下,使用寿命可达6万到10万小时,比传统光源寿命长10倍以上。
高亮度、低热量
LED使用冷发光技术,发热量比普通照明灯具低很多。
环保
LED是由无毒的材料作成,不像荧光灯含水银会造成污染,同时LED也可以回收再利用。
光谱中没有紫外线和红外线,既没有热量,也没有辐射,眩光小,冷光源,可以安全触摸,属于典型的绿色照明光源。
坚固耐用
LED被完全封装在环氧树脂里面,比灯泡和荧光灯管都坚固。
灯体内也没有松动的部分,使得LED不易损。
本系统我们采用2颗红绿LED经限流电阻后直接用I/O驱动,用来指示系统的运行情况,简单方便,电路设计如图3.5所示。
图3.5电路设计
3.6电脑与单片机串口通信电路
串口是计算机上一种非常通用设备通信的协议。
大多数计算机包含两个基于RS232的串口。
串口同时也是仪器仪表设备通用的通信协议,很多GPIB兼容的设备也带有RS-232口。
同时,串口通信协议也可以用于获取远程采集设备的数据。
RS-232(ANSI/EIA-232标准)是IBM-PC及其兼容机上的串行连接标准。
可用于许多用途,比如连接鼠标、打印机或者Modem,同时也可以接工业仪器仪表。
用于驱动和连线的改进,实际应用中RS-232的传输长度或者速度常常超过标准的值。
RS-232只限于PC串口和设备间点对点的通信,RS-232串口通信最远距离是50英尺。
RS232-C接口连接器一般使用型号为DB-9的9芯插头座,只需3条接口线,即"发送数据"、"接收数据"和"信号地"即可传输数据,在RS232的规范中,电压值在+3V~+15V(一般使用+6V)称为"0"或"ON"。
电压在-3V~-15V(一般使用-6V)称为"1"或"OFF",计算机上的RS232"高电位"约为9V,而"低电位"则约为-9V。
RS232为全双工工作模式,其信号的电压是参考地线而得到的,可以同时进行数据的传送和接收。
在实际应用中采用RS232接口,信号的传输距离可以达到15m。
不过RS232只具有单站功能,即一对一通信。
图3.6串口通信电路
MAX232芯片是美信公司专门为电脑的RS-232标准串口设计的单电源电平转换芯片,使用+5V单电源供电。
TTL/CMOS数据从T1IN、T2IN输入转换成RS-232数据从T1OUT、T2OUT送到电脑DB9插头,DB9插头的RS-232数据从R1IN、R2IN输入转换成TTL/CMOS数据后从R1OUT、R2OUT输出,电脑与单片机串口通信电路如图3.6所示。
4软件设计
本智能车控制系统程序结构包括两部分,上位机和下位机流程图。
本系统中上位机控制软件我们使用VB语言编写,VB是程序设计人员在Windows环境下最常用的开发串口通信程序的编程语言。
利用VB开发串口通信程序主要有两种方法:
一是使用MSComm串口控件,二是调用WindowsAPI函数。
在实践中,使用VB串口控件MSComm实现通信的方法比调用API函数的方法更加方便、快捷,而且用较少的代码可以实现相同的功能,从而使编程效率大大提高,所以我们优先选用VB串口控件MSComm实现通信的方法。
下位机硬件系统中,C程序是在keil4环境下编译和调试的,然后利用STC单片机专用下载软件将.HEX文件植入STC89C52RC中,以实现微处理器对硬件系统的有效控制。
4.1下位机接收端设计
下位机部分由单片机控制系统,智能车,机械手,无线模块接收端等组成,单片机一直在检测端口是否收到数据,当检测到有数据收到时候,会对收到的数据进行有效的解码,然后根据不同的码值输出相应的控制信号,从而控制智能车以及机械手的相关动作。
下位机接收端流程如图4.1所示。
图4.1下位机接收端流程图
4.2上位机发射端设计
上位机部分由计算机,可视化控制软件,串口数据线,无线模块发送端组成,根据可视化软件的命令进行编码,然后将数据通过串口无线模块发送给下位机,直到数据发送结束。
上位机接收端流程如图4.2所示。
图4.2上位机接收端流程图
5结论
经过几个月的努力,终于按照毕业设计的进度要求完成了软硬件
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 智能 控制系统