S7-1500配方功能使用入门

配方通常在两种场合下使用,一是生产不同规格的产品,使用不同工艺参数值,二是在生产一种产品过程中有很多步骤,每个步骤都是有不同的工艺参数。
通常,这些参数数据存放在 cpu 的 db 块或 m 区,然后正常编程,无需使用配方功能。
但是,某些时候这些参数数据的数据量特别大,数值却是固定不变的,或者只是偶尔在需要的时候小做改动,此时,就可以利用配方功能。可以将配方数据导出到电脑,使用例如 excel 的编辑工具方便的输入参数然后再进行导入,并且在程序中可以读取及小量改动。
而对于 s7-1500 系列的 cpu 来说,配方数据可以仅保存在装载存储器,也可以同时保存在工作存储器以及装载存储器,即常规的 db 块,这两种方法优缺点如下:
对于仅保存在装载存储器的配方数据
优点:减小对工作存储器以及保持存储器的占用,可以通过更换存储容量更大规格的存储卡,存储更多的配方数据。
缺点:在读写配方数据时,必须使用 read_dbl 以及 writ_dbl 指令,无法使用普通指令进行读写,这两个指令专门用于处理仅存储在装载存储器的数据,是异步指令,也就是说无法实时的读写,需要一定的处理时间,并且对于存储卡来说频繁使用 writ_dbl 指令会导致存储卡损坏。
对于同时保存在工作存储器以及装载存储器的配方数据
优点:使用方便,使用常规指令例如 move 指令就可以对配方数据进行读写
缺点:需要占用 cpu 宝贵的工作存储器空间,尤其是对于工作存储器小的 cpu 1511、cpu 1510sp 等使用时更是需要提前规划好使用量。数据保持方面有两种方案,一种是不激活配方 db 数据的保持性,那样数据读写还是需要 read_dbl 以及 writ_dbl ,那样相对仅保存在装载存储器的配方数据的方案就没有任何优点了。另一种是激活配方 db 数据的保持性,需要占用 cpu 宝贵的保持性存储器空间,同样对于保持性存储器小的 cpu 1511、cpu 1510sp 等使用时需要提前规划好使用量。
所以总的来说,推荐第一种方案,本次例程中也是使用第一种方案。
当然对于配方数据量不大的项目,也可以使用第二种方案。
配方功能使用过程
配方功能使用过程如图 1 所示。
图 1 配方功能使用流程
配方指令
配方功能使用到的指令位置如图 2 所示。
图 2 配方使用相关指令
recipeexport 指令将完整的配方数据块导出,按照标准 csv 格式存储在 cpu 装载存储器的永久性配方数据文件中。
recipeimport 指令将配方数据从装载存储器上的 csv 文件导入到装载存储器上的配方数据块中。此过程会覆盖之前数据块中的值。
read_dbl 指令将配方数据从配方数据块读取到活动配方。
writ_dbl 指令将活动配方数据写入到配方数据块。
注意:以上四个指令都不支持使用 plcsim 或者 plcsim advanced 进行仿真,只能使用真实 cpu 测试执行。
配方使用例程
例程为制作不同冰淇淋选择不同的配方,并在 wincc 画面上根据配方号显示配方、修改配方。
硬件:
cpu 1516-3 pn/dp v2.9.4,订货号:6es7516-3an01-0ab0,x1 接口 ip 地址:192.168.1.32,子网掩码:255.255.255.0
电脑,网卡 ip 地址:192.168.1.201,子网掩码:255.255.255.0
软件:
windows 10 专业版 20h2
tia portal v17 update 3 step 7 + wincc advanced
microsoft office 2019
例程归档下载链接:下载。
1. 组态硬件,激活 web 服务器功能
打开 tia portal 软件,新建项目,添加指定版本及订货号的 cpu ,取消激活安全向导,设置 ip 地址,cpu 时区,激活 web 页面功能,此处过程略。
如图 3 所示,必须激活 web 页面用户管理中的“文件浏览器”功能。
图 3 用户管理设置
2. 编写配方程序
1)创建配方数据类型
项目树中,展开 plc 数据类型文件夹,添加新 plc 数据类型 “typeicecream” 用作配方数据类型,并在其中添加相关变量,如图 4 所示。
图 4 配方数据类型
2)创建配方 db
创建配方 db,然后新建配方数据类型数组的变量,并修改 db 属性仅存储在装载内存中,如图 5 - 6 所示。
图 5 配方 db
图 6 db 设置
3)创建活动配方
创建活动配方 db,然后新建配方数据类型的变量,如图 7 所示。
图 7 活动配方
4)创建配方操作相关变量
创建配方操作相关变量的 db,用于编程,说明如图 8 所示的注释。
图 8 配方操作相关变量
5)编写导入导出程序及捕捉错误代码
在 ob 1 编程及注释如图 9 所示。
图 9 编写导入导出程序
6) 编写读写配方程序
继续在 ob1 编程,读指定配方号配方数据到活动配方,将活动配方写入指定配方号的配方数据,如图 10 所示。
读取到的活动配方即可以用于后续工艺编程,或者关联到上位机画面显示修改。
图 10 编程读写配方程序
7)程序编写完成,将硬件组态及程序下载至 cpu。
3. 绘制并启动 wincc 画面
新建 pc 站,添加 wincc advanced,添加网卡,设置 ip 地址,建立与 cpu 的 hmi 连接,此处过程略。
新建画面如图 11 所示。
图 11 画面
关联左边 io 域与活动配方 db 的相对应数据关联。
配方号 io 域与变量 reciperef.recipeno 关联。
右下的四个按钮分别关联按下和释放两个事件,按下使得触发位置位,释放使得触发位复位。
之后编译 wincc 项目,启动画面。
4. 导出导入配方数据
1)导出配方数据
启动 wincc 画面后,点击“导出”按钮,然后打开电脑上的浏览器,输入 cpu ip 地址,浏览到“文件浏览器 > recipes”,如图 12 所示。
图 12 打开 web 页面
2) 编辑配方数据
点击图 12 的 csv 文件,下载到电脑中,之后点击图 12 红框处的图标删除该文件。
使用 excel 软件对 csv 文件打开编辑保存,如图 13 所示。
图 13 编辑后的配方数据
3)导入配方数据
如图 14 所示的操作。
图 14 上传配方
①点击该图标,浏览到修改的 csv 文件
②点击该图标上传
③上传成功后,文件显示在这里
之后在 wincc 画面点击“导入”按钮,即完成配方数据导入。
4)此时可以通过 plc 在线情况下上载程序块,看到配方数据里的数据,如图 15 所示。
图 15 配方 db 数据
5. wincc 读写活动配方数据
1)在 wincc 画面配方号处输入“1”,然后点击“读取”按钮,即可将 1# 配方读取到 wincc,如图 16 所示。
图 16 读取到的配方数据
2)然后任意修改 wincc 画面左边配方数据,点击“写入”按钮,即可对 1# 配方进行修改,修改后,监视 plc 程序发现,配方数据 db 旁边的绿色圆形图标变为半蓝半红,说明位于装载存储器的配方数据值发生了改变,如图 17 所示,此时可以通过重新读取验证写入成功。
图 17 修改配方数据
3)此时如果修改并下载程序,会导致通过 wincc 修改的配方数据丢失,所以可以在修改配方数据时候通过先上传程序块,再修改下载,或者在下载时选择“同步”,如图 18 所示的红框,然后再进行装载。
图 18 同步功能


气敏传感器简介
为什么diff审查的速度总是那么慢?
CAN-bus器件是什么意思
工业4.0中的智能制造处处与软件技术相关联
传感器与变送器专用两线制回路取样配电隔离模块电源:BHK系列
S7-1500配方功能使用入门
LT8311SX是一款高性能的USB2.0扩展器
ICBE杭州站:出海企业到底需要一个什么样的数据智能工具?
李彦宏:人工智能带来时代的变革 比如未来医疗
modbus入门教程 Modbus协议节点讲解之【EsDA应用】Modbus应用详解
典型的DRC案例介绍
存储系统中的算法:LSM树设计原理
瑞昱网通行业芯片应用简介
LHAASO 如何探测暗物质?
赋能演艺新高度 Vivitek(丽讯) DU9900Z工程投影机重磅亮相
怎样制作Arduino天线
以下五点 是2019年企业级存储厂商业务增长的基础
联发科5G Soc被三大手机厂商采用 有望斩获更多5G芯片订单
汽车电瓶的更换标准以及更换步骤
捷豹路虎与Connected Energy合作,推进电池再利用计划