




免费预览已结束,剩余3页可下载查看
下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
用VB编写RS-485数据采集程序煤矿现代化2009年第1期总第88期用VB编写RS一485数据采集程序昆明理工大学国土资源工程学院张明旭黄德镛现场总线和智能仪表的出现标志着工业控制领域进入了网络时代,迅速成为了工业控制的主流.目前国际上正在使用的现场总线名目繁多,如PROFIBUS,INTERBUS,CAN总线,但是其系统造价相对较高,不太适用于中小型系统的应用.而RS485串行通信总线以构造简单,技术成熟,造价低廉,便于维护等特点广泛应用于工业控制,仪器,仪表,机电一体化产品等诸多领域.尤其在数据通信,计算机网络以及工业分布式控制系统中,经常需要采用串行通信来实现远程信息交换.但是为了对控制串行网络远程采集数据,依然需要为串行通讯网络和智能仪表编写数据采集程序.本文就简单介绍一个适应RS85串行网络的数据采集程序.1RS一485简述电子工业协会EIA于1983年制订并发布RS一485标准,并经TIA通讯工业协会修订后命名为rl1IA,EIA_485一A,习惯地称之为RS一485.RS85是为弥补RS一232通信距离短,速率低等缺点而产生的.RS-485只规定了平衡驱动器和接收器的电特性,而没有规定接插件,传输电缆和应用层通信协议.因而在当时看来是一种相对经济,具有相当高噪声抑制,相对高的传输速率,传输距离远和宽共模范围的通信平台.RS85不数据信号采用差分传输方式,也称作平衡传输,它使用一对双绞线,将其中一线定义为A,另一线定义为B,Rs一485的最大传输距离为40oo英尺f约1219,晟大传输速率为Mbps.其平衡双绞线的长度与传输速率成反比,在lkbps速率以下,才可能达到最大传输距离.与其他数据接口相比,RS-485价格低廉,网络结构简单,易于维护的优点还是比较明显的.目前市场上有很多带有RS85接口的设备,应用范围十分广泛.2典型的RS一485监测网络很多RS-485设备使用与RS一232串口相同的通讯协议,RS85与RS一232的区别主要是RS一232可以是全双工的,接收数据的同时还可以发送,两者互不影响,RS85是半双工的,接收的时候不可以发送,发送的时候不可以接收.另外,就是RS85和RS一232的电气标准不一样.因此在组建系统时可以很方便的使用RS一232S一485转换器,把RS一485网络接到计算机常用的RS一232串口上.编程时也可以方便的使用串口进行数据采集.一些具有RS-485接口的传感器使用起来十分方便,而且通讯规约也很简单,编程比较容易.根据这些原理,由一台普通PC,一个RS一232S-485转换器和若干个RS85接口的传感器就可以组成一个简单的监测系统.云南省兰坪三江铜业有限公司在20o7年安装了一套井下涌水量监测系统,这个系统是由包含l2只超声波物位传感器和两个开关量输出模块组成的信号采集系统,这个系统通过台计算机控制实现数据采集,处理,储存,汇总与报警功能.本文中就以这个典型的系统为例介绍一下在VB环境中编写RS85数据采集程序的简单方法.3RS一485数据采集程序一个完整的数据采集程序需要有数据采集,数据处理,汇总保存和查看等功能.要实现这些功能,需要编写多个功能模块对数据进行处理.将一个复杂的程序模块化也是简化源程序的一个重要方式,以下是几个关键部分的实现方法.3.1控制流程设计在一般情况下,一个数据采集系统中不会只有一个传感器,而是又多个传感器组成.而且串行网络中还可能包含着除传感器以外多种类型的设备.在这种情况下,就需要对网络中的设备地址进行统一的管理.而且,由于RS485网络只能工作在半双工状态下,在数据采集系统工作过程中,一定要设法防止数据混乱.在这种情况下,采用分时控制是比较简单的办法.每个传感器按编号轮流采集数据,每一个都是待前一个传感器的数据采集完成并处理结束后才进行采集.要实现这种采集方案进行有序的操作,需要有合理的程序进行控制,并且把每个传感器的地址,性能,型号等信息存人数据库备用.在编程时,首先要根据实际需要确定数据采集的频率,在对采集实时性要求不高的时候可以适当的延长两次采集的时的文件材料的收集,整理,移交工作;二要对施工单位文件材料的形成情况进行质量检查把关,按照监理规程要求,在控制节点进行审核,签署,发现问题及时提出整改.建设单位:全面负责立项文件,建设用地征地拆迁文件,勘察,测绘,设计文件,工程招投标文件,开工审批文件,财务文件的形成和归档.为确保项目竣工验收,建议前期组织人员调研项目档案验收程序,明确重点验收范围,编制档案验收文件汇总目录,分项落实到部门和相关人员,负责完整,准确形成档案资料和及时归档.5结论?92?是否可以与越来越复杂的建井条件挂钩:在复杂条件下,为便于开展工程评价,并为后继工程提供借鉴,对档案管理的要求在提高,原有的档案管理模式不能满足这一要求.在项目档案管理出现管理难度大,形成难,归档难,案卷整理组口难的问题.因此,建议在在矿井工程建设各方中增设档案管理人员,分施工单位,监理单位,建设单位三个层面进行控制归档.个人简介孙洪章(1963),男,高级工程师,1986年毕业于阜新矿业学院,现在充煤菏泽能化有限公司从事矿建工作.(收稿日期:20o8919)煤矿现代化2009年第1期总第88期间问隔.数据采集程序用Time控件触发,触发开始后即认为一次采集过程开始,按顺序对分别对每个传感器进行采集.系统待采集传感器的数据返后处理数据并采集下一个传感器的数据.3.2接口参数设置当系统使用串口连接时,用VB中的MSComm控件进行完成数据收发是比较简单有效的方法.在程序窗体中添加一个MSComm控件MSComml,然后在在该窗体的load函数中写入以下参数设置代码:PrivateSubForm_Load0MSComm1.CommPort=1(COMI设为:1;COM2设为:2)MSComm1.InputLen=0每次读取接收缓冲区的1个字节MSComml,OutBufferSize=512设置发送缓冲区为512字节MSComm1.InBufferSize:512.设置接收缓冲区为2048字节MSComm1.OutBufferCount=0清除发送缓冲区MSComm1.InBufferCount=0清除接收缓冲区MSComm1.InputMode=comInputModeBinary.数据传输设置为二进制格式MSComm1.RThreshold=1一次性接收起始码1个字节可触发OnComm(可根据具体设备返回的字节数确定触发On_Comm事件的时机)MSComm1.Settings=9600,n,8,1设置波特率,校验位(1),数据位,停止位MSComm1.PortOpen=True打开通信口COM1EndSub以上代码写入后既可完成对MSComm控件的参数设置.在这些设置中,有一些设置是需要根据具体设备的通讯规约定义的,例如本例中传感器的返回值是一串由12个字节组成的数据,那么MSComm1.RThreshold的值就可以设定为12,在返回第12个字节时程序会触发OnComm事件.3.3数据发送接收函数向串口发送数据比较简单,语句MSComm1.Output=就是向串口1发送字节的命令.这个例子中的传感器只需要收到对应的地址即可返回数据,所以下边语句中只需要用一个字节把地址发出即可.DimbteHex(0)AsBytebteHex(O)=addressMSComm1.Output=bteHex0接收数据时需要再创建一个MSCommlOnComm0过程,这个过程可以对Comm口接收的数据进行响应.PrivateSubMSCommlOnComm0DimarrAddr0AsByteSelectCaseMSComm1.CommEventCasecomEvReceive接收到数据arrAddr=MSComm1.Input收处理数据EndSelectEndsub在这个过程中,SelectCase语句的功能是确认串口接收到了数据,arrAddr0为接收数据定义的一个字节型数组.确认已经接收到数据后,可以使用arrAddr数组接收缓存中的数据如arrAddr=MSComm1.Input,然后就可以在程序中添加对收到的数据进行处理的语句,通过以上程序就可以完成单个传感器的数据采集过程.对数据的处理也需要根据具体的通讯规约定义,一般的传感器型设备可能会规定某几个字节为有效数据,并给出运算所需要数值的规则,在这里就不具体说明了.3.4数据汇总保存与查看数据保存需要访问数据库,所以在程序开始运行时就需要连接好数据库,以便系统运行过程中随时保存或读取数据.涌水量监测的数据采集每隔3O秒运行一次,每次要采集12个数据.如果把这些数据都保存在数据库中,必将消耗大量的空间,而且这么多数据也没有必要全部进行保存,可以进行简单的汇总然后保存一个均值.在这里设定每隔l5分钟保存一次数据,这样每次保存数据之间就会进行3O次采集,这些数据的平均值保存到数据库就可以基本满足对一天之间水位变化的观测了.查看数据需要读取数据库的数据,在VB中可以使用JET数据库,即MicrosoftAccess是比较方便的,可以通过data控件操作,也可以用SQL语言,所以多数的小型软件都采用这种解决方案.3.5抗干扰设计由于通讯网络会存在干扰等不确定因素,有时会影响传输数据的准确性.所以接收数据时需要对数据进行校验.一般情况下智能设备发送的数据都会设计校验位,一般是奇偶校验或累加校验,目前使用累加校验方法的比较常用.除了标准的校验方法之外,也可以自己添加一些独特的校验方法.一种方法是通过软件对数据的真实性进行判断,主动排除一些有明显错误现象的数据.具体方法可以根据实际使用情况决定,比如在监测一个比较平稳的数据时(如锅炉温度),如果某个数据突然出现了严重违背了物理定律的大幅度的跳动,这种情况就有可能是数据错误造成的,这时就需要重新采集这个数据.通过了的校验的数据就可以认为是合格的数据送到下一步程序中进行处理,如果校验没有通过或者在一定的时间内没有采集到数据,就要重新进行一次采集.但是这种重复需要有一个次数的限制,防止由于某个设备故障造成整个系统进入无限循环.如果重复了一定的次数仍没有采集到数据,即可触发报警信号告知操作人员.4结论VB上手简单,容易掌握,使用的范围很广泛,在这种小型监测软件设计中非常实用.但是在程序编制
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年如何应对烷基化工艺作业的面试挑战答案全解析
- 2025年建筑工程施工现场管理面试宝典与模拟题集
- 2025年软件开发工程师面试宝典知识点预测题
- 2025年物资储备仓库运输调度员职位面试高频词汇解析与答案
- 申诉业务知识培训课件
- 2025年中级炼油装置操作工技能考核大纲及样题解析
- 甲状腺超声TI-RADS分类课
- 脑卒中吞咽障碍护理
- 青少年普法宣传教育宣讲
- 单元统整教学课件模板
- 诊断学教学胸部查体
- 桥梁安全事故案例警示
- 育婴员理论模拟考试试题及答案
- 杨式85式太极拳现用图解
- YY/T 1095-2015肌电生物反馈仪
- SB/T 10460-2008商用电开水器
- GB/T 9124.1-2019钢制管法兰第1部分:PN系列
- GA 1800.2-2021电力系统治安反恐防范要求第2部分:火力发电企业
- 细胞生物学实验课件:细胞组分的分级分离
- 合理选择影像检查方法课件
- 欣旺集团种禽养殖管理制度手册
评论
0/150
提交评论