1
项目背景及意义
程序下载地址
https://wwqv.lanzout.com/iggD612r4bsj 密码:fjsx
在上一篇文章中分享和介绍了一种基于西门子TIA(Totally IntegratedAutomation)平台触摸屏wannengIO监控的一种方法,很多人反映西门子触摸屏用不起,用的比较多的是第三方屏幕,问能不能更多一点,是不是还有 OneMore Thing 。
2
定义
不想在触摸屏使用技巧和没有此项功能的第三方屏幕做IO监控
3
应用范围
适用于屏幕不定,PLC用西门子的项目,很多同行配方功能都不基于触摸屏,为了带来更多通用性。
4
程序架构构
4.1
Main
循环组织块调用函数块4.2
IO_Monitor
读取IO状态实现函数,这里为什么没用功能块FB呢,因为背景数据块集中原因,这里使用了INOUT传递4.3
HMI_Data
全局数据块,用来传递数据,这里使用了UDT数据结构体,不支持此项功能的屏幕可以直接通过赋值传递4.4
源代码
FOR #Cycle := 1 TO 8 DO #iqHMI_IO.Address_DI[#Cycle] := (#iqHMI_IO.Addr - #iMin_Addr) * 8 + #Cycle - 1; #iqHMI_IO.Address_DO[#Cycle] := (#iqHMI_IO.Addr - #iMin_Addr) * 8 + #Cycle - 1; #iqHMI_IO.State_DI[#Cycle] := PEEK_BOOL(area := 16#81, dbNumber := 0, byteOffset := #iqHMI_IO.Addr, bitOffset := #Cycle); #iqHMI_IO.State_DO[#Cycle] := PEEK_BOOL(area := 16#82, dbNumber := 0, byteOffset := #iqHMI_IO.Addr, bitOffset := #Cycle);END_FOR;
5
作用及效果
对触摸屏的依赖减少,编程有效标准化。
用西门子 TIA 平台的 PLC来编写:
我们学习三个关键知识点
1 SCL的间接寻址,PEEK_BOOL
2 文本列表
3 FOR循环的灵活使用
Structured Control Language,结构化控制语言)是一种基于 PASCAL的gaoji编程语言。这种语言基于标准DIN EN 61131-3(guojibiaozhun为 IEC 1131-3)。
根据该标准,可对用于可编程逻辑控制器的编程语言进行标准化。SCL 编程语言实现了该标准中定义的ST 语言 (结构化文本) 的 PLCopen 初级水平。
S7-1200从V2.2版本开始支持SCL语言。