PC与S7-200的自定义通信协议实现 点击:6508 | 回复:19



杜学强

    
  • 精华:13帖
  • 求助:0帖
  • 帖子:29帖 | 536回
  • 年度积分:0
  • 历史总积分:880
  • 注册:2001年6月09日
发表于:2001-12-27 15:25:00
楼主
PC与S7-200的自定义通信协议实现 1)协议功能 实现读/写I,Q ,VR,M区功能,读最大数据量为246(255-9)个字节,写数据量最大为255字节,帧格式为16进制形式,对于其他功能可以在SBR3中添加相应实现代码。 注:a)写数据量受PLC的VB区大小和指令限制,协议可以实现1个字的操作 b)写IB区后实际上输入的是脉冲信号,不能保持 C)地址/数据都是高位在前,低位在后 2)帧格式(fig1)
错误代码定义 写命令成功 ―― 00 帧格式错误 ―― 01 帧校验错误 ―― 02 超时错误 ―― 03 3)协议流程 实现以上协议的程序流程(fig2)。
4)变量说明 M 31.0 帧头标志(一帧的起始) M 31.1 接收到一帧标志 T 37 通信超时计时器(5秒) VB 1401-1699 接收到的命令帧 VB 1700- 发送缓冲区(VB1700为响应帧的大小,VB1701-1955为发送数据) VD 2000(vb 2000-2003)接收缓冲区的指针(指向VB1401开始的数据区域) VW 2004 接收字符计数器 VB 2006 接收到的命令帧的BCC值 VW 2007 命令帧长度 VD 2010 (vb 2010-2013) 响应帧的指针变量 (指向VB1701开始的数据区域) VB 2014 响应帧的校验值 VB 2015 错误代码 VD 2020 (vb 2020-2023) I/Q/VB/M 源地址 VD 2024 (vb 2024-2027) 读/写操作地址 VD 2030(vb2030-2033) 偏移地址中间变量 VW 2034 循环指令的Index变量 VW 2036 求校验数据大小变量(帧长度减去2 即bcc校验和结束符) 5)程序模块说明 MAIN 主程序 SBR 0 通信初始化(调用子程序1) SBR 1 缓冲区初始化 SBR 2 命令帧分析(命令帧无错,调用子程序3,否则调用SBR4) SBR 3 组织响应帧并发送到串口 SBR 4 发送错误响应帧(错误代码为00时表示写操作成功) INT 0 接收中断程序(在缓冲区存放命令帧,要求前一命令帧已经处理完) INT 1 发送完中断程序(调用SBR1清空缓冲区) 6)调试界面 作者写的一个与S7-200 PLC 调试工具的界面(fig3)。在参数设置中可以设定发送间隔和发送次数,显示可设置为16进制或ASCII码方式。
作者写的一个与串口调试工具的界面(fig4),可以发送16进制字符串和ASCII码字符串。在参数设置中可以设定发送间隔和发送次数。
7)结束语 上位机软件用了通信控件:spcomm(免费控件,很好注册),在DELPHI下非常好用(用它进行文件传输的结果也比较满意)。试验表明本协议的实现在可靠性、实时性和通信数据量上基本满足了上位机数据采集的需要。 Name: 施奇峰  E-mail:nuststeven@263.net stevenboy@163.net TEL: 025-4312851 Addr: 南京理工大学自动化研2000 Date: 2001/9/20 注:本文为施奇峰所作,版主杜学强协助对图片进行了整理,感谢施奇峰的奉献。 顺便说一下,各位网友好的帖子中若有图片,不便直接发布,可发至xq-du@yeah.net,本人非常荣兴地为您服务,以便网友得到更大收益。请发纯文本文件,每个图片直分别作成GIF格式文件并标明图号,在文本中标记各图的位置,每篇至多3个图片。谢谢!



laizh

  • 精华:0帖
  • 求助:0帖
  • 帖子:0帖 | 1回
  • 年度积分:0
  • 历史总积分:1
  • 注册:2001年10月11日
发表于:2001-10-11 00:16:00
1楼
请问可以购买你的plc源代码吗?请开个价

kedelin科德林

  • 精华:0帖
  • 求助:0帖
  • 帖子:8帖 | 31回
  • 年度积分:0
  • 历史总积分:252
  • 注册:2001年9月08日
发表于:2001-10-14 11:29:00
2楼
plc源代码我有,但通信协议有点差别.不知道LAIZH有兴趣吗

wangzhuaijie

  • 精华:0帖
  • 求助:0帖
  • 帖子:0帖 | 2回
  • 年度积分:0
  • 历史总积分:2
  • 注册:2001年10月27日
发表于:2001-10-27 16:19:00
3楼
请与我联系:13974757652

红小鸡

  • 精华:0帖
  • 求助:0帖
  • 帖子:0帖 | 2回
  • 年度积分:0
  • 历史总积分:2
  • 注册:2001年12月10日
发表于:2001-12-10 20:59:00
4楼
可以给我这个程序的源代码吗? 如果不免费请开出价格 tel: 13915672239

红小鸡

  • 精华:0帖
  • 求助:0帖
  • 帖子:0帖 | 2回
  • 年度积分:0
  • 历史总积分:2
  • 注册:2001年12月10日
发表于:2001-12-10 21:00:00
5楼
可以给我这个程序的源代码吗? 如果不免费请开出价格 tel: 13915672239

chenyuguo

  • 精华:0帖
  • 求助:0帖
  • 帖子:5帖 | 16回
  • 年度积分:0
  • 历史总积分:98
  • 注册:2001年6月25日
发表于:2001-12-16 09:48:00
6楼
请求PLC与VB程序的源代码,开价,13607698171

gongkongedit

  • 精华:1099帖
  • 求助:0帖
  • 帖子:14392帖 | 54470回
  • 年度积分:0
  • 历史总积分:622
  • 注册:2008年9月08日
发表于:2001-12-18 18:14:00
7楼
你真厉害!

瑞雪

  • 精华:0帖
  • 求助:0帖
  • 帖子:0帖 | 9回
  • 年度积分:0
  • 历史总积分:9
  • 注册:2001年12月08日
发表于:2001-12-21 21:07:00
8楼
那位可以教我编写通讯程序?我实际的PLC编程也不怎样!谁收我为学生呢? 我的邮箱WWWRL@263.NET 非常的感谢!

a-li

  • 精华:0帖
  • 求助:0帖
  • 帖子:4帖 | 16回
  • 年度积分:0
  • 历史总积分:28
  • 注册:2001年6月17日
发表于:2001-12-22 15:39:00
9楼
《有会将s7-200 plc+触摸屏用于电热锅炉的自动控制系统吗?》 自己开发的电加热锅炉需要做自动控制系统。项目应用地是湖南郴州。有意者请进一步联系。

sansan

  • 精华:0帖
  • 求助:0帖
  • 帖子:0帖 | 7回
  • 年度积分:0
  • 历史总积分:57
  • 注册:2001年12月27日
发表于:2001-12-27 15:25:00
10楼
我是学生.可以问你一些关于PLC的一些问题吗? 你学的是什么PLC?关于OMRON你了解吗? OMRON怎样实现通讯?rjf999@263.net

sansan

  • 精华:0帖
  • 求助:0帖
  • 帖子:0帖 | 7回
  • 年度积分:0
  • 历史总积分:57
  • 注册:2001年12月27日
发表于:2001-12-27 15:25:00
11楼
我是学生.可以问你一些关于PLC的一些问题吗? 你学的是什么PLC?关于OMRON你了解吗? OMRON怎样实现通讯?rjf999@263.net

ahljj

  • 精华:0帖
  • 求助:0帖
  • 帖子:1帖 | 806回
  • 年度积分:0
  • 历史总积分:3791
  • 注册:2002年10月03日
发表于:2004-10-08 10:00:00
12楼
给我一份 auto@ah163.com

juliay

  • 精华:0帖
  • 求助:0帖
  • 帖子:5帖 | 22回
  • 年度积分:0
  • 历史总积分:81
  • 注册:2004年2月03日
发表于:2004-10-21 15:39:00
13楼
能发给我一份吗:)zhy@sunary.com

duantuan

  • 精华:0帖
  • 求助:0帖
  • 帖子:0帖 | 277回
  • 年度积分:0
  • 历史总积分:920
  • 注册:2003年1月10日
发表于:2004-10-22 07:41:00
14楼
《有会将s7-200 plc+触摸屏用于电热锅炉的自动控制系统吗?》 自己开发的电加热锅炉需要做自动控制系统。项目应用地是湖南郴州。有意者请进一步联系。 我可以,请和我联系。 dequan.duan@cn.excelstor.com 13714794848

zf

  • 精华:0帖
  • 求助:0帖
  • 帖子:4帖 | 3回
  • 年度积分:0
  • 历史总积分:65
  • 注册:2003年7月20日
发表于:2005-05-31 22:28:00
15楼

zf

  • 精华:0帖
  • 求助:0帖
  • 帖子:4帖 | 3回
  • 年度积分:0
  • 历史总积分:65
  • 注册:2003年7月20日
发表于:2005-05-31 22:29:00
16楼
可以购买你的plc源代码吗?请开个价 13931002691

小工友

  • 精华:0帖
  • 求助:0帖
  • 帖子:0帖 | 1回
  • 年度积分:0
  • 历史总积分:3
  • 注册:2005年6月30日
发表于:2006-02-14 11:07:00
17楼
我刚刚开始学SIEMENS的编程 哪位老师可以给我一些例题做练习
题目由易入难 谢谢
allen5048@hotmail.com

海曦

  • 精华:0帖
  • 求助:0帖
  • 帖子:0帖 | 18回
  • 年度积分:0
  • 历史总积分:87
  • 注册:2003年12月04日
发表于:2006-02-14 15:19:00
18楼
好文章,谢谢楼主!!

lyld8341

  • 精华:0帖
  • 求助:1帖
  • 帖子:2帖 | 268回
  • 年度积分:0
  • 历史总积分:1875
  • 注册:2002年7月21日
发表于:2012-03-08 01:40:29
19楼
走过,路过,学习解惑。好

热门招聘
相关主题

官方公众号

智造工程师