自动打铃控制器PLC之欧阳德创编.docx
《自动打铃控制器PLC之欧阳德创编.docx》由会员分享,可在线阅读,更多相关《自动打铃控制器PLC之欧阳德创编.docx(37页珍藏版)》请在冰豆网上搜索。
自动打铃控制器PLC之欧阳德创编
燕山大学
时间:
2021.03.07
创作:
欧阳德
课程设计说明书
题目:
自动打铃控制器
学院(系):
电气工程学院
年级专业:
11级工业自动化仪表
学号:
学生姓名:
指导教师:
韩立强
教师职称:
副教授
燕山大学课程设计(论文)任务书
院(系):
电气工程学院基层教学单位:
自动化仪表
学号
学生
姓名
专业(班级)
仪表3班
设计
题目
自动打铃控制器
设
计
技
术
参
数
1.上课铃与下课铃的铃音不同(铃音响的频率不同,上课铃为短音:
响0.5秒,停0.5秒;下课铃为长音:
响2秒,停1秒),其他的铃音为连续音。
2.每次打铃的时间为15秒。
3.星期六,星期日不打铃。
4.具有时间显示功能,显示器件为LED数码管。
显示内容为:
分小时及星期。
5.具有时间(分,小时,星期)调整的功能。
6.加入组态。
设
计
要
求
设计说明书包含内容:
题目、设计要求、电气原理图、I/O分配表、接线图、状态转移图(或流程图)、梯形图、指令程序、仿真调试、组态设计、心得体会、参考文献等。
排版要求:
排版美观整齐、图表清晰、布局合理、语言通顺。
工
作
量
一周
工
作
计
划
第一天:
布置任务、查找资料
第二天:
讨论细节、理论设计
第三天:
仿真验证、论证完善
第四天:
仿真调试、完成设计
第五天:
撰写报告、答辩验收
参
考
资
料
《PLC电气控制技术》,漆汉宏主编,机械工业出版社
《FX系列PLC编程及应用》,寥常初主编,机械工业出版社
《PLC编程及应用》,寥常初主编,机械工业出版社
《S7-300/400应用教程》,寥常初主编,机械工业出版社
其他资料
指导教师签字
韩立强
基层教学单位主任签字
谢平
说明:
此表一式四份,学生、指导教师、基层教学单位、系部各一份。
2014年7月8日
前言
PLC即可编程控制器(ProgrammablelogicController),是指以计算机技术为基础的新型工业控制装置。
PLC是一种专门为在工业环境下应用而设计的数字运算操作的电子装置。
它采用可以编制程序的存储器,用来在其内部存储执行逻辑运算、顺序运算、计时、计数和算术运算等操作的指令,并能通过数字式或模拟式的输入和输出,控制各种类型的机械或生产过程。
PLC及其有关的外围设备都应该按易于与工业控制系统形成一个整体,易于扩展其功能的原则而设计。
20世纪70年代中末期,可编程控制器进入实用化发展阶段,计算机技术已全面引入可编程控制器中,使其功能发生了飞跃。
更高的运算速度、超小型体积、更可靠的工业抗干扰设计、模拟量运算、PID功能及极高的性价比奠定了它在现代工业中的地位。
20世纪80年代初,可编程控制器在先进工业国家中已获得广泛应用。
这个时期可编程控制器发展的特点是大规模、高速度、高性能、产品系列化。
这个阶段的另一个特点是世界上生产可编程控制器的国家日益增多,产量日益上升,这标志着可编程控制器已步入成熟阶段。
我国可编程控制器的引进、应用、研制、生产是伴随着改革开放开始的。
最初是在引进设备中大量使用了可编程控制器。
接下来在各种企业的生产设备及产品中不断扩大了PLC的应用。
目前,我国自己已可以生产中小型可编程控制器。
可以预期,随着我国现代化进程的深入,PLC在我国将有更广阔的应用天地。
摘要
目前,学校中的作息时间一般是由自动打铃控制器完成的。
尽管这种控制器的功能单一,用单片机或数字电路组成的控制器成本较低,市场上就可买的到自动打铃控制器一般是用单片机或数字电路组成的。
但是用PLC同样可以完成自动定时打铃的控制。
在本课程设计中,把它作为一个典型的时序控制任务,采用三菱软件,完成PLC的课程设计实训,还是很有意义。
PLC作息时间控制器采用数码显示,能够准确显示分、时、星期,在一定的时间内能够自动打铃。
此外,该PLC作息时间控制器还设置了手动按钮,用于调整分钟、小时和星期。
该系统软件由计时及时间调节程序,显示程序,作息时间表程序和控制程序四个结构组成。
上课铃与下课铃的铃音不同(铃音响的频率不同,上课铃为短音:
响0.5秒,停0.5秒;下课铃为长音:
响2秒,停1秒),其他的铃音为连续音。
每次打铃的时间为15秒。
星期六,星期日不打铃。
具有时间显示功能,显示器件为LED数码管。
显示内容为:
分小时及星期。
具有时间(分,小时,星期)调整的功能。
并且加入组态显示。
关键字:
自动打铃控制器PLC组态
前言………………………………………………………………………………1
摘要………………………………………………………………………………2
第一章设计任务和要求…………………………………………………………4
1.1任务描述……………………………………………………………………4
1.2设计任务和要求……………………………………………………………4
第二章PLC三菱系统总体设计………………………………………………5
2.1系统概述……………………………………………………………………5
2.2PLC的选型…………………………………………………………………6
2.3PLCI/O端口的分配…………………………………………………………6
2.4七段数字译码显示器…………………………………………………………7
2.5系统结构框图及I/O接线图………………………………………………8
2.6系统流程图…………………………………………………………………9
第三章PLC三菱软件设计及简介……………………………………………10
3.1计时及时间调节程序………………………………………………………10
3.2显示程序…………………………………………………………………11
3.3作息时间表程序……………………………………………………………13
3.4控制程序……………………………………………………………………15
3.5电铃控制程序………………………………………………………………16
3.6仿真调试……………………………………………………………………17
第四章组态软件设计及简介…………………………………………………20
4.1组态软件的概述……………………………………………………………20
4.2组态王的组成………………………………………………………………21
4.3组态王的实现过程…………………………………………………………21
第五章心得体会…………………………………………………………………26
参考文献…………………………………………………………………………27
附录………………………………………………………………………………28
第一章设计任务和要求
1.1任务描述
目前,学校中的作息时间一般是由自动打铃控制器完成的。
尽管这种控制器的功能单一,用单片机或数字电路组成的控制器成本较低,市场上就可买的到自动打铃控制器一般是用单片机或数字电路组成的。
但是用PLC同样可以完成自动定时打铃的控制。
在本课程设计中,把它作为一个典型的时序控制任务,完成PLC的课程设计实训,还是很有意义。
用PLC组成的自动打铃控制器的系统框图如下图所示:
1.2设计任务和要求
某学校的作息时间表如下表所示:
学校的休息时间表
时间
内容
时间
内容
6:
00
起床
13:
30
第五节上课铃
6:
20
早操
14:
20
第五节下课铃
7:
50
第一节预备铃
14:
30
第六节上课铃
8:
00
第一节上课铃
15:
20
第六节下课铃
8:
50
第一节下课铃
15:
30
第七节上课铃
9:
00
第二节上课铃
16:
20
第七节下课铃
9:
50
第二节下课铃
16:
30
第八节上课铃
10:
10
第三节上课铃
17:
20
第八节下课铃
11:
00
第三节下课铃
19:
00
晚自习开始
11:
10
第四节上课铃
21:
00
晚自习结束
12:
00
第四节下课铃
22:
00
熄灯
13:
20
第五节预备铃
对自动打铃控制器的要求如下:
①上课铃与下课铃的铃音不同(铃音响的频率不同,上课铃为短音:
响0.5秒,停0.5秒;下课铃为长音:
响2秒,停1秒),其他的铃音为连续音。
②每次打铃的时间为15秒。
③星期六,星期日不打铃。
④具有时间显示功能,显示器件为LED数码管。
显示内容为:
分,小时及星期。
⑤具有时间(分,小时,星期)调整的功能。
第二章PLC三菱系统总体设计
2.1系统概述
本次设计是采用PLC来控制数码管的显示和响铃的输出,分钟,小时,星期均采用7448进行外部七段译码。
其中分钟、小时显示为动态显示,星期显示为静态显示,该系统能根据作息时间表自动控制电铃,有时间星期显示调节及控制功能,当秒脉冲计数60次之后向分钟进位。
当分钟显示数码管显示到59之后又向小时进位,而小时则是用了一个计数器,当计数器计了24次之后向星期进位,同理星期显示也是用了一个计数器,7次之后使程序全部复位。
有分钟调节、小时调节和星期调节按钮各一个,计时开始和假期控制按钮各1个,启动和停止按钮各1个,共7个输入口,14个输出口。
系统接通电源,通过分钟调节按钮,小时调节按钮,将系统时间和星期调节为当前时间和星期;然后按下计时开始按钮,系统开始计时;系统时间和星期通过数码管显示出来。
按下启动按钮,系统进入控制状态,将系统当前时间和星期与作息时间表比较,又输出口端口输出打铃控制信号。
上课铃为短音,响0.5秒,停0.5秒,共持续15秒;下课铃为长音,响0.5秒,停0.5秒,共持续15秒;起床,早操等时间的铃声为连续打铃;为了不影响休息周六周日不打铃。
2.2PLC的选型
因需要7个输入点,14个输出点,考虑到实际应用中留有一定的I/O端口余量,且电铃为直流负载,由于三菱FN2N系列的PLC在小型控制系统中比较占有优势和市场,本次设计也是小型的控制系统,我们学习的也是三菱的FX2N系列的PLC,根据上一章的知识,所以我们采用我们熟悉的三菱FX2N-32MR-001来控制该系统
2.3PLCI/O端口的分配
根据功能的要求I/O接点的分配,如下图:
输入
输出
X0启动按钮
Y0时间显示译码芯片7448A脚
X1停止按钮
Y1时间显示译码芯片7448B脚
X2分钟调节
Y2时间显示译码芯片7448C脚
X3小时调节
Y3时间显示译码芯片7448D脚
X4星期调节
Y4选择小时十位数7448芯片LTRBIRBO(LTRBO为1时代表选中该端口)
X5.计时开始
Y5选择小时个位数7448芯片LTRBIRBO
X6假期控制按钮
Y6选择分钟十位数7448芯片LTRBIRBO
Y7选择分钟个位数7448芯片LTRBIRBO
Y10星期显示译码芯片7448A脚
Y11星期显示译码芯片7448B脚
Y12星期显示译码芯片7448C脚
Y13星期显示译码芯片7448D脚
Y14星期显示7448芯片LTRBIRBO
Y15打铃的输出
2.4七段数字译码显示器
由于在PLC系统中工作的是二进制的数字信号,而人们习惯十进制的数字或运算结果,因此需要数字显示器,显示出便于人们观测、查看的十进制数字,因此本设计选择了七段数字译码显示器,下图是7448七段数字译码显示器的结构图及译码图。
2.5系统结构框图及I/O接线图
2.5.1结构框图:
2.5.2I/O接线图:
解释:
Y0-Y3分别对应7448时间显示的的A-D的引脚,控制小时、分钟显示的个位与十位。
Y4代表选中显示小时的十位,Y5代表选中显示小时的个位,Y6代表选中显示分钟的十位,Y7代表选中显示分钟的个位。
Y10-Y13分别对应芯片星期显示的A-D的引脚,Y14代表选中显示星期。
Y15代表打铃输出。
2.6系统流程图
系统流程图如下图所示:
第三章PLC三菱软件设计及简介
控制程序是本系统的核心部分,任何外部硬件都是在程序的控制下进行运转的。
为了便于分析,下面将分段对程序进行注释该系统软件由计时及时间调节程序,显示程序,作息时间表程序和控制程序四个结构组成。
3.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
(2)通过MOV传送指令将BCD码分别输入,通过7448七段显示译码器驱动共阴极显示器显示数码。
M100导通将M214—M217的数据转移到Y0-Y3中,Y0-Y3接到时间显示译码芯片7448的A,B,C,D脚,由7448内部结构,驱动共阴极显示器显示数码,现实的数为小时的十位数;同理M210-M213,M204-M207,M200-M203分别转移到Y0-Y3,M220-M227的数据转移到Y010-Y013,驱动共阴极显示器显示数码,显示的分别为小时的个位,分钟的十位,分钟的个位,以及星期。
时间继电器T0,T1,T2,T3分别计时一次为10s,理论上数码管显示是一闪一闪的,但由于频率高,人眼不易看出来。
此时T3又对所有的时间继电器进行复位,以便下一个扫描周期使用。
3.3作息时间表程序
(1)MUL代表乘法,C1代表小时数,用C1乘以60代表分钟放在D0中,再用D0中的数加上C0中的数放在D1中代表现在时间。
MUL和ADD指令一起作用是将当前时间计算为分钟数放到数据寄存器D1中。
(2)CMP为比较指令用当前的时间和给定的时间点作比较决定对哪个辅助继电器输出,。
例[CMPD1K610M21]若D1中的当前时间大于K610,则M21=1.若D1中的当前时间等于于K610,则M22等于1,相应的后面的M22
闭合,M100闭合,M400闭合,相应Y15输出打铃。
(3)最后两行指令是判断是否为周六周日,若是,则后面的控制程序就不用运行。
[ZCPK6K7C2M87]当K6>C2时,M87=1,后面的程序执行;当K6<=C3.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仿真调试
以下为周六14点20不打铃,Y15没有输出。
上图表明此时小时的个位为4(0100)。
上图表明此时小时的十位为1(0001)。
上图表明此时分钟的十位为2(0010)。
上图表明此时分钟的个位为0(0000)。
上图表明此时显示的星期六不打铃。
第四章组态软件设计及简介
4.1组态软件的概述
组态软件是一种面向工业自动化的通用数据采集和监控软件,亦称人机界面或HMI/MMI软件,在国内俗称“组态软件”。
组态软件在国内是一个约定俗成的概念,并没有明确的定义,它可以理解为“组态式监控软件”。
“组态(Configure)”的含义是“配置”、“设定”、“设置”等意思,是指用户通过类似“搭积木”的简单方式来完成自己所需要的软件功能,而不需要编写计算机程序,也就是所谓的“组态”。
它有时候也称为“二次开发”,组态软件就称为“二次开发平台”。
“监控(SupervisoryControl)”,即“监视和控制”,是指通过计算机信号对自动化设备或过程进行监视、控制和管理。
简单地说,组态软件能够实现对自动化过程和装备的监视和控制。
它能从自动化过程和装备中采集各种信息,并将信息以图形等更易于理解的方式进行显示,将重要的信息以各种手段传送到相关人员,对信息执行必要分析处理和存储,发出控制指令等等。
组态软件提供了丰富的用于工业自动化监控的功能,用户根据自己工程的需要进行选择、配置等较为简单的工作来建立自己所需要的监控系统。
组态软件和行业无关,
组态(Configuration)为模块化任意组合。
组态软件主要特点有:
(1)延续性和可扩充性。
用通用组态软件开发的应用程序,当现场(包括硬件设备或系统结构)或用户需求发生改变时,不需作很多修改而方便地完成软件的更新和升级;
(2)封装性(易学易用),通用组态软件所能完成的功能都用一种方便用户使用的方法包装起来,对于用户,不需掌握太多的编程语言技术(甚至不需要编程技术),就能很好地完成一个复杂工程所要求的所有功能;(3)通用性,每个用户根据工程实际情况,利用通用组态软件提供的底层设备(PLC、智能仪表、智能模块、板卡、变频器等)的I/ODriver、开放式的数据库和画面制作工具,就能完成一个具有动画效果、实时数据处理、历史数据和曲线并存、具有多媒体功能和网络功能的工程,不受行业限制。
4.2组态王的组成
“组态王”软件包括由工程浏览器(TouchExplorer)、工程管理器(Proj-Manager)
和画面运行系统(TouchVew)三大部分组成。
在工程浏览中可以查看工程的各个组成部分,也可以完成数据库构造、定义外部设备等工作;工程管理器中内嵌了画面管理系统,用于新工程的创建和已有工程的管理。
画面的开发和运行由工程浏览器调用画面制作系统touchMak和运行系统touchVew来完成。
4.3组态王的实现过程
1)画面新建:
现设置一间教室,内置有时间显示器、一个铃铛以及一台显示器。
当时间显示器到了上课时间时,上课铃声响起;当下课时间到时,下课铃声响起。
星期六、日则不响铃。
2)定义数据库
数据库是“组态王”最核心的部分。
在touchVew运行时,工业现场的生产状况要以动画的形式反映在屏幕上,操作者在计算机上发布的指令也要迅速发送到达现场,所有这一切都是以实时数据库为中介环节,所以说数据库是联系上位机与下位机的桥梁。
在数据库中存放的是当前值,变量包括系统变量和用户定义的变量。
变量的集合形象的称为“数据词典”,数据词典记录了所有的用户可以用到数据变量的详细信息。
如下图所示
3)画面连接
所谓的“动面连接”就是建立画面的图素与数据库变量的对应关系。
对于我们建立的“铃声监控中心”,将时间与对应变量关联,便可显示出本机时间。
下图直接调用组态中时钟,显示时间:
下图是显示星期几的连接
4)命令语言编程
“组态王”支持使用内建的复杂函数,其中包括字符串函数、数字函数、系统函数、控件函数、配方函数、报告函数及其他函数。
在工程浏览器重的目录显示区,选择“文件/命令语言/应用程序命令语言”,双击“请双击进入这儿“应用程序命令语言”对话框图标。
出现下图:
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