登录
首页 PLC论坛 PLC论坛
回帖 发帖
正文

主题:西门子S7-200 SMART PLC入门参考

点击:6367 回复:32

四、GET/PUT通讯
200CN之间PPI联网,软件自带的PPI向导组态很是方便,整个网络基于RS485接口传输。现在SMART自带的DB9口不支持PPI联网通讯,但它具有了以太网口支持Get/Put通讯,下面一起来完成 Get/Put 通讯联机过程。
2台SR30,一台做主机(192.168.2.200),一台做从机(192.168.2.201)。
主机中程序编写如下:
附件 1.jpg
从机中程序编写如下:
附件 2.jpg
主机中利用向导组态 Get/Put 网络通讯过程:
1.    进入向导
2.    点击添加,操作项目树下添加一个名称,与默认名称共2个分别组态成PUT/GET
3.    双击可以修改名称以及添加注释
4.    完成后自动出现组态的数量,上图为2个
附件 3.jpg
2个操作——Put、Get的具体组态步骤:
双击组态Put界面,相当于将主站VB0映射到分站QB0(写一个字节的数据)
附件 4.jpg
双击或者“下一页”组态Get界面,相当于将分站VB0映射到主站QB0(读一个字节的数据)
附件 5.jpg
继续点击“下一页”,出现“存储器分配”界面。表明刚刚组态的数据交换占用主站PLC的43个字节(VB43~VB85)
附件 6.jpg
继续点击“下一页”,出现“组件”界面。刚刚的组态生成一个逻辑控制块、一个符号表、一个数据块。
附件 7.jpg
继续点击“下一页”,出现“生成”界面。完成整个组态过程。
附件 8.jpg
主机检测到自己I0.0上升沿,将255  MOV到VB0(即就是VB0的8个位都为1),而组态的联机Put指令将主站VB0映射到了分站QB0,那么此时分机(192.168.2.201)Q0.0~Q0.7整个QB0全部都有输出;同理,主机检测到自己I0.0下降沿,将0  MOV到VB0(即就是VB0的8个位都为0),此时分机(192.168.2.201)Q0.0~Q0.7整个QB0全部没有输出。
从机检测到自己I0.0上升沿,将255  MOV到VB0(即就是VB0的8个位都为1),而组态的联机Get指令将从机VB0映射到了主机QB0,那么此时主机(192.168.2.200)Q0.0~Q0.7整个QB0全部都有输出;同理,从机检测到自己I0.0下降沿,将0  MOV到VB0(即就是VB0的8个位都为0),此时主机(192.168.2.200)Q0.0~Q0.7整个QB0全部没有输出。
简单点说,就是用主机I0.0点控制从机QB0一个字节的输出;用从机I0.0点控制主机QB0一个字节的输出。
到底是不是这样子?下载程序后看看运行情况。连接网线,将主控程序下载进主机PLC,下图右侧为主机(192.168.2.200)。
附件 9.jpg
监控主机程序截图。监控时可以发现Rx/Tx指示灯亮(上图右侧PLC上橘黄色灯光)。
附件 10.jpg
下载从机PLC程序,如下图将2台PLC网口用网线连接起来,红色按键按下锁定(接于主机I0.0位),此时主机检测到I0.0上升沿,分机PLC的Q0.0~Q0.7全部输出(下图左边PLC下端一排绿灯)
附件 11.jpg
绿色自复位按键按下不放(接于从机I0.0位),此时从机检测到I0.0上升沿,主机PLC的Q0.0~Q0.7全部输出(下图右边PLC下端一排绿灯)
附件 12.jpg
OK!在STEP 7-MicroWIN SMART V2.0环境下采用Get/Put向导完成PLC之间Get/Put以太网通讯就是这样简单。
最后修改:2019/9/9 17:02:21
19-09-09 16:53
请问是要先卸载V2.3版本,才能安装V2.4版本吗?怕卸载不干净安装不成功。
19-09-10 10:23
要卸载后才能安装。
卸载残余引起的安装问题,就注册表中删除残余信息。(这方面百度一些办法管用)
19-09-10 10:54
刚刚请购了1台SR20,12入 8出的SMART,第一次使用。谢谢分享的教程
19-09-10 11:47
刚买了一台,正在玩。为什么上载时有的块没上载到电脑。
最后修改:2019/9/10 12:20:48
19-09-10 12:20
很不错,正在学习
19-09-10 15:47
可以参考一下这个:
必须在 STEP 7-Micro/WIN SMART 中打开项目,才能上传数据块。
如果 CPU 中的数据块与您打开的项目中的数据块不匹配(或者您打开的项目中没有数据块),您只能上传该 PLC 的数据块地址部分和数据值部分,而不能上传注释。 地址以字节值格式上传,数据值(包括任何文字)以十六进制格式上传。
如果 CPU 中的数据块包含多个数据页(数据块编辑器中的多个选项卡),则上传将会重新载入数据页和选项卡结构。
上传后保留数据块格式
从 CPU 上传一个数据块时,会发生一些格式变化。 如果您先前已在一行中输入多个数据值,当您上传时,格式不被保留。 每个条目在一个单独行中显示。
例如,如果您在数据块编辑器中输入 VB0 20, 30, 40, 50 并将其下载至 CPU,以后上传时格式会更改为:
VB0 20
VB1 30
VB2 40
VB3 50
19-09-11 09:19
五、GET/PUT通讯
前面四讲到利用软件提供的Get/Put向导实现2台SMART之间数据交换。那么不采用向导,直接使用Get/Put指令会是怎样的情况呢?
还是2台SR30,一台主机(192.168.2.200),一台从机(192.168.2.201)来完成前面四讲到的任务,这次我们不使用向导,直接使用Get/Put指令来实现——主机I0.0点控制从机QB0一个字节的输出;从机I0.0点控制主机QB0一个字节的输出。
先看看西门子对Get/Put指令的描述:
附件 1.jpg
附件 2.jpg
主机(192.168.2.200)程序编写如下:
附件 3.jpg
附件 4.jpg
附件 5.jpg
附件 6.jpg
附件 7.jpg
从机(192.168.2.201)程序编写如下:
附件 8.jpg
将以上程序载入,连接2台PLC测试,完全可以实现预期逻辑。与前面四讲到一样的效果,主机I0.0点控制从机QB0一个字节的输出;从机I0.0点控制主机QB0一个字节的输出。
19-09-11 09:40
六、从站丢掉后主站映射区数据复位问题
2台SMART 200建立以太网连接,假如从站IB0映射到主站QB0,当从站I0.0=1时,主站Q0.0=1。此时断开以太网线,主站Q0.0仍然有输出(Q0.0=1),不能自动复位(见下图),而我们大多时候期望网络断开后与从站有映射关系的所有输出都复位。
附件 1.jpg
使用上图M1.0/M1.1复位,没有成功。
查看主站组态后的符号表(图一),使用V43.3来复位也不行。
附件 2.jpg
附件 3.jpg
那么到底有没有网线断开的标志位?
看手册中以下表格:
附件 4.jpg
附件 5.jpg
结合上图一程序符号表,我们不难发现,GET/PUT断网标记代码为5,那么就是0101,即对于PUT来说V70.2/V70.0同时为1,对于GET来说V54.2/V54.0同时为1。在主控程序中添加以下逻辑测试:
附件 6.jpg
运行过程中,人为拔掉以太网电缆,受从站控制的主站输出就会马上复位为0。
最后修改:2019/9/11 9:58:21
19-09-11 09:56
七、SMART的RS485通讯口0__自由口通讯
通过自由口模式利用发送(XMT)接收(RCV)指令来完成2台PLC之间的数据交换。
还是2台CPU SR30 AC/DC/RLY(6ES7 288-1SR30-0AA0),姑且一台称之1#;另一台称之2#。
SMART用户手册中有一个经典的例子程序,接收到16#0A字符时将接收到的信息发送回去,将这个程序逻辑简单改造后就可以完成本系列文章一直要完成的工作:
1# PLC的I0.0/I0.1有/无信号,2# PLC的Q0.0/Q0.1有/无输出;反之亦然。
1#程序:
主程序完成通讯口初始化:自由口模式;9600波特率、8数据位、无校验;启动全局中断;定义接收完成中断、发送完成中断。
附件 1.jpg
接收完成中断。启动10ms定时器中断完成发送。
附件 2.jpg
完成发送任务
附件 3.jpg
完成接收任务
附件 4.jpg
2#程序:
主程序完成通讯口初始化:自由口模式;9600波特率、8数据位、无校验;启动全局中断;定义接收完成中断、发送完成中断。(注意:由于1#上电初始化激活了接收指令,处于等待接收状态。那么2#首先就要主动发送数据,上电后延时启动发送指令)
附件 5.jpg
附件 5-1.jpg
接收完成中断。启动10ms定时器中断完成发送。
附件 6.jpg
完成发送任务
附件 7.jpg
完成接收任务
附件 8.jpg
将以上程序分别下载进2台PLC中,如图所示验证逻辑,达到了预期效果:
附件 9.jpg
按下1# PLC的I0.0,2# PLC的Q0.0输出;反之按下2# PLC的I0.1,1# PLC的Q0.1输出。
最后修改:2019/9/12 16:19:15
19-09-12 16:15

上一页 下一页

工控新闻

更多新闻资讯