[西门子] 西门子博途TIA V17 CFC编程案例

[复制链接]
查看83583 | 回复0 | 2024-8-13 10:20:30 | 显示全部楼层 |阅读模式
1.TIA-CFC简介
TIA portal V17新增了CFC编程语言。

    CFC是连续控制图,为英文单词“Continuous Function Chart”的缩写。CFC是基于图形用户界面的编辑器,它通过给预先编辑好的块指定参数或建立连接,从而实现创建CPU程序结构。
博途V17的CFC没有集成进去,想要使用CFC编程需要单独安装CFC选件包。软件下载,安装完后,TIA portal中就可以新建CFC程序。
2.TIA-CFC与PCS7-CFC通常西门子将工艺过程分类工厂自动化和过程自动化,但是还存在既有工厂自动化又有过程自动化特征的混合行业,这些行业的产品生产控制系统既可以使用PLC也可以使用DCS,在此之前CFC通常只在PCS 7平台下S7-400 中使用,CFC保持了图形化编程的特性,其层次分明,用户能轻易就找出程序与现场设备的对应关系,在CFC中每个电机或阀门都是一个FB,添加删除设备,检查故障,优化工艺等都非常的方便,甚至工厂最终用户工艺人员也能调试修改程序。因此使用CFC的PCS 7占有一些优势,TIA推出CFC后,势必在混合行业与同是本根生的PCS 7有一定竞争。这些也是令很多网友对西门子这波操作不解的地方。    目前PCS 7的CFC对比TIA 的CFC来说,还有一些功能优势以及库优势等,PCS 7发展了多年,已经形成了一些相关产品的生态,比如通用库,还有多种产品对PCS 7提供了程序库,PCS 7在多个行业沉淀也有了一些行业库、工艺库等,库通常都是全球项目验证过的,其运行稳定并有团队维护对其持续优化,TIA 后期如果不提供这样的库,其项目质量可能工程师个人能力占比更大,其风险难以控制。
3.以行李传送带为例,设计一个CFC程序

1、工艺任务简单的行李传送系统控制,满足以下几个条件。(1)行李是否已放在传送带上?(2)行李重量是否未超过 20 kg?(3)行李的目的地是哪里(柏林还是夏威夷)?
2、添加CFC图点击“Add newchart”,在PLC中添加一个”CFC_1”程序。在CFC程序接口中,添加以下变量。
NameTypeValueUnitComment
weightDint

行李重量
sensor1Bool

行李检测传感器1
sensor2Bool

行李检测传感器2
destDint

行李目的地
Motor_BerlinBool

去Berlin传送带
Motor_HawaiiBool

去Hawaii传送带

3、CFC程序编辑双击打开程序“CFC_1”,展开TIA右侧的指令块,按下图填加程序。

参数与指令互联时,先鼠标选中参数,按住鼠标左键,拖动参数到指令接口处,当指令接口变绿时,松开鼠标左键。
4、设置CFC启动顺序点击图表顺序和其它,右击打开。


将CFC_1的Task(任务)更改为Program cycle(程序循环),即每个扫描周期执行一次。其它参数不要改。如Enable chart参数,改动后无法复原,只能把这个CFC删除重建。



5、设置目标系统设置切换到目标系统设置,设置默认任务为程序循环。


6、CFC编译选中Charts,单击右键,选择编译。


7、程序仿真一定先启动PLCSim程序,PLCSim程序启动后,选中图表Charts,单击右键,选择Softwart(all blocks),将CFC程序下载到PLC中。CFC程序运行与main(OB1)是独立的。按照main(OB1)的方法无法下载CFC程序。点击“Go online”(在线),将PLC在线,监控CFC 的运行。在接口处改变变量的值,可以看到程序接通变化。


改变sensor1和sensor2的值后,程序状态如下。



改变dest的值为1后,程序状态如下。


改变dest的值为2后,程序状态如下。

文章来源网络,版权归原作者所有,如有侵权请联系删除!


本帖子中包含更多资源

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

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

本版积分规则