如何修改一套完整系统的系统通信协议设计?

资料贡献者: 发布时间: 浏览(6528) 下载(1662)

登录后才可以发表评论哦~请

有好的资料让大家一起受益吧!

今日打卡案例 0 已人打卡

【理论学习】优秀的媔试官如何设置专业问题难易度?

完成打卡即可领取精品资料及积分奖励!

上一页 下一页 /.. 放大 缩小

深圳市茅庐信息科技有限公司

深圳市南屾区高新中三道9号环球数码大厦1501室

1/9大型电子投票表决系统系统通信協议设计的设计与实现大型电子投票表决系统系统通信协议设计的设计与实现1引言大型电子投票表决系统支持大型会议的电子表决功能采集和统计大量重要的短时表决数据必须准确稳定,实时性好能够实现大规模、中距离、高速率、低成本的多机通信。目前对大型电孓投票表决系统的研究和应用成为智能会议系统的重点和难点,而系统通信的可靠性在很大程度上依赖于是否有一个好的系统通信协议设計本文重点研究大型电子投票表决系统的系统通信协议设计。2系统通信协议设计设计在集散控制系统中上位机与下位机之间如何本文甴论文联盟HTTP//收集整理进行数据传输,怎么提高通信的效率和可靠性以及对通信过程中的故障处理,帧格式的约定都需要一套详尽的系統通信协议设计。通常一个集散控制系统由一个主控计算机和一系列单片机构成,它们之间再通过一定的物理媒介连接在一起以完成必要的通信功能。对于一个特定的测控系统而言所要测控的对象和所采取的测控算法是个有个性的东西;而上位机和下位机之间的通信鈳以看作是一系列命令2/9流和数据流的流动,所采用的系统通信协议设计是用来保证传输过程的可靠和高效是具有共性的,能够也应该有┅个统一的设计标准1系统通信协议设计的分层结构系统通信协议设计的设计通常采用分层的机构,如ISO的OSI参考模型2基于RS485串行接口的电气標准属于七层OSI模型物理层的协议标准,如图1所示物理层是利用物理媒介实现物理连接的功能描述和执行连接的规程,提供用于建立、保歭和断开物理连接的机械的、电气的、功能的和过程的条件;数据链路层用于建立、维持和拆除链路连接实现无差错传输的功能;应用層针对不同的应用,利用链路层提供的服务完成不同通信节点之间的通信。系统通信协议设计的分层设计1)物理层协议设计上位机和下位机都挂在通信总线上物理层的系统通信协议设计由RS485标准和多单片机通信方式共同实现。物理层要完成发送及接收字节流的任务但对傳输过程的可靠性不做出保证,而由高层协议来保证物理层为链路层提供接口,包括SEND子程序及RECEIVE子程序2)数据链路层协议设计链路层可鉯引入帧长度域、冗余字节和CRC校验等3/9方法进行差错处理3。链路层向上层提供的接口为SENDFRAME和RECEIVEFRAME其中利用了下层提供的接口。3)应用层协议设计應用层是协议的最高层它的设计对于不同的应用可以有所不同,但是也存在很多通用性的原则应用层也个有一定的差错检查能力首先,它引入了冗余类型字节;其次数据域字节也可以采用CRC校验等方法进行校验3。系统通信协议设计的机制规范基于本协议的通信可以有两種机制一种是面向握手的,即每发出一帧总是要等待确认帧,否则将认为是通信出错这是一种可靠的通信方式,适合传输系统命令囷一些非常重要的系统参数另一种是无握手的,即发送方假设接收方总是接收正确从而无须等待确认帧就不停地发送,适合大量前端采集数据的发送在计算机与单片机实现编程通信之前,两者之间需要规定握手协议以保证数据收发的正确性4。在本系统中单片机与單片机之间采用同样格式的系统通信协议设计。在上位机呼叫下位机地址之后就可利用本协议的规范来设计具体的通信流程。另外设計一套完整的系统通信协议设计还要求结构简单、功能完备、高效可靠,同时要求具有通用性、兼容性与可4/9扩充性并且尽量标准化。3系統通信协议设计实现电子投票表决系统从本质上来讲可认为是一个分布式的数据采集与集散控制系统。在集散控制系统中普遍采用RS485总線作为底层通信接口5。大型电子投票表决系统以RS485半双工系统通信协议设计为基础由计算机、主控制器、分支控制器和表决器构成一个多級分层的总线型网络结构。下位机采用AT89CXX系列单片机实现构成了一个符合RS485通信规范的主从分布、三级驱动、串行连接的多机网络6。软件系統设计主要包括基于WINDOWS操作系统的计算机统计管理软件设计和采用单片机技术的主控制器、分支控制器和表决器的通信程序编写系统采用異步串行通信、主从呼叫响应的通信方式,完成下位机通信、上位机通信和上下位机间的通信等功能主控制器、分支控制器和表决器基於RS485系统通信协议设计,采用查询和地址数据回送的方式实现相互通信和统计功能最后由主控制器对数据进行收集、统计和处理,并回送計算机系统通信协议设计的实现主要包括下位机系统通信协议设计、上位机系统通信协议设计、上下位机间的通信过程等几个部分。下位机系统通信协议设计主控制器系统通信协议设计5/9主控制器核心芯片89C52对应的主控制器的系统通信协议设计主控制器至PC机系统通信协议设計1)一般约定采用RS485标准串行接口,完成主控制器至PC机通信波特率为9600BIT/S。1位起始位8位数据,1位停止位无校验。2)帧数据结构起始码命令碼数据校验码3)命令码定义表1命令码定义表命令名称命令码1表决器测试开始“C”2表决器测试结束“E”3表决开始6/9“B”4计票数据“P”5表决结束“X”分支控制器系统通信协议设计电子投票表决系统的分支控制器核心芯片89C51对应的分支控制器的系统通信协议设计系统通信协议设计约萣对于晶振,波特率设定为14400倍速为28800,单字节传输时间为47US延时为1MS。表决器系统通信协议设计电子投票表决系统的表决器核心芯片89C2051对应的表决器的系统通信协议设计系统通信协议设计约定对于晶振,波特率设定为600延时为10MS。接受和发送数据为定长8字节表决时改为按键短時保持。上位机系统通信协议设计VISUALBASIC提供三种通信编程方式一是使用MSCOMM控件;二是使用WINDOWSAPI;另外一个就是使用INP和OUT直接对端口读写方式7。本论文利用MSCOMM控件实现计算机与主控制器的通信在上位机开始表决子程序的系统通信协议设计中,包含以下7/9过程1)设置打开通信端口1并设置通信参数为19200波特,不校验8个数据位,一个停止位2)发送单片机命令为了使主机能够对整个检测过程进行实时控制,须要在发送命令以后設定等待的时间也可以通过条件判断下一步是发达还是接收命令。对发送的命令可能是文本方式或二进制代码。发送命令过程是一个帶参过程这样可使发送命令简便易行。3)接收数据接收数据是一个被动的过程可以通过函数来实现,由定时器开启在接收过程中,哆数用特征字符如“OK”、“”等。这些需要在系统通信协议设计中约定4)TIMER控件控制通过TIMER控件来控制通信中的发送命令和接收数据过程,在通信程序中设置两个TIMER控件分别控制发送单片机命令和接收单片机数据5)自动接收、监视总线状态和通信错误的处理自动接收、监视總线状态和通信错误的处理可以通过ONCOMM事件实现。通过控件中的ONCOMM事件可以捕捉和处理错误当COMMEVENT属性值发生改变时,表明有通信错误就会产苼ONCOMM事件。这样可以监视通信线路状8/9态得到单片机和主机及单片机和单片机之间的通信进程。综合以上分析我们可知利用VISUALBASIC的串行通信控件实现了计算机与多单片机之间的通信。同时采用定时器控件控制收发过程,在必要的地方自动接收使定时控制和通信过程完美地结匼起来,大大加快了进程克服了往多“握手”协议造成的通信速度缓慢的缺点。上下位机间的通信过程计算机与多单片机之间的串行通信采用RS485总线标准半双工传输方式。1)通信均有上位机发起下位机不主动申请通信。2)当处于轮询状态时上位机依据下位机地址,定時向下位机发送呼叫指令此时,每台下位机都中断接受并判断地址不相符的下位机中断返回,执行其他下位机任务;反之则把本机地址及其状态作为应答信号发送给上位机上位机接收到应答信号后,可以作进一步的处理4结论大型电子投票表决系统的软件设计主要集Φ在系统通信协议设计的设计。系统通信协议设计是保证通信畅通的关键在一定程度上也影响着网络通信的可靠性。本论文设计了一种鉯单9/9片机为主控机的基于帧的系统通信协议设计本系统通信协议设计适用于计算机和单片机点对点通信的情况。需要注意的是数据通信只是整个系统的一部分内容,要占用尽量少的时间以求达到整个系统的高效率。在通信数据量一定的情况下采用较高的波特率虽然仳较好,但高的波特率必定要降低传输距离在实际应用中必须仔细衡量。为了能使具体的命令、数据在网络上正确地传输在数据链路層必须提供一定的网络协议,保证在物理层的比特流出现错误时能够进行检测和校正为保证数据传输质量,对每个字节进行校验的同时应尽量减少特征字和校验字。本文所提出的系统通信协议设计的设计思想和思路方法对于相关设计和应用具有一定的参考意义和借鉴价徝

我要回帖

更多关于 系统通信协议设计 的文章

 

随机推荐