「案例」如何编写3台电机轮换的PLC程序?
导读:
有很多读者问我怎么让一个电机工作8小时后停止?三台或者多台电机轮换的一个程序怎么编写。这里小编就以“3台电机轮换”的一个案例来讲解,本案使用西门子200smartSR30型号的PLC。
一、控制要求
某工厂需要24小时工作,有3台电机需要轮流工作,当一台电机启动8小时以后,更换下一台电机启动,以此轮换。如果运行的电机出现故障以后,切换下一台电机运行并输出对应的报警指示灯。
二、I\O表
注:停止、过载、缺相、急停的输入信号接的是常闭。
三、控制程序
1.建立子程序
(1)变量表
建立变量表(图1),完成的子程序如图2所示。
(2)形参子程序
程序段1:每次调用程序的时候先把L11.3的状态清除,以免重复调用的时候出现干扰。
程序段2:启动的时候需要时间设定的小时或分钟大于0才可以启动,如果程序已经在运行了,则无法再触发启动.
程序段3:典型的起保停电路,当停止、报警、定时完成,触发会断开电路。
程序段4:当有过载L0.2或者缺相L0.3时会触发报警输出L11.2,复位的时候会暂时断开输出,如果故障没有解除,即使复位也没办法把报警消除。
程序段5:当故障复位输入的时候会复位报警。
程序段6:当第一次启动的时候会把运行时间清零,如果不清楚为什么,请看程序段2。
程序段7:当运行的时候,外部定时信号输入时,运行时间S会加一。
程序段8:当运行时间S=60时,运行时间M加一,然后把运行时间S清零。
程序段9:当运行时间M=60时,运行时间H加一,然后把运行时间M清零。
程序段10:运行的时候,运行的时间和设定的时间相等时,会输出定时完成信号,并断开程序段3的运行。
2.控制程序
程序段1:在自动的模式下,当电机3定时完成或报警的时候才会切换到一号电机启动,如果说电机启动2正在运行,第3台电机故障了也不会切换到第一台电机启动。
程序段2:启动I0.0或一号电机启动都可以对电机进行启动,对运行位输出。停止、急停、过载、缺相,由于外部用的是常闭开关,没有触发的情况下,对应的通道会为1,所以这里使用了常闭触点。
当停止或则急停触发时会使电机停止,当过载或缺相触发时,使电机停止,并输出报警。VW0、VW2是对电机运行的时间设定,VW4、VW6、VW8是电机的运行时间。
程序段3:原理和程序段1一致,只是对应的地址不一样,请参考程序段1。
程序段4:原理和程序段2一致,只是对应的地址不一样,请参考程序段2。
程序段5:原理和程序段1一致,只是对应的地址不一样,请参考程序段1。
程序段6:原理和程序段2一致,只是对应的地址不一样,请参考程序段2。
程序段7:当电机1或者电机2、电机3报警的时候会输出报警指示灯。
程序段8:当电机1或者电机2、电机3运行的时候会输出运行指示灯。
程序段9:如果报警指示灯和报警指示灯没亮的时候输出停止指示灯。
3.数据块
对每台时间进行初始化设定,如果需要可修改的时间,可以在触摸上建立组态程序,关联对应的变量。
总结:
以上就是整个项目的PLC程序,如果需要其他功能可以对程序修改,本案例是小编针对控制要求编写的程序,在手动情况下可单独对一台电机进行控制,在自动模式下为了确保电机正常轮换,请不要启动多台电机,如果说有一台电机出现故障,轮换的时候会跳过有故障的电机。
注:以上程序只供学习参考,如果说要用于实际生产中,需要根据项目和现场控制进行修改。
(来源:技成培训网原创,作者:邹志锐,转载请注明出处!)
干货!超全的PLC选型方法
在PLC选型之前,我们要先确定系统方案,确定了之后,再选择生产厂商和型号,那你们知道这些该怎么选吗?本文从厂商、型号到输入输出(I/o)点数、控制功能等等都有详细的介绍,希望对你能有所帮助!
一、 PLC生产厂家
确定PLC的生产厂家,主要应该考虑设备用户的要求、设计者对于不同厂家PLC的熟悉程度和设计习惯、配套产品的一致性以及技术服务等方面的因素。从PLC本身的可靠性考虑,原则上只要是国外大公司的产品,不应该存在可靠性不好的问题。
一般来说,对于控制独立设备或较简单的控制系统的场合,配套日本的PLC产品,相对来说性价比有一定优势。对于系统规模较大网络通讯功能要求高、开放性的分布式控制系统、远程I/O系统,欧美生产的PLC在网络通讯功能上更有优势。另外对于一些特殊的行业(例如:冶金、烟草等)应选择在相关行业领域有投运业绩、成熟可靠的PLC系统。
二、 输入输出(I/o)点数
PLC的输入/输出点数是PLC的基本参数之一。I/O点数的确定应以控制设备所需的所有I/O点数的总和为依据。在一般情况下,PLC的I/O点应该有适当的余量。通常根据统计的输入输出点数,再增加10%~20%的可扩展余量后,作为输入输出点数估算数据。实际订货时,还需根据制造厂商PLC的产品特点,对输入输出点数进行调整。
三、存储容量
存储器容量是可编程序控制器本身能提供的硬件存储单元大小,程序容量是存储器中用户应用项目使用的存储单元的大小,因此程序容量小于存储器容量。设计阶段,由于用户应用程序还未编制,因此,微信公众号PLC工程师能拿资料能涨知识能提技能程序容量在设计阶段是未知的,需在程序调试之后才知道。为了设计选型时能对程序容量有一定估算,通常采用存储器容量的估算来替代。
PLC存储器内存容量的估算没有固定的公式,许多文献资料中给出了不同公式,大体上都是按数字量I/O点数的10~15倍,加上模拟I/O点数的100倍,以此数为内存的总字数(16位为一个字),另外再按此数的25%考虑余量。
四、 控制功能
该选择包括运算功能、控制功能、通信功能、编程功能、诊断功能和处理速度等特性的选择。
(1)运算功能
简单PLC的运算功能包括逻辑运算、计时和计数功能;普通PLC的运算功能还包括数据移位、比较等运算功能;较复杂运算功能有代数运算、数据传送等;大型 PLC中还有模拟量的PID运算和其他高级运算功能。
随着开放系统的出现,目前在PLC中都已具有通信功能,有些产品具有与下位机的通信,有些产品具有与同位机或上位机的通信,有些产品还具有与工厂或企业网进行数据通信的功能。
设计选型时应从实际应用的要求出发,合理选用所需的运算功能。大多数应用场合,只需要逻辑运算和计时计数功能,有些应用需要数据传送和比较,当用于模拟量检测和控制时,才使用代数运算,数值转换和PID运算等。还有的要显示数据时需要译码和编码等运算。
(2) 控制功能
控制功能包括PID控制运算、前馈补偿控制运算、比值控制运算等,应根据控制要求确定。PLC主要用于顺序逻辑控制,因此,大多数场合常采用单回路或多回路控制器解决模拟量的控制,有时也采用专用的智能输入输出微信公众号PLC工程师能拿资料能涨知识能提技能单元完成所需的控制功能,提高PLC的处理速度和节省存储器容量。例如采用PID控制单元、高速计数器、带速度补偿的模拟单元、ASC码转换单元等。
(3)通信功能
大中型PLC系统应支持多种现场总线和标准通信协议(如TCP/IP),需要时应能与工厂管理网(TCP/IP)相连接。通信协议应符合ISO/IEEE通信标准,应是开放的通信网络。
PLC系统的通信接口应包括串行和并行通信接口(RS2232C/422A/423/485)、RIO通信口、工业以太网、常用dcs接口等;大中型PLC通信总线(含接口设备和电缆)应1:1冗余配置,通信总线应符合国际标准,通信距离应满足装置实际要求。
PLC系统的通信网络中,上级的网络通信速率应大于1Mbps,通信负荷不大于60%。PLC系统的通信网络主要形式有下列几种形式:
1)PC为主站,多台同型号PLC为从站,组成简易PLC网络;
2)1台PLC为主站,其他同型号PLC为从站,构成主从式PLC网络;
3)PLC网络通过特定网络接口连接到大型DCS中作为DCS的子网;
4)专用PLC网络(各厂商的专用PLC通信网络)。
PLC为减轻CPU通信任务,根据网络组成的实际需要,应选择具有不同通信功能的(如点对点、现场总线、工业以太网)通信处理器。
(4)编程功能
离线编程方式:PLC和编程器公用一个CPU,编程器在编程模式时,CPU只为编程器提供服务,不对现场设备进行控制。完成编程后,编程器切换到运行模式,CPU对现场设备进行控制,不能进行编程。离线编程方式可降低系统成本,但使用和调试不方便。
在线编程方式:CPU和编程器有各自的CPU,主机 CPU负责现场控制,并在一个扫描周期内与编程器进行数据交换,编程器把在线编制的程序或数据发送到主机,下一扫描周期,主机就根据新收到的程序运行。这种方式成本较高,但系统调试和操作方便,在大中型PLC中常采用。
五种标准化编程语言:顺序功能图(SFC)、梯形图(LD)、功能模块图(FBD)三种图形化语言和语句表(IL)、结构文本(ST)两种文本语言。选用的编程语言应遵守其标准(IEC6113123),同时还应支持多种语言编程形式,如C、Basic、Pascal等,以满足特殊控制场合的控制要求。
(5) 诊断功能
PLC的诊断功能包括硬件和软件的诊断。硬件诊断通过硬件的逻辑判断确定硬件的故障位置,软件诊断分内诊断和外诊断。通过软件对PLC内部的性能和功能进行诊断是内诊断,通过软件对PLC的CPU与外部输入输出等部件信息交换功能进行诊断是外诊断。
PLC的诊断功能的强弱,直接影响对操作和维护人员技术能力的要求,并影响平均维修时间。
(6)处理速度
PLC采用扫描方式工作。从实时性要求来看,处理速度应越快越好,如果信号持续时间小于扫描时间,则PLC将扫描不到该信号,造成信号数据的丢失。
处理速度与用户程序的长度、CPU处理速度、软件质量等有关。目前,PLC接点的响应快、速度高,每条二进制指令执行时间约0.2~0.4μs,因此能适应控制要求高、相应要求快的应用需要。扫描周期(处理器扫描周期)应满足:小型PLC的扫描时间不大于0.5ms/K;大中型PLC的扫描时间不大于 0.2ms/K
五、PLC机型
PLC的类型:PLC按结构分为整体型和模块型两类。
整体型PLC的I/0点数较少且相对固定,因此用户选择的余地较小,通常用于小型控制系统。这一类PLC的代表有:西门子公司的S7-200系列、三菱公司的FX系列、欧姆龙公司的CPM1A系列等。
模块型PLC提供多种I/O模块可以在PLC基板上插接,方便用户根据需要合理地选择和配置控制系统的I/O点数。因此,模块型PLC的配置比较灵活,一般用于大中型控制系统。例如西门子公司的S7-300系列和S7-400系列、三菱公司的Q系列、欧姆龙公司的CVM1系列等。
六、 各种模块选择
(1)数字量I/o模块
数字量输入输出模块的选择应考虑应用要求。例如对输入模块,应考虑输入信号的电平、传输距离等应用要求。输出模块也有很多的种类,例如继电器触点输出型、AC120V/23V双向晶闸管输出型、DC24V晶体管驱动型、DC48V晶体管驱动型等。
通常继电器输出输出型模块具有价格低廉、使用电压范围广等优点,但是使用寿命较短、响应时间较长、在用于感性负载时需要增加浪涌吸收电路;双向晶闸管输出型模块响应时间较快适用于开关频繁,电感性低功率因数负荷场合,但价格较贵,过载能力较差。
另外,输入输出模块按照输入输出点数又可以分为:8点、16点、32点等规格,选择时要根据实际的需要合理配备。
(2) 模拟量I/o模块
模拟量输入模块,按照模拟量的输入信号类型可以分为:电流输入型、电压输入型、热电偶输入型等。电流输入型通常的信号等级为4~20mA或0~20mA;电压型输入模块通常信号等级为0~10V、-5V~+5V等。有些模拟量输入模块可以兼容电压或电流输入信号。
模拟量输出模块同样分电压型输出模块和电流型输出模块,电流输出的信号通常有0~20mA、4~20mA。电压型输出信号通常有0~0V、-10V~+10V等。
模拟量输入输出模块,按照输入输出通道数可以分为2通道、4通道、8通道等规格。
(3)功能模块
功能模块包括通讯模块、定位模块、脉冲输出模块、高速计数模块、PID控制模块、温度控制模块等。选择PLC时应考虑到功能模块配套的可能性,选择功能模块涉及硬件与软件两个方面。
七、冗余功能
控制单元冗余
重要的过程单元:CPU(包括存储器)及电源均应1B1冗余。在需要时也可选用PLC硬件与热备软件构成的热备冗余系统、2重化或3重化冗余容错系统等。I/O接口单元冗余
控制回路的多点I/O卡应冗余配置。重要检测点的多点I/O卡可冗余配置。3)根据需要对重要的I/O信号,可选用2重化或3重化的I/O接口单元。八、一般规则
在PLC型号和规格大体确定后,可以根据控制要求逐一确定PLC各组成部分的基本规格与参数,并选择各组成模块的型号。选择模块型号时,应遵循以下原则。
1、经济性
选择PLC时,应考虑性能价格比。考虑经济性时,应同时考虑应用的可扩展性、可操作性、投入产出比等因素,进行比较和兼顾,最终选出较满意的产品。
输入输出点数对价格有直接影响。每增加一块输入输出卡件就需增加一定的费用。当点数增加到某一数值后,相应的存储器容量、机架、母板等也要相应增加,因此,点数的增加对CPU选用、存储器容量、控制功能范围等选择都有影响。在估算和选用时应充分考虑,使整个控制系统有较合理的性能价格比。
2、方便性
一般说来,作为PLC,可以满足控制要求的模块往往有很多种,选择时应以简化线路设计、方便使用、尽可能减少外部控制器件为原则。例如:对于输入模块,应优先选择可以与外部检测元件直接连接的输入形式,避免使用接口电路。对于输出模块,应优先选择能够直接驱动负载的输出模块,尽量减少中间继电器等元件。
3、通用性
进行选型时,要考虑到PLC各组成模块的统一与通用,避免模块种类过多。这样不仅有利于采购,减少备品备件,同时还可以增加系统各组成部件的互换性,为设计、调试和维修提供方便。
4、兼容性
选择PLC系统各组成模块时,应充分的考虑到兼容性。为避免出现兼容性不好的问题,组成PLC系统的各主要部件的生产厂家不宜过多。如果可能的话,尽量选择同一个生产厂家的产品。
相关问答
用西门子plc控制多个模拟量输入信号,该怎么编程?
模拟量的采集与控制,是现在工业控制中常见的一个环节,在小型工程中,我们经常选用PLC作为控制器,那么对于PLC能否对模拟量进行采集与控制呢?这是肯定的,PLC...如...
信捷plc计数+比较指令如何编程?
学习plc的话,首先要对整个目标系统有个比较清晰的了解,对动作流程,检测数据,控制节点了解详实,通过模拟或者实际测试,发现总结实际运行中的不足。另外,对...
如何写PLC控制变频器的多段速程序?
如果是西门子MM4系列的变频器的话它有有4个端子可以设置成为多段速选择端子,利用四个端子的编码可以选择参数设置的15个不同速度,如果是西门子MM4系列的变频...
朋友们,PLC模块选择方法有哪些?知道的请回答
[回答]一个企业,应尽量做到PLC的机型统一。主要考虑以下三个方面的问题:(l)同一机型的PLC,其编程方法相同,有利于技术力量的培训和技术水平的提高。(2)同...
plc多工位的编程怎么写?
PLC多工位编程需要根据具体控制要求进行设计和实现。下面是一个简单的多工位流水线的样例代码:```IF机器人位置=1THENIF机器人工作完成=0THEN...ELSI...
plc编程高级思路?
一、基本的硬件知识编程之前,需要了解一些基本的硬件知识,最好从硬件的选型和画图入手,等把输入输出的类型,模拟量的选型等搞清楚之后,再开始编程会简单点。...
信捷plc计数+比较指令如何编程?
要编写信捷PLC计数和比较指令,需要使用特定的指令符号和参数来描述要执行的操作。编程时需要先定义计数器和比较器的初始值和上限值,然后使用计数和比较指令在...
plc控制多个气缸最简单的程序?
1.首先,您需要将多个气缸分配到PLC的输出端口上。2.然后,您需要编写一个程序来控制这些输出端口,以便根据需要打开或关闭每个气缸。3.在程序中,您可以使用...
plc编写程序与按钮一起变动怎么连接?
要在PLC编程中实现与按钮一起变动的功能,通常需要利用PLC的输入模块来接收按钮的信号,并通过编程逻辑来实现相应的控制。以下是一个基本的步骤说明:选择合适的...
三菱plc控制多个气缸编程实例?
在三菱PLC控制多个气缸的编程实例中,需要使用多个输出点控制不同的气缸动作。可以通过编写循环程序,依次对每个气缸进行控制,根据需要控制气缸的运动方式(单...