基于Modbus/TCP协议的风电场远程监控软件中设计.pdf

返回 相似 举报
基于Modbus/TCP协议的风电场远程监控软件中设计.pdf_第1页
第1页 / 共1页
亲,该文档总共1页,全部预览完了,如果喜欢就下载吧!
资源描述:
软件应 用与设计 一一 S o f t wa r e Ap p l i c a t i o n a n d De s i g n 基于 Mo d b u s / T C P协议的风电场远程监控软件中设计 肖一卓 ,方玉琨 1 . 沈阳鼓风机集团风电有限公司,沈阳 1 1 0 8 6 9 ;2 . 大连华锐重工起重机有限公司,辽宁大连 1 1 6 0 5 2 摘要本文基 于Mo d b u s / T CP协议,在 . NE T F r a me wo r k框架 下利用 c≠ ≠ 编 程语言,设计 了一款 运行 于 w i n d o ws系统下的监控软件,该软件可实现在风电厂中控室对风机进行数据采集、分析、处理,还可对风机进行远 程启动、停机、复位、功率调节等控制,实践表明,该系统运行稳定,有效地解决了风力发电机组远程监控方面的 问题,具有一定工程价值。 关键 词 风 电场 ;远程监控 ;S CA D A;Mo d b u s / T C P;P L C 中图分类号T P 2 7 7 文献标识码A 文章编号1 6 7 4 - 7 7 1 2 2 0 1 4 0 2 - 0 2 4 0 0 1 对风力发电机组进行远程监视控制十分必要,而风电厂 远程监控系统的软件则是重中之重,它直接决定了整个系统 的稳定性和效率。M o d b u s / T C P协议 目前应用广泛,绝大多数 厂商的P L C都支持 M o d b u s / T C P协议,其具有 良好的通用性, 因此基于M o d b u s / T C P协议开发客户端程序己成为风电远程监 控系统一种行之有效的方法。 一 、M o d b u s / T C P协议 M o d b u s / T C P协议以一种非常简单的方式将 M o d b u s帧嵌 入到 T C P帧中,使其成为工业以太网应用层协议,M o d b u s 协 议层在 T C P之上,其主要完成的任务为在服务器端,负责 解译来 自客户端的 M o d b u s帧,执行相应 的请求 L H 。M o d b u s T C P协议的帧格式如表 1 所示。应用协议报头分为 4 个部分, 数据标识符用来标识 M o d b u s帧的次序,每多发送一个 M o d b u s 帧,该值加 1 ;协议标识符用来确认是不是M o d b u s 协议,如果 是 M o d b u s 协议用 1 表示,其他协议用 0 表示;接下来 2个字节 用来表示后续字节数,即从单元标识符开始一直到数据域结束 的字节数,单元标识符用来标识 M o d b u s串行线上的某个设备单 元,由于风机都是网络结构,所以这一字节并没有实际意义, 填 0 x O或0 x F F即可。功能码的含义如表 2 所示。数据域则添加 要发送的数据,如果是向P L C 发送读请求的话,数据域为要读 取的寄存器起始地址和要读取的寄存器个数,如果是向P L C发 送写请求,则数据域为要写入的寄存器起始地址和要写入的寄 存器个数、需要写入的字节数以及需要写入的数据。 表 1 应用协议报头 功能码 数据域 数据标识 协议标识 后续数据 单元标识 符 符 长度 符 2字节 2字节 2字节 1 字节 1 字节 n字节 表 2 代码 功能 对应寄存器 含义 0 1 读线圈状态 O x x x x 读数字输出状态 D 0 0 2 读输入状态 1 X X X X 读数字输入状态 D 1 0 3 读保持寄存器 4 x x x x 0 4 读输入寄存器 0 0 0 0 0 5 写单个线圈 0 6 写单个保持寄存器 0 0 0 0 0 8 诊断 设备连接测试 设置 /模拟数字输 O F 强置多个线圈 O x x x x 出状态 1 0 预调多个寄存器 4 x x x x 设备配置 1 5 写多个线圈 l 6 写多个保持寄存器 二、运用 C } } 编程实现通讯 c 是微软公司设计 的一种编程语 言,是从 c和 c 派 生来的一种简单、现代、面向对象和类型安全的编程语言, 并且能够与 . N E T框架完美结合 瞳 。为了简化网络编程复杂 度,. N E T对套接字又进行了封装,封装后的类就是 S y s t e m . N e t . S o c k e t s 命名空间下的T c p L i s t e n e r 类和 T c p C 1 l e n t 类。 但是要注意, T c p L i s t e n e r 和T c p C 1 i e n t 只支持标准协议编程。 如果希望编写非标准协议的程序,只能使用套接字来实现。 核心代码 p r i v a t e S o c k e t s o c k e tn u l l ;/ /定义 s o c k e t变量。 s o c k e t n e w S o c k e t A d d r e s s F a m i l y . I n t e r N e t w o r k , S o c k e t T y p e . S t r e a m ,P r o t o c o l T y p e . T c p ;/ /实例化 s i c k e t 。 SO C ke t. S et SO C ke t 0p ti on So c ke t Op ti o nL e ve1 . S o c k e t ,S o c k e t 0 p t i o n N a m e . S e n d T i m e o u t ,3 0 0 0 ;/ /初 始 化 s o c k e t 。 I P E n d P o i n t i p n e w I P E n d P 0 i n t I P A d d r e s s , P a r s e X X X . X X X . X X X . X X X ,5 0 2 ;/ /用指定的 i p地址和端 口号初始化 新的 I P E n d P o i n t实例。 s o c k e t . C o n n e c t i p ; / /向服务器发送连接请求。 i f s o c k e t . C o n n e c t e d / /判断是否连接成功。 { / /处理 M o d b u s帧数据代码⋯ s o c k e t . S e n d d a t a ; / /发送数据。 A p p l i c a t i o n . D o E v e n t s 0; / /防止连续读写引起前台 U I 线程 阻塞 。 s o c k e t . R e c e i v e d a t a ; / / 读取数据。 / /处理 M o d b u s 帧 数据 代码 ⋯ s o c k e t . S h u t d o w n S o c k e t S h u t d 0 w n . B o t h ; / /结 束 s o c k e t 。 s o c k e t . C l o s e 0;/ /关 闭 s o c k e t 。 值得一提的是,由于P L C与计算机的数据存储方式可能不 同,因此需要进行大小端判断及转换,转换可以采用 R e v e r s e 方法。软件界面的设计,通过该界面可以实现对风机进行 启停控制,功率调节,数据采集,绘制图表,查看故障等功能, 可满足风电场远程监控系统的绝大部分需求。 三、结束语 实践表明,该软件通过 M o d b u s T C P协议与风力发电机 组实现了数据交互,可通过上位机对机组进行启动、停机、 复位、限定功率等控制,查看机组各传感器反馈数据,查看 故障代码,运行稳定,操作简单,具有实际价值。 参考 文献 『 1 1 郝 晓弘 , 祖守 圆, 徐维涛 . 基 于V C的 Mo d b u s / T CP 协议模型通信测试软件的实现 Ⅱ 1 . 微计算机信息 , 2 0 0 6 . 『 2 1 明 日 科技 . c ≠ ≠ 从入 门到精通 『 M 】 . 北京 清华大学出 版社 . 2 0 1 2 0 9 . [ 作者简介 ]肖一卓 1 9 8 5 - ,男,本科,助理工程师, 主要研究方向风力发电机组电控系统;方玉琨 1 9 8 7 一 , 男,本科,助理工程师,主要研究方向桥、门式起重机电 控系统设计及调试。 2 0 1 4黄费电子 24 D
展开阅读全文

资源标签

最新标签

长按识别或保存二维码,关注学链未来公众号

copyright@ 2019-2020“矿业文库”网

矿业文库合伙人QQ群 30735420