「案例」如何编写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中代表变量的软元件有哪些,主要有输入X输出Y,辅助继电器M,定时器T,计数器C,状态S,数据寄存器D,XY一般小型PLC很少,40点、60点的,这个根据输入输出类型进行规划即可,主要就是分清楚高速输入、高速输出,普通的不要占用。
辅助继电器M有两类,普通的和掉电保存的,根据需要来选择,在规划地址的时候一段程序或者功能块使用连续的M,从编号0、10、20等开始,中间留有部分以备补充,比如这段用到M206,下一段就从M210或者M220开始。对于并联输出的,LD M72 OR M82 OR M92 OUT Y1,这样把编号的最后弄成统一的便于记忆也方便我们在最后调试的时候好检查。
定时器有不同单位的时间如1ms、10ms、100ms的,也有普通型和累计型的,也是根据需求来选择,向M一样可以根据使用的地方进行规划地址编号。计数器也有普通计数器和高速计数器、16位和32位之分,也有保持型计数器等,同样根据需要来确定,一般高速计数器的使用都是固定的,对应的输入都有固定的计数器。
地址的规划和选择首先要根据需要、功能来决定,然后在plc编程中所表达的动作进行统一编号,对于PLC的顺控程序,我们尽量在编程时进行段的声明、注释准确如下图,把整个PLC程序分成好几个小段写,每个小段可以写特定的动作组合、部分、功能、意义等,然后地址的规划在每段进行排列,第一段用M0~M100,第二段用M100~M200等等设计,方便我们寻找元件变量,对编程和后期的调试都很有帮助。
还有就是为了便于记忆,我们也可以采用标签对软件变量进行标记,免去注释,比如X0的标签是开始,Y0的标签是指示灯,以后我们就可以直接用“ LD 原点 OUT 指示灯”来表示 LD X0 OUT Y0了,这样就更方便了,PLC中每个变量都可以做标签进行声明。
相关问答
一个台达伺服要起50个位置,用PLC怎样编程?
很简单啊,一个定位指令,数据都用传送指令,传送到脉冲数那里。比如绝对指令:ddrvad1000d500y0y3,把你的那50个数据传送到dmoved102....传送到...很简...
plc的变址如何重复使用?
在PLC编程中,变址是指在程序中使用变量来存储地址值,使得程序可以根据计数器或其他条件对不同的地址进行操作。要实现变址的重复使用,可以采用以下方法:1....
plc扩展模块的地址怎么按位置扩展?
PLC扩展模块的地址按位置扩展通常是指按照物理位置来分配地址。这种方式可以使得PLC程序更加直观和易于维护。以下是按位置扩展PLC扩展模块地址的步骤:确定扩...
触摸屏,PLC怎么样在同一台电脑上同时模拟-ZOL问答
西门子的是首先把程序下载到PLC中,然后把程序关闭,进入触摸屏选择通讯上之后点击在线模拟就可以了有用(0)回复Stud197如果你想联接人机模拟的话,我建议你这...
s7-200plc多段速程序怎么写?
1、多段速程序需要用到定时器和计数器来实现。2、首先,明确结论:多段速程序需要根据不同的运动阶段来控制不同的速度,以满足不同的需求。3、解释原因:在程序...
为什么每个PLC程序都会有初始位置?
每个PLC程序都会有初始位置,主要是因为PLC是一种用于控制工业自动化生产过程的电子设备,其控制逻辑需要从一个已知的起始状态开始。在PLC程序中,初始位置包括...
2FX系列plc的步进指令有几条如何使用?
2FX系列PLC(可编程逻辑控制器)的步进指令有多条,具体使用方法需要参考相关的PLC编程手册或软件帮助文档。一般来说,步进指令可以用于控制步进电机或执行器的...
如何在同一项目plc系统中使用相同的地址?
1、使用不同模块或设备进行输入输出,分别指定相应的模块编号和输入输出端口,这样可以在同一项目plc系统中使用相同地址。2、同时,为了避免地址冲突和混乱,...
三菱plc多个485通讯需要地址吗?
三菱PLC多个485通讯需要地址。每个设备都需要一个唯一的地址,以便在主站和从站之间进行通信。如果您需要更多信息,请参考以下链接:三菱PLC多个485通讯需要地...
s7-200中远程PLC地址怎么确定?
默认是2,如想更改,在下载的时候,系统设置菜单里有相应的地址,下载成功,PLC地址就是编程软件里设定的。X0-X33为输入信号,地址0-33八进制Y0-Y233为输出...