资深电气工程师实例讲解:PLC手动和自动程序怎么写才好?
很多电气员在刚写程序时总会遇到不知道用什么写法能更好地实现功能的应用,往往就会陷入一个否定与自我否定的死循环。今天我们就从简单的手动和自动程序入手,一起来聊聊如何把手动和自动程序写得更实用?老规矩先说概念和思路,再上实例!
一、手动和自动程序的概念
手动程序通常是单个动作或设备在人为操作后运行,它不受自动程序的控制,优先级别高于自动程序,常用于设备测试、故障检修或带故障生产模式。当然手动程序还是必须受控于重要的极限位置和安全指标,比如限位开关、过流保护和急停开关等。手动程序连锁条件简单,易于工人操作,但效率低,对于流程控制极不方便。
自动程序通常是按照工艺流程要求自动完成系列动作组合,它受控于手动程序的连锁,优先级别低于手动程序,这是设备或生产线运行的主要模式。自动程序除了受控于重要的极限位置和安全指标,还必须要满足工艺流程之间的连锁、互锁、报警和数据处理,还要尽可能考虑到程序跑飞的意外情况。自动程序连锁复杂,程序编写难度大,但效率高,非常适合流程控制。
二、手动和自动程序的编写
首先,手动模式和自动模式的严格互锁。比如整个生产线选择了自动模式运行,那么相应的各设备都需要选择自动模式(当然根据实际需要可以设计部分设备为半自动运行模式)。
其次,自动程序最好都采用独立的子程序完成,输出逻辑先保存于中间继电器即可。
最后,手动和自动的逻辑输出只到最终执行程序段,比如某台变频的启动信号和速度设定作为接口信号进入输出执行程序段。
这样的编程模式把选择模式、逻辑控制和执行输出严格分开,只需把编程的重心放在逻辑控制上,思路清晰、逻辑分明,可以大大提高程序的质量。
三、手动和自动程序的实例
该实例摘自非标系统的自动控制系统。我们以一个上料系统的升降平台控制为例来说明,编程思路为模式选择(FC10)、逻辑控制(FC20)和输出执行(FC21),其中FC10和FC21都很简单,编程重点专注于FC20即可,不管逻辑控制有多复杂或改变有多大,我们几乎不用动其它程序,这样做的程序不仅可读性高还方便调试。(实例程序段为部分节选,只是为了更生动形象的说明手动/自动程序的编程思路)
(1)该段位于整个设备的模式控制子程序(FC10),下图为整个系统的手动/自动开关。
(2)该段位于整个设备的模式控制子程序(FC10),下图为整个系统的自动启动状态。
(3)该段位于上料系统的逻辑控制子程序(FC20),图为上料系统的自动继电器。
(4)该段位于上料系统的逻辑控制子程序(FC20),图为升降平台自动启动步序一。
(5)该段位于上料系统的逻辑控制子程序(FC20),图为升降平台自动启动步序二。
(6)该段位于上料系统的逻辑控制子程序(FC20),图为升降平台自动启动步序三。
(7)该段位于上料系统的输出控制子程序(FC21),图为升降平台手动/自动输出。
PLC的指令是什么?
指令语句表编程语言是所有PLC都具有的最基本的编程语言。而指令语句表程序是由一条一条的指令堆砌而成的。因此,我们有必要对指令进行进一步的说明和解读。
1、指令格式
PLC的指令语句表程序和微机汇编语言程序非常的相似,我们也是以汇编语言的指令和指令系统方式来进行介绍。
所谓指令是指对PLC的一种操作命令,告诉PLC怎么做,做什么?人们设计了一系列的操作命令,并对他进行二进制编码。但是对于人们设计和交流沟通来说,二进制十分不便于记忆、阅读和书写。进一步又设计出了助记符形式的表示,这就是汇编语言的助记符指令格式。助记符指令十分好记,方便阅读和书写。更好的是它可以直接用键盘输入,然后通过PLC内部的编译程序把它变成一系列的二进制操作编码,由PLC的CPU来执行。
那么一条操作指令是由哪些内容组成的呢?一般来说,一条指令是由操作码和操作数组成的,例:
操作码又叫助记符。表示这条指令的性质和功能,就是要求PLC怎么做,一条指令,器操作码是必不可少的。
操作数又叫地址码,操作数地址,表示参与操作数据或数据的地址,在PLC中,也可以把它叫做编程元件。操作数告诉PLC做什么。上面这条指令表示和一个常开触点X0相串联,并完成逻辑“与”运算。
在PLC指令系统中,操作数可有可无,没有操作数的指令只表示完成一种功能,例如下面指令:
END
它就没有操作数,仅表示程序就此结束。
在功能指令中,操作数可以有1-4个,例如下面指令:
ADD D0 D1 D2
这条指令中操作数有三个D0 、D1、 D2。这时候把操作数分为源数(源址)和目的操作数(终址)。源址表示操作数的来源,而终址表示指令操作结果存放地址。上面这条指令表示做加法,把D0和D1相加,相加结果放在D2里。显然D0和D1为源址,D2为终址。
往期优秀文章回顾:
18张电气自动化控制动态图,各种实操原理一眼就能看明白
相关问答
plc如何做写字程序?
下面是一些编写PLC写字程序的步骤:确定要显示的字母或数字,并将它们转换成PLC可以处理的二进制或BCD码。创建一个字母或数字的模板,并将其上传到PLC中。将...
plc程序段注释怎么写?
1.PLC程序段注释需要按照一定的格式进行书写。2.原因是注释的目的是为了方便程序的理解和维护,因此需要清晰明了地描述程序段的功能和作用。3.在编写PLC程...
怎么控制PlC三轴书写?
要控制PLC三轴运动,需要使用PLC控制器和运动控制器等设备,以及相应的编程软件和运动控制程序。下面是一些基本的步骤:1.确定运动控制器和驱动器:选择适合的...
plc指令讲解?
PLC的指令语句表程序和微机汇编语言程序非常的相似,我们也是以汇编语言的指令和指令系统方式来进行介绍。所谓指令是指对PLC的一种操作命令,告诉PLC怎么做,做...
plc的宏指令?
PLC里面是有宏这个概念的,其实所谓的宏不管是任何一种编程软件,它只是一个思想而已,具体的形式可能是不一样的,但功能相同,就是为了简化重复编程的过程而建...
三菱plc气缸超时报警程序怎么写?
三菱PLC的气缸超时报警程序一般可以通过以下步骤来实现:1.配置相关硬件首先,在PLC中配置好控制气缸的输出模块,并连接相应的传感器模块,通过传感器检测气...
三菱PLC的急停程序怎么编?
以,但实际项目中不建议用,...所有程序段上都串上急停按钮符号就可以了.就算你用了辅助M,一样,还是要把辅助串到各程序段上去.因为现在搞西门子了,所有电脑上...
信捷plc时间继电器怎么用?
信捷PLC时间继电器功能可以用来定时控制,可以实现指定时间点执行某个操作的功能,具体使用步骤如下:1.在信捷PLC编程软件中,打开一个新工程,创建一个新的...
plc分支结构怎么写?
下折线,之后和非分支写法相同。下折线,之后和非分支写法相同。
PIC的标准编程语言分别是?
一、PIC汇编语言指令格式PIC系列微控制器汇编语言指令与MCS-51系列单片机汇编语言一样,每条汇编语言指令由4个部分组成,其书写格式如下:标号操作...指令格...