自动打铃控制器PLC

自动打铃控制器PLC
自动打铃控制器PLC

燕山大学课程设计说明书题目:自动打铃控制器

学院(系):电气工程学院

燕山大学课程设计(论文)任务书

2014年7月8日

前言

PLC即可编程控制器(ProgrammablelogicController),是指以计算机技术为基础的新型工业控制装置。PLC是一种专门为在工业环境下应用而设计的数字运算操作的电子装置。它采用可以编制程序的存储器,用来在其内部存储执行逻辑运算、顺序运算、计时、计数和算术运算等

上就可买的到自动打铃控制器一般是用单片机或数字电路组成的。但是用PLC同样可以完成自动定时打铃的控制。在本课程设计中,把它作为一个典型的时序控制任务,采用三菱软件,完成PLC的课程设计实训,还是很有意义。PLC作息时间控制器采用数码显示,能够准确显示分、时、星期,在一定的时间内能够自动打铃。

此外,该PLC作息时间控制器还设置了手动按钮,用于调整分钟、小

时和星期。该系统软件由计时及时间调节程序,显示程序,作息时间表程序和控制程序四个结构组成。上课铃与下课铃的铃音不同(铃音响的频率不同,上课铃为短音:响0.5秒,停0.5秒;下课铃为长音:响2秒,停1秒),其他的铃音为连续音。每次打铃的时间为15秒。星期六,星期日不打铃。具有时间显示功能,显示器件为LED数码管。显示内容为:分小时及星期。具有时间(分,小时,星期)调整的功能。并且加

3.4控制程序 (15)

3.5电铃控制程序 (16)

3.6仿真调试 (17)

第四章组态软件设计及简介 (20)

4.1组态软件的概述 (20)

4.2组态王的组成 (21)

4.3组态王的实现过程 (21)

第五章心得体会 (26)

参考文献 (27)

附录 (28)

第一章设计任务和要求

通过分钟调节按钮,小时调节按钮,将系统时间和星期调节为当前时间和星期;然后按下计时开始按钮,系统开始计时;系统时间和星期通过数码管显示出来。按下启动按钮,系统进入控制状态,将系统当前时间和星期与作息时间表比较,又输出口端口输出打铃控制信号。上课铃为短音,响0.5秒,停0.5秒,共持续15秒;下课铃为长音,响0.5秒,停0.5秒,共持续15秒;起床,早操等时间的铃声为连续打铃;为了不影响休息周六周日不打铃。

2.2PLC的选型

因需要7个输入点,14个输出点,考虑到实际应用中留有一定的I/O端口余量,且电铃为直流负载,由于三菱FN2N系列的PLC在小型控制系统中比较占有优势和市场,本次设计也是小型的控制系统,我们学习的也是三菱的FX2N 系列的PLC,根据上一章的知识,所以我们采用我们熟悉的三菱FX2N-32MR-001

由于在PLC系统中工作的是二进制的数字信号,而人们习惯十进制的数字或运算结果,因此需要数字显示器,显示出便于人们观测、查看的十进制数

字,因此本设计选择了七段数字译码显示器,下图是7448七段数字译码显示器的结构图及译码图。

2.5系统结构框图及I/O接线图

2.5.1结构框图:

(1)M8011为10ms周期振荡,X2为分钟调节按钮,M8014为1min振荡,当X5得电,每过一分钟C0实现自动加1。

(2)X2为分钟调节按钮,按X2可通过M8011一起使C0计数增加,从而调节分钟。

(3)X3为小时调节按钮,当C0计满到60时,C0常开闭合小时数C1自动加1并使C0从0开始计数。

(4)X4为星期调节按钮,当小时数C1计满到24时,星期数自动加1并使

C1复位。C2计数满7时也会自动复位。

3.2显示程序

(1)BCD转换指令是将源元件中的二进制数转换成BCD码送到目标元件,分别将C0内的数据换成BCD码送到M200—M207,C1内的小时数据换成BCD码送到M210—M217,C2内的星期数据换成BCD码送到M220—M227

3.4控制程序

由作息时间程序知,若是上课时间点时是M10,M16,M22,M28,M37,M43,M49,M55中与时间点对应的辅助继电器的那个运作并上升沿输出M100;若是下课时间点M13,M19,M25,M31,M40,M46,M52,M58中与时间点对应的辅助继电器的那个Y运作并上升沿输出M101;若是其他时间点到,M1,M4,M7,M34,M61,M64,M67,中与时间点对应的那个辅助继电器运作并上升沿输出M102。

3.5电铃控制程序

当上课信号M100来到时,分别由T10和T11定时器控制让其分别响0.5秒,停0.5秒并由T9控制让其响铃15秒。

当下课信号M101来到时,分别由T20,T21定时器控制。T20为你设定铃声响的定时器,为2秒;T21为设定的铃声停的定时器,为1秒,并由T9控制响铃为15秒。

当信号M102来到时,由T9控制让其连续响铃15秒。

3.6仿真调试

根据自己工程的需要进行选择、配置等较为简单的工作来建立自己所需要的监控系统。组态软件和行业无关,

组态(Configuration)为模块化任意组合。组态软件主要特点有:(1)延续性和可扩充性。用通用组态软件开发的应用程序,当现场(包括硬件设备或系统结构)或用户需求发生改变时,不需作很多修改而方便地完成软件的更新和升级;

(2)封装性(易学易用),通用组态软件所能完成的功能都用一种方便用户

使用的方法包装起来,对于用户,不需掌握太多的编程语言技术(甚至不需要编程技术),就能很好地完成一个复杂工程所要求的所有功能;(3)通用性,每个用户根据工程实际情况,利用通用组态软件提供的底层设备(PLC、智能仪表、智能模块、板卡、变频器等)的I/ODriver、开放式的数据库和画面制作工具,就能完成一个具有动画效果、实时数据处理、历史数据和曲线并存、具有多媒体功能和网络功能的工程,不受行业限制。

“组态王”支持使用内建的复杂函数,其中包括字符串函数、数字函数、系统函数、控件函数、配方函数、报告函数及其他函数。在工程浏览器重的目录显示区,选择“文件/命令语言/应用程序命令语言”,双击“请双击进入这儿“应用程序命令语言”对话框图标。出现下图:

5)

星期连接程序

if(\\本站点\$月==1){\\本站点\$月=13;}

if(\\本站点\$月==2){\\本站点\$月=14;}

\\本站点\w=(\\本站点\$日+2*\\本站点\$月+3*(\\本站点\$月+1)/5+\\本站点\$年+\\本站点\$年/4-\\本站点\$年/100+\\本站点\$年/400)%7;

if(\\本站点\w==1){\\本站点\week="星期一";}

if(\\本站点\w==2){\\本站点\week="星期二";}

if(\\本站点\w==3){\\本站点\week="星期三";}

if(\\本站点\w==4){\\本站点\week="星期四";}

if(\\本站点\w==5){\\本站点\week="星期五";}

if(\\本站点\w==6){\\本站点\week="星期六";}

if(\\本站点\w==7){\\本站点\week="星期日";}

打铃程序

if((\\本站点\$时间=="6:00:00"||\\本站点\$时间=="6:20:00"||\\本站点\$时间=="7:50:00"||\\本站点\$时间=="13:20:00"||\\本站点\$时间=="19:00:00"||\\本站点\$时间=="21:00:00"||\\本站点\$时间=="22:00:00")&&(\\本站点\w==1||\\本站点\w==2||\\本站点\w==3||\\本站点\w==4||\\本站点\w==5))

{StartApp("C:\Users\chai\Desktop\连续.wav");}

if((\\本站点\$时间=="8:00:00"||\\本站点\$时间=="9:00:00"||\\本站点\$时间=="10:10:00"||\\本站点\$时间=="11:10:00"||\\本站点\$时间=="13:30:00"||\\本站点\$时间=="14:30:00"||\\本站点\$时间=="15:30:00"||\\本站点\$时间=="16:30:00")&&(\\本站点\w==1||\\本站点\w==2||\\本站点\w==3||\\本站点\w==4||\\本站点\w==5))

{StartApp("C:\Users\chai\Desktop\上课.wav");

\\本站点\提示="上课啦";

}

if((\\本站点\$时间=="8:05:00"||\\本站点\$时间=="9:50:00"||\\本站点\$时间=="11:00:00"||\\本站点\$时间=="12:00:00"||\\本站点\$时间=="14:20:00"||\\本站点\$时间=="15:20:00"||\\本站点\$时间=="16:20:00"||\\本站点\$时间=="17:20:00")&&(\\本站点\w==1||\\本站点\w==2||\\本站点\w==3||\\本站点\w==4||\\本站点\w==5))

{StartApp("C:\Users\chai\Desktop\下课.wav");

\\本站点\提示="下课啦";

}

第五章心得体会

通过此次课程设计,使我更加扎实的掌握了有关PLC方面的知识,在设计过程中虽遇到了一些问题,但经过一次又一次的思考,一遍又一遍的检查终于

指令代码:

组态代码:

if(\\本站点\$月==1){\\本站点\$月=13;}

if(\\本站点\$月==2){\\本站点\$月=14;}

\\本站点\w=(\\本站点\$日+2*\\本站点\$月+3*(\\本站点\$月+1)/5+\\本站点\$年+\\本站点\$年/4-\\本站点\$年/100+\\本站点\$年/400)%7;

if(\\本站点\w==1){\\本站点\week="星期一";}

if(\\本站点\w==2){\\本站点\week="星期二";}

if(\\本站点\w==3){\\本站点\week="星期三";}

if(\\本站点\w==4){\\本站点\week="星期四";}

if(\\本站点\w==5){\\本站点\week="星期五";}

if(\\本站点\w==6){\\本站点\week="星期六";}

if(\\本站点\w==7){\\本站点\week="星期日";}

if((\\本站点\$时间=="6:00:00"||\\本站点\$时间=="6:20:00"||\\本站点\$时间=="7:50:00"||\\本站点\$时间=="13:20:00"||\\本站点\$时间

相关主题
相关文档
最新文档