热门标签 | HotTags
当前位置:  开发笔记 > 后端 > 正文

工控安全入门常用逻辑编程

 

 

前言

SIMATIC Step 7是基于TIA博途平台的工程组态软件,支持SIMATIC S7-1500、SIMATIC S7-1200、SIMATIC S7-300和SIMATIC S7-400控制器,同时也支持HMI和基于PC的SIMATIC WinAC自动化系统。由于支持各种可编程控制器,SIMATIC Step 7具有可灵活扩展的软件工程组态能力和性能,能够满足自动化系统的各种要求。本文主要讲解在SIMATIC Step 7组态软件中,使用梯形图编写基本指令编写常用逻辑程序。

 

正文

梯形图是PLC编程用的最多的图形编程语言。因为梯形图与传统继电器控制系统的电路图很相似,具有直观易懂的优点,很容易被熟悉继电器控制系统的电气人员掌握,它特别适用于开关量逻辑控制。下面介绍几种常用的控制逻辑程序。

 

1、点动控制

点动是电动机控制方式中的一种。由于在这一控制回路中没有自保,也没有并接其它的自动装置,只是按下控制回路的启动按钮,主回路才通电,松开启动按钮,主回路就没电了。最典型的是:行车的控制。

图1

图2

这里START信号为自复位按钮按下的信号,是正信号,STOP是负信号,是互锁信号或促使结果断的信号,OUT是输出动作信号。运行情况,当自复位按钮按下时,START信号为正,回路接通,OUT输出;自复位按钮松开时,START信号为负,回路断开,OUT输出复位。

 

2、起保停控制

在自动控制电路中,起保停控制逻辑电路算是典型控制电路。起保停逻辑的特点是将脉冲动作信号转为持续状态信号或持续动作信号,直接收到停止信号。


2.1单个自锁按钮实现起保停

图3

图4

单个自锁按钮实现起保停控制回路和点动回路一样,但START为持续动作信号。当按钮按下时,START发出持续动作信号,回路持续接通,OUT输出信号;按钮再次按下时,START动作信号断开,回路断开,无OUT输出信号。


2.2单个自复位按钮实现起保停

图5

图6

用户有时需要使用一个自复位的按钮(START)来控制机器(OUT)的启停,效果是按一下启动了,再按一下停止,再按启动,再按停止,以此往复。这个控制比单个自锁按钮控制要复杂一些。


2.3两个自复位按钮实现起保停

图7

图8

START是启动的脉冲动作信号,STOP是负信号或互锁信号,OUT是输出的持续信号。运行情况:当START发出脉冲动作信号时,回路瞬时接通,OUT输出并自锁,回路持续接通,OUT输出持续信号;需要停止时,STOP发出信号即可断开回路。

 

3、顺序控制

在装有多台电动机的生产机械上,各电动机所起的作用是不同的,有时需按一定的顺序启动或停止,才能保证操作过程的合理和工作的安全可靠。
顺序控制——要求几台电动机的启动或停止必须按一定的先后顺序来完成的控制方式。

图9

图10

OUT_1的常开触点串在OUT_2的控制回路中,OUT_2的接通是以OUT_1的接通为条件。这样,只有OUT_1Q1接通才允许OUT_2接通。OUT_1关断后OUT_2也被关断停止,而且OUT_1接通条件下,OUT_2可以自行接通和停止。

 

4、互锁控制



4.1单方向互锁

单方向互锁是指相互互锁的几个对象中,如果其中一个对象动作了,那么另外几个对象就不能够动作,例如,电机的正反转,当电机正转的时候,若误操作按下反转按钮,电机仍然不能反转,避免了因误操作而引起的主电路短路。

图11

图12

当START_1动作,OUT_1(正转)输出信号,此时,START_2动作,回路中常闭触点OUT_1断开,回路不接通,OUT_2(反转)无输出信号,只有OUT_1断开后,才可以启动OUT_2,反之同理。

4.2双重互锁

双重互锁是指相互互锁的几个对象中,如果其中一个对象动作了,那么另外对象动作前会断开互锁对象输出,然后自己再动作。例如,电机的正反转,当电机正转的时候,若按下反转按钮,电机正转输出断开,反转再启动,避免了因误操作而引起的主电路短路。

图13

图14

当START_1动作,OUT_1(正转)输出信号,此时,START_2动作,OUT_1回路先断开,然后OUT_2回路中常闭触点OUT_1复位,回路接通,OUT_2(反转)输出信号,反之同理。

 

5、星-三角控制

在使用三相异步电动机的过程中,在启动时,电流较大,会对电网产生一定的冲击,所以容量大的电动机必须采取一定的方式启动,如降压启动等,星-三角启动就是一种简单方便的降压启动方式。星-三角启动可通过手动和自动操作方式实现。

图15

图16

按钮启动按钮,接触器KM1和KM2闭合,星型启动,5秒后,接触器KM2断开,接触器KM1一直得电,同时接触器KM3闭合,三角启动,自动正常运行。

 

6、定时控制



6.1延时启停

定时控制,类似于定时开关,指一个基于时间变化,在一定时段内使电路开路、电流中断或电路接通。组态软件中,定时器有接通延时、关断延时和脉冲,接通延时用的最普遍。定时控制需要用户编制定时程序,定时接通或断开电路。如楼宇供暖管理、多个设备定时控制或切换、路灯、红绿灯等。

图17

图18

上图为模拟红绿灯控制逻辑程序。当启动按钮START按下,接通延时定时器,10s绿灯、5s黄灯、15s红灯,30s后定时器复位,重新开始计时,不断重复。


6.2振荡逻辑

在实际应用中,我们往往要用到断续输出的信号,例如标准的0.5-10Hz的信号,可以在控制器的时钟存储器设置,时钟存储器是按 1:1 占空比周期性改变二进制状态的位存储器。

图19

图20

但当通断时长不一样的时候,我们就要用到振荡逻辑。

图21

图22

当START接通时,OUT接通3s,断开5s的断续信号

 

7、计数

在自动控制生产线上,最常用的一种指令就是计数,使用计数可以方便的统计产量,还可以对计数数据清零。其中加计数指令最为常用。

图23

当光电传感器检测到产品经过时,产生一个接通信号(在程序中输出一个脉冲上升沿信号),计数加1,不断有产品经过时,计数累加,直至复位(RESET闭合信号),重新开始计数。

 

8、初始化

在博途组态软件编程中,经常会用到CPU上电后或首次扫描,变量初始化的方法。


8.1数据块初始化

这个比较简单,就是在全局数据块或背景数据块中直接定义“启动值”即可。这种方法只适用于为变量设置固定值,有一定局限性。

图24


8.2组织块初始化

除了数据块初始化,还可以使用“组织块”中的“Startup”来定义,在里面可以编写一些程序在首次扫描时执行。

图25

图26

PLC的工作模式从STOP切换到RUN时执行一次,完成后,将开始循环执行主程序。

 

结束语

编写应用程序时,使用频率最高的是基本指令,使用也是最灵活的。初学者要从学习这些简单的指令和常用的控制逻辑程序入手,逐渐了解其他各种指令的功能和编写更深的控制逻辑程序。

大禹工控安全实验室,由中国网安 · 广州三零卫士成立,汇聚国内多名漏洞挖掘、二进制逆向、安全分析、渗透测试、自动化工程师等安全专家组建而成,专注于工业控制系统安全、工业物联网安全、工业威胁情报安全等安全领域,大禹工控安全实验室始终坚持在工业控制系统安全领域进行探索和研究。

IRTeam工控安全红队
工控安全红队IRTeam,属于民间工业安全组织,由经验丰富的工控安全研究员组成,一直在学习和研究最新的工控漏洞及漏洞利用和防护,同时开发了Kali ICS工控渗透平台能够提供全方位的工控漏洞挖掘和渗透测试。在工控的协议安全、HMI安全、工业云安全等领域有着丰富的经验和成果。


推荐阅读
  • 2018年3月31日,CSDN、火星财经联合中关村区块链产业联盟等机构举办的2018区块链技术及应用峰会(BTA)核心分会场圆满举行。多位业内顶尖专家深入探讨了区块链的核心技术原理及其在实际业务中的应用。 ... [详细]
  • 探索电路与系统的起源与发展
    本文回顾了电路与系统的发展历程,从电的早期发现到现代电子器件的应用。文章不仅涵盖了基础理论和关键发明,还探讨了这一学科对计算机、人工智能及物联网等领域的深远影响。 ... [详细]
  • 深入解析Redis内存对象模型
    本文详细介绍了Redis内存对象模型的关键知识点,包括内存统计、内存分配、数据存储细节及优化策略。通过实际案例和专业分析,帮助读者全面理解Redis内存管理机制。 ... [详细]
  • 本文介绍了多个关于JavaScript的书籍资源、实用工具和编程实例,涵盖从入门到进阶的各个阶段,帮助读者全面提升JavaScript编程能力。 ... [详细]
  • FinOps 与 Serverless 的结合:破解云成本难题
    本文探讨了如何通过 FinOps 实践优化 Serverless 应用的成本管理,提出了首个 Serverless 函数总成本估计模型,并分享了多种有效的成本优化策略。 ... [详细]
  • 本文详细介绍了C语言中的指针,包括其基本概念、应用场景以及使用时的优缺点。同时,通过实例解析了指针在内存管理、数组操作、函数调用等方面的具体应用,并探讨了指针的安全性问题。 ... [详细]
  • 云计算的优势与应用场景
    本文详细探讨了云计算为企业和个人带来的多种优势,包括成本节约、安全性提升、灵活性增强等。同时介绍了云计算的五大核心特点,并结合实际案例进行分析。 ... [详细]
  • 本文探讨了Java编程的核心要素,特别是其面向对象的特性,并详细介绍了Java虚拟机、类装载器体系结构、Java类文件和Java API等关键技术。这些技术使得Java成为一种功能强大且易于使用的编程语言。 ... [详细]
  • 本文作者分享了在阿里巴巴获得实习offer的经历,包括五轮面试的详细内容和经验总结。其中四轮为技术面试,一轮为HR面试,涵盖了大量的Java技术和项目实践经验。 ... [详细]
  • 本文探讨了如何在日常工作中通过优化效率和深入研究核心技术,将技术和知识转化为实际收益。文章结合个人经验,分享了提高工作效率、掌握高价值技能以及选择合适工作环境的方法,帮助读者更好地实现技术变现。 ... [详细]
  • 在Java中,this是一个引用当前对象的关键字。如何通过this获取并显示其所指向的对象的属性和方法?本文详细解释了this的用法及其背后的原理。 ... [详细]
  • 探索如何使用公共数据集为您的编程项目提供动力。无论您是编程新手还是有经验的开发者,本文将为您提供实用建议和资源,帮助您启动并运行一个创新的数据驱动型项目。 ... [详细]
  • 本实验旨在通过图灵机模型的构建与计算机硬件系统的虚拟拆装,深入理解计算机的基本原理和结构。实验内容包括图灵机各组成部分的作用、冯·诺依曼体系结构的功能描述以及微型计算机的拆装顺序记录。 ... [详细]
  • MySQL 高性能实战教程
    本课程深入探讨 MySQL 的架构、性能调优、索引优化、查询优化及高可用性等关键领域。通过实际案例和详细讲解,帮助学员掌握提升 MySQL 数据库性能的方法与技巧。 ... [详细]
  • 基于结构相似性的HOPC算法:多模态遥感影像配准方法及Matlab实现
    本文介绍了一种基于结构相似性的多模态遥感影像配准方法——HOPC算法,该算法通过相位一致性模型构建几何结构特征描述符,能够有效应对多模态影像间的非线性辐射差异。文章详细阐述了HOPC算法的原理、实验结果及其在多种遥感影像中的应用,并提供了相应的Matlab代码。 ... [详细]
author-avatar
银仔-zxy
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有