SIEMENS西门子内蒙古省鄂尔多斯市(授权)一级代理商——西门子伺服电机华北总代理

供应商
广东湘恒智能科技有限公司
认证
西门子总代理
PLC
西门子一级代
驱动
西门子代理商
伺服电机
联系电话
15903418770
手机号
15915421161
联系人
张经理
所在地
惠州大亚湾澳头石化大道中480号太东天地花园2栋二单元9层01号房
更新时间
2024-06-07 07:00

详细介绍

用过s120的工程师都知道,s120有很多种通讯方式,常见的有profidrive 通讯、profibus dp通讯、profinet io 通讯、modbus tcp通讯、ethernet/ip(eip)通讯等等。与西门子的plc通讯时前三种是方便也是常用的。这次我主要分享一下profidrive通讯里面的非周期性通讯。


当我们在做程序的时候,一般都是选择适合的报文,让plc与s120进行数据的交换或控制,这种通讯方式为profidrive的周期性通讯,当有时候我们需要读取很多驱动参数的时候,周期性通讯将满足不了我们的要求了,这种情况下我们有两种选择,第一就是用fb286功能块进行读写,但调用一次多只能读取16个参数,如果超过16个参数,那就需要重复调用,这时候用非周期性通讯将会是一个不错的选择。


使用非周期通讯对读写参数数量没有限制,但每个读写任务大为 240个字节。当用s7-1200/s7-1500与s120走非周期性通讯时,需要采用系统功能块“wrrec”和“rdrec”,其中“wrrec”将“请求”发送给s120,“rdrec”将 s120 的“应答”返回给 plc,这样就完成了一个读写的循环。


s120与plc的通讯组态已经介绍过很多次,在这里不多做介绍,主要介绍一下程序中怎么去编写报文。如下图▼

第1部分是plc通过“wrrec”发送给s120的报文,如果通讯成功,s120将通过“rdrec”返回第2部分报文,作为响应。这里对报文结构里的几个数据进行说明:

请求id:读16#01,写16#02;

轴号id:这里指驱动的轴号,g120为1,v90为2,s120根据组态选择相应轴号;

参数数量:要读取或写入的参数数量;

参数属性:要读取参数的值 16#10,只读取参数的描述16#20(只适用于读任务);

其他数据可以根据我程序里的变量名称直观的了解其含义。


“wrrec”.req:每一个上升沿执行一次;

“wrrec”.id:选择驱动的硬件标识符;

“wrrec”.index:固定为47;

“wrrec”.record:请求读报文从db1.dbw0开始,长度一共8个字;

 

“rdrec”.req:每一个上升沿执行一次;

“rdrec”.id:选择驱动的硬件标识符;

“rdrec”.index:固定为47;

“rdrec”.mlen:响应报文长度为16个byte;

“rdrec”.record:响应报文返回的数据存入从db1.dbw20开始的字,长度一共8个字;

"wrrec_db".req的上升沿触发"wrrec“功能块,向s120发送请求读报文,读取参数r21实际速度与r31实际扭矩,完成信号"wrrec_db".done触发“rdrec”功能块,接收响应报文,测试结果如下图▼


对于写请求也是一样,先要通过“wrrec”功能块发出写请求报文,向p1120和p1121两个参数分别写入加速时间10s,减速时间15s,然后通过“rdrec”功能块读取响应报文。结果显示通讯成功,写入2个参数▼


以上就是s7-1200通过非周期性通讯与s120进行参数读写的步骤,西门子其他支持pn或dp通讯的驱动用非周期通讯和上面一样。


PLC,变频器,代理商,一级代理,伺服电机

展开全文

我们其他产品
我们的新闻
咨询 在线询价 拨打电话