基于洗衣机的PLC控制系统设计.docx
《基于洗衣机的PLC控制系统设计.docx》由会员分享,可在线阅读,更多相关《基于洗衣机的PLC控制系统设计.docx(24页珍藏版)》请在冰豆网上搜索。
基于洗衣机的PLC控制系统设计
摘要
PLC可编程序控制器:
PLC英文全称ProgrammableLogicController,中文全称为可编程逻辑控制器,定义是:
一种数字运算操作的电子系统,专为在工业环境应用而设计的。
它采用一类可编程的存储器,用于其内部存储程序,执行逻辑运算,顺序控制,定时,计数与算术操作等面向用户的指令,并通过数字或模拟式输入/输出控制各种类型的机械或生产过程.
PLC是基于电子计算机,且适用于工业现场工作的电控制器。
它源于继电控制装置,但它不像继电装置那样,通过电路的物理过程实现控制,而主要靠运行存储于PLC内存中的程序,进行入出信息变换实现控制。
入出信息变换、可靠物理实现,可以说是PLC实现控制的两个基本要点。
入出信息变换靠运行存储于PLC内存中的程序实现。
PLC程序既有生产厂家的系统程序(不可更改),又有用户自行开发的应用(用户)程序。
系统程序提供运行平台,同时,还为PLC程序可靠运行及信号与信息转换进行必要的公共处理。
用户程序由用户按控制要求设计。
什么样的控制要求,就应有什么样的用户程序。
可靠物理实现主要靠输人(INPUT)及输出(OUTPUT)电路。
PLC的I/O电路,都是专门设计的。
输入电路要对输入信号进行滤波,以去掉高频干扰。
而且与内部计算机电路在电上是隔离的,靠光耦元件建立联系。
输出电路内外也是电隔离的,靠光耦元件或输出继电器建立联系。
输出电路还要进行功率放大,以足以带动一般的工业控制元器件,如电磁阀、接触器等等。
I/O电路是很多的,每一输入点或输出点都要有一个I或O电路。
PLC有多I/O用点,一般也就有多少个I/O用电路。
但由于它们都是由高度集成化的电路组成的,所以,所占体积并不大。
输入电路时刻监视着输入状况,并将其暂存于输入暂存器中。
每一输入点都有一个对应的存储其信息的暂存器。
输出电路要把输出锁存器的信息传送给输出点。
输出锁存器与输出点也是一一对应的。
这里的输入暂存器及输出锁存器实际就是PLC处理器I/O口的寄存器。
它们与计算机内存交换信息通过计算机总线,并主要由运行系统程序实现。
把输人暂存器的信息读到PLC的内存中,称输入刷新。
PLC内存有专门开辟的存放输入信息的映射区。
这个区的每一对应位(bit)称之为输入继电器,或称软接点。
这些位置成1,表示接点通,置成0为接点断。
由于它的状态是由输入刷新得到的,所以,它反映的就是输入状态。
1.全自动洗衣机控制系统的控制要求
1.1全自动洗衣机的工作原理
普通洗衣机的工作流程示意图如图1-1所示
图1-1普通洗衣机工作流程图
洗衣机的工作流程由进水、洗衣、排水和脱水4个过程组成。
在半自动洗衣机中,这4个过程分别用相应的按钮开关来控制。
全自动洗衣机中,这4个过程可做到全自动依次运行,直至洗衣结束。
自动洗衣机的进水、洗衣、排水和脱水是通过水位开关、电磁进水阀和电磁排水阀配合进行控制,从而实现自动控制的。
水位开关用来控制进水到洗衣机内高、中、低水位;电磁进水阀起着通/断水源的作用。
进水时,电磁进水阀打开,将水注入;排水时,电磁排水阀打开,将水排出;洗衣时,洗涤电动机启动;脱水时,脱水桶启动。
1.2设备控制要求
全自动洗衣机控制系统的要求是能实现“正常运行”和“强制停止”两种控制方式。
1.2.1正常运行
“正常运行”方式具体控制要求如下:
(1)将水位通过水位选择开关设在合适的位置(高、中、低),按下“启动”按钮,开始进水,达到设定的水位(高、中、低)后,停止进水;
(2)进水停止2s后开始洗衣;
(3)洗衣时,正转20s,然后反转20s,停2s;
(4)如此循环共5次,总共220s后开始排水,排空后脱水30s;
(5)然后再进水,重复
(1)~(4)步,如此循环共3次;
(6)洗衣过程完成,报警3s并自动停机。
1.2.2强制停止
“强制停止”方式具体控制要求如下:
(1)若按下“停止”按钮,洗衣过程停止,即洗涤电机和脱水桶转、进水电磁阀和排水电磁阀全部闭合;
(2)可用手动排水开关和手动脱水开关进行手动排水和脱水。
1.3控制方式选择分析
PLC系统的特点:
1)可靠性高,PLC作为一种通用的工业控制器,它必须能够在各种不同的工作环境中正常工作对工作的环境要求较低,抗外部干扰能力强,平均无故障时间长。
2)使用方法灵活,PLC采用了基本单元扩展或者是模块化的结构形式,因此,输入/输出信号的数量,形式,驱动能力等都可以根据实际控制要求进行选择与确定,而且在需要时可以随时更换,近年来,PLC的特殊模块增多这些可以满足不同的控制要求,使PLC的使用更加灵活与多变。
3)编程简单,PLC的优越性主要体现在它采用了独特的,多种面向广大工程设计人员的编程语言,如指令表,梯形图,逻辑功能图,顺序功能图等,程序简洁,明了适合各类技术人员的传统习惯,即使是没有计算机知识的人员也能统一掌握,特别是梯形图与逻辑功能图,形象直观,动态监测效果逼真,且与计算机控制容易
单片机系统的特点:
1)要求环境,单片机对环境的适应能力较低,可靠性差。
2)编程和PLC相比难以学习,主要是单片机采用汇编语言或者是C语言,这些高级语言和PLC语言相比,难以学习。
3)功能单一只具有使用中所需要的功能,但是,它结构简单,处理速度快。
根据PLC系统和单片机系统的比较,本次全自动洗衣机控制系统的设计采用PLC控制系统。
2.PLC控制系统设计
2.1PLC控制系统设计的基本原则
任何一种控制系统都是为了实现被控对象的工艺要求,以提高生产效率和产品质量。
因此,在设计PLC控制系统时,应遵循以下基本原则:
1.最大限度地满足被控对象的控制要求
充分发挥PLC的功能,最大限度地满足被控对象的控制要求,是设计PLC控制系统的首要前提,这也是设计中最重要的一条原则。
这就要求设计人员在设计前就要深入现场进行调查研究,收集控制现场的资料,收集相关先进的国内、国外资料。
同时要注意和现场的工程管理人员、工程技术人员、现场操作人员紧密配合,拟定控制方案,共同解决设计中的重点问题和疑难问题。
2.保证PLC控制系统安全可靠
保证PLC控制系统能够长期安全、可靠、稳定运行,是设计控制系统的重要原则。
这就要求设计者在系统设计、元器件选择、软件编程上要全面考虑,以确保控制系统安全可靠。
例如:
应该保证PLC程序不仅在正常条件下运行,而且在非正常情况下(如突然掉电再上电、按钮按错等),也能正常工作。
3.力求简单、经济、使用及维修方便
一个新的控制工程固然能提高产品的质量和数量,带来巨大的经济效益和社会效益,但新工程的投入、技术的培训、设备的维护也将导致运行资金的增加。
因此,在满足控制要求的前提下,一方面要注意不断地扩大工程的效益,另一方面也要注意不断地降低工程的成本。
这就要求设计者不仅应该使控制系统简单、经济,而且要使控制系统的使用和维护方便、成本低,不宜盲目追求自动化和高指标。
4.适应发展的需要
由于技术的不断发展,控制系统的要求也将会不断地提高,设计时要适当考虑到今后控制系统发展和完善的需要。
这就要求在选择PLC、输入/输出模块、I/O点数和内存容量时,要适当留有裕量,以满足今后生产的发展和工艺的改进。
2.2PLCI/O模块的选择步骤与原则
一般I/O模块的价格占PLC价格的一半以上。
PLC的I/O模块有开关量I/O模块、模拟量I/O模块及各种特殊功能模块等。
不同的I/O模块,其电路及功能也不同,直接影响PLC的应用范围和价格,应当根据实际需要加以选择。
2.2.1开关量I/O模块的选择
1、开关量输入模块的选择
开关量输入模块是用来接收现场输入设备的开关信号,将信号转换为PLC内部接受的低电压信号,并实现PLC内、外信号的电气隔离。
选择时主要应考虑以下几个方面:
1)输入信号的类型及电压等级
开关量输入模块有直流输入、交流输入和交流/直流输入三种类型。
选择时主要根据现场输入信号和周围环境因素等。
直流输入模块的延迟时间较短,还可以直接与接近开关、光电开关等电子输入设备连接;交流输入模块可靠性好,适合于有油雾、粉尘的恶劣环境下使用。
开关量输入模块的输入信号的电压等级有:
直流5V、12V、24V、48V、60V等;交流110V、220V等。
选择时主要根据现场输入设备与输入模块之间的距离来考虑。
一般5V、12V、24V用于传输距离较近场合,如5V输入模块最远不得超过10米。
距离较远的应选用输入电压等级较高的模块。
2)输入接线方式
开关量输入模块主要有汇点式和分组式两种接线方式。
汇点式的开关量输入模块所有输入点共用一个公共端(COM);而分组式的开关量输入模块是将输入点分成若干组,每一组(几个输入点)有一个公共端,各组之间是分隔的。
分组式的开关量输入模块价格较汇点式的高,如果输入信号之间不需要分隔,一般选用汇点式的。
3)注意同时接通的输入点数量
对于选用高密度的输入模块(如32点、48点等),应考虑该模块同时接通的点数一般不要超过输入点数的60%。
4)输入门槛电平
为了提高系统的可靠性,必须考虑输入门槛电平的大小。
门槛电平越高,抗干扰能力越强,传输距离也越远,具体可参阅PLC说明书。
2、开关量输出模块的选择
开关量输出模块是将PLC内部低电压信号转换成驱动外部输出设备的开关信号,并实现PLC内外信号的电气隔离。
选择时主要应考虑以下几个方面:
1)输出方式
开关量输出模块有继电器输出、晶闸管输出和晶体管输出三种方式。
继电器输出的价格便宜,既可以用于驱动交流负载,又可用于直流负载,而且适用的电压大小范围较宽、导通压降小,同时承受瞬时过电压和过电流的能力较强,但其属于有触点元件,动作速度较慢(驱动感性负载时,触点动作频率不得超过1HZ)、寿命较短、可靠性较差,只能适用于不频繁通断的场合。
对于频繁通断的负载,应该选用晶闸管输出或晶体管输出,它们属于无触点元件。
但晶闸管输出只能用于交流负载,而晶体管输出只能用于直流负载。
2)输出接线方式
开关量输出模块主要有分组式和分隔式两种接线方式。
分组式输出是几个输出点为一组,一组有一个公共端,各组之间是分隔的,可分别用于驱动不同电源的外部输出设备;分隔式输出是每一个输出点就有一个公共端,各输出点之间相互隔离。
选择时主要根据PLC输出设备的电源类型和电压等级的多少而定。
一般整体式PLC既有分组式输出,也有分隔式输出。
3)驱动能力
开关量输出模块的输出电流(驱动能力)必须大于PLC外接输出设备的额定电流。
用户应根据实际输出设备的电流大小来选择输出模块的输出电流。
如果实际输出设备的电流较大,输出模块无法直接驱动,可增加中间放大环节。
4)注意同时接通的输出点数量
选择开关量输出模块时,还应考虑能同时接通的输出点数量。
同时接通输出设备的累计电流值必须小于公共端所允许通过的电流值,如一个220V/2A的8点输出模块,每个输出点可承受2A的电流,但输出公共端允许通过的电流并不是16A(8×2A),通常要比此值小得多。
一般来讲,同时接通的点数不要超出同一公共端输出点数的60%。
5)输出的最大电流与负载类型、环境温度等因素有关
开关量输出模块的技术指标,它与不同的负载类型密切相关,特别是输出的最大电流。
另外,晶闸管的最大输出电流随环境温度升高会降低,在实际使用中也应注意。
2.2.2模拟量I/O模块的选择
模拟量I/O模块的主要功能是数据转换,并与PLC内部总线相连,同时为了安全也有电气隔离功能。
模拟量输入(A/D)模块是将现场由传感器检测而产生的连续的模拟量信号转换成PLC内部可接受的数字量;模拟量输出(D/A)模块是将PLC内部的数字量转换为模拟量信号输出。
典型模拟量I/O模块的量程为-10V~+10V、0~+10V、4~20mA等,可根据实际需要选用,同时还应考虑其分辨率和转换精度等因素。
一些PLC制造厂家还提供特殊模拟量输入模块,可用来直接接收低电平信号(如RTD、热电偶等信号)。
2.2.3特殊功能模块的选择
目前,PLC制造厂家相继推出了一些具有特殊功能的I/O模块,有的还推出了自带CPU的智能型I/O模块,如高速计数器、凸轮模拟器、位置控制模块、PID控制模块、通信模块等。
3.全自动洗衣机控制系统的PLC选型和资源配置
3.1控制系统构成图
3.1.1控制系统图
控制系统图如图3-1所示。
图3-1全自动洗衣机控制系统图
3.1.2PLC框架配置图
全自动洗衣机控制采用西门子公司的S7-200系列整体式PLC。
PLC框架配置图如图3-2所示。
图3-2PLC框架配置图
3.1.3I/O地址分配
由于CPU模块有14点数字量输入,有10点数字量输出,所以不再需要输入/输出模块。
采用I/O分配采用自动分配方式,模块上的输入端子对应的输入地址是I0.0~I0.1.5,输出端子对应的输出地址是Q0.0~Q1.1。
3.2模块功能概述
CPU模块采用西门子的CPU-224(AC/DC继电器)模块,它控制着整个系统按照控制要求有条不紊地运行。
同时由于该模块采用交流220V供电,并且自带14个数字量输入点和0个数字量输出点,完全能满足全自动洗衣机控制系统的要求,所以不再需要另外的电源模块、数字量输入和输出模块。
4.全自动洗衣机控制系统程序设计和调试
4.1编程软件选择
编程软件才用西门子公司为其生产的PLC而设计的编程软件STEP7-Micro/Win32。
4.2程序的流程图、构成和相关设置
4.2.1流程图
(1)正常运行流程图
正常运行流程图如图4-1所示。
(2)强制停止流程图
强制停止流程图如图4-2所示。
图4-2强制停止流程图
图4-1正常运行流程图
4.2.2程序的构成
这个程序有自动方式和手动方式两种。
在自动方式下,PLC将运行已经设置好的程序和参数(适用于机械一切都工作正常的情况下)。
在手动方式下是在紧急停止情况下,可以手动进行排水和脱水。
4.2.3程序的下载、安装和调试
将各个输入/输出端子和实际控制系统中的按钮、所需控制设备正确连接,完成硬件的安装。
全自动洗衣机程序是由STEP7-Micro/Win32软件的指令完成,正常工作时程序存放在存储卡中,若要修改程序,先将PLC设定在STOP状态下,运行STEP7-Micro/Win32编程软件,打开全自动洗衣机程序,即可在线调试,也可用编程器进行调试。
5.全自动洗衣机控制系统PLC程序
5.1系统资源分配
5.1.1数字量输入部分
这个控制系统的输入有启动按钮、停止按钮、水位选择开关(高水位、中水位、低水位)、手动排水开关、自动排水开关、高水位浮球开关、中水位浮球开关、低水位浮球开关、水排空浮球开关共11个输入点。
具体的输入分配如表5-1所示。
表5-1输入地址分配
输入地址
对应的外部设备
I0.0
启动按钮
I0.1
停止按钮
I0.2
水位选择开关(高水位)
I0.3
水位选择开关(中水位)
I0.4
水位选择开关(低水位)
I0.5
手动排水开关
I0.6
手动脱水开关
I0.7
高水位浮球开关
I1.0
中水位浮球开关
I1.1
低水位浮球开关
I1.2
水排空浮球开关
5.1.2数字量输出部分
这个控制系统需要控制的外部设备有进水电磁阀、排水电磁阀、洗涤电动机、脱水桶、报警器共5个设备。
但是由于洗涤电动机有正转和反转两个状态,分别对应正转继电器和反转继电器,所以输出点应该有6个。
具体的输出分配如表5-2所示。
表5-2输出地址分配
输出地址
对应的外部设备
Q0.0
进水电磁阀
Q0.1
排水电磁阀
Q0.2
洗涤电动机正转继电器
Q0.3
洗涤电动机反转继电器
Q0.4
脱水桶
Q0.5
报警器
5.2源程序
5.2.1辅助继电器
在本程序中,M0.0是按下启动按钮的辅助继电器;M0.1是判断洗衣机水位是否和设定水位不一致的辅助继电器;M0.2是判断洗衣机水位是否和设定水位一致的辅助继电器;M0.3是停止自动洗衣的辅助继电器。
NETWORK1
//
//按下启动按钮,开始洗衣
//
LDI0.0
OM0.0
ANI0.1
=M0.0
NETWORK2
//
//洗衣机水位与设定水位不一致辅助继电器
//
LDI0.2
ANI0.7
LDI0.3
ANI1.0
OLD
LDI0.4
ANI1.1
OLD
=M0.1
NETWORK3
//
//洗衣机水位与设定水位相一致辅助继电器
//
LDI0.2
AI0.7
LDI0.3
AI1.0
OLD
LDI0.4
AI1.1
OLD
=M0.2
NETWORK4
//
//停止自动洗衣辅助继电器
//
LDI0.1
OM0.3
ANQ0.0
=M0.3
所对应的梯形图如图5-3所示.
图5-3辅助继电器梯形图
5.2.2进水
在正常情况下,按下启动按钮或者脱水完毕,而且洗衣大循环未到3次时,开始进水,当水位到设定水位后停止进水,等待2s后进入洗衣过程。
在强制停止情况下,当停止按钮按下时立即停止进水。
它的助记符程序为:
NETWORK5
//
//进水到设定的水位
//
LDM0.0
LDT40
ANC51
OLD
OQ0.0
AM0.1
ANI0.1
=Q0.0
NETWORK6
//
//进水到设定的水位后等待2s
//
LDM0.2
ANQ0.1
ANQ0.2
ANQ0.3
TONT37,+20
所对应的梯形图如图5-4
图5-4进水梯形图
5.2.3洗衣
进水到设定水位后,开始洗衣,先正转20s,然后再反转20s,这样循环5次后进入排水过程。
NETWORK7
//
//洗涤电动机正转20s
//
LDT37
LDNC50
AT39
OLD
OQ0.2
ANT38
=Q0.2
TONT38,+200
NETWORK8
//
//洗涤电动机反转20s
//
LDT38
OQ0.3
ANT39
=Q0.3
TONT39,+200
所对应的梯形图如图5-5所示。
图5-5洗衣梯形图
5.2.4排水
洗衣过程完毕后,进入排水过程。
水排空后停止排水。
它的助记符程序为:
NETWORK9
//
//洗衣小循环5次
//
LDQ0.3
LDQ0.1
CTUC50,+5
NETWORK10
//
//排水,直至水排空
//
LDC50
OQ0.1
ANI0.1
ANI1.2
LDM0.3
AI0.5
OLD
=Q0.1
所对应的梯形图如图5-6所示。
图5-6排水梯形图
5.2.5脱水
水排空后,开始脱水,脱水30s后停止脱水。
因为判断水排空是否在排水完毕后,所以要用到排水完毕辅助继电器。
它的助记符程序为:
NETWORK11
//
//排水完毕辅助继电器
//
LDQ0.1
OM0.4
ANQ0.4
=M0.4
NETWORK12
//
//脱水30s
//
LDI1.2
AM0.4
OQ0.4
ANT40
ANI0.1
OI0.6
=Q0.4
TONT40,+300
所对应的梯形图如图5-7所示。
图5-7脱水梯形图
5.2.6洗完报警
洗衣大循环3次后,开始洗完报警过程,3s后停止报警,这样整个洗衣过程结束。
它的助记符程序为:
NETWORK13
//洗衣大循环3次
//
LDQ0.4
LDQ0.5
CTUC51,+3
NETWORK14
//
//报警3s
LDC51
OQ0.5
ANT41
ANI0.1
=Q0.5
TONT41,+30
所对应的梯形图如图5-8所示.
图5-8洗完报警梯形图
6.课程设计总结
随着毕业日子的到来,课程设计也接近了尾声。
经过几周的奋战我的课程设计终于完成了。
在没有做课程设计以前觉得课程设计只是对这几年来所学知识的单纯总结,但是通过这次做课程设计发现自己的看法有点太片面。
课程设计不仅是对前面所学知识的一种检验,而且也是对自己能力的一种提高。
通过这次课程设计使我明白了自己原来知识还比较欠缺。
自己要学习的东西还太多,以前老是觉得自己什么东西都会,什么东西都懂,有点眼高手低。
通过这次课程设计,我才明白学习是一个长期积累的过程,在以后的工作、生活中都应该不断的学习,努力提高自己知识和综合素质。
在这次课程设计中也使我们的同学关系更进一步了,同学之间互相帮助,有什么不懂的大家在一起商量,听听不同的看法对我们更好的理解知识,所以在这里非常感谢帮助我的同学。
我的心得也就这么多了,总之,不管学会的还是学不会的的确觉得困难比较多,真是万事开头难,不知道如何入手。
最后终于做完了有种如释重负的感觉。
此外,还得出一个结论:
知识必须通过应用才能实现其价值!
有些东西以为学会了,但真正到用的时候才发现是两回事,所以我认为只有到真正会用的时候才是真的学会了。
在此要感谢我们的指导老师罗老师、朱老师和李老师对我们悉心的指导,感谢老师们给我们的帮助。
在设计过程中,我通过查阅大量有关资料,与同学交流经验和自学,并向老师请教等方式,使自己学到了不少知识,也经历了不少艰辛,但收获同样巨大。
在整个设计中我懂得了许多东西,也培养了我独立工作的能力,树立了对自己工作能力的信心,相信会对今后的学习工作生活有非常重要的影响。
而且大大提高了动手的能力,使我充分体会到了在创造过程中探索的艰难和成功时的喜悦。
虽然这个设计做的也不太好,但是在设计过程中所学到的东西是这次课程设计的最大收获和财富,使我终身受益。