工业过程控制系统的仿真与实现Word格式文档下载.docx
《工业过程控制系统的仿真与实现Word格式文档下载.docx》由会员分享,可在线阅读,更多相关《工业过程控制系统的仿真与实现Word格式文档下载.docx(15页珍藏版)》请在冰豆网上搜索。
第1章绪论
1.1概述
光电计数器广泛应用于工业生产,实时检测,自动化控制等领域,一般的光电计数器采用红外感应器件,或者是光电对射器件,存在计数范围发散,计数狭缝窄,不适合体积大的固件计数等不足。
今年来,工厂对小工件的需求量越来越大,对小工件的计数准确性的要求越来越高,因此,十分有必要研制试用于小工件计数的仪器。
针对这一话题,我基于光电传感器的检测原理设计了一个自动计数仪的控制系统。
该系统能对工件进行计数控制,调控。
并具有计数准确,检测速度,稳定星性好,抗干扰能力强,计数达到设定值后自动进行包装的特点。
该计数器采用系统的控制电路是以AT8952单片机为核心,通过步进电机与LED,红外感应,振动盘,共同工作下完成计数,显示,包装的工作。
1.2AT89S52单片机简介
AT89S52为ATMEL所生产的一种低功耗、高性能CMOS8位微控制器,具有8K在系统可编程Flsah存储器。
(一)、AT89S52主要功能列举如下:
1、拥有灵巧的8位CPU和在系统可编程Flash
2、晶片内部具时钟振荡器(传统最高工作频率可至12MHz)
3、内部程序存储器(ROM)为8KB
4、内部数据存储器(RAM)为256字节
5、32个可编程I/O口线
6、8个中断向量源
7、三个16位定时器/计数器
8、三级加密程序存储器
9、全双工UART串行通道
(二)、AT89S52各引脚功能介绍:
VCC:
AT89S52电源正端输入,接+5V。
VSS:
电源地端。
XTAL1:
单芯片系统时钟的反相放大器输入端。
XTAL2:
系统时钟的反相放大器输出端,一般在设计上只要在XTAL1和XTAL2上接上一只石英振荡晶体系统就可以动作了,此外可以在两引脚与地之间加入一20PF的小电容,可以使系统更稳定,避免噪声干扰而死机。
RESET:
AT89S52的重置引脚,高电平动作,当要对晶片重置时,只要对此引脚电平提升至高电平并保持两个机器周期以上的时间,AT89S51便能完成系统重置的各项动作,使得内部特殊功能寄存器之内容均被设成已知状态,并且至地址0000H处开始读入程序代码而执行程序。
EA/Vpp:
"
EA"
为英文"
ExternalAccess"
的缩写,表示存取外部程序代码之意,低电平动作,也就是说当此引脚接低电平后,系统会取用外部的程序代码(存于外部EPROM中)来执行程序。
因此在8031及8032中,EA引脚必须接低电平,因为其内部无程序存储器空间。
如果是使用8751内部程序空间时,此引脚要接成高电平。
此外,在将程序代码烧录至8751内部EPROM时,可以利用此引脚来输入21V的烧录高压(Vpp)。
ALE/PROG:
ALE是英文"
AddressLatchEnable"
的缩写,表示地址锁存器启用信号。
AT89S52可以利用这支引脚来触发外部的8位锁存器(如74LS373),将端口0的地址总线(A0~A7)锁进锁存器中,因为AT89S52是以多工的方式送出地址及数据。
平时在程序执行时ALE引脚的输出频率约是系统工作频率的1/6,因此可以用来驱动其他周边晶片的时基输入。
此外在烧录8751程序代码时,此引脚会被当成程序规划的特殊功能来使用。
PSEN:
此为"
ProgramStoreEnable"
的缩写,其意为程序储存启用,当8051被设成为读取外部程序代码工作模式时(EA=0),会送出此信号以便取得程序代码,通常这支脚是接到EPROM的OE脚。
AT89S52可以利用PSEN及RD引脚分别启用存在外部的RAM与EPROM,使得数据存储器与程序存储器可以合并在一起而共用64K的定址范围。
PORT0(P0.0~P0.7):
端口0是一个8位宽的开路汲极(OpenDrain)双向输出入端口,共有8个位,P0.0表示位0,P0.1表示位1,依此类推。
其他三个I/O端口(P1、P2、P3)则不具有此电路组态,而是内部有一提升电路,P0在当做I/O用时可以推动8个LS的TTL负载。
如果当EA引脚为低电平时(即取用外部程序代码或数据存储器),P0就以多工方式提供地址总线(A0~A7)及数据总线(D0~D7)。
设计者必须外加一锁存器将端口0送出的地址栓锁住成为A0~A7,再配合端口2所送出的A8~A15合成一完整的16位地址总线,而定址到64K的外部存储器空间。
PORT2(P2.0~P2.7):
端口2是具有内部提升电路的双向I/O端口,每一个引脚可以推动4个LS的TTL负载,若将端口2的输出设为高电平时,此端口便能当成输入端口来使用。
P2除了当做一般I/O端口使用外,若是在AT89S52扩充外接程序存储器或数据存储器时,也提供地址总线的高字节A8~A15,这个时候P2便不能当做I/O来使用了。
PORT1(P1.0~P1.7):
端口1也是具有内部提升电路的双向I/O端口,其输出缓冲器可以推动4个LSTTL负载,同样地若将端口1的输出设为高电平,便是由此端口来输入数据。
如果是使用8052或是8032的话,P1.0又当做定时器2的外部脉冲输入脚,而P1.1可以有T2EX功能,可以做外部中断输入的触发脚位。
PORT3(P3.0~P3.7):
端口3也具有内部提升电路的双向I/O端口,其输出缓冲器可以推动4个TTL负载,同时还多工具有其他的额外特殊功能,包括串行通信、外部中断控制、计时计数控制及外部数据存储器内容的读取或写入控制等功能。
其引脚分配如下:
P3.0:
RXD,串行通信输入。
P3.1:
TXD,串行通信输出。
P3.2:
INT0,外部中断0输入。
P3.3:
INT1,外部中断1输入。
P3.4:
T0,计时计数器0输入。
P3.5:
T1,计时计数器1输入。
P3.6:
WR:
外部数据存储器的写入信号。
P3.7:
RD,外部数据存储器的读取信号。
RST:
复位输入。
当振荡器复位器件时,要保持RST脚两个机器周期的高电平时间。
ALE/PROG:
当访问外部存储器时,地址锁存允许的输出电平用于锁存地址的地位字节。
在FLASH编程期间,此引脚用于输入编程脉冲。
在平时,ALE端以不变的频率周期输出正脉冲信号,此频率为振荡器频率的1/6。
因此它可用作对外部输出的脉冲或用于定时目的。
然而要注意的是:
每当用作外部数据存储器时,将跳过一个ALE脉冲。
如想禁止ALE的输出可在SFR8EH地址上置0。
此时,ALE只有在执行MOVX,MOVC指令是ALE才起作用。
另外,该引脚被略微拉高。
如果微处理器在外部执行状态ALE禁止,置位无效。
/PSEN:
外部程序存储器的选通信号。
在由外部程序存储器取指期间,每个机器周期两次/PSEN有效。
但在访问外部数据存储器时,这两次有效的/PSEN信号将不出现。
/EA/VPP:
当/EA保持低电平时,则在此期间外部程序存储器(0000H-FFFFH),不管是否有内部程序存储器。
注意加密方式1时,/EA将内部锁定为RESET;
当/EA端保持高电平时,此间内部程序存储器。
在FLASH编程期间,此引脚也用于施加12V编程电源(VPP)。
XTAL1:
反向振荡放大器的输入及内部时钟工作电路的输入。
来自反向振荡器的输出。
单片机(ATMEL8952)有24个输入/输出点,支持在线下载功能,能满足该装备的控制与可靠运行,ATMEL8952还能通过编程改变控制策略,克服了大多数同类设备采用逻辑芯片进行控制,无法根据工作情况调整参数或控制策略的缺点因此,本系统决定使用该型号单片机
在计数过程中需要相应的输入设备进行参数设置,常用的输入设备有按钮、键盘、薄膜开关、触摸屏等由于薄膜开关具有外形美观、密封性好、装配方便、成本低、寿命长等优点,决定选用它作为输入设备.
1.3硬件电路设计
系统硬件包括红外光电传感器、单片机接口电路及键盘、显示器、振动盘等部分,图1是系统硬件框图.系统的工作流程如下:
先由键盘设定好计数的
初始值,系统运行后,工件由送料设备振动盘送至
光电传感器检测区域,当落入检测区域的工件阻断
光通路后,光电传感器输出脉冲信号,单片机通过
对脉冲信号的判断和处理,对送料设备振动盘、显
示设备以及包装部分的步进电机进行控制.
系统的控制电路是以AT8952单片机为核
心,图2是单片机接口电路,所有电路的控制与信图1系统硬件框图
号处理都由单片机完成.单片机的外围电路主要有:
晶振电路、复位电路、液晶屏显示电路、振动盘控制电路、键盘接口电路、红外光电传感器电路等.
单片机的P0口通过上拉电阻增加驱动能力,再经过74L245(8路同相三态双向总线收发器)接到液晶屏的数据口上P2.0至P2.5这6个口也经过74L245再接到液晶屏的各控制线上P1.0、P1.1,P1.2、P3.0、P3.1和P2.6口经过74HC14D(6非门施密特触发器)和ULN2003(高耐压、大电流、内部由七个硅NPN达林顿管组成的驱动芯片)驱动步进电机的运行P1.3、P1.4、P1.5、P1.6、P1.7与P2.7口都接至键盘软件方法来实现PID调节功能。
前者称为模拟PID控制器,后者称为数字PID控制器。
其中数字PID控制器的参数可以再现场实现在线整定,因此具有较大的灵活性,可以较好的控制效果。
采用这种方法实现的温度控制器,其控制品质的好坏主要决定于三个PID参数(比例值,积分值,微分值)。
只要PID参数选取正确,对于一个确定的受控系统来说,其控制精度是比较令人满意的。
但是,它的不足也恰恰在于