PLC程序设计(洗衣机程序)全自动洗衣机的控制(一)

时间:2024-05-29 11:36:20 自动化毕业论文 我要投稿
  • 相关推荐

PLC程序设计(洗衣机程序)全自动洗衣机的控制(一)

 

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

基于PLC全自动洗衣机控制系统的设计与研究03-07

实验五 洗衣机自动控制实验11-22

C语言程序设计 (一)12-26

分枝结构的程序设计 (一)03-07

循环结构的程序设计方法(一)03-07

Windows 中断程序设计03-28

PLC控制的花样喷泉系统03-29

基于压铸机的PLC 控制系统(一)03-07