PLC系统的基本要素是什么?
过去十年来,制造业一直在快速变化。流程基本上是自动化的因此,产品的质量和生产系统的效率都达到了前所未有的水平。尽管有这些变化,可编程逻辑控制器仍然存在这些系统的关键部件,尽管是在20世纪60年代发明的。 PLC有各种尺寸和不同的功能,但都包括以下六个基本系统: 中央处理机 机架或安装 输入组件 输出组件 电源 编程器 下面是对每一个及其作用的概述。 处理器或中央处理器(CPU) 图像信用:https://www . lelong . com . my/Allen-bradley-1747-l524-SLC-500-PLC-CPU-unitio… 处理器或中央处理器通常被称为PLC的“大脑”,负责执行命令。业界已经努力使用标准化的编程语言列表,即: 结构化文本 梯形图 顺序功能图 指令列表 功能框图 尽管使用了上述语言列表,但重要的是要注意每个制造商都有不同的方法实施准则。 机架或安装 虽然这不是普遍的事实,但大多数大中型PLC系统都是这样组装的,即它们的单个组件(如CPU或处理器、I/O和电源)都在一个安装架或机架内。较小的PLC系统通常将所有元件放在一个紧凑的外壳中(通常称为鞋盒或砖块)。 输入组件 就功能而言,输入组件有两个。第一个是从现场设备和控制站(开关、传感器)接收外部信号。第二个是显示输入点状态。 输出组件 输出是PLC用来执行命令的设备部件,通常用于控制制造过程(电机、泵、致动器、灯等)。). 有两种类型的I/O:模拟I/O和专用I/O。两者之间的区别概述如下。 模拟I/O指的是负责一个范围(如电机的运行速度)的输入和输出。这种类型的输入基于变量范围(温度、压力等)的连续变化。)在这种情况下,输出将包括设置电机的速度。 顾名思义,专业I/O执行特定的任务,控制高速计数器之类的东西。数字I/O使用二进制变化(是/否或开/关)进行操作。 PLC技术人员计划使用PLCLogix仿真软件来教授学生有关I/O装配的知识。上图是软件界面的一个例子,包含两个离散输入模块,两个离散输出模块,两个用于BCD控制和显示的TTL模块,以及两个模拟模块。 电源 如果CPU是PLC的大脑,那么电源肯定是消化系统,通常为该单元提供24VDC或120VAC线电压。电源状态被连续监控,并且可以包括用于选择特定编程模式的开关。由于电源的集成锂电池,在断电的情况下,存储在内存中的内容不会改变。 编程单元、设备或PC/软件 现代PLC使用编程器或软件进行编程,该编程器或软件使用PC或笔记本电脑构建,然后加载到PLC中。PLC软件的一大优势是它们可以运行模拟来观察PLC系统在虚拟环境中的表现。RSLogix是当今最流行的仿真工具之一。 在乔治·布朗学院,我们的学生使用这些相同的虚拟环境进行学习。我们使用PLCLogix软件,它模拟RSLogix并提供测试和练习PLC程序的能力。学生可以在真实的PLC环境中应用从该课程中获得的知识。 PLC比以往任何时候都更加重要 事实上,很难想象没有PLC的世界。制造过程肯定不会是今天的样子,可能会更加依赖大量的人力资本来达到类似的生产水平。尽管典型PLC的基础技术已经有几十年的历史,但PLC仍然是制造业、机器人和自动化系统。
PLC的五个常见问题及解决方法
PLC是包含可编程存储器的数字电子设备,可编程存储器可以存储一系列指令。随着PLC功能的增加和成本的降低,它们已经成为自动化系统领域的主流,并且已经成为监控单个机器和复杂过程的基础。 像任何其他设备一样,尤其是那些在恶劣的工业环境中运行的设备,不可避免地会出现问题。故障排除是必要的当使用PLC时然而,它们非常适合于相当有效的诊断。无论你现在作为PLC技术员工作或者渴望成为,以下是你在这个领域工作时可能会遇到的五个最常见的问题。 输入/输出系统的模块故障 也许影响PLC的最常见问题是输入/输出(I/O)系统的模块故障。在这种情况下,故障排除过程的主要重点是确定内部情况(本质上,PLC认为正在发生的情况)和外部情况(实际发生的情况)之间的脱节。 这需要对关系进行检查 物理I/O模块和PLC程序中的I/O指令之间。一旦建立了这种关系,就可以隔离单个I/O模块,并且可以使用程序监控设备来检查所述模块的内部状态。 电噪声干扰 电磁干扰(EMI)或射频干扰(RFI)产生的外来信号干扰会极大地影响PLC的性能和寿命。如果大型电机或类似机器在PLC附近启动,或者附近遭到雷击,电磁干扰的可能性就会大大增加。 或者,在PLC附近使用的天线和手持发射器可能会产生射频干扰。理想情况下,干扰的可能性应该得到控制,因为EMI或RFI都可能导致代价高昂的损坏和长时间停机。可能导致干扰的手持设备应禁止靠近PLC,任何可能有问题的机器应被隔离。应努力改善屏蔽、接地和功率调节,所有这些都可以解决大多数EMI和RFI问题。 损坏的内存 外部因素,如上述频率干扰和电源中断,会破坏PLC的存储器。发生这种情况时,PLC内的代码可能变得不可读,或者当PLC从意外关机中启动时,它可能无法正常读取。处理这个问题最安全有效的方法就是确保所有数据都复制到一个远离干扰、高温和潮湿的冗余存储设备上。 电力问题 像任何其他机器一样,PLC设备需要稳定和不间断的电源才能正常有效地运行。如果由于地区停电、电网故障、连接松动或电缆损坏而断电,对PLC系统的冲击会很大,并可能导致数据丢失。避免断电导致的这些问题的最有效方法是安装备用电源,当主电源出现故障时,备用电源会启动。许多工厂还在PLC中使用电池,这将延长电力,直到它们可以正常关闭。当然,一旦电力恢复,PLC可以安全重启。 沟通问题 为了正常运行,PLC设备必须与周围的设备(如外围设备)保持通信,人机界面和其他智能设备。这种通信通过以太网电缆实现,需要安全、稳定和一致的连接。如果此连接失败,连接的设备将无法按照编程执行其功能,从而导致设施停机。 应进行定期维护检查,以保护系统免受通信故障的影响。工程师应确保物理通信网络已正确安装,连接的设备运行正常且非常适合系统,并且在必要时安装固件补丁以确保通信系统的安全性。
有哪些不同类型的PLC编程语言
可编程逻辑控制器(PLC)是工厂或制造系统中常用的通用控制设备。它们为各种应用提供了有用且高效的控制解决方案,并且可以接受来自各种设备的输入,例如运动检测器、操纵杆和按钮等。反过来,PLC能够产生控制灯光、马达和音效等的输出。这个输入输出系统的编程资源可以包括定时器、计数器和其他变量。 虽然PLC在商业应用中非常有效,但它们的学习曲线很陡。使用传统的继电器梯形逻辑(RLL)编程语言,在学习它们的功能以及程序维护方面存在一些固有的困难。还应注意,来自不同制造商的PLC可以以各种方式编程。 如果你是一个有抱负的PLC技术人员,或考虑参加在线PLC培训课程,您应该了解三种主要的PLC编程语言。 功能框图 功能框图(FBD)是所有PLC程序员的基本语言。它本质上相对简单,程序功能在一个PLC程序中以图形方式结合在一起。顾名思义,FBD允许PLC技术人员将用代码行编写的功能放入盒子或模块中。 然后,您可以连接这些框来创建更大的PLC程序。几乎处处编写PLC程序,至少部分与FBD,因为它提供了技术人员的能力,连接各种功能在一起。功能块是这种编程语言的组成部分,因为它们描述了输入和输出功能之间的关系。 在FBD语中,有几个标准语块。其中最重要的包括: 位逻辑功能块 双稳态功能块 边缘检测 定时器功能块 反功能块 FBD中提供了无限数量的功能块,通常,几乎每个可在PLC编程中执行的操作都有一个功能块,包括: 算术功能块; 位移功能块; 字符串功能块; 转换功能块; 通信功能块 此外,许多PLC技术人员而发烧友往往会自己搭建功能块。 梯形图 也称为梯形逻辑,梯形图(LD)是一种可视化的PLC编程语言,可以很快学会。有继电器电路经验的人可能会发现LD程序相对容易掌握,因为两者看起来非常相似。PLCOpen组织已经为LD建立了标准,使其成为唯一的标准化PLC编程语言之一。本质上,每个函数都被编码成一个梯级,一旦许多梯级在程序中连接在一起,它们就形成了一个看起来像梯子的东西。 LD是为具有阅读和理解电路原理图背景的技术人员和电工设计的。LD编程不使用文本,而是使用称为符号的图形元素,这些图形元素看起来像电子符号。然而,一个重要的区别是,电路是水平绘制的,而LD程序是垂直创建的。 当您垂直构建LD程序时,PLC将一次执行一个梯级(或符号),因为梯形中的每个符号都是一条指令。当你创建一个新的梯形逻辑时,你会注意到两条垂直线,你的梯形逻辑将位于这两条线之间。您将继续绘制原始线之间的垂直连接,创建信息梯级。然后,您可以在这些横档中包含任何上述符号,形成PLC的指令。每次执行程序一个梯级,PLC通常会扫描其所有输入,然后继续执行程序以设置输出。一些常见的符号或说明包括: 检查是否关闭:看起来像两条相互平行的短竖线,符号上方标有名称“I0.0”。这是一个条件指令,通常用于检查某事是否为真,例如,它可以检查某个位是否打开。当PLC检查其输入状态时,它将在其存储器中分配一个布尔值(1或0)。如果输入为低,该位将被设置为0,或者,如果输入为高,该位将被设置为1。 输出线圈:看起来像一组括号,用于打开和关闭一点。 输出锁存器:允许您指示PLC执行连续输出,即使数字输入是瞬时按钮(即需要不断按下才能工作的设备)。例如,当处理通风系统的风扇时,这是特别方便的,在这种情况下,操作者不方便连续按住风扇的按钮。 检查是否打开:是另一个内存地址为“I0.1”的符号。这个函数看起来像Examine If Closed符号,但有一条对角线穿过两条垂直线,其工作方式与Examine If Closed完全相反。 LD程序中还涉及许多其他符号,其中包括: 结构化文本 结构化文本(ST)编程语言是基于文本的,通常被认为是最容易理解的语言之一,对于初学者和那些构建程序的人来说也是如此。虽然基于图形的程序,如前面提到的FBD或LD,可能看起来更容易理解,但使用基于文本的语言(如ST)将占用更少的空间,并使用户更容易理解程序的逻辑。ST的另一个好处是可以和不同的编程语言结合。例如,您可以创建包含用ST编写的功能的功能块,因为ST是一种标准化的编程语言,所以您可以用它对不同的PLC品牌进行编程。 类似于梯形逻辑,用ST编写的程序一次执行一行。ST的基本语法围绕着“Program”和“End_Program ”,它们将PLC程序夹在中间,如下所示: 值得注意的是,“End_Program”命令不会最终结束您的程序,而是指示PLC扫描周期重新开始,使您的程序重复运行。 您的PLC编程软件可能会自动实现“Program”/“End _ Program”构造,提示您编写填充该构造所需的代码。虽然有许多管理ST的语法细节,但是有一些您应该始终注意的一般规则: 所有语句都用分号分隔;…
PLC编程基础–第4部分
在我们正在进行的PLC技术人员实践系列的这一部分中,我们将扩展我们对已经熟悉的真实世界现场设备的虚拟对应的知识PLC技术人员今天在工业界工作。我们要检查的最后一个物理设备是计数器。我们将简要了解在对现代PLC进行编程以执行工业控制应用时,该器件的虚拟版本是如何实现的。我们还将说明技术人员如何熟悉与AB SLC 500系列控制器一起使用的各种附加指令。 CTU和CTD计数器指令之间有什么区别? 在编程PLC时,我们会遇到两种基本类型的计数器,一种是上行计数器或CTU指令,另一种是下行计数器或CTD指令。您可能已经凭直觉知道,CTU计数器指令从用户定义的值(存储在指令的ACC或accumulated字段中)开始,并且每当指令所在的梯级上发生“假到真的转换”时,递增计数或增加值。每当该指令所在的梯级呈现“假到真”的转变时,CTD指令用于递减用户定义的(同样是存储在指令的ACC字段中的值)值。在这两种情况下,专用传感器、物理棒或近程探测器等现场设备都会导致输入架位置改变状态。与这些计数器指令相关的信息存储在C5(计数器)数据文件位置。除了单独的计数器类型(递增或递减计数器),还可以组合这些指令来创建计数器双向计数器或“计数器对”。 如何创建一个上行/下行计数器对? 除了前面提到的预设值和累计值字段,这两种计数器类型还可以共享状态位和计数器参考。C5文件的内存位置结构为用户定义的值和状态位提供了存储,这一点我们在数据文件类型和结构. 在上图中,CTU指令和CTD指令的“计数器”字段引用同一个内存存储位置C5:1(也显示在图中)。该文件中的每个存储器位置存储CU(递增计数使能)、CD(递减计数使能)、DN(完成)、OV(上溢)、UN(下溢)状态位以及共享C5参考的计数器的预置值和累计值。在本例中,预设值设置为100。请注意,值是共享的,并显示为两个计数器的预设值。当前累计值为10,它也在每个指令中共享和显示。当I:1/1触点闭合时,CTU计数器被触发。这将增加存储在C5:1存储位置的累计值,修改后的值将显示在两条指令中。当I:1/2触点闭合时,累计值将减少,并返回到值10。每个现有的计数器都能够修改这个累加值。它们还共享bit状态。这样,运行计数可以通过现场事件(梯级上的触点所引用的I:1输入模块的状态转换)来递增或递减。 下面的视频展示了用于保持运行计数值的递增/递减计数器对的行为,该计数器可根据需要递增或递减。该视频概述了使用运行计数来跟踪电梯轿厢位置的电梯提升程序。 多条指令共享一个数据文件存储地址是一件常见的事情吗? 还有其他指令能够使用共享存储器位置引用。采用这种引用共享技术的另一种常见指令是SQO序列器输出指令。这些定序器指令中的几个可能共享相同的R6控制数据文件存储器位置,同时引用不同的源文件位置。这种情况下的目标是共享POS(位置)值。这将使每个引用的源文件中的文件指针彼此同步移动。技术人员将使用该工具创建虚拟序列表,并将部分表数据发送到不同的输出或指令字段位置。序列表可以存储交通灯应用中的灯的输出模式。 单独的序列表可以存储光序列中每一步的定时信息。随着指针一起移动,每个输出光模式(被发送到控制光的输出位置)被步进,每个步骤的相应持续时间可以被发送到定时器指令的预设字段。 你如何研究SLC 500系列控制器的各种指令的行为? 基本扩展指令集在供应商处有详细说明用户指令集参考手册。该指南列出了可用的指令,并描述了与每个指令相关的操作和数据。由于说明太多,无法以这种格式详细阐述,因此熟悉这一资源非常重要。 在我们的下一期文章中,我们将列出一些与我们在本博客系列中讨论的指令相关的最常见的编程错误,以及如何避免它们。
标准做法和初学者在PLC编程时遇到的错误-第1部分
在我们正在进行的PLC技术人员实践系列的下两期中,我们将研究一些常见的编程概念,以及在使用我们在基本控制应用中介绍的指令时出现的一些最常见的编程错误。到目前为止,我们已经了解了线圈、触点、时序控制器、定时器和计数器,以及用于存储指令信息、状态位和程序变量的文件结构。这些元素的组合为我们提供了开始编写简单控制应用程序所需的基本概念。这一部分将关注五个基本的常见实践。 有哪些常用的方法? 当编程PLC时,尽管每个控制环境/应用可能是特定的和专门的,但是有一些概念通常被广泛的应用所采用/使用。在我们讨论的第1部分中,我们将了解以下常见实践: 使用基本组合逻辑来控制输出 使用字段闭包 对“启动/停止”站使用“密封” 使用虚拟的“控制继电器” 使用“互锁”实现互斥 1.使用基本组合逻辑来控制输出 正如我们在关于线圈和触点的讨论中所看到的,输出设备可以由线圈指令控制,该指令引用设备所连接的输出机架位置(物理地址)。要打开现场设备,只需给参考特定输出机架位置地址的线圈通电。在大多数情况下,需要根据特定于给定控制应用的一组定义的条件或标准来开启或关闭输出。这些条件可以使用与输入架位置或指令状态位相关联的触点来定义。查看下面包含三个梯级的梯形逻辑程序。这个简单的程序演示了以梯形逻辑形式实现的一些基本逻辑函数的用法。 基本逻辑功能(与、或、非) 梯级1:逻辑与功能 该横档控制连接到输出架位置O:2/1的输出1线圈。连接到该输出的设备将根据该输出线圈的状态打开或关闭。梯级1中触点的配置和类型创建了and逻辑功能。这意味着条件1、条件2和条件3在输入位置(I:1/1、I:1/2、I:1/3)都必须为高,以便在该梯级上保持连续性。当梯级1上存在连续性时,输出1线圈将通电 梯级2:逻辑或函数 这个梯级包含所谓的“分支”。它控制连接到输出架位置O:2/2的输出2线圈。为了在该梯级上保持连续性,条件4或条件5或条件6在所引用的输入机架位置处必须为高。(I:1/4,I:1/5,I:1/6)如果这些输入架位置中的任何一个为高,输出2线圈将被通电,连接到O:2/2输出架位置的设备将被打开。 梯级3:逻辑非函数 该横档由一个常闭触点组成,与控制输出架位置O:2/3的输出3线圈一致。在这种情况下,当现场没有出现条件7时,输出3将被通电。这意味着,只要输入架位置I:1/7处没有高电平,连接到输出的设备就会打开。 2.使用字段闭包 术语“场闭合”指的是使用输入装置,例如常闭(NC)的瞬时接触开关,其常开(NO)触点与开关所连接的输入位置相关联。该程序将包含一个常开触点,该触点在程序脱机时保持打开。然而,一旦程序被置于运行模式,由闭合的瞬时接触开关产生的高状态在输入架位置被识别,并且常开触点立即闭合。 如上所述,现场设备在输入端提供高电平,该高电平状态关闭程序中的NO触点。输入设备不必是开关,它可以是当处于静止状态时在输入架上提供高电平的任何设备。 3.对“启动/停止”站使用“密封” 标准做法是在包含启动/停止站的应用中使用“密封”梯级和控制继电器。大多数控制应用将为停止按钮使用NC瞬时接触开关。停止按钮将在程序中控制NO触点。他们通常会采用上述的场闭合技术。在大多数应用中,启动按钮是一个无瞬时触点开关,用于控制程序中的无触点。由于这种类型开关的瞬时性质,我们需要一种方法在释放启动按钮开关时保持梯级的连续性。为完成此任务,使用了一个虚拟控制继电器,其无触点与启动按钮并联,如下图所示: 让我们花点时间来检查一下上面显示的程序梯级的构造和操作。除了连接到输入架插槽1的两种按钮开关(启动和停止)的触点,我们还有一个输出线圈。该输出线圈是一个“虚拟”输出,因为它的参考并不对应于物理输出架位置。该虚拟控制继电器引用一个存储位置,该位置将用于存储O8输出文件中的线圈状态。参考该虚拟控制继电器线圈的NO触点与瞬时触点启动按钮平行放置。该触点将响应存储在输出文件位置(O8输出文件,字0)的虚拟继电器线圈的状态。当该线圈通电时,(通过按下启动按钮),与启动按钮平行的触点闭合。这意味着,即使在释放启动按钮后,其关联的NO触点再次打开,该梯级上的连续性仍将持续。中断连续性的唯一方法是按下NC停止按钮。这将使虚拟控制继电器断电,并断开与之相关的触点。当停止按钮被释放时,即使其相关触点将闭合,围绕开始触点的路径不再可用,并且连续性被中断,直到再次按下开始按钮。 4.使用虚拟控制继电器 密封横档只是在应用中采用虚拟控制继电器线圈的用途之一。该项目也用作编程中的一般安全特性。 下图显示了在一个简单的电机控制应用中,梯级中相同的启动/停止密封。在该程序中,可以使用外部启动和停止瞬时接触开关启动或停止电机。除了使用虚拟控制继电器在启动开关触点周围提供连续性(一旦释放启动按钮,该触点将重新打开)之外,该控制继电器线圈还用于在包含电机输出线圈的横档和包含“运行”指示器输出线圈的横档上建立或断开连续性。 在上述应用中,除了创建上一节中讨论的密封之外,控制继电器还用于接通或断开电机控制梯级以及控制空闲指示器的梯级上的连续性。在按下启动按钮之前,控制继电器线圈断电,梯级3上存在连续性。该横档包含一个常闭触点,只要控制继电器线圈断电,该触点就会保持闭合。当按下启动按钮时,控制继电器通电,除了横档密封中的触点之外,横档2上的NO触点闭合,电机输出(O:2/0)和电机on灯输出(O:2/1)都通电。同时,与横档3上的控制继电器相关的NC触点断开,电机关闭光输出(O:2/2)断电。 标准做法是在梯级上使用与控制继电器相关联的触点,梯级具有参考实际物理输出位置的输出(OTE)指令。这确保了即使包含引用物理现场设备的输出指令的梯级上的其他条件为真,也可以通过对控制继电器线圈断电来关闭输出设备。事实上,所有的输出设备都可以使用单个控制继电器线圈和多个NO触点来关闭。 5.使用“互锁”实现互斥 两个输出之间的互斥是通过确保在任何给定时间两个输出中只有一个可以被激励来实现的。他们永远不可能在一起。 当不应一起通电的输出同时打开时,在设备可能损坏或条件可能变得危险的情况下,这通常是可取的。在现场,这是通过物理设备安全设备来完成的。在一个PLC程序我们使用互锁配置。这种编程特性确保了相关输出的理想限制。它基本上要求将与第一输出相关联的NC触点与第二输出对齐,反之,将与第二输出相关联的NC触点与第一输出对齐。这样,连续性不可能同时存在于梯形逻辑程序的两个梯级上。
PLC编程错误和疏忽-第2部分
在“PLC技术人员实践”系列的上一期中,我们研究了为工业应用编程PLC时常用的一些方法。在这一部分中,我们将研究一些最常见的编程错误和疏忽,这些错误和疏忽是在使用我们目前正在进行的系列中已经介绍过的指令时发生的。以下是一些基本的编程疏忽和需要注意的问题。 使用线圈和触点时遇到的三个常见编程疏忽? 1. 使用线圈和触点时最常见的错误之一是,程序中一个梯级上的程序逻辑指示输出处于给定状态,而程序中不同梯级上的条件指示同一输出在单个扫描周期内处于相反状态。必须小心确保在单个扫描周期内不会出现输出指令设置为两种不同状态(开/关)的情况。使用状态标志作为中间步骤是这种情况的一种可能的解决方案。 2. 另一种需要避免的情况与现场设备有关。例如,如果在一个应用中使用两个马达,程序逻辑必须确保马达不会工作在不同的目的,或者在泵运行以填充油箱的同时打开阀门以排空油箱。在这种情况下,输出之间必须保持互斥。这个问题通常通过使用编程联锁来解决,确保一个输出必须关闭,另一个输出才能打开。 3.使用子程序时必须小心,确保输出状态不会被不再被扫描的子程序所固定。在这种情况下,在选择性调用的子例程中打开或关闭输出。如果程序执行离开子例程,并且该子例程没有被再次扫描(条件的改变导致子例程不再被使用),则通过子例程外部的梯级来改变输出状态的任何尝试都将导致类似于上面第1点中提到的程序冲突。在这种情况下,将变量传入和传出子例程,而不是直接寻址物理输出,有助于确保这种情况不会发生 PLC编程中使用定时器的常见困难? 在给定程序的扫描周期代表应用程序中定时器上设置的定时持续时间的重要部分或一部分的情况下,使用定时器时会出现常见错误。在这种情况下,定时器的精确跟踪受到不利影响。由于完成单个扫描周期所花费的时间量,计时器将不会更新得足够快以赶上或接近“预设”时间。当一个特定的程序很大并且没有被划分/优化时,或者当期望的持续时间很短时,这个问题经常出现。当这些情况对您的应用程序造成不利影响时,您应该将计时器梯级的副本放在程序的不同位置,以确保计时器累积值在每个扫描周期更新不止一次。 经常监督使用计数器 使用计数器时最常被忽略的一个问题与计数器可以达到的最大值和最小值有关。使用计数器时,必须做好溢出和/或下溢的准备。在某些情况下,负的计数器累计值会在给定的PLC应用中导致不期望的事件。当处理“累积”值的范围时,经常会出现这种情况。如果计数器回绕,其累计值通常会超出应用程序中指定的操作范围。确保充分利用上溢位和下溢位来确保何时出现这种回绕情况,并使用它们来解决这个问题。 使用序列器的两个被误解的方面 1.在PLC应用中使用序列器时,屏蔽工作原理的细节经常会被误解。选择合适的屏蔽值对于确保数据表输出或数据采集的完成至关重要。通常,初学者认为使用掩码可以确保只有数据字的某些部分可以被修改。虽然这在某种意义上是正确的,但整个字都会被覆盖或过滤,而不仅仅是掩码值高位中包含的部分。当目标字被重写时,掩码字中的低位将为低。对于初学者来说,这往往有点违背直觉。更准确地说,只有与掩码字中的高位相对应的位可以取源字值,掩码字中的所有低位将导致目的地取目的地中的低值。如果要保留原始数据,必须使用高位值来确保掩码不会过滤或改变输出值。 2. 当引用数据的来源位置或存储位置时,需要注意的是引用的内存位置实际上是数组指针的占位符。它实际上不是正在构造或读取的数据表的一部分。需要注意的是,当序列器回绕时,数据表中的第一个位置实际上是下一个连续的文件地址。例如,如果文件字段的地址是B3:1,那么在本例中,表中获取或发送数据的第一个地址将是B3:2。此外,指定的长度字段值不包括被引用的文件位置本身,但包括紧跟在被引用的地址之后的步数或存储位置。
PLC与PAC:了解各自的差异和价值
在某些方面,“如果它没有坏,就不要修理它”这句话是一句可以应用于制造业的格言,特别是当它涉及到可编程逻辑控制器(或PLC)的使用时。自20世纪60年代以来,PLC已被用于自动化制造过程-虽然今天的PLC使60年前的功能相形见绌,但许多人认为,就过程管理而言,没有比可编程逻辑控制器更好的解决方案。 尽管许多人认为PAC或可编程自动化控制器只是一种具有新的现代名称的PLC(该术语最初由ARC Advisory Group于2001年创造),但也有人认为PAC比久经考验的真正PLC提供更大的价值,反之亦然。最终,决定谁对谁错归结为识别什么是最终用户期望应用的正确系统。 PLC和PAC有什么区别? PAC可以被描述为PC和PLC的“混合体”,因为它通常在一个封装中提供两者的优点。PLC和PAC的一个主要区别是编程接口。大多数PLC是以线圈和触点的图形表示进行编程的,称为梯形逻辑。PACs可以使用梯形逻辑进行编程,但也能够使用计算机编程语言(如C或C++)进行编程。 在简单或高速机器控制应用中,可编程逻辑控制器通常被认为是优秀的。普通的PLC设备在有限的内存下运行,并通过开/关控制关注离散输入/输出。 就PACs而言,在复杂的自动化系统架构中,PACs通常比PLC更适合,这些架构通常包含若干基于PC的高级应用程序,包括但不限于资产管理、更高级的过程控制和人机界面功能。从编程的角度来看,PACs的特点是更加灵活,并且通常包含更多的功能。 PACs还使得扩展系统比传统的PLC单元容易得多,简化了用户必须添加和移除传感器的过程——通常不需要用户断开任何接线。 显然,在可编程逻辑控制器和可编程自动化控制器的应用之间存在一些明确和切实的区别,这些区别远远超出了使用一个闪亮的新名字。话虽如此,重要的是回到上面表达的观点:最好的系统是适合工作的系统。 考虑到这一点,PLC可以说最适合于简单的任务,如控制基本的工业机器。需要明确的是,这并不是以任何方式贬低PLC的功能,而是建议用户不要购买不必要的功能。世界上大多数自动化制造都是通过使用PLC完成的,因为它们不需要PAC提供的所有功能和应用程序来完成制造过程。 现在,如果所需的应用需要控制大量的输入和输出点,或者如果应用的规模非常大,需要大量的环路控制,那么PAC可能就是最佳选择。 概括地说,PACs和PLC有几个共同点,包括电源、CPU、I/O机架和I/O模块。两台机器都有内存和地址来反映模块上的各个I/O点。然而,差异非常显著: 许多PLC都有固定的内存映射和寻址。虽然一些PLC,如Rockwell的Logix 5000和Siemens S7使用标签,但许多PLC不使用。所有PAC都使用标记名,并有内存映射限制。 PACs通常比PLC具有更大的I/O容量和内存容量。 PACs提供通信和数据处理选项,如USB数据记录端口、web服务器和数据日志文件。 PACs旨在与SQL和其他数据库更紧密地集成。它们为所有模拟处理要求提供16位模拟分辨率。 无论是PLC还是PAC,这两种系统的好处在于,一旦用户确定了系统类型,就有大量的型号可供选择,确保能够找到合适的型号。这是因为PLC和PAC旨在说明应用的规模,通常基于输入和输出计数。 随着时间的推移,PLC和PACs之间的许多关键区别变得越来越不明显,因为PLC技术不断发展,可以说为今天的PLC程序员队伍提供了一个充满挑战和有趣的机会。说PLC技术将很快让位于微处理器的能力有点牵强,考虑到世界各地的许多制造商仍然在他们的过程中使用手动方法,这使得当需要升级他们的操作时,他们不太可能跳过PLC集成,直接转向更实质性的,尽管更昂贵的基于PC的替代方案。 人们甚至可以说,随着手工制造方法变得越来越过时,该行业将会看到PLC使用的复苏。当然,这将带来额外的需求PLC技术人员服务维护这些有价值的系统。 通过进入乔治·布朗学院PLC技术员证书在这个项目中,学生将学习到使用大量可编程逻辑控制系统所必需的基本技能,这些系统已经在全球数以千计的工业环境中使用。
艾伦·布拉德利vs西门子:这些PLC工具有什么区别?
虽然很难相信工业自动化已经存在了近70年,但更难的是技术正在不断寻找新的创新方法来提高生产能力和流程效率。在被称为第三次工业革命的一长串工业技术中,可编程逻辑控制器(PLC)可以说是最具影响力的技术之一。事实上,这个看似不起眼的工业盒子可能会超越50年代和60年代开发的其他变革性技术——大型机计算、个人电脑、半导体和其他技术——这充分说明了PLC对20世纪和21世纪制造业的意义(并将继续意义)。 像任何事情一样,不是所有的上市公司都是平等的;今天市场上的每一个PLC都有自己的特性和优点。Rockwell的Allen-Bradley和Siemens就是两个这样的PLC,它们是世界上使用最广泛的PLC——虽然每个设备都是不可否认的行业主食,但它们之间有许多关键差异。让我们来看看它们是如何叠加的。 性能和可用性 当谈到可能彻底改变工厂运作的技术时,性能将会占据最大的关注份额。不幸的是,纯粹基于性能在艾伦-布拉德利和西门子之间做出决定并不容易;在速度、可靠性和输出方面,它们都相当旗鼓相当。相反,易于操作和集成往往是需要考虑的主要差异化点。 易用性和用户友好的界面有很多优点。Allen-Bradley PLC以拥有这两种品质而闻名,这使得这种可编程逻辑控制器对任何制造商来说都是一种有吸引力的投资。易用性意味着,即使相对来说没有丰富编程经验的PLC技术人员也可以使用Allen-Bradley PLC,但易用性并不止于此。调试Allen-Bradley PLC可以说比使用西门子PLC花费更少的时间和精力。 此外,Allen-Bradley PLC可与第三方设备有效通信,并可将标签从Excel导入和导出到人机界面(HMI)或SCADA数据库。 尽管如此,易用性并不总是最重要的标准,这取决于技术人员的经验水平和预期的应用。西门子允许他们的PLC被大量编程和定制,以适应特定的业务需求。当然,这意味着需要更扎实的计算机编程背景,以便技术人员有效地使用和维护西门子PLC,但是这种定制化所带来的机会是不可低估的。 五金器具 如果在读完最后一节后,你对艾伦-布拉德利的感觉比西门子更强烈,或者反之亦然,你可能想再多保留一会儿判断。虽然普遍认为Allen-Bradley PLC是两者中更用户友好的解决方案,但与Siemens相比,它们在易于安装方面稍有不足。 安装Allen-Bradley PLC时,您还需要连接Allen-Bradley电源、机架和用于安全通信端口的附加卡。另一方面,西门子PLC可以插入大多数标准的24V DC电源,并带有内置的安全通信端口。最后,西门子PLC带有符合欧洲标准的内置协议(ASI、Profinet、Profibus ),而Allen-Bradley PLC带有美国协议(以太网IP、控制网、设备网等)。). 支持 支持可用性是购买PLC时要考虑的一个重要因素。西门子为各种不同的产品提供全天候的售后技术支持、现场服务和备件,包括属于其过程和工厂自动化类别的任何产品。罗克韦尔还为他们的产品提供365天全天候技术支持,但不如西门子提供的全面,免费支持的水平取决于安装的硬件数量。在这两种情况下,您认为合适的支持水平可能是做出购买决定的重要因素。 哪个是赢家? 诚然,根据一个或另一个功能选择一个PLC是很容易的,但更重要的是看整个包装——易用性和集成、售后支持等。做出购买决定时。最终,正确的PLC是为给定应用检查最多盒子的PLC。
GBC更新其PLC技术员证书课程
为了保持GBC收集学生和行业反馈的长期传统,我们很高兴地宣布,我们已经更新了我们的PLC技术员证书计划课程包括新的功能和内容,直接响应行业需求和我们学生最普遍的要求。这程序内容更新包括“程序流控制相关”项目的附加信息,如“中断”及其用法,以及与闭环控制系统相关的内容,特别是PID指令及其用法。 PLCLogix 500模拟工具也已更新,包括另一个3Dworld模拟阀和与现在包含在程序内容中的附加信息相关的新说明。PLCLogix 500仿真工具的使用在强化和消化课程内容中讨论的概念方面发挥了不可或缺的作用。有了工作中断、中断区控制和PID指令,学生可以探索和实验这些新概念。 此外,增加了与3D环境中的条件相关的模拟数据的监控和图形,以帮助学生理解。 模块10“程序流程控制”增加了什么?中断。 模块10的内容已经扩展,增加了一个讨论中断的新部分。例子, 举例说明每种类型中断的用法。在PLC应用中,中断用于处理意外或不良情况或事件。它们可用于保护设备、触发警报、暂停操作,以及暂停常规程序的执行,以定期执行特定的任务。有四种常见的中断类型,它们按照下面列出的顺序进行处理: 1.故障例程中断 这些事件/问题被归类为由硬件相关问题(如设备故障)和软件相关问题(包括编程错误)引起的小故障和大故障。 2.离散输入中断 常用于需要高速计数器的应用中。当离散I/O卡的输入与编程的比较值匹配时,该功能允许处理器执行子程序。 3.可选定时中断- 可以周期性地暂停主程序文件的扫描,以便执行指定的子程序文件。一旦子程序被执行,程序从中断的地方继续。 4.输入输出中断 专用输入输出模块经常使用它来中断正常的处理器操作周期,以便扫描指定的子程序文件。并非所有专用I/O模块都能够产生这些I/O中断。这些卡片通常与高速计数或运动有关。 模块14“过程控制”增加了什么?PID指令。 模块14中增加了一个新部分,说明PID指令的用法以及关键参数。PID控制通常用于制造过程中控制位置、温度、压力、流速等。PID指令使用一种算法来校正测量的过程变量(PV)和期望的设定点(SP)之间的误差,通过计算然后输出可以快速调整过程以将误差保持在最小的校正动作。PID指令通过向控制物理属性和/或设备的致动器发送输出信号来控制过程。它允许用户通过设置某些参数来实现PID环路的数学功能,并且不需要调谐PID环路通常需要的大量算法和方程知识。作为控制系统技术人员、工程师或PLC程序员,理解这些过程非常重要。 使用齐格勒-尼科尔斯方法和PID指令调整PID环路的步骤也将在新章节中讨论: 1.将环路设置为手动模式(字0,位1)。 2.关闭积分和微分操作,并将比例增益设置为较小的值。 3.更改运行速度的值。应该注意到SP和PV之间的偏移或误差。 4.将控制器置于自动模式(字0,位1) 5.将PV增加10%,直到出现持续振荡。 也就是说,振荡的幅度必须既不增加也不减少。 可能有必要改变设定值以引起振荡。 6.记录这个增益值作为最终增益,Ku 7.将所得周期记录为最终周期Tu。这个时期是时候了 (以秒为单位)来完成一个周期的振荡。(无阻尼自然频率的倒数) 8.使用上面找到的Ku(极限增益)和Tu(极限周期)值以及下表中显示的系数,计算PID控制器的调谐参数Kc(控制器增益)、Ti(积分时间)和Td(微分时间): 关于这种调整方法的新信息现在可以与添加到分批混合器、单个压缩机和PLCLogix 500模拟软件中的新阀门控制3D世界的PID指令和模拟I/O功能一起使用。该仿真工具已经更新,为中断和闭环PID控制应用提供了新的指令和环境。 PLCLogix 500仿真软件增加了什么?阀门3DWorld。 以下是最新更新中添加到指令集中的指令列表: STE可扩展定时使能指令 标准可扩展定时禁用指令 STS可选定时启动指令 IIE输入输出中断使能指令 IID输入输出中断禁用指令 RPI -复位挂起中断 PID -闭环PID控制块指令 S2文件设置选项卡允许用户设置和定义STI(可选定时中断)和DII(离散输入中断)操作的使用。这些新的指令和功能支持前面讨论的内容添加。使用创建示例和测试应用程序行为的能力PLCLogix 500虚拟仿真环境在学生理解和材料记忆中起着关键作用。中断功能的增加以及具有工作PID指令构成了对整体模拟功能和可用性的显著增强。 添加了一个新的3D环境,该环境侧重于阀门控制系统的操作,以及两个以前可用的应用程序的替代版本,即单压缩机和分批混合器3D世界。在这些替代版本以及新的阀门定位环境中,阀门定位、温度和储罐液位控制的模拟控制现在是可能的。 仿真工具的另一个新增功能是趋势功能(从控制器树访问),允许用户定义变量、地址或指令元素参数,以便在仿真过程中实时监控。向用户提供在指定存储位置出现的瞬时数值以及它的历史最小值和最大值。指定的内存位置数据也会随时间以图形方式绘制出来,以供查看和分析。利用这一新功能,可以轻松地引用和监控目标文件地址组或指令参数组。 在上文中,我们正在监控上图1中的设定值和离散输入,以及下图2中的阀门输出控制信号。每个图形部分能够监控和绘制7个变量,并在模拟运行时实时查看。…
如何使用梯形逻辑减少扫描时间的5个技巧-第1部分
在接下来的两篇博客中,我们将讨论扫描时间及其对日常PLC应用的影响,并研究如何减少扫描时间。扫描时间是许多高速PLC应用中需要考虑的重要指标。执行单个扫描周期所需的时间会对高速应用中存在或需要的输入激励和/或输出控制信号产生重大影响。专业I/O模块经常在这些情况下使用,并提供显著的优势。也就是说,重要的是要注意,扫描周期时间对于一般应用也很重要。虽然它们可能没有高速应用程序的极端限制和依赖性,但一般应用程序,如简单的多路复用程序段,可能具有与扫描时间直接相关的实际限制。扫描时间对定时器操作的影响可能是显著的。人们普遍认为,在学习如何用梯形逻辑对PLC编程时,了解扫描时间的影响以及如何减少扫描时间的一些基本知识是很重要的。 在接下来的两篇博客中,我们将分别研究以下5个技巧的一个简单例子: 1.将最有可能为假的指令/条件放在梯级的开头,以减少扫描期间看到的指令数量。 2.在创建梯形逻辑程序时,尽可能避免重复唯一的标记/指令组合。架构的改变通常可以减少程序中使用的指令总数,从而减少内存使用和扫描时间。 3.程序流控制是显著减少扫描时间的关键。使用JMP和LBL指令来减少正在运行的程序的活动段。 4.划分任务(制定模块化流程)并对其进行组织会对扫描时间产生重大影响。传递变量可以允许程序段(子例程)在多个实例中使用。 5.避免浮点运算,尽可能使用整数。如果您需要比整数更好的精度,可以考虑将所有的浮点数乘以10、100或1000来得到整数。 每个扫描周期时间减少提示的基本示例: 让我们回顾一下前两个技巧的简单例子。 1.最有可能为假的指令应该在一个梯级的开始。 在可能的情况下,从左到右排列指令,并根据它们出错的可能性来确定它们的位置,这是一个应该采用的良好做法。考虑下面的简单电机密封横档: “停止按钮”按钮现场设备是一个常闭瞬时接触开关。当应用程序运行时,与之相关的常开触点会因现场按钮的状态而闭合。因此,密封的分支部分应出现在横档上“停止按钮”触点的左侧。在程序执行期间,停止按钮触点大部分时间都是闭合的。它不应是梯级上扫描的第一条指令。这种微小的影响累积起来会对扫描周期时间产生重大影响。 2.避免唯一标签/指令组合的重复。 考虑使用瞬时接触按钮提供单一启动/停止站的程序段。 上面的程序段已经过优化,不会多次使用任何唯一的标签/指令组合。如果应用程序要求使用第二个站,可以复制该结构并修改标签,以创建如下所示的程序段: 尽管这是实现我们目标的简单方法,我们还是引入了4个标签/指令组合的副本。在上面的版本中,XIO、XIC、OTL和OTU指令以“Pilot_Light”别名标记出现了两次。对于可能需要的每一个额外的站,这种冗余的影响将会增加。备用拓扑可能是解决这一冗余问题的方法。 下面显示的程序段将与我们之前检查的具有2个停止/开始站的版本功能相同。 这个版本的程序段比前一个版本少用了4条指令。它不包含重复的标签/指令组合,并且当可能需要额外的站时,这种新的拓扑易于扩展。目前还不清楚是否有另一种方法来组织这个示例所需的逻辑,但是应该花时间进行尝试,因为当成功时总是值得努力的,并且可以对扫描周期时间以及内存使用产生重大影响。 在我们的第2部分中,我们将研究剩余的三个技巧,用梯形逻辑编程来最小化PLC扫描周期时间,并提供每种情况的例子。我们要看的最后三个技巧通常被认为对扫描周期时间有最大的影响,所以请务必在我们的下一期文章中回来查看。
- « Previous Page
- 1
- ···
- 376
- 377
- 378
- 379
- 380
- ···
- 387
- Next Page »


