设为首页
收藏本站
PLC技术网
开启辅助访问
切换到宽版
登录
注册哦
只需一步,快速开始
微信扫码登录
门户
Portal
论坛
BBS
导读
Guide
排行榜
Ranklist
搜索
搜索
本版
文章
帖子
用户
PLC论坛-全力打造可编程控制器专业技术论坛
»
论坛
›
工控技术交流区
›
『国外:三菱/西门子/欧姆龙/松下』
›
FC程序块中的3个“坑”
返回列表
发新帖
[西门子]
FC程序块中的3个“坑”
[复制链接]
343
|
0
|
2024-6-26 09:20:08
|
显示全部楼层
|
阅读模式
>导读:在我们实际的自动化设备中,通常会把一个比较大的项目拆分成小单元,这样的话就可以让我们编程变得更加有条理。比如一个“上下料”自动化设备,这个设备中可能包含了气缸、伺服、变频器等设备。那基于这些设备的编程,我们可以把这些设备的控制划分在不同程序块当中,比如FC1程序块编写气缸控制程序,FC2程序块编写伺服控制程序,这样就可以把一个相对较大的系统划分成逐个的小单元。那划分好了单元之后,在编写FC程序块的时候,难免会有一些“坑”让我们的程序达不到控制要求,哪有哪些“坑”呢,我们一起来盘点一下!
第一个坑:
在定义接口变量为“OUT”时,如图1和图2 所示,当你接通了外部的“启动”按钮时,它这个程序是无法自锁的,因为这个“OUT”接口变量只能“写”的功能,无法读取到“OUT”的状态,所以对于这种又要“读”又要“写”的变量需要使用图3这种编程方式(也就是定义在“INOUT”中)。
图1
图2
图3
第二坑:
当你觉得使用自锁的方式来编写这个程序时,你觉得行不通,那置位的方式总可以吧,其实也是不可以,可以看图4和图5中,当“启动”接通了,“电机”也确实置位了,但是当“启动”断开了,“电机”信号却没有一直置位,但是在程序中也没见到复位指令:
那是因为“OUT”接口中的变量,每执行完一次FC程序,会将“OUT”接口中的变量复位为初始值。
图4
图5
第三坑:
想着没法用置位的方式,那用传送的指令应该可以吧,看图6和图7中,当“M0.1”接通了后,把数据传送给到了“MW10”中,而当M0.1断开了“MW10”中数据却又为“0”了,其实原理和“第二个坑”是一样的。
所以大家在使用FC程序块编程的时候一定要注意“OUT”接口变量的使用。
图6
图7
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!
本帖子中包含更多资源
您需要
登录
才可以下载或查看,没有账号?
注册哦
x
回复
举报
返回列表
发新帖
高级模式
B
Color
Image
Link
Quote
Code
Smilies
您需要登录后才可以回帖
登录
|
注册哦
本版积分规则
发表回复
回帖后跳转到最后一页
PLC工业机器人
回复楼主
返回列表
『国外:三菱/西门子/欧姆龙/松下』
『国产:台达/汇川/信捷产品交流区』