[三菱] FX5U使用ST语言实现配方功能块

[复制链接]
查看83 | 回复0 | 2024-5-16 09:26:28 | 显示全部楼层 |阅读模式

FX5U使用ST语言实现配方功能块




前言
配方的基本概念


配方(Recipe)是一组参数值,它用来提供生产产品和控制生产过程所需的信息


例如饼干的配方包括黄油、白糖、鸡蛋、面粉和烹调时间等参数的数据类型和参数值等。

配方集是若干个配方的集合,这些配方有相同的参数集合,但是参数的数值各不相同。例如饼干配方集包含夹心饼干和苏打饼干的配方。

生成配方集后,在更换产品时,只需要输入配方的符号名或者配方的编号,就可以使用配方中预设的参数集合,避免了在生产过程中经常输入重复的大量的参数。

过去只有在计算机上运行的组态软件等上位机软件才有配方功能,接下来我们来看一下FX5U如何利用ST语言根据配方名实现在配方集中搜索对应的一组配方参数值




1
调用示例


R寄存器为配方所有数据存储区。

D地址如果输入或者接收数据名,自动占用偏移20个D地址,如果输入或者接收数据值,自动占用偏移200个D地址。




2
功能块ST程序




功能说明:
❶根据指定字符名查询配方,输入搜索字符串,执行查询,如已存在配方数据,则有相同字符串和查询完成均会被点亮,且查询到的结果会显示配方所在行号,应用数据输出名会显示搜索配方名,应用输出数据会自动输出对应的配方数据集合,反之没有对应配方存在,则不会更改应用数据输出名和当前应用输出数据集合,查询的结果会显示配方集合的最大数目值,查询完成会被点亮。


❷根据数据行号指定行号配方数据,输入指定序号输出,执行指定序号,查询到的结果会显示配方所在行号,应用数据输出名会显示行号对应的配方名,应用输出数据会输出行号对应的配方数据集合


❸根据数据行号新增数据,修改数据,输入更新数据行号,输入更新数据名,输入更新输入数据值,执行更新数据,此时,你填入的配方名和数据将存到指定行号的配方数据中。


❹根据指定行号进行数据复制到另一行数据,输入复制源行号,输入复制到目标行号,执行复制,此时复制源的配方名和配方数据值将会复制到目标行号的配方名和配方数据值


❺根据指定行号进行配方数据名和数据值的删除,输入指定删除行号,执行删除,则指定行号的配方数据名和数据值将被清空。


❻根据指定行号进行当前配方名和配方数据值的查看,不会应影响当前应用配方数据,输入显示指定序号输出,执行显示输出,则显示数据输出名显示指定行号配方数据名和配方数据值。


❼清除所有配方名和配方数据值,执行删除所有数据


❽此功能块一条配方数据名长度为38个字符,一条配方数据长度为200个D地址,配方条数60条。可根据项目需求进行调整。

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册哦

x
您需要登录后才可以回帖 登录 | 注册哦

本版积分规则