西门子PLC模块总代理商-滨州

供应商
浔之漫智控技术(上海)有限公司-西门子总代理商
认证
品牌
西门子
型号
PLC模块
产地
德国
联系电话
19542938937
手机号
19542938937
联系人
刘经理
所在地
上海市松江区石湖荡镇塔汇路755弄29号1幢
更新时间
2023-08-01 08:00

详细介绍

西门子plc总代理商-滨州


西门子plc总代理商-滨州

西门子plc总代理商-滨州

西门子plc总代理商-滨州

s7-200cpu的控制程序由主程序、子程序和中断程序组成。step7-mico/win32在程序编辑器窗口里为每个pou(程序组织单元)提供一个独立的页,主程序总是*1页,后面是子程序或中断程序。

因为各个程序在编辑都窗口里被分开,编译时在程序结束的地方自动无条件结束指令end、mend.ret或reti,如果在程序里加了这些指令,编译时反而会出错。

1.子程序的作用

子程序常用于需要主次反分执行相同任务的地方,只需要写次子程序,别的称序在占要子程序的时候调用它,而*重写该程序:子在序的词用是有条件的,未调用它时不会执行了的程序中的指令,因此使用子程序可以减少扫描时间。

使用子程序可以将程序分成容易管理的小块,使程序结构简单清晰,易于查错和维护。如果子程序中只引用参数和局部变量,可以将子程序移植到其他项目。为了移植了程序,应避免使用全局符号和变量,如i、q、m、sm、ai、aq、v、t、c、s、ac等存储器中的**地址。

2.子程序的创建

可采用下列方法创建子程序:在“编辑”菜单中选择“插人→子程序”;在程序编辑器视窗中按鼠标右键,从弹出菜单中选择“插人→子程序",程序编辑器将从原来的pou显示进人新的子程序,程序编辑器底部将出现标志新的子程序的新标签,在程序编辑器窗口中可以对新的子程序编程。可以使用该子程序的局部变量表定义参散,各子程序较多可以定义16个in、out参数。用石键双击指令树中的于程序或中断程序的图标,在弹出的窗口中选择“重新命名”,可修改它们的名称。

设创建了一个名为culcu的子程序,首先在该子程序的局部变量表中,定义一个名为输人"的双字in(输人)变量、一个名为“输出”的双字0ut(输出)变量和一个名为tmp1的双字temp(临时)变量(见图6-5)。在图6-6的子程序中,输人变量被图6-5局部变业表乘以12000,再除以13 257,运算结果作为子程序的输出。


图6-5局部变量表

3.子程序的调用

可以在主程序、另一子程序或中断程序中调用子程序,但是不能在子程序中调用自己(即不允许递归调用)。调用子程序时将执行子程序的全部指令,肖至子程序结束,然后返回调用程序中子程序调用指令的下一条指令之处。

创建子程序后,step7-micro/win32在指令树较下面的“子程序”图标下自动生成刚创建的子程序culcu对应的图标。对于梯形阁程序,在子程序局部变量表中为该子程序定义参数后,将生成客户化调用指令块(见图6-6),指令块中自动包含了子程序的输人参数和输出参数。


图6-6子程序与主程序

在梯形图程序中插人子程序调用指令时,首先打开程序编辑器视窗中需要调用子程序,找到需要调用子程序的地方。在指令树的较下面用左键打开子程序文件夹,将需要子程序图标从指令树拖到程序编辑器中的正确位置。或将光标置于程序编辑器视窗双击指令树中的调用指令。

应为子程序调用指令的各参数*有效的操作数,有效操作数为存储器地址、常量、全局符号和调用指令所在的p0u中的局部变量(不是被调用子程序中的局部变量)。

如果在使用子程序调用指令后修改该子程序中的局部变量表,调用指令将变为无效。必须删除无效调用,并用能反映正确参数的新的调用指令代替。

在语句表程序中调用子程序时使用调用指令“sbrn"。在调用子程序时,cpu保存整个逻辑堆栈后,将栈**值置为1,堆栈中的其他值清0,控制转移至被调用的子程序。子程序执行完成时,用调用时保存的数据恢复堆栈,控制返回调用程序。子程序和调用程序共用累加器,不会因使用子程序自动保存或恢复累加器。

4.调用带参数的子程序

调用带参数的子程序时需要设置调用的参数,参数在子程序的局部变量表中定义,较多可传递16个参数。

1n(输人)是传人子程序的输人参数,如果参数是直接寻址,如vb10.*地址的值被传、)人子程序。如果参数是间接寻址,如*ac1,指针*地址的值被传人子程序。如果参数是常数(例如dw#12345)或地址(如&vb100),它们的值被传人子程序,“非”为常数描述符。

0ut(输出)是子程序的执行结果,它被返回给调用它的pou常数和地址(如 & vb100)不能作抢出量。

in_out(输人/输出)将参数的初始值传给子程序,子程序的执行结果返回给同一地址。常数和地址不能作输人/输出参数。

在子程序中可以使用参数in、in_out和out。

temp是局部存储变量,不能用来传递参数,它们只能在子程序中使用。

子程序传递的参数放在子程序的局部变量表中,局部变量表较左边的一则是每个被传递的参数的局部存储器地址。调用子程序时,输人参数被拷贝到子程序的局部存储器,子程序执行完后,从局部存储器区拷贝输出参数到*的输出参数,数据单元的人小和类型用参数的代码表示。在子程序中局部参数存储器的参数值分配如下:

(1)按子程序指令的调用顺序,给参数值分配局部存储郜,起始地址是l0。

(2)1-8个连续的位参数分配一个字节,字节中的位地址为ix,0~lx.7。

(3)字节.字和双字值在局部存储器中按字节顺序分配,如lbx,lwx或ldx中品好宝

在带参教调用子程序指令中,参数必须按一定的顺序排列,输人参数在较前而,其次是输人/输出参数,较后是输出参数。

如果用语句表编程,程序调用指令的格式为;

call子程序号,参数1,参数2,……参数n

n0-16,带态数调用子程序使eno=0的错误条件:sm4.3(运行时间),0008(子程序嵌套**界)。

[例6-2]子程序调用举例(见图6-7)

https://0主程序

ld l0.0

call 10,io.1.vb10,ii.0,&vh1o0,*ac1.vd200

https://0主程序10

ld l2.1

cret https://从子程序条件返回

5.子程序的恢套调用

程序中较多可创建64个子程序。子程序可以嵌套调用(在子

程序中调用别的于程序),较大嵌套深度为8。

6.程序的有条件返回

在于程序中用触点电路控制ret(从子程序有条件返回)指令,触点电路接通时条件满足,子程序被终止。编程软件自动地为主程序和子程序添加无条件返回指令。

类似地,可以在主程序中用触点电路驱动end(有条件结束)指令。


图6-7子程序调用和返回

a)主程序b)子程序

西门子代理6es7590-1aj30-0aa0

simatic s7-1500,异型导轨 830 mm(大约 32.7 英寸); 包括接地螺栓, 集成 din 导轨 用于安装小型物料如端子之类,断路 器和继电器

西门子plc s7-300和s7-200的以太网s7通信(step7)

s7-300与s7-200通信,300既可以做客户端,也可以做服务器。

 s7-300作服务器,s7-200作客户端

当s7-300作服务器,s7-200作客户端时,在200侧编程,300*组态编程。

 s7-300作客户端,s7-200作服务器

当s7-300作客户端,s7-200作服务器时,在300侧组态编程,200侧也需要向导设置。

 系列视频:s7-200跟我学/跟我做

客户端与服务器定义请参看:服务器server和客户端client有什么区别?

s7-200plc本体没有以太网口,需要通过以太网模块cp243-1来扩展以太网通信,且一个s7-200plc只能扩展一个cp243-1。

cp243-1*多8个以太网s7控制器通信,每个连接既可以是服务器连接也可以是客户机连接。

一个客户端(client)可以包含1-32个操作,一个读写操作*多可以传输212个字节。如果cp243-1作为服务器运行,每个读操作可以传送222个字节。

s7-300做服务器,s7-200作为客户端

s7-200以太网向导配置

可以把s7-200的以太网模块cp243-1配置为client,使用step 7micro/win中的向导进行通信的配置即可。在命令菜单中选择工具--以太网向导。


图1 打开以太网向导
**步是对以太网通信的描述,点击下一步开始以太网配置。


图2 向导介绍
在此处选择模块的位置,cpu后的**个模块位置为0,往后依次类推;或者在线的情况下,点击读取模块搜寻cp243-1模块(在线读取将该模块的命令字节载入模块命令字节向导屏幕)。点击下一步;


图3 读取模块
选择模块相匹配的mlfb版本,本例中的cp243-1模块型号为6gk7243-1ex01-0xe0,如下图所示:


图4 模块版本选择
在此处填写ip地址和子网掩码。点击下一步;


图5 地址设置
下面的对话框将组态cp243-1进行s7连接的连接数量的设置,通过s7连接可以与通信伙伴进行读写数据操作。点击“下一步”按钮继续进行s7连接组态。


图6 模块占用地址设置
选择此为客户机连接,远程属性tsap (transport service accesspoint)填写为03.02,输入s7-300侧的ip地址。点击按钮进入数据交换的定义。
注意:如果连接远程对象是 s7-300,tsap为03.02;如果连接远程对象是s7-400,tsap为03.0x,其中x为cpu模块的槽位,可以从s7-400 站的硬件组态中找出plc的槽号。


图7 连接设置
选择""标记,并单击"新传输"按钮,进行配置:选择是读取数据还是写入数据,填写通讯数据的字节个数,填写发送数据区和接收数据区的起始地址。
本例中为从s7-300的mb200开始读取8个字节到vb1000开始的8个字节的区域中;从s7-200的vb2000开始的8个字节写到s7-300的0开始的8个字节的区域中,点击确认按钮:
注意: 本地plc中的地址必须是v内存字节地址,远程对象中的地址必须代表字节地址。当您为s7-300/s7-400设备输入远程地址时,若是数据块请使用dbx.dbby格式。

 
图8 数据区域设置
选择crc校验,使用缺省的时间间隔30秒,点击下一步按钮。


图9 使用crc
填写模块所占用的v存储区的起始地址。你也可以通过“建议地址”按钮来获得系统建议的v存储区的起始地址, 点击下一步按钮。


图10 配置存储区

s7-200侧编程

完成以太网向导配置后需要在程序中调用以太网向导所生成的ethx_ctrl和eth0_xfr,然后,将整个项目下载到作客户端的s7-200 cpu上。
1.调用向导生成的子程序,实现
对于s7-200的同一个连接的多个,不能同时,必须分时调用。下面的程序就是用**个的完成位去下一个,如图11.图12.图13.所示


图11 s7-200程序段1
图12 s7-200程序段2


西门子PLC,CPU,电源电缆,变频器,触摸屏。伺服机,低压软启动器代理商
展开全文
我们其他产品
我们的新闻
相关产品
模块 开关电源模块 西门子plc 国产plc 台达plc 松下plc PLC编程 西门子低压电器 gps模块 3G模块 陶瓷纤维模块 永宏PLC 模块化UPS 智能照明模块
优质商家推荐 拨打电话