『7x24小时有问必答』
在以下部分中,将创建 SCL   函数块“SCL_Best_before_date” 。   可使用 SCL   函数块计算保质期。

要创建 SCL   函数块,请按以下步骤操作:  
1.    打开“程序块” 文件夹。  
2.    双击“添加新块”。  
  
3.    要添加一个函数块:  
–   单击“函数块” 。  
–   指定块名称“SCL_Best_before_date” 。  
–   选择语言“SCL” 。  
–   单击“确定”。  
4.    保存项目。 成功创建了 SCL   函数块“SCL_Best_before_date” 。   程序编辑器将自动打开。  

要定义接口,请按以下步骤操作:  
1.    在“Input” 部分定义带有以下属性的输入参数:  
–   名称:"Duration"  
–   数据类型:"Int"  
可在此参数中指定保质期(年)。  
2.    在“Output” 部分定义带有以下属性的输出参数:  
–   名称:"Best_before_date_Output"  
–   数据类型:"Int"  
需要此参数输出计算出的保质期。  
3.    在“Temp”部分定义带有以下属性的一个参数:  
–   名称:"Error"  
–   数据类型:"Int"  
需要此临时参数临时存储指令“RD_SYS_T” 的返回值,该参数将在项目过程中稍后设定。  
4.    在“Temp”部分定义带有以下属性的第二个参数:  
–   名称:"System_Time_DT"  
–   数据类型:"Date_And_Time"  
需要此临时参数临时存储指令“RD_SYS_T” 的系统时间。  
5.    在“Temp”部分定义带有以下属性的第三个参数:  
–   名称:"System_Time_Array"  
–   数据类型:"AT"  
需要此临时参数覆盖接口“System_Time_DT” 。  
部分名称后将自动添加后缀“AT "System_Time_DT"” ,同时将数据类型“AT” 转换为“Date_And_Time” 。  
6.    将文本“Date_And_Time” 替换为“Array [0 .. 7] of Byte” 。  
7.    在“Temp”部分定义带有以下属性的第四个参数:  
–   名称:"Year"  
–   数据类型:"Int"  
需要此临时参数临时存储所读取的系统时间的年份值。  
8.    保存项目。 在 SCL   函数块的接口中成功定义了所有必需参数。  

在以下部分中,将编写计算保质期的 SCL   函数块。  

对于项目“Filling Station” ,则只输出年份值:  
●   要执行此操作,需要使用指令“RD_SYS_T” 读取 CPU   块的当前系统时间。   读出的数据以 DT (Date_And_Time)   格式存储在该指令的临时接口“System_Time_DT” 中。  
●   然后用临时参数“System_Time_Array” 覆盖临时参数“System_Time_DT” 。   该操作将数据类型“DT” 的各个值对应数组中的相应字节。  
●   数组的第一个字节包含当前年份值。   将值“2000” 添加到年份字段中,由于格式为“DT(Date_And_Time)”,因此只指定了年份的最后两位(例如:   值“11” 对应于“2011”年)。   除了当前年份外,还会加上输入接口“Duration” 中指定的持续时间。  

要编写 SCL   函数块,请按以下步骤操作:  
1.    定义程序代码的第一行:  
–   在指令前写入:"#Error :="  
–   写入指令:"RD_SYS_T"  
–   在指令后写入:"(OUT => #System_Time_DT);"  
2.    定义程序代码的第二行:  
–   在指令前写入:"#Year :="  
–   写入指令:"BCD_TO_INT"  
–   在指令后写入:"(#System_Time_Array[0]);"  
该指令用于将“BCD” 格式转换为“INT”格式。  
3.    定义程序代码的第三行:  
–    "#Best_Before_Date_Output :=   #Year + 2000 + #Duration;"  
该指令用于将值“2000” 和输入接口“Duration” 的当前值加到值“Year” 上。  
4.    保存项目。成功编写了计算保质期的 SCL   函数块。  
--------------------END----------------

每天进步一点点

Make small but daily progress

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

本帖子中包含更多资源

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

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

本版积分规则

上一主题上一主题         下一主题下一主题
QQ手机版小黑屋粤ICP备17165530号

关于我们·投诉举报· 用户帮助· 联系我们 · 本站服务 · 版权声明· 隐私政策 · 投搞指南

法律保护:PLC技术网,plcjs.com,plcjs.net等字样
Copyright 2010-2030. All rights reserved. 


微信公众号二维码 抖音二维码 百家号二维码 今日头条二维码哔哩哔哩二维码