S7-200 MODBUS从站通讯 点击:1110 | 回复:14



cobi

    
  • 精华:0帖
  • 求助:0帖
  • 帖子:6帖 | 22回
  • 年度积分:0
  • 历史总积分:53
  • 注册:2008年11月29日
发表于:2008-11-29 13:40:38
楼主

1.上位机与单个PLC通过RS485进连接。PLC作从站

2 传输方式:RTU

校验方法:CRC-16

 

要求主站发送数据后,从站必须进行应答

 

从站地址:01

功能代码:10

数据起始地址:0D

 

请问如何编程,发送应答消息。谢谢




二十四桥明月夜

  • 精华:3帖
  • 求助:0帖
  • 帖子:114帖 | 3593回
  • 年度积分:0
  • 历史总积分:7688
  • 注册:2008年3月16日
发表于:2008-11-29 14:11:09
1楼

你问上位机的高级语言编程呢还是PLC的MODBUS从站编程?

上位机用高级语言VB,DELPHI,BCB都可,用MSCOMM32.OCX控件,

找一段CRC16校验程序,就可与S7-200通讯,取到S7-200的输入输出

状态,V区的值,但取不到M区的值;

S7-200的MODBUS从站就简单,用两条现成的指令就能实现;

 

cobi

  • 精华:0帖
  • 求助:0帖
  • 帖子:6帖 | 22回
  • 年度积分:0
  • 历史总积分:53
  • 注册:2008年11月29日
发表于:2008-11-29 16:56:17
2楼

是PLC的

那怎样检验,和发送应答

guafa58

  • 精华:1帖
  • 求助:0帖
  • 帖子:43帖 | 2142回
  • 年度积分:4
  • 历史总积分:3969
  • 注册:2006年1月13日
发表于:2008-11-29 17:36:33
3楼
还没有机会使用啊,觉得西门子的这个功能还是很不错的啊

二十四桥明月夜

  • 精华:3帖
  • 求助:0帖
  • 帖子:114帖 | 3593回
  • 年度积分:0
  • 历史总积分:7688
  • 注册:2008年3月16日
发表于:2008-11-29 19:16:30
4楼

网上有关MODBUS的协议不要太多,很简单,至于CRC16,有两种方法我贴个小一点的:

void calcrc(BYTE frame[],int n,BYTE *cod)
{ // 求MODBUS校验码
unsigned short crc=0xffff;
for (int i=0;i<n;i++)
{
crc^=frame[i];
for (int j=0;j<8;j++)
{
unsigned short flag=crc&1;
crc>>=1;
if (flag)
crc^=0xa001;
}
}
*(unsigned short *)cod=crc;
}

二十四桥明月夜

  • 精华:3帖
  • 求助:0帖
  • 帖子:114帖 | 3593回
  • 年度积分:0
  • 历史总积分:7688
  • 注册:2008年3月16日
发表于:2008-11-29 19:18:49
5楼

BYTE 就是unsigned char

Frame[]就是要求CRC码的长为N的字节串,两字节CRC16码放在cod[0],cod[1];

这个子程序是我项目中用的,没问题

二十四桥明月夜

  • 精华:3帖
  • 求助:0帖
  • 帖子:114帖 | 3593回
  • 年度积分:0
  • 历史总积分:7688
  • 注册:2008年3月16日
发表于:2008-11-29 19:23:08
6楼

我的MODBUS小项目,花了我九个晚上搞好的(不会有奖励),

做完安装好就跳槽了.主要是练习串行通讯与MODBUS,很成功.

cobi

  • 精华:0帖
  • 求助:0帖
  • 帖子:6帖 | 22回
  • 年度积分:0
  • 历史总积分:53
  • 注册:2008年11月29日
发表于:2008-12-01 08:09:54
7楼

感谢各位的指导,我刚刚入门啥也不懂。在各位的指导下总算有小小头绪

但我做的是S7-200的从站。PC主站不用我搞

PLC如何编程呢?(主要的疑问是,如何校验和发送应答,发送缓冲区设在哪里还是本身就有一个固定发送区?

二十四桥明月夜

  • 精华:3帖
  • 求助:0帖
  • 帖子:114帖 | 3593回
  • 年度积分:0
  • 历史总积分:7688
  • 注册:2008年3月16日
发表于:2008-12-01 13:11:03
8楼

S7-200从站很简单,有两条指令,校验都是自动的;

   瘳常初的S7-200书上就有;

领导如果给你布置的是这个从站程序,你在网上搜一下,半天就能完成任务了;

 

cobi

  • 精华:0帖
  • 求助:0帖
  • 帖子:6帖 | 22回
  • 年度积分:0
  • 历史总积分:53
  • 注册:2008年11月29日
发表于:2008-12-01 13:30:43
9楼

如果上位机是设定自己的校验方法呢?能通过吗?不可能自动吧

逆水

  • 精华:0帖
  • 求助:0帖
  • 帖子:0帖 | 72回
  • 年度积分:0
  • 历史总积分:60
  • 注册:2018年12月14日
发表于:2019-12-19 18:46:07
10楼

真厉害,大神级别好啊好啊


逆水

  • 精华:0帖
  • 求助:0帖
  • 帖子:0帖 | 72回
  • 年度积分:0
  • 历史总积分:60
  • 注册:2018年12月14日
发表于:2019-12-20 15:54:24
11楼

nilihaidasengji

liuyingqing139

  • 精华:0帖
  • 求助:0帖
  • 帖子:0帖 | 1496回
  • 年度积分:0
  • 历史总积分:0
  • 注册:1900年1月01日
发表于:2020-10-20 16:50:16
12楼

真厉害,大神级别好啊好啊

小相公

  • 精华:0帖
  • 求助:0帖
  • 帖子:0帖 | 116回
  • 年度积分:0
  • 历史总积分:52
  • 注册:2020年4月27日
发表于:2020-12-08 22:06:12
13楼

你们聊,我学习一下。


热门招聘
相关主题

官方公众号

智造工程师