叶帆工作室

嵌入式开发爱好者(十年开发经验,精通C/C++/VC/VB/C#...)

用户操作
[即时聊天] [发私信] [加为好友]
叶帆ID:yefanqiu
537175次访问,排名80好友0人,关注者226
微软MVP / CSDN 2008十大MVB/MSDN中文技术论坛版主
yefanqiu的文章
原创 218 篇
翻译 0 篇
转载 3 篇
评论 1099 篇
叶帆的公告
本博客原创文章,作者保留一切权利,需经作者同意后方可转载,转载时 请注明[叶帆工作室]及文章链接。yefan@vip.sina.com
【简介】叶帆[微软MVP]
【文章】叶帆文章列表
【软件】叶帆共享软件列表
最近评论
BinYu:我用的是vista home basic sp1,但vs2005强行装不上去,请帮忙分析一下,qq:811344767,先谢谢了
wjh6877:算法想好了吗?

没有就是空话
一生好人:其实我也想来正版,但生活逼人,没办法啊
fox23:something like java card;-)
wwqqha:不错不错
文章分类
收藏
    相册
    叶帆照片
    【叶帆软件】
    [01]VB源码之友(V2.1.548)
    [02]API浏览器.net(V5.0)
    [03]叶帆成语词典(V2.0.8)
    [04]叶帆密码库(V1.2.8)
    【叶帆资源】
    DAO 2.0引擎
    叶帆快速通道
    MSDN-MVP
    Windows Embedded 专题
    中文MSDN
    叶帆圈子--工业自动化
    叶帆工作室(博客园)
    叶帆工控--工业自动化
    叶帆群组--工业应用开发
    微软中文技术论坛
    微软硬件创新中心(HIC)
    瑞康社区论坛
    叶帆友情链接
    张欣
    枕善居
    莫依
    葛涵涛
    郑建
    陈辉
    马宁
    马骐
    魏涛序
    黎波
    存档
    订阅我的博客
    XML聚合  FeedSky
    订阅到鲜果
    订阅到Google
    订阅到抓虾
    订阅到BlogLines
    订阅到Yahoo
    订阅到GouGou
    订阅到飞鸽
    订阅到Rojo
    订阅到newsgator
    订阅到netvibes

    原创 YFIOServer后台驱动算法优化收藏

    新一篇: YFIOServer 后台IO接口使用说明 | 旧一篇: OPC Server与YFIOServer成功绑定

    以前,虽然YFIOServer的驱动实现了各种PLC的通信(如PPI,MPI,Modbus等等),但是以前的IO变量读写并没有优化,所以当要访问的变量一多,效率就成为问题。

    目前,采用了最新的优化算法(具体思路下面再说),效率提高了好多倍,有如下指标可以参考,以前用Prodave访问S7-300PLC(用MPI访问,波特率19200),10个变量,读一次,近500ms,目前经过优化,读1000个变量,不过200ms,效率提高了不知多少倍。

    这样一来,YFIOServer终于实现了真正的工控应用,逐渐走向了工业现场。目前配水系统,四车系统都采用该后台,效果很好,编程也变得异常简单,不用在考虑太多的通信问题,直接访问后台就可以了。

    配水系统

    四车系统

    --------------------

    优化算法简介

    --------------------

    目的:因为与硬件进行通信最耗时,数据解析和类型转换倒不是瓶颈,所以用最快速的方法把要获取的数据或要写入的数据,整体一次性完成。

    思路:访问的变量地址要归类,此外要排序,便于批量操作。

    实现:在上位机内存中,建立硬件数据映射表,此外还要建立一个同样大小的标志表,根据变量地址和类型填写标志表的读写标志,最后程序统一更加读写标志完成读写。

     

    发表于 @ 2006年05月23日 16:30:00|评论(loading...)|编辑

    新一篇: YFIOServer 后台IO接口使用说明 | 旧一篇: OPC Server与YFIOServer成功绑定

    评论

    #mzyqy 发表于2006-05-26 09:43:00  IP: 218.104.199.*
    看了你的博客,感觉你神勇无比,是个高手,有些问题想请教:我在做一个远程测量仪表到服务器的通信协议,打算采用modbus tcp协议通信,如何实现?是不是需要自己来实现modbus协议库?请问你有没有这方面的文章,代码?我找了很久没有找到,如果你有,麻烦你发给我一份,不甚感激!!
    mzyqy@126.com
    #叶帆 发表于2006-05-26 19:55:00  IP: 221.217.148.*
    modbus tcp的协议与modbus Rtu差不多,只是前者通过TCP/IP发送数据后者采用串口而已。
    TCP和RTU协议非常类似,我们只要把RTU协议的两个字节的校验码去掉,然后在RTU协议的开始加上6个字节的数据(如上表所示)并通过TCP/IP网络协议发送出去即可。

    MBAP Header长度共7个字节,分别为Transaction identifier(事务标识符),Protocol identifier(协议标识符),Length(长度), Unitidentifier(单元标识符)组成,具体如下表所示:(工控网获知)
    字 段 长 度 描 述 客 户 端 服 务 端
    事务标识符 2 Bytes 标示一个MODBUS请求/响应事务 由客户端初始化 从接收到的请求数据帧中复制
    协议标识符 2 Bytes 0 = MDOBUS协议 由客户端初始化 从接收到的请求数据帧中复制
    长 度 2 Bytes 下列各项的字节数 由客户端初始化(请求) 由服务端初始化(响应)
    单元标识符 1 Bytes 标示一个已连接在串行线或 其他总线的远程从站连接 由客户端初始化 从接收到的请求数据帧中复制

    力控光盘里有modbus Rtu的程序,你修改一下,就成为modbus tcp(它比较简单,不用校验)的了
    #magna 发表于2008-06-30 11:09:56  IP: 124.82.109.*
    一直想用国产的料位测定仪和含水率测定仪,你用什么型号?质量有问题吗?
    #yefanqiu 发表于2008-06-30 15:53:45  IP: 61.50.221.*
    目前用的是国外的,没有具体深入该项目,应用情况不甚清楚。目前公司也开始生产自己的料位测定仪了。
    发表评论  


    登录
    Csdn Blog version 3.1a
    Copyright © 叶帆