西门子S7-200Smart系列PLC和拧紧轴驱动器实现ModbusTCP以太网通信 点击:195 | 回复:7



关育谋

    
  • [版主]
  • 精华:4帖
  • 求助:22帖
  • 帖子:577帖 | 5206回
  • 年度积分:110
  • 历史总积分:49091
  • 注册:2004年5月28日
发表于:2021-11-22 12:21:55
楼主

西门子S7-200 Smart系列PLC和拧紧轴驱动器实现Modbus TCP以太网通信


一、系统概述:

拧紧轴由提供动力源的伺服电机、提供输出扭矩的减速机和用以检测扭矩之传感器组成,另外还需要外接控制器,用以控制、显示。其原理是利用伺服电机做为动力单元,连接减速机构,增大输出力矩,连接扭矩传感器用以检测力矩。扭矩传感器和伺服电机组成闭环控制,就可以精确的控制输出力矩等参数。本文所介绍之拧紧轴驱动器支持Modbus TCP以太网协议,我们使用西门子S7-200 Smart系列PLC和拧紧轴驱动器实现Modbus TCP以太网通信,西门子S7-200 Smart系列PLC可对拧紧轴目标扭矩进行相关操作。

二、通信连接:

1、西门子S7-200 Smart系列PLC内置以太网口通过网线连接至交换机LAN接口;

2、拧紧轴驱动器网口通过网线连接至交换机LAN接口。

三、西门子S7-200 Smart系列PLC内置以太网口通信参数:

1、通信协议:Modbus TCP Client

2、IP地址:192.168.1.162

3、端口号:3000

参数设置如下所示:
微信图片_20211121221747.png

端口中有关服务器通信参数通过编程实现,详情见PLC编程。

四、拧紧轴驱动器网口通信参数:

1、通信协议:Modbus TCP Server

2、IP地址:192.168.1.75

3、端口号:502

其Modbus通信地址表如下所示:
微信图片_20211121221907.png

我们这里对测量扭矩(寄存器地址15010)进行实时读操作。

五、相关功能块安装:

西门子S7-200 Smart相关Modbus TCP客户端、Modbus TCP服务器、Modbus RTU主站和Modbus RTU从站功能块需要提前安装,如下所示:
微信图片_20211121221937.png

六、西门子S7-200 Smart系列PLC编程详解:

1、网络1:初始化复位各个标志位
微信图片_20211121222026.png

2、网络2:连接建立后置位M1.0,然后开始执行读写操作:
微信图片_20211121222052.png

3、网络3:连接断开后复位各个标志位:
微信图片_20211121222115.png

4、网络4:调用MTC_LINK_0指令,可实现与服务器建立连接或者断开连接,各参数含义如下所示:

(1)EN:使能端,要求每个扫描周期都接通,所以一般使用SM0.0;

(2)EConnectionSet:建立TCP连接操作,这里我们使用M0.0来建立TCP连接;

(3)DConnectionSet:断开TCP连接操作,这里我们使用M0.1来断开TCP连接;

(4)IP01Addressset:服务器IP地址第1段,这里拧紧轴驱动器IP地址第1段为192;

(5)IP02Addressset:服务器IP地址第2段,这里拧紧轴驱动器IP地址第2段为168;

(6)IP03Addressset:服务器IP地址第3段,这里拧紧轴驱动器IP地址第3段为1;

(7)IP04Addressset:服务器IP地址第4段,这里拧紧轴驱动器IP地址第4段为75;

(8)RemoPortNumber:服务器端口号,这里拧紧轴驱动器端口号为502;

(9)LocaPortNumber:本地端口号,即就是PLC作为客户端时的端口号,这里设定为3000;

(10)TimeoutSetting:服务器超时时间设定,单位为毫秒,这里设定为10000毫秒。

(11)CompletionMark:完成标志位,当连接建立成功后,该标志位被置位;

(12)BusyLinOutMark:忙线标志位,连接断开或者未建立时,该标志位被置位;

(13)ErroCodeOutput:错误代码,该错误代码为参考开放式用户通信库指令错误代码,具体请参考STEP 7-Micro/WIN SMART在线帮助或者PLC系统手册相关篇章。
微信图片_20211121222137.png

5、网络5:扫描周期,连接建立后M1.0被置位,延时10ms后置位M1.1,然后执行读取测量扭矩
微信图片_20211121222216.png

6、网络6:调用MTC_TRAN_0指令,调用该指令可对拧紧轴驱动器执行读写操作,各参数如下所示:

(1)EN:使能端,同一时刻只能有一条MTC_TRAN_0指令使能,EN 输入参数必须一直接通直到 MTC_TRAN_0 指令CompletionMark位被置 1;

(2)CommandWSwitch:读写请求开关,每一条新的读写请求需要使用信号沿触发;

(3)SlaveAddressID:单元标识符,一般由客户端设定,特殊情况亦可根据服务器进行设定;

(4)ModbusFunction:Modbus功能码,支持01、02、03、04、05、06、15、16等8个功能码;

(5)RegisterAddres:寄存器地址,设定范围为0~65535,即就是16进制0000~FFFF;

(6)RegisterNumber:寄存器数量,

对于01和02功能码,设定范围为1~1920个位

对于03和04功能码,设定范围为1~120个字

对于05和06功能码,设定为1

对于15功能码,设定范围为1~1888个位

对于16功能码,设定范围为1~118个字

(7)RegisterBuffer:读写缓冲区,参数RegisterBuffer是间接地址指针,指向 CPU 中与读/写请求相关的数据的 V 存储器地址。

(8)CompletionMark:完成标志位,当MTC_TRAN_0指令执行完成后,该标志位被置位

(9)ErroCodeOutput:错误代码,主要错误代码如下所示:
微信图片_20211121222305.png

这里我们利用MTC_TRAN_0指令对拧紧轴驱动器测量扭矩进行读取操作:
微信图片_20211121222330.png

7、网络7:MTC_TRAN_0指令执行完成后,完成标志位被置位,完成一次操作,然后复位相关标志位,置位M1.0,为下一次操作做好准备:
微信图片_20211121222357.png

七、Modbus TCP服务器(拧紧轴驱动器)的测试:

调试助手发送命令:12 34 00 00 00 06 01 04 3A A2 00 02

拧紧轴驱动器返回:12 34 00 00 00 07 01 04 04 42 DE 00 00
微信图片_20211121222423.png

八、Modbus TCP客户端测试(西门子S7-200 Smart):

将服务器IP地址修改为电脑IP地址,电脑上使用Modbus Slave调试助手模拟拧紧轴进行测试

PLC发送命令:09 14 00 00 00 06 01 04 3A A2 00 02

调试助手返回:09 14 00 00 00 07 01 04 04 00 00 13 88
微信图片_20211121222452.png

九、系统联调:

经过调试,西门子S7-200 Smart系列PLC和拧紧轴驱动器完美实现Modbus TCP以太网通信,PLC中可以对拧紧轴测量扭矩实现读取操作,程序编写调试成功,程序截图如下所示:

十、通信调试工具提供下载:

正在下载,请等待……
下载附件需0积分!

1分不嫌少!



fighting2021

  • [管理员]
  • 精华:4帖
  • 求助:3帖
  • 帖子:795帖 | 6143回
  • 年度积分:2664
  • 历史总积分:14596
  • 注册:2008年11月11日
发表于:2021-11-22 13:40:07
1楼

感谢0积分样例分享

Smile-lyc

  • [管理员]
  • 精华:179帖
  • 求助:47帖
  • 帖子:4139帖 | 20910回
  • 年度积分:632
  • 历史总积分:117693
  • 注册:2006年8月04日
发表于:2021-11-22 18:36:12
2楼

加精!好贴,零几分下载了

yang20908

  • 精华:0帖
  • 求助:0帖
  • 帖子:1帖 | 964回
  • 年度积分:82
  • 历史总积分:5901
  • 注册:2010年4月06日
发表于:2021-11-24 16:38:33
3楼

是阿特拉斯的拧紧控制器吗?


深山石头

  • 精华:0帖
  • 求助:0帖
  • 帖子:0帖 | 87回
  • 年度积分:48
  • 历史总积分:73
  • 注册:2009年3月23日
发表于:2021-11-27 16:32:09
4楼

加精!好贴,零几分下载了

梵519

  • 精华:0帖
  • 求助:0帖
  • 帖子:0帖 | 9回
  • 年度积分:34
  • 历史总积分:39
  • 注册:2014年8月18日
发表于:2021-11-30 12:42:20
5楼

加精,非常好的帖子,谢谢楼主

zj1988

  • 精华:0帖
  • 求助:0帖
  • 帖子:2帖 | 115回
  • 年度积分:132
  • 历史总积分:184
  • 注册:2020年5月26日
发表于:2021-11-30 16:03:55
6楼

啊呜呜呜呜

  • 精华:0帖
  • 求助:0帖
  • 帖子:0帖 | 49回
  • 年度积分:78
  • 历史总积分:78
  • 注册:2021年12月01日
发表于:2021-12-07 09:09:44
7楼

"fighting2021" 的回复,发表在1楼
        对内容: 【感谢0积分样例分享】进行回复:

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


出扭矩的减速机和用以检测扭矩之传感器组成,另外还需要外接控制器,用以控制、显示。其原理是利用伺服电机做为动力单元,连接减速机构,


相关主题

官方公众号

智造工程师