基于rs485的多路数据采集系统

基于rs485的多路数据采集系统

ID:24665370

大小:50.00 KB

页数:4页

时间:2018-11-14

基于rs485的多路数据采集系统_第1页
基于rs485的多路数据采集系统_第2页
基于rs485的多路数据采集系统_第3页
基于rs485的多路数据采集系统_第4页
资源描述:

《基于rs485的多路数据采集系统》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库

1、基于RS485的多路数据采集系统

2、第1...lun以上。RS485总线可用于多个带有RS485接口设备的互连,以实现数据高速远距离传送,其连线十分方便,鉴于以上优点,RS485总线在工业控制现场得到了广泛的应用。1系统设计本系统采用一台PC作为上位机,下位机由若干台AT89C52单片机担任,系统原理图如图1所示。500)this.style.ouseg(this)">上位机的RS232串行口通过RS232/RS485转换器转换为RS485总线,各下位机通过MAX485芯片连接到总线上。各个下位机设有

3、自己惟一的地址,且下位机之间不能通讯,一切通讯受上位机控制。开始时,所有下位机都处于监听状态,等待上位机发出指令。当上位机发出指令时,所有下位机都接收并且将其中的地址帧与自己的地址比较,如果相同则继续接收后面的指令或数据,若不同则不予理睬。单片机的RS485接口电路原理图如图2所示,RS485的A,B为总线接口,DI是发送端,RO是接收端,RE,DE为RS485收发使能端,由单片机的P27口控制。500)this.style.ouseg(this)">2通讯协议本系统采用半双工异步通讯,下位机以

4、串行中断方式接收。上位机发往下位机的数据分为2类:一类是控制命令帧,另一类为参数帧,即设置下位机的工作参数,其格式如图3所示,CMD和DAT为帧头,地址为下位机的地址。500)this.style.ouseg(this)">下位机发往上位机的数据也分为2类:一类是数据信息帧,另一类为应答帧(GOOD),其格式如图4所示。下位机在接收到上位机命令或数据发送完毕时均发出应答帧,并且转为接收状态,使总线空出。上位机在发送指令后如接收到下位机的应答则认为指令发送成功,可以发送下一个指令,否则重新发送此指令。

5、500)this.style.ouseg(this)">3软件设计采用固定长度的数据帧通讯时,在一般情况下上下位机发送和接收的数据是一样的,但在数据连续发送时,常会发生帧丢失的现象,使发送和接收会不同步。如连续发送几组数据帧“DAT010203”,接收采用9帧为一组的数据的方式,接收方可能会接收到“T010203DA”,“10203DAT0”等数据,从而出现数据和所在组数的不统一,直接影响到数据的准确性。因此在软件设计时每次只取一个数据,逐个进行判断,有效地避免了以上情况的发生,并且使误码率大大降

6、低。下面给出了采用这种算法下位机接收数据的程序流程图,如图5所示,流程图以接收数据帧“DATxxxxxx”为例,其中“DAT”为帧头,“xxxxxx”为实际需要传送的数据,图中Flag为一全局变量,在接收数据子程序中起标志作用。单片机发生程序原代码如下,以发送字符“CMD”为例。voidSend()/*发送程序*/{P2=1;/*P2口接MAX485发送接收使能端*/500)this.style.ouseg(this)">500)this.style.ouseg(this)">系统的上位机软件

7、采用VB6.0的MSM控件,利用他可以方便地对串口操作,加快了开发进度,其接收数据的过程和下位机类似,即每次取一个数据帧。在设计上位机软件时需要考虑到PC机速度比单片机速度快的因素,在传送数据时要适当加入延时,以确保系统的正常运行。另外,为保证数据传输的正确性还可以在传输的数据帧中加入校验码。4结语本文阐述的系统结构和通讯方法已在某水利科学研究院流速测量系统中得到实际应用,取得了良好的效果,具有很好的实用性。

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。