电气工程师在平常的程序编写中,会有各种各样的技巧类的方法,有助于程序结构清晰的,有利于程序简化的,更有自我创新的,多多地学他人之长以弥补自己之短,对自己的工作是有十足好处的。

在一个项目程序中,报警程序的编写是不可或缺的,但是如何给相同或类似的报警汇总出一个功能块来,还没有定论,当然有各种各样可以实现的方法,以下是我在平常的程序编写中已经习惯性用的FB报警功能块,感觉有利于程序的简化和统一,分享一下!

以下我的编程环境使用倍福的TwinCAT,如图1所示,它的编程语言符合plc标准化语言IEC61131-3,人性化的编程界面简单易学。

图1.Twincat属性

第一个功能块Alarm1,功能块实现的是执行器得到输出信号后,但是到位信号在规定时间内未反馈回来,则给出执行器未到位报警,此类报警的应用情况很多,例如拿一个气缸来说:

图2.变量表

VAR_INPUT(输入变量):

_CONTROL:指PLC发出的给气缸的伸出信号;

_SIGNAL:指气缸的伸出到位信号;

_RESET:指报警复位按钮信号;

_TIME0:指设定规定时间的设定值;

VAR_OUTPUT(输出变量):

_ALARM:指气缸异常的报警输出;

VAR(中间变量):

_TON1:定时时间继电器;

_TQ:定时器输出;

如图2中所示的逻辑程序部分:气缸的初始状态为收回状态,伸出到位检测信号为0,当PLC输出给气缸的伸出信号置1后,气缸动作即变为伸出状态,此时正常情况下在规定时间(例如_TIME0=3秒时),气缸的伸出到位检测信号_SIGNAL变为1,此时报警输出状态不变,为FALSE,不会报警;但是如果规定时间已到,即_TQ有输出,并且气缸的伸出到位信号未变为1,仍为0,则_ALARM信号为TRUE,报警有输出,显示气缸未到位报警。此时如果修复气缸开关,使得气缸的伸出到位信号_SIGNAL变为1,则按下复位按钮,即_RESET=TRUE,_AlARM信号变为FALSE,报警消除。

如果控制信号_CONTROL为0的话,报警信号_ALARM即变为FALSE。

图3.逻辑控制程序

整体的效果如图4所示。

图4.整体外观图

此类报警应用不仅限于气缸,又如你电机、电缸等执行器均适用。

第二个功能块Alarm2,此报警功能块实现的是执行器的两端传感器在规定时间内同时有信号或同时无信号时,则给出执行器检测开关报警,此类报警的应用情况也很多,同样我们拿一个气缸来举例:

变量表如图5所示:

VAR_INPUT(输入变量):

_SIGNAL1:传感器信号1;

_SIGNAL2:传感器信号2;

_RESET:复位信号;

VAR_OUTPUT(输出变量):

_ALARM:指气缸异常的报警输出;

VAR(中间变量):

_IN0:定时器的使能端;

_TON2:定时时间继电器;

图5.变量表

如图6所示的逻辑控制程序,如果一个气缸的两端信号同时为1,即_SIGNAL1和_SIGNAL2同时都有信号,或者两者同时都没有信号,即_SIGNAL1和_SIGNAL2同时为0,则定时器的使能端信号_IN0变为TRUE,定时器_TON2开始计时,此例设定定时器的值为1秒,当计时器的时间到后,_ALARM信号置为TRUE,使能端信号_IN0变为0,当修复气缸两端的检测信号到正常状态时,按动复位按钮后,报警信号会复位,_ALARM信号复位为0,报警消除。

图6.逻辑控制程序

如图7所示完整视图,此报警也不仅局限于气缸的操作,同样适用于电机等其它执行器的报警显示。

图7.整体外观图

实际FC块中调用FB块的实例如图8所示,在FC编辑块中将ALARM引入,对其输入引脚和输出引脚分别对应赋值,实现对相应执行器的报警显示。

图8.FC块中的ALARM块实现

诸如此类的总结在日常工作中还有很很多,只要平时下一点点的功夫,善于总结,勇于与大家交流,将编程的便捷与开扩的思路与众人分享,我们的技术进步指日可待!

plc c语言做报警,基于PLC编程报警功能块的实现相关推荐

  1. plc c语言 软元件t,PLC内部软元件及基本指令.pdf

    PLC 是什么? - 可编程序的 逻辑的 控制器(砖头) Programmable Logic Controller 硬件组成: - 输入: 输出(三种输出方式) : CPU : 存储器 输入 X . ...

  2. 信捷 plc c语言 pdf,信捷plc学习笔记复习过程.pdf

    1.疑问: 软元件地址和输入端子是什么关系? 2.指令分类 3.可以使用流程开始,流程结束指令来分程序块 也可以使用指令块开始结束指令来折叠程序 两个具体的区别还得测试 4.扩展模块 地址分配 模块 ...

  3. R语言做GGEbiplot_基于R语言的GGE双标图在大豆区试中的应用

    基于 R 语言的 GGE 双标图在大豆区试中的应用 * 昝 凯,陈亚光,徐淑霞 ** ,周青,张志民,杨慧凤,王凤菊,李明军,郭海芳 [摘 要] 摘要:为合理评价大豆区域试验中品系的丰产性.稳产性和适 ...

  4. 用单片机用c语言做闹钟,基于单片机与ds1302时钟芯片的电子闹钟C程序

    原标题:基于单片机与ds1302时钟芯片的电子闹钟C程序 #include #define w_second 0x80 //秒写入地址 #define w_minute 0x82 //分写入地址 #d ...

  5. plc 滑台流程图_基于PLC的机械滑台设计

    第一章 绪论 1.1 本课题的意义 滑台作为组合机床完成进给运动的通用部件 , 它可根据加工零件的工 艺要求 , 在其上配置动力箱.多轴箱.钻.镗.铣.车.攻丝等工艺,亦可 在其上安装工件组成输送运动 ...

  6. plc的毕业设计冷门题目_基于plc的84个毕业论文题目

    1. 基于 FX2N-48MRPLC 的交通灯控制 2. 西门子 PLC 控制的四层电梯毕业设计论文 3. PLC 电梯控制毕业论文 4. 基于 plc 的五层电梯控制 5. 松下 PLC 控制的五层 ...

  7. plc的毕业设计冷门题目_基于plc的个毕业论文题目

    1 . 基 于 F X 2 N - 4 8 M R P L C 的 交 通 灯 控 制 2. 西门子 PLC 控制的四层电梯毕业设计论文 3.PLC 电梯控制毕业论文 4. 基于 plc 的五层电梯控 ...

  8. 储罐液位开关c语言编程,基于PLC的储罐液位控制系统研究.doc

    基于PLC的储罐液位控制系统研究 摘要 本文设计了一种基于PLC的储罐液位控制系统.它以一台S7-200系列的CPU224和一个模拟量扩展模块EM235进行液位检测和电动阀门开度调节.系统主要实现的功 ...

  9. 欧姆龙变频器MX2参数_第442期丨【源程序】基于三菱西门子欧姆龙松下PLC实现喷水池控制系统;欧姆龙PLC编程软件更新步骤...

    论坛周刊 1 Dec 2019 本期论坛周刊精彩内容: 1.[源程序]基于三菱\西门子\欧姆龙\松下PLC实现喷水池控制系统 2.欧姆龙PLC编程软件更新步骤 3.RSLinx Classic Ent ...

最新文章

  1. 【深度学习入门到精通系列】医学图像预处理—CLAHE变换代码
  2. frida的用法--Hook Java层类方法
  3. SAP Spartacus的defaultUrlMatcher
  4. html分步调试,一般纯HTML网页的JavaScript的单步执行与调试(以VS2005)
  5. project项目管理案例_做总助,哪能不懂项目管理!
  6. gdal库对ENVI文件的一点支持不好
  7. 点击链接如何直接跳转到相对应的聊天窗口
  8. 主站系统服务器选择,配电网自动化主站系统的结构_功能及操作系统的选择.doc...
  9. n型半导体和p型半导体的区别_PNP和NPN的区别和判别方法,网友:太厉害了!终于有人能讲明白了...
  10. lua里面的客户端服务器协议,Lua 服务器与客户端实例(转)
  11. ELSE 技术周刊(2017.12.11期)
  12. PostgreSQL主要优势
  13. 转 TCP中的序号和确认号
  14. iOS开发之Xcode常见错误
  15. Linux字符设备驱动内幕
  16. OKR案例——不同类型的OKR实例
  17. linux打jar包命令行,windows下命令行打jar包方法
  18. 联想服务器thinkserver TS550 Raid5制作及winserver2012R2 安装过来
  19. 小程序webview内嵌h5链接第二次打开空白
  20. Android下红包雨的实现

热门文章

  1. 基于微信小程序的校园自助打印系统小程序
  2. 计算机告诉你,唐朝诗人之间的关系到底是什么样的?
  3. 管家婆软件使用打印功能的常见问题
  4. XenApp 7.6:如何启用客户端IME,启用客户端输入法
  5. 信用卡分期利率陷阱——实际利率计算
  6. 触摸屏显示接口设计-用于便携式热像仪的OMAP双核处理器
  7. 易语言执行mysql命令行_易语言教程之MySQL[3]执行SQL语句
  8. element-ui输入框限制只能输入数字一系列问题
  9. 【正点原子MP157连载】第十五章 窗口门狗(WWDG)实验-摘自【正点原子】STM32MP1 M4裸机CubeIDE开发指南
  10. 涉密计算机的安全审计和检查,计算机安全保密审计报告