西门子模块6ES7222-1EF22-0XA0原装库存

供应商
浔之漫智控技术-西门子PLC代理商
认证
手机号
15221406036
经理
聂航
所在地
上海市松江区石湖荡镇塔汇路755弄29号1幢一层A区213室
更新时间
2024-05-08 07:10

详细介绍

说明

上面提供了两个 stl 示例。stl 程序员可使用组只能显示在 stl编辑器中的简化

stl 指令。这是因为用作 lad/fbd 能流输入的 bool 参数不保存到 l 存储器。

第二组编译器生成的 stl 指令可显示在 lad、fbd 和 stl

编辑器中,因为程序编译器使用 l 存储器来保存在 lad/fbd 中为能流输入的 bool

输入参数的状态。

地址参数(例如,in4 (&vb100))传入子例程作为

dword(无符号双字)值。对于调用例程中常数值前面有常数描述符的参数,必须为其常数参数类型。例如:要传送值为 12,345

的无符号双字常数作为参数,必须将常数参数为

dw#12345。如果参数中遗漏了对于常数的说明,则可将该常数认定为不同类型。

不对输入或输出参数自动执行数据类型转换。例如,如果变量表参数的数据类型为 real,但在调用例程中,为该参数双字 (dword)

数据类型,则子例程中的参数值将是双字数据类型。

值传递到子例程后,存储在子例程的局部存储器中。变量表的左列显示各传递参数的局部存储器地址。调用子例程时,输入参数值将到子例程的局部存储器中。子例程执行完成时,从子例程的局部存储器将输出参数值到输出参数地址。


数据元素大小和类型用参数的编码表示。参数值到子例程中的局部存储器的分配如下所述

● 参数值按照带参数的调用子例程指令的顺序分配给局部存储器,起始地址是 l

0.0。

● 一至八个连续位参数值分配给从 lx.0 到 lx.7 的单个字节。

● 字节、字和双字值分配给以字节为边界的局部存储器(lbx、lwx 或 ldx)。

在带参数的子例程调用指令中,必须按照一定的顺序排列参数,输入参数在前面,其次是输入/输出参数,然后是输出参数。

如果使用 stl 编程,则 call 指令的格式是:

call 子例程编号, 参数 1, 参数 2,... , 参数 16

示例:子例程和子例程返回指令

lad

stl

main


扫描时,调用子例程 0

进行初始化。

network 1 ld sm0.1 call sbr_0

sbr0


可以在后一个程序段前使用有条件返回指令来退出子例程

network 1 ld m14.3 cret

sbr0


如果 m14.3

接通,将跳过此网络。

network 2 ld sm0.0

movb 10, vb0


示例:使用字符串参数的子例程调用

此示例根据给定输入的状态将不同字符串文字到地址。此字符串的地址被保存。然后,通过间接地址将字符串地址传入子例程。子例程输入参数的数据类型是字符串

。然后,子例程将字符串移到其它位置。

字符串文字也可传入子例程。子例程内的字符串引用始终相同

西门子plc模块6es7531-7nf00-0ab0

使用starter / scout调试
如图9所示:在step7项目中生成了两个驱动项目“sinamics_s120_cu320"和"sinamicsxs120xcbe20v1",分别是驱动在profibusdp和profinet io网络上生成的。本例中pc与cbe20之间通过网线连接,用如图9的方式既可直接打开starter或scout 及驱动项目。


图 9.

可通过使用"configuration"对驱动装置进行手动配置。配置结束后编译保存。
本例中:在scout中选择同样的报文结构,并与step7 hw config中定义的报文结构保持*,并单击“transfer tohw config"按钮


图 10.

注意:s120支持两个周期性通讯接口if1和if2,分别通过cu参数p8839.0和p8839.1来定义if1和if2的通讯方式,在默认情况下p8839.0=p8839.1=99,就激活了这两个接口的自动模式,如下表所示:


在这种方式下无法实现profibus dp和profinet io的并行通讯,因此为了实现其并行通讯,需要按如下方式设置:
? p8839[0]=1和p8839[1]=2:profibus dp 用于同步,profinet io用于周期性通讯
? p8839[0]=2和p8839[1]=1:profinet io用于同步,profibusdp用于周期性通讯(本例中的设置)

两个周期性通讯接口if1和if2的特性如上表所示:
注意:if2不支持tm41,tm15,tm17,tm/tb,cu与cpu之间的通讯。

五、通过profibus dp或profinet io总线来实现过程数据的传输
s7-300/400plc通过profinet io或profibusdp周期性通讯方式将控制字1(ctw1)和主设定值(nsetp_b)发送至驱动器。
(1) 控制字中bit0做电机的起、停控制。
(2) 主设定值为速度设定值,参数p2000中的值为频率设定值和实际值的参考频率,对应4000h(十六进制),发送的高频率(大值)为7fffh(200%)。
(3) 当组态的报文结构 pzd=2或自由报文999时,在s7-300/400 中可用“move"指令进行数据传送;当组态的报文结构pzd >2,在s7-300/400 中需调用sfc14和sfc15系统功能块。
? sfc14(“dprd_dat")用于读驱动装置的过程数据。
? sfc15(“dpwr_dat")用于将过程数据写入驱动装置。
例子(profinet io):servo_02 控制字、主设定值的发送及状态字、实际频率的读取程序见图11。


图11

通过读取servo_02的参数r2050和p2051可以判断数据是否传输成功。


图12

例子(profibus dp):servo_02 "控制字、主设定值的发送及状态字、实际频率的读取程序见图13。


图13

通过读取servo_02的参数r8850和p8051可以判断数据是否传输成功。


图14

注意通过通讯接口if1和if2可以同时实现cpu与servo_02的数据传输

六、驱动器参数的读取及写入

1.扩展profidrive功能(dpv1)
非周期性数据传送模式允许:
? 交换大量的用户数据
? 用dpv1的功能 read 和 write可以实现非周期性数据交换。传输数据块的内容应遵照profidrive参数通道(dpv1)数据集ds47(非周期参数通道结构)。


2. 参数请求及参数应答的结构
参数请求包括三部分:请求标题、参数地址及参数值。


表1.参数请求格式

 


表2.参数应答格式

 


表3.参数请求及应答描述

 


西门子代理商,西门子模块代理商,西门子一级代理商,西门子PLC代理,西门子中国代理商

展开全文

我们其他产品
我们的新闻
优质商家推荐 拨打电话