




已阅读5页,还剩11页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
题目基于MSP430的公交控制系统摘要这个系统中,我们选用恰当的芯片用创新性的思想实现了部分的公交自动控制系统整个系统以TI的MSP430F169为核心控制芯片,主要由站牌与公交车的通信模块,站牌间通信模块,显示模块三大模块组成。经过实际测试,证明我们的设计方案确实可实现可靠通信,达到了以低成本实现了公交车自动控制功能的目的ABSTRACTINTHISSYSTEM,WEESTABLISHAPARTLYBUSSELFCONTROLSYSTEMBYUSINGTHEAPPROPRIATECHIPSINACREATIVEWAYTHEWHOLESYSTEMISBASEDONTHEMSP430F169,WHICHWORKSASTHECOREDOMINATIVECHIP,ANDISMAINLYCONSISTEDOFTHREESEGMENTSTHECOMMUNICATIONBETWEENTHESTATIONANDBUS,THECOMMUNICATIONBETWEENSTATIONS,ANDTHEDISPLAYSEGMENTPASSINGTHEREALTESTS,OURDESIGNHASBEENPROVENTOBEPRACTICALANDRELIABLE,REACHINGTHEGOALSOFACQUIRINGTHEBUSSELFCONTROLABILITYATALOWCOST关键词无线通信芯片NRF24L01无线数传芯片APC22043单片机MSP430F169LED显示器KEYWORDSSINGLECHIPTRANSCEIVERNRF24L01WIRELESSSERIALDATATRANSFERMODULEAPC22043SINGLECHIPMSP430F169LEDDISPLAY1引言随着社会经济的快速发展,人们的生活节奏日益加快,对于交通出行的效率要求也越来越高。目前厦门、广州、济南、无锡等一线城市已经部分实现了智能公交系统,其主要是基于GPS、GIS、GPRS等技术的综合运用。这种方法实现的系统固然可行,但是其高成本投资却不容忽视,这或许也是这类智能公交系统仍未能在二三线城市大量普及应用的重要原因之一。鉴于这方面原因我们设计了本系统,利用无线通信芯片NRF24L01特定的通信距离特点来实现对于公交车辆的位置定位,用无线数据传输芯片APC22043来实现站牌与站牌间的通信,这两种芯片均价格低廉,且其特定的通信距离十分符合系统的要求,相信我们这种合理使用恰当的小芯片以降低生产应用成本的方法,定可推进公交智能控制系统的普及。2系统方案21系统设计关键点站牌与公交车的通信模块当前成熟的方法均使用昂贵的GPS来实现车辆定位,这样能够做到基本10M范围精确度的准确定位,对乘客来说这么高的精度是不需要的,因为乘客想要知道的也就是大概的车辆位置信息,考虑到城市一般的站牌之间距离就是1000M左右,也就是说公交车一般在两个站牌之间也就是用2、3分钟左右,这个时间乘客完全可以忍受的误差范围。因此,在车辆到站距离约为20M左右时,在公交车与站牌之间来实现通信即可说明车辆目前在这一站,以达到对车辆定位的目的。站牌间通信模块目前的方法是由GPS定位得到车辆精确位置后,利用GPRS的传输网络来直接发布到各个站牌上,这样需要耗费很大一笔信息费,因此我们考虑用一种适合站牌间距离(1000M左右)相互通信的数据传输模块,此站牌将获得的车辆信息传至一个站牌,下一个站牌再往下一站传输,这样依次往下传的思想,如此避免了长距离的数据传输,大大的降低了信息发布成本。22系统流程概述本系统由MSP430F169作为系统的MCU,由MSP430F169控制站牌与公交车的通信模块,站牌间通信模块,显示模块这三个子模块。通过相应通信芯片实现公交车定位,站牌间通信,进而实现最终的LED显示。车载NRF24L01子模块发送车辆信息,当公交车即将靠站时,站牌NRF24L01子模块获得公交车的进站信息,并将站牌信息反馈给车载NRF24L01子模块,进而实现定位。该站牌将车辆信息通过无线数传芯片APC22043传送给下一个站牌,下一个站牌再依次传下去,让每一个站牌都收到此时车辆的位置信息。每一站牌MCU根据本站牌所收到的公交车信息更新显示模块的显示内容,以提醒乘客。系统流程框图如下3系统硬件设计本系统分为站牌与公交车的通信模块,站牌间通信模块,显示模块共三个大模块。31站牌与公交车间通信模块本模块又分为两个子模块车载NRF24L01子模块,站牌NRF24L01子模块。主要功能是实现对各路公交车的定位。当公交车即将靠站时,站牌NRF24L01子模块能获得公交车的进站信息,并将站牌信息反馈给车载NRF24L01子模块,进而实现定位。无线通信芯片NRF24L01适合进行短距离高速通信,实际通信半径约20M。故在公交车距站牌较远时车载NRF24L01子模块与站牌NRF24L01子模块之间不进行通信,站牌NRF24L01子模块不会检测到公交车信息。只有当公交车距离站牌20M以内时,车载NRF24L01子模块与站牌NRF24L01子模块才会实现通信,也就证明公交车即将到站,由此实现对公交车的定位。如下图所示,两个圆的面积分别代表公交车上无线通信芯片NRF24L01与站牌上的无线通信芯片NRF24L01的通信范围。当两圆有重叠时即可实现站牌与公交车的通信,代表公交车进站。32站牌间通信模块本模块的主要功能是使公交车线路上的各个站牌能获得公交车的当前位置信息。无线数传芯片APC22043适合于在强干扰恶劣的环境下通信,且通信距离能达到1500米左右,故在每个站牌部分中置入无线数传芯片APC22043,进行站牌间通信,本站牌APC22043将本站所获得的公交车位置信息发往下一站牌的APC22043,下一站牌的APC22043又将本站牌所获取的公交车位置信息发往下下个站牌APC22043,依次传递。既可在保证实现功能的同时,又比常用的方法经济简单许多。站牌间无线数传芯片APC22043间通信简明过程如下图站牌NRF24L01子模块车载NRF24L01子模块20MA站牌B站牌C站牌D站牌公交车信息公交车信息公交车信息33显示模块本模块又分为站牌显示模块,车载显示模块共两个子模块。主要功能是实现信息的显示。站牌显示模块本站的MCU根据本站所接收到的所有信息进行处理,在站牌显示器上显示经过本站的每一路公交车中距离本站最近的公交车的当前位置信息,并实时更新,以提醒候车乘客。站牌显示器如下图车载显示模块车载MCU根据本车所接收到的所有信息进行处理,在车载显示器上显示下一站的名称。并实时更新,以提醒下车乘客。车载显示器如下图4系统软件设计本系统软件分为两个部分车载部分软件、站牌部分软件。41车载部分软件此程序功能是实现车载NRF24L01子模块与站牌NRF24L01子模块之间的信息交互及车载显示模块的显示控制。采用子程序轮询方式工作,为站牌与公交车间通信模块子程序、按键处理子程序、车载显示模块子程序这三个子程序分配MCU的使用时间。由于这3个子程序的优先级不同,从高到低依次为站牌与公交车间通信模块子程序、按键处理子程序、车载显示模块子程序。轮询工作的实现是利用定时器A进行加计数,将计数结果对6取余,余数为3或4或5这三种情况下运行站牌与公交车间通信模块子程序,余数为1或2这两种情况下运行按键处理子程序,余数为0时运行车载显示模块子程序。车次当前位置916路钟楼站400路西北大学233路西安电子科技大学9路火车站下一站钟楼站请您提前准备下车程序流程图如下A3A1A0A4A2A5站牌与公交车间通信模块子程序公交到站后,车载NRF24L01子模块给站牌NRF24L01子模块发送到站信息,在通信距离内,站牌NRF24L01子模块才会接收到公交车到站信息,及时回复车载NRF24L01子模块应答信息。若车载NRF24L01子模块在设定时间内未收到应答,则重新发送到站信息,直到收到站牌NRF24L01子模块的应答为止。由于将NRF24L01置为ENHANCEDSHOCKBURST收发模式,若站牌模块通过CRC校验码发现数据错误,则发送请求信息请求公交模块重新发送到站信息。无线通信芯片NRF24L01通信过程示意如下数据帧设计如下无线通信芯片NRF24L01每次可以以约1MBPS的高速率发送8BIT大小的数据。我们设计一个数据帧的大小为3个字节。选用第一字节数据表示公交车车次信息,存储公交车次的编号,可最多为256路公交车编号。选用第二字节数据表示公交车控制信息。考虑到上行和下行公交站牌的距离可能较近,为区分上行与下行公交车信息,在本字节中选用1BIT数据作为公交车行驶方向的标志位。因为在每个站点处有三种数据帧(到站信息数据帧,请求数据帧,应答数据帧)在传输,故在本字节中设置2BIT的数据帧类型标识位。剩于5BIT作为保留位,暂不使用。选用第三字节数据表示公交站牌的地址信息。车载NRF24L01通信模块站牌NRF24L01通信模块应答信息到站信息系统初始化定时器A加计数将计数结果对6取余得A车载显示模块子程序按键处理子程序站牌与公交车间通信模块子程序开始无线通信芯片NRF24L01数据帧格式如下位76543210公交车ID方向标志帧类型标识保留公交站牌地址信息程序流程图如下否是按键处理子程序本子程序主要由两个函数构成KEYEVENT函数通过调用CHECKKEY函数完成对44矩阵键盘的扫描以及键值的获取来检测是否有有效按键被按下。KEYCTR函数对键值进行处理,设计了四个有效的按键按键1显示帮助菜单按键2通过串口发送新站点信息到车载无线通信芯片NRF24L01,覆盖原站点信息,以对存储器中存取的站点信息修改。按键3手动报站。当公交车靠站后,若车载NRF24L01子模块与站牌NRF24L01子模块通信失败的情况下,通过此按键强制更新公交车的站点显示信息。按键4当公交车到达终点站后,司机按下此键以更改公交车信息中的上行下行标志位。其余按键为日后做功能扩展备用。开始发送公交车请求数据帧是否收到应答数据帧公交车进站标志位置1程序流程图如下否是按键1按键2按键3按键4车载显示模块子程序当公交车进站后,车载显示器的站点信息应予以更新。显示公交车停靠的站点名称及下一站点的名称。程序流程图如下否是开始公交车进站标置是否被置1从EEPROM中读取站点信息更新显示器开始按键是否被按下获取键值KEYFLAG显示帮助修改信息手动报站修改方向标志42站牌部分软件此程序功能是实现两个站牌间无线数传芯片APC22043之间的信息交互、车载NRF24L01子模块与站牌NRF24L01子模块之间的信息交互及站牌显示模块的显示控制。同样采用子程序轮询方式工作,为站牌间通信模块子程序、站牌与公交车间通信模块子程序、站牌显示模块子程序这三个子程序分配MCU的使用时间。由于这3个子程序的优先级不同,从高到低依次为站牌间通信模块子程序、站牌与公交车间通信模块子程序、站牌显示模块子程序。轮询工作的实现是利用定时器A进行加计数,将计数结果对6取余,余数为3或4或5这三种情况下运行站牌间通信模块子程序,余数为1或2这两种情况下运行站牌与公交车间通信模块子程序,余数为0时运行站牌显示模块子程序。程序流程图如下A3A1A0A4A2A5站牌间通信模块子程序若公交车CAR1已到达A站,下一站将前往B站。则A站站牌APC22043子模块给B站站牌APC22043子模块发送公交车CAR1的位置信息,B站站牌APC22043子模块收到信息后,利用无线数传芯片APC22043的高效的循环交织纠错编码机制进行校验,无错误则回复应答信息给A站牌APC22043子模块,若A站站牌APC22043子模块在设定时间内仍未收到应答,则重新发送该信息。若发现数据错误,则发送请求信息请求A站站牌APC22043子模块重新发送公交车CAR1的位置信息。若发送两次以后A站牌APC22043子模块仍未收到应答信息,则广播公交车CAR1的到站信息。其他站牌APC22043子模块(例如站牌C站牌D等)接收该信息后给B站牌APC22043子模块转发该信息。定时器A加计数将计数结果对6取余得A站牌显示模块子程序站牌与车公交车间通信模块子程序站牌间通信模块子程序开始系统初始化引入广播机制是考虑到城市中公交站牌数众多,存在上行和下行两路站牌,可充分利用这些可用的通信硬件资源,在A站牌与B站牌不能直接通信的情况下,借助这些资源以实现更加有保障的通信。程序流程图如下站牌间无线数传芯片APC22043正常通信过程原理图A站牌D站牌C站牌B站牌CAR1到站信息应答信息结束开始收到位置信息判断是否为广播消息转发此广播消息否是否收到请求消息收到应答消息发送应答消息并将此消息发给显示模块子程序重新发送位置信息消息是否正确是是否发送请求消息否是是否站牌间无线数传芯片APC22043广播通信过程原理图图22无线数传芯片APC22043广播通信过程数据帧设计无线数传芯片APC22043内设256BYTES大容量缓冲区,数据帧做如下设置我们设计一个数据帧的大小为3个字节。选用第一字节数据表示公交车车次信息,存储公交车次的编号,可最多为256路公交车编号。选用第二字节数据表示公交车控制信息。考虑到上行和下行公交站牌的距离可能较近,为区分上行与下行公交车信息,在本字节中选用1BIT数据作为公交车行驶方向的标志位。因为在每个站点处有三种数据帧(到站信息数据帧,请求数据帧,应答数据帧)在传输,故在本字节中设置2BIT的数据帧类型标识位。选用1BIT数据作为广播标志位,置1时为广播信息,置0时位非广播信息。剩于4BIT数据用于表示数据帧累计通过的站点数。选用第三字节数据表示公交站牌的地址信息。无线数传芯片APC22043CAR到站数据帧格式如下位76543210公交车ID方向帧类型标识广播累计通过站点数CAR1到站信息A站牌D站牌C站牌B站牌广播信息广播信息广播信息CAR1到站信息广播消息标志标志公交站牌地址信息站牌与公交车间通信模块子程序流程图如下通信数据帧同车载部分软件中站牌与公交车间通信模块子程序中的数据帧格式相同。站牌显示模块子程序当公交站牌APC22043子模块收到某公交车位置信息时假设此公交车靠站于A站点,若此时本站牌显示器上显示此路公交车目前所在站点为B站点,将A站点与B站点二者与本站点的距离进行比较,即比较二者离本站点的站点数的大小,若A站点离本站牌更近,则更新显示器信息,否则不作处理。以保证站牌显示器上显示的公交车位置信息是距离本站牌最近的公交车位置。程序流程图如下是开始发送应答数据帧是否收到进站数据帧是否数据是否正确否是请求公交车重新发送进站信息是否开始发送应答数据帧是否收到进站数据帧是否数据是否正确否是请求公交车重新发送进站信息是是否否开始更新显示器是否收到公交车位置信息是是否否AB获取此公交距离本站的站点数A获取显示器上显示的此路公交车距离本站的站点数B是是否5系统创新本公交系统的创新性主要体现在公交车的定位以及将公交车位置信息发送到各个站牌这两个部分的实现上。51公交车定位现有的公交系统多是采用GPS技术来实现公交车的精确定位,每个站点距离较近,只要能确定公交车到达
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年芜湖市一中自主招生试题物理试卷(含答案)
- 2025年生态型厂房建设项目施工合同(含绿色建筑标准执行)
- 2025年度古董艺术品抵押融资合同范本
- 2025年度精密印刷设备全面维护与保养服务合同
- 2025年度新能源技术研发居间代理服务合同
- 2025年校园食堂肉类产品集中采购合同
- 2025年度专业电商企业平台运营与智能维护合作协议
- 二零二五学年高校食堂农产品直供质量保障合同
- BIM技术赋能新型建材研发生产一体化服务合同
- 2025年云计算平台网络安全风险评估与运维保障服务协议
- 世界范围内社区支持农业CSA(下)
- 急性缺血性脑卒中溶栓治疗
- NB∕T 10209-2019 风电场工程道路设计规范
- GB/T 4668-1995机织物密度的测定
- GB/T 17107-1997锻件用结构钢牌号和力学性能
- 《无人机组装与调试》课件 第一章
- 校园文化施工组织设计范本
- 轨行区作业安全专项方案
- 大地的耳朵-阅读答案
- 2021年内江市工会系统招聘笔试试题及答案解析
- 云南省食品经营许可申请表
评论
0/150
提交评论