- 相关推荐
PLC程序设计(洗衣机程序)全自动洗衣机的控制(一)
一 程序设计要求
(1) 水位控制[高水位 25s
[中水位进水 15s
[低水位进水 10s
(2) 程序选择 [全程序
[简易程序
(3) 全程序过程
进水à洗涤(正转3s,反转2s,停1s,200次)à排水(20s)à脱水(10s)à停止
| 循环三次 ︳
|<----------------------------------------------------------------------︳
(4) 简易过程
进水à洗涤(正转3s,反转2s,停1s,200次)à排水(20s)à脱水(10s)à停止
| 循环二次 ︳
|<----------------------------------------------------------------------︳
① I/O分配
② 梯形图
③ 软盘
进水阀(Y0)
排水阀(Y1)
电机正反转(Y1,Y2)
脱水(Y4)
二 I/O分配图
起动 进水
水位(高) 排水
水位(中) 电机正转
水位(低) 电机反转
全程序 脱水
简易程序
二 状态转换图
(见附录一)
三 梯形图
(见附录二)
分析如下
1,600)makesmallpic(this,600,1800);' src="file:///C:/DOCUME~1/ADMINI~1/LOCALS~1/Temp/ksohtml/wps_clip_image2.png" width="551" height="25" />
初始脉冲M8002使初始状态S0置为1,当按驱动按钮X0.
先选择了水位,程序类型后再按X0起动的.
2,
600)makesmallpic(this,600,1800);' src="file:///C:/DOCUME~1/ADMINI~1/LOCALS~1/Temp/ksohtml/wps_clip_image3.png" width="553" height="51" />
按X04,选择的是全程序.
600)makesmallpic(this,600,1800);' src="file:///C:/DOCUME~1/ADMINI~1/LOCALS~1/Temp/ksohtml/wps_clip_image4.png" width="553" height="50" />
按X05,选择的是简单程序.
本来是以X04为全程序, X04非作为简单程序,但在程序结束的时候,不能令M0置零.所以增加了X05作为简单程序的选择按钮.
3,
600)makesmallpic(this,600,1800);' src="file:///C:/DOCUME~1/ADMINI~1/LOCALS~1/Temp/ksohtml/wps_clip_image5.png" width="553" height="163" />
X01控制高水位,按X01,起动M1,并自锁.
X02控制中水位,按X02,起动M2,并自锁.
X03控制低水位,按X03,起动M3,并自锁.
4,
600)makesmallpic(this,600,1800);' src="file:///C:/DOCUME~1/ADMINI~1/LOCALS~1/Temp/ksohtml/wps_clip_image6.png" width="553" height="132" />
状态转入S0后,对C2,C3清零.
并且,由M1+M2+M3与X0作为对S20的转移条件.
5,600)makesmallpic(this,600,1800);' src="file:///C:/DOCUME~1/ADMINI~1/LOCALS~1/Temp/ksohtml/wps_clip_image7.png" width="553" height="103" />
状态转移到S20,驱动Y0(进水).
当X2闭合,即M1置1,状态转移S21;
当X3闭合,即M2置1,状态转移S31
当X4闭合,即M3置1,状态转移S41
6,
600)makesmallpic(this,600,1800);' src="file:///C:/DOCUME~1/ADMINI~1/LOCALS~1/Temp/ksohtml/wps_clip_image8.png" width="553" height="158" />
状态转移到S21时,T0计时25秒(进水25秒),然后T0置1,状态转移到S22.
状态转移到S31时,T1计时15秒(进水15秒),然后T1置1,状态转移到S22.
状态转移到S41时,T2计时10秒(进水10秒),然后T2置1,状态转移到S22.
7,
600)makesmallpic(this,600,1800);' src="file:///C:/DOCUME~1/ADMINI~1/LOCALS~1/Temp/ksohtml/wps_clip_image9.png" width="553" height="53" />
状态转移到S22,对Y0清除指令,即停止进水.当Y0停止时,即Y0非置1,状态转移到S23.
8,
600)makesmallpic(this,600,1800);' src="file:///C:/DOCUME~1/ADMINI~1/LOCALS~1/Temp/ksohtml/wps_clip_image10.png" width="553" height="83" />
状态转移到S23,如果选择的是全程序 (按X04),那么对C0清零.
如果选择的是简单程序(按X05),那么对C1清零.
CO非,C1非置1,状态转移到S24.
9.
600)makesmallpic(this,600,1800);' src="file:///C:/DOCUME~1/ADMINI~1/LOCALS~1/Temp/ksohtml/wps_clip_image11.png" width="553" height="80" />
状态转移到S24,起动Y02(电机正转),T3计时3秒.计时完毕状态转移到S25.正转完毕.
10,
600)makesmallpic(this,600,1800);' src="file:///C:/DOCUME~1/ADMINI~1/LOCALS~1/Temp/ksohtml/wps_clip_image12.png" width="553" height="98" />
状态转移到S25,起动Y03(电机反转),T4计时2秒.
计时完毕后,无论选择的是全程序还是简单程序(无论按X04还是X05)状态都转移到S26.
11,
600)makesmallpic(this,600,1800);' src="file:///C:/DOCUME~1/ADMINI~1/LOCALS~1/Temp/ksohtml/wps_clip_image13.png" width="553" height="156" />
状态转移到S26,T5计时1秒,然后T5置1.
如果选择的是全程序 (按X04),那么C0计数,当计数不够200次时,状态转移到S24.计数满200次时,状态转移到S27.
如果选择的是简单程序(按X05),那么C1计数,当计数不够100次时,状态转移到S24.计数满100次时,状态转移到S27.
12,
600)makesmallpic(this,600,1800);' src="file:///C:/DOCUME~1/ADMINI~1/LOCALS~1/Temp/ksohtml/wps_clip_image14.png" width="552" height="77" />
状态转移到S27,起动Y01(排水).T7计时20秒,然后T7置1,状态转移到S28.
13,
600)makesmallpic(this,600,1800);' src="file:///C:/DOCUME~1/ADMINI~1/LOCALS~1/Temp/ksohtml/wps_clip_image15.png" width="553" height="260" />
状态转移到S28,起动Y04(脱水),T8计时10秒.
如果选择的是全程序 (按X04),那么C2计数,当计数不够3次时,状态转移到S20.计数满3次时,状态转移到S0.
如果选择的是简单程序(按X05),那么C3计数,当计数不够2次时,状态转移到S20.计数满2次时,状态转移到S0.
步进阶梯结束.
程序结束.
四,心得体会
学会熟练运用PLC编写程序.
学会了细心理解PLC其中的逻辑.
; 电机反转
全程序 脱水
简易程序
二 状态转换图
(见附录一)
三 梯形图
(见附录二)
分析如下
1,600)makesmallpic(this,600,1800);' src="file:///C:/DOCUME~1/ADMINI~1/LOCALS~1/Temp/ksohtml/wps_clip_image2.png" width="551" height="25" />
初始脉冲M8002使初始状态S0置为1,当按驱动按钮X0.
先选择了水位,程序类型后再按X0起动的.
2,
600)makesmallpic(this,600,1800);' src="file:///C:/DOCUME~1/ADMINI~1/LOCALS~1/Temp/ksohtml/wps_clip_image3.png" width="553" height="51" />
按X04,选择的是全程序.
600)makesmallpic(this,600,1800);' src="file:///C:/DOCUME~1/ADMINI~1/LOCALS~1/Temp/ksohtml/wps_clip_image4.png" width="553" height="50" />
按X05,选择的是简单程序.
本来是以X04为全程序, X04非作为简单程序,但在程序结束的时候,不能令M0置零.所以增加了X05作为简单程序的选择按钮.
3,
600)makesmallpic(this,600,1800);' src="file:///C:/DOCUME~1/ADMINI~1/LOCALS~1/Temp/ksohtml/wps_clip_image5.png" width="553" height="163" />
X01控制高水位,按X01,起动M1,并自锁.
X02控制中水位,按X02,起动M2,并自锁.
X03控制低水位,按X03,起动M3,并自锁.
4,
600)makesmallpic(this,600,1800);' src="file:///C:/DOCUME~1/ADMINI~1/LOCALS~1/Temp/ksohtml/wps_clip_image6.png" width="553" height="132" />
状态转入S0后,对C2,C3清零.
并且,由M1+M2+M3与X0作为对S20的转移条件.
5,600)makesmallpic(this,600,1800);' src="file:///C:/DOCUME~1/ADMINI~1/LOCALS~1/Temp/ksohtml/wps_clip_image7.png" width="553" height="103" />
状态转移到S20,驱动Y0(进水).
当X2闭合,即M1置1,状态转移S21;
当X3闭合,即M2置1,状态转移S31
当X4闭合,即M3置1,状态转移S41
6,
600)makesmallpic(this,600,1800);' src="file:///C:/DOCUME~1/ADMINI~1/LOCALS~1/Temp/ksohtml/wps_clip_image8.png" width="553" height="158" />
状态转移到S21时,T0计时25秒(进水25秒),然后T0置1,状态转移到S22.
状态转移到S31时,T1计时15秒(进水15秒),然后T1置1,状态转移到S22.
状态转移到S41时,T2计时10秒(进水10秒),然后T2置1,状态转移到S22.
7,
600)makesmallpic(this,600,1800);' src="file:///C:/DOCUME~1/ADMINI~1/LOCALS~1/Temp/ksohtml/wps_clip_image9.png" width="553" height="53" />
状态转移到S22,对Y0清除指令,即停止进水.当Y0停止时,即Y0非置1,状态转移到S23.
8,
600)makesmallpic(this,600,1800);' src="file:///C:/DOCUME~1/ADMINI~1/LOCALS~1/Temp/ksohtml/wps_clip_image10.png" width="553" height="83" />
状态转移到S23,如果选择的是全程序 (按X04),那么对C0清零.
如果选择的是简单程序(按X05),那么对C1清零.
CO非,C1非置1,状态转移到S24.
9.
600)makesmallpic(this,600,1800);' src="file:///C:/DOCUME~1/ADMINI~1/LOCALS~1/Temp/ksohtml/wps_clip_image11.png" width="553" height="80" />
状态转移到S24,起动Y02(电机正转),T3计时3秒.计时完毕状态转移到S25.正转完毕.
10,
600)makesmallpic(this,600,1800);' src="file:///C:/DOCUME~1/ADMINI~1/LOCALS~1/Temp/ksohtml/wps_clip_image12.png" width="553" height="98" />
状态转移到S25,起动Y03(电机反转),T4计时2秒.
计时完毕后,无论选择的是全程序还是简单程序(无论按X04还是X05)状态都转移到S26.
11,
600)makesmallpic(this,600,1800);' src="file:///C:/DOCUME~1/ADMINI~1/LOCALS~1/Temp/ksohtml/wps_clip_image13.png" width="553" height="156" />
状态转移到S26,T5计时1秒,然后T5置1.
如果选择的是全程序 (按X04),那么C0计数,当计数不够200次时,状态转移到S24.计数满200次时,状态转移到S27.
如果选择的是简单程序(按X05),那么C1计数,当计数不够100次时,状态转移到S24.计数满100次时,状态转移到S27.
12,
600)makesmallpic(this,600,1800);' src="file:///C:/DOCUME~1/ADMINI~1/LOCALS~1/Temp/ksohtml/wps_clip_image14.png" width="552" height="77" />
状态转移到S27,起动Y01(排水).T7计时20秒,然后T7置1,状态转移到S28.
13,
600)makesmallpic(this,600,1800);' src="file:///C:/DOCUME~1/ADMINI~1/LOCALS~1/Temp/ksohtml/wps_clip_image15.png" width="553" height="260" />
状态转移到S28,起动Y04(脱水),T8计时10秒.
如果选择的是全程序 (按X04),那么C2计数,当计数不够3次时,状态转移到S20.计数满3次时,状态转移到S0.
如果选择的是简单程序(按X05),那么C3计数,当计数不够2次时,状态转移到S20.计数满2次时,状态转移到S0.
步进阶梯结束.
程序结束.
四,心得体会
学会熟练运用PLC编写程序.
学会了细心理解PLC其中的逻辑.
; 电机反转
全程序 脱水
简易程序
二 状态转换图
(见附录一)
三 梯形图
(见附录二)
分析如下
1,600)makesmallpic(this,600,1800);' src="file:///C:/DOCUME~1/ADMINI~1/LOCALS~1/Temp/ksohtml/wps_clip_image2.png" width="551" height="25" />
初始脉冲M8002使初始状态S0置为1,当按驱动按钮X0.
先选择了水位,程序类型后再按X0起动的.
2,
600)makesmallpic(this,600,1800);' src="file:///C:/DOCUME~1/ADMINI~1/LOCALS~1/Temp/ksohtml/wps_clip_image3.png" width="553" height="51" />
按X04,选择的是全程序.
600)makesmallpic(this,600,1800);' src="file:///C:/DOCUME~1/ADMINI~1/LOCALS~1/Temp/ksohtml/wps_clip_image4.png" width="553" height="50" />
按X05,选择的是简单程序.
本来是以X04为全程序, X04非作为简单程序,但在程序结束的时候,不能令M0置零.所以增加了X05作为简单程序的选择按钮.
3,
600)makesmallpic(this,600,1800);' src="file:///C:/DOCUME~1/ADMINI~1/LOCALS~1/Temp/ksohtml/wps_clip_image5.png" width="553" height="163" />
X01控制高水位,按X01,起动M1,并自锁.
X02控制中水位,按X02,起动M2,并自锁.
X03控制低水位,按X03,起动M3,并自锁.
4,
600)makesmallpic(this,600,1800);' src="file:///C:/DOCUME~1/ADMINI~1/LOCALS~1/Temp/ksohtml/wps_clip_image6.png" width="553" height="132" />
状态转入S0后,对C2,C3清零.
并且,由M1+M2+M3与X0作为对S20的转移条件.
5,600)makesmallpic(this,600,1800);' src="file:///C:/DOCUME~1/ADMINI~1/LOCALS~1/Temp/ksohtml/wps_clip_image7.png" width="553" height="103" />
状态转移到S20,驱动Y0(进水).
当X2闭合,即M1置1,状态转移S21;
当X3闭合,即M2置1,状态转移S31
当X4闭合,即M3置1,状态转移S41
6,
600)makesmallpic(this,600,1800);' src="file:///C:/DOCUME~1/ADMINI~1/LOCALS~1/Temp/ksohtml/wps_clip_image8.png" width="553" height="158" />
状态转移到S21时,T0计时25秒(进水25秒),然后T0置1,状态转移到S22.
状态转移到S31时,T1计时15秒(进水15秒),然后T1置1,状态转移到S22.
状态转移到S41时,T2计时10秒(进水10秒),然后T2置1,状态转移到S22.
7,
600)makesmallpic(this,600,1800);' src="file:///C:/DOCUME~1/ADMINI~1/LOCALS~1/Temp/ksohtml/wps_clip_image9.png" width="553" height="53" />
状态转移到S22,对Y0清除指令,即停止进水.当Y0停止时,即Y0非置1,状态转移到S23.
8,
600)makesmallpic(this,600,1800);' src="file:///C:/DOCUME~1/ADMINI~1/LOCALS~1/Temp/ksohtml/wps_clip_image10.png" width="553" height="83" />
状态转移到S23,如果选择的是全程序 (按X04),那么对C0清零.
如果选择的是简单程序(按X05),那么对C1清零.
CO非,C1非置1,状态转移到S24.
9.
600)makesmallpic(this,600,1800);' src="file:///C:/DOCUME~1/ADMINI~1/LOCALS~1/Temp/ksohtml/wps_clip_image11.png" width="553" height="80" />
状态转移到S24,起动Y02(电机正转),T3计时3秒.计时完毕状态转移到S25.正转完毕.
10,
600)makesmallpic(this,600,1800);' src="file:///C:/DOCUME~1/ADMINI~1/LOCALS~1/Temp/ksohtml/wps_clip_image12.png" width="553" height="98" />
状态转移到S25,起动Y03(电机反转),T4计时2秒.
计时完毕后,无论选择的是全程序还是简单程序(无论按X04还是X05)状态都转移到S26.
11,
600)makesmallpic(this,600,1800);' src="file:///C:/DOCUME~1/ADMINI~1/LOCALS~1/Temp/ksohtml/wps_clip_image13.png" width="553" height="156" />
状态转移到S26,T5计时1秒,然后T5置1.
如果选择的是全程序 (按X04),那么C0计数,当计数不够200次时,状态转移到S24.计数满200次时,状态转移到S27.
如果选择的是简单程序(按X05),那么C1计数,当计数不够100次时,状态转移到S24.计数满100次时,状态转移到S27.
12,
600)makesmallpic(this,600,1800);' src="file:///C:/DOCUME~1/ADMINI~1/LOCALS~1/Temp/ksohtml/wps_clip_image14.png" width="552" height="77" />
状态转移到S27,起动Y01(排水).T7计时20秒,然后T7置1,状态转移到S28.
13,
600)makesmallpic(this,600,1800);' src="file:///C:/DOCUME~1/ADMINI~1/LOCALS~1/Temp/ksohtml/wps_clip_image15.png" width="553" height="260" />
状态转移到S28,起动Y04(脱水),T8计时10秒.
如果选择的是全程序 (按X04),那么C2计数,当计数不够3次时,状态转移到S20.计数满3次时,状态转移到S0.
如果选择的是简单程序(按X05),那么C3计数,当计数不够2次时,状态转移到S20.计数满2次时,状态转移到S0.
步进阶梯结束.
程序结束.
四,心得体会
学会熟练运用PLC编写程序.
学会了细心理解PLC其中的逻辑.
【PLC程序设计(洗衣机程序)全自动洗衣机的控制(一)】相关文章:
课题12:全自动洗衣机PLC控制11-22
实验五 洗衣机自动控制实验11-22
C语言程序设计 (一)12-26
分枝结构的程序设计 (一)03-07
循环结构的程序设计方法(一)03-07
Windows 中断程序设计03-28
PLC控制的花样喷泉系统03-29
基于压铸机的PLC 控制系统(一)03-07