0引言公共自行车是环保出行的一种交通工具,它方便快捷.绿色低碳,越来越受到人们的关注.人们可以通过各站点的下位机查询到一些相关信息,同时本站点的各种信息(如空余车位.故障车辆等)可由主控的上位机予以监控.本文以此为基础,提出一种上位机与下位机之间新的软件设计,即Microsofr.NetFramew
更多精彩就在: 51免费论文网|www.jxszl.com ork中的SerialPort类实现的一种通信方式.1设计简介本系统的上位机用C#编写,使用VisualStudio2013软件编程,采用Microsoft.NETFramework平台中的串口控件SerialPort和定时器(Timer)定时对站点内的储存自行车状态的寄存器进行询问,最后由可视化控件(例如TextBox)进行状态的显示.1.1软件界面设计整体来说,软件除了具有车站自行车状态显示的基本功能外(车站状态选项卡),另外加入了通用的Modbus调试功能(Modbus调试选项卡),提高了软件的通用性,也可以应用于其他使用Modbus协议进行通信的场合.软件在系统出现问题时可提供帮助.为了使用户得到满意的通讯效果,软件加入了一些文本提示(说明选项卡).启动程序后,首先在Modbus中设置好串口通信的参数,与单片机建立通信后的程序流程图如图1所示.
车站状态选项卡实现了站点的实时显示,即对站点的车位容量(车位总数).已经被租赁自行车的数量(外借车数).被查询站点车位空余的数目(车站空位)等数据进行实时扫描并以文本显示出来.为了方便地显示出通信状态,成功通信时状态指示灯会从灰色变成绿色,同时为了方便地进行站点调试,也针对站点提供了联级数.设备地址等编辑功能.设计好的界面如图2所示.Modbus调试选项卡中基本包含了软件中所有的设置.调试功能.进入软件后首先要遍历串口以供用户确定并选择哪些串口是设备串口进而与单片机建立通信,然后需先后设置串口通信参数(例如串口波特率.数据位.校验位.停止位等)和Modbus通信参数(例如设备地址.读寄存器地址.读寄存器数量等),设置完串口通信参数后就可以单击打开串口按钮来实现打开串口的操作和相关通信参数的应用了.在打开串口后可以进行一些简单的Modbus调试来检测硬件是否正常使用(例如发送.接收数据等),同时使用车站状态选项卡中的激活按钮,就可以激活软件与相关站点单片机的通信.设计好的界面如图3所示.说明选项卡中声明了调试中的一些方法技巧和软件的功能限制.1.2通信协议本文采用串行通信方式,通讯协议采用Modbus-RTU标准协议,波特率为9600,1个起始位,8个数据位,低位先发送,采用CRC16校验.在RTU模式中,新的信息总是以至少3.5个字符的静默时间开始,紧接着传送第一个域:设备地址.整帧的信息必须以一个连续的数据流进行传输,如果信息结束前存在超过1.5个字符以上的间隔时间,则出错.一帧信息的标准结构如表1.地址域:从机(目标地址)的有效地址范围为0~247,0为广播地址.功能域:有效编码为1~255.数据域:高字节在前,低字节在后;数据域由多组这样的数据构成---两个十六进制数为一组,范围在00~FF之间.CRC校验:CRC生成后,高字节在前,低字节在后.说明:设备地址分别对应四个分站单片机的设备地址,在硬件编程时采用一个常量表示;功能码是0x03,在Modbus协议中表示读保持寄存器;起始地址是指单片机内寄存器的起始地址,在硬件编程中,使用数组模拟物理上的寄存器,并由本设计的硬件决定了寄存器的数量应当不少于8;读寄存器数量可以根据实际级联情况进行改变;CRC校验生成后,高字节在前,低字节在后.(3)车站状态的巡检单击车站状态选项卡,单击激活按钮,车站巡检开始,效果如图5所示,即车站总数为16,目前车站空位有13个,可外借的剩余车数为3.3结论经设计后的公共自行车软件通信系统,在调试后可验证出该设计方案有效可行,符合预计的设计要求.下一步将会把该通信方式做到无线通信,即用户可利用手机与相应的短信平台互发信息后实现用户方便查询各站点自行车的相关信息,如是否有空余车位.离用户最近站点在哪里等.参考文献:[1]易晓林.扫描开关检测方法探究[J].宇航计测技术,2006,26(4):68-72.[2]陈柏金.通过串行口访问Modbus现场控制网络[J].微计算机信息,2003,19(1):52-54.[3]吴桂林,郑建勇.RS485上下位机多机通信网络系统设计[J].微计算机信息,2008,24(36):112-126
原文链接:http://www.jxszl.com/lwqt/mflw/16453.html