分享

利用200SMART填表指令实现喷码分拣

 PLC发烧友 2023-05-04 发布于广东

导读:

这篇文章为大家介绍如何利用200SMART的填表指令来实现物品的喷码分拣。所谓喷码就是喷码机接收到上位机给出的物品信息,将相应的条码喷到装载物品的纸皮箱侧面,同时PLC也接收到上位机给出的物品信息,在物品流经分拣位置时,发出是否让气缸动作的命令。

本例以两个路向为例当物品在输送带上传输触发了工业相机动作光电时,工业相机会摄取贴在纸皮箱的标签并将信息传至上位机;纸皮箱继续移动流经第二个光电传感器时,上位机会把物品信息发送到PLC和喷码机;

当纸皮箱触发喷码光电时,经过适当延时,喷码机动作,将条码喷到纸皮箱侧面;纸皮箱继续运行,到达分拣区域时,PLC根据进入表格内的物品信息发出指令使气缸动作或不动作,将纸皮箱推至正确的路向。工艺流程图如下图1所示:

图1

一、所需软件及硬件

西门子200SMART编程软件V2.7版,MODSCAN测试软件,200SMART ST30 CPU一台,通信网线一条(此处准备的软硬件是为了仿真测试表格内数据的入栈出栈功能)。

二、程序编写及解读

因为工业相机及喷码机接收到各自光电给出的信号后,其动作都是由自身的控制系统控制的,不需要PLC编写程序,故此程序并不复杂,只需控制皮带机及气缸动作,接收上位机发送的数据排成队列,然后实现先入先出即可。

1

初始化

程序第一个扫描周期先定义表格的表头为VW200,然后把0赋值给VW202至VW222。VW202为实际填表数据的条目数,其余数据存储区,即定义最多填十条数据。可以根据实际现场情况来定。该项目从相机到气缸段最多可存储8个纸皮箱,多定义两条以防止溢出。初始化程序如下图2所示:

图2

2

MODBUS TCP服务器指令

上位机为MODBUS TCP通讯的客户端,PLC作为服务器随时接收来自上位机发过来的物品信息并存放至VW0。指令如下图3所示

图3

3

系统启停

通过操作启停按钮来控制系统的运行停止,如下图4所示:

图4

4

物品信息传送

当装载物品的纸皮箱触发数据传送光电I0.0时,I0.0的上升沿接通填表指令,将该物品的数据信息传送至表格内的第一条空白条目处。为简单起见,这里只给出路向数据1或2,程序及示意图如下图5所示:

图5

5

气缸动作

当装载物品的纸皮箱触发气缸动作光电I0.6且表内第一条数据为2时,气缸动作,推杆伸出将纸皮箱推到2号路向的皮带上。如数据为1,气缸不动作,货物直接流向驳接的后一条皮带,即1号路向皮带,程序如下图6所示:

图6

6

先入先出指令

当气缸推杆缩回到位后,执行先入先出指令,将条目中的第一条数据传送至VW300,表内的其它数据上移一位。程序及示意图如下图7所示:

图7

三、仿真测试效果


可以用MODSCAN软件来模拟上位机,将数字1和2传给PLC。

1

MODSCAN连接设置

打开MODSCAN软件,点击菜单栏的连接设置,选择连接。在弹出的对话框中选择连接模式,输入服务器的IP地址及服务端口号,点击确认。如下图8所示:

图8

2

MODSCAN通信地址设置

点击菜单栏—配置,选择数据定义,在弹出的图框内的点类型选择03保持型寄存器,长度填10,如下图9所示:

图9

3

MODSCAN与PLC连接

把程序下载到PLC中,如无错误,即可与MODSCAN软件建立通信。此时,双击40001后面数据,在弹出的对话框内填入1,PLC的VW0也变为1,证明接收到了数据,即该物品为1号路向。如下图10所示:

图10

4

数据入栈

 在程序的的状态图表中将1写入M1.0,VW0中的数据会传送至VW204,即表中的第一个条目,同时VW202实际填表数目会变为1。注意为方便调试,状态表中的M1.0、M1.1及M5.0分别表示

填表触发信号、先入先出触发信号和系统运行标志信号,可在在线状态监控表中根据需要更改上述三个位的状态。测试的结果如下图11:

图11

5

第二条数据入栈

 在MODSCAN软件上将40001的数值改为2,再重复上述第4步的操作,即可将数据2填入到第二个条目VW206中。如下图12所示:

图12

6

5条数据入栈与第一条数据出栈

 假设5条数据入栈后,第一个纸皮箱已运行至分拣区域,因路向数据为1,因此气缸不动作,直接流向后续接驳皮带。在触发气缸光电的下降沿导通FIFO指令,将VW204第一条数目的数据移出栈,同时所有数据向上移一个条目。如下图13所示:

图13

7

新数据再次入栈

 通过图13可以看出第一条数据出栈后,实际填表数VW202由5变为了4,其它4个数据也都上移了一个条目。但原先的存储在VW212的数据1并未清空,而是保持不变,那么为什么VW202变为4了呢?其实VW212这个条目已经是清空了的,此时如有新数据入栈,将会填到这个条目中。如下图14所示:

图14

至此仿真完毕,希望能对大家学习和使用填表和先入先出这两个指令有所帮助。

文章来源:技成培训网原创,作者:何晓刚;未经授权禁止转载,违者必究!

    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多