智能型静止进相器中单片机的系统设计
在传统的可控硅整流装置中,其触发电路大都以电压方法调节导通角α角度,对以分离元件及专用集成电路为主的触发电路,这种方法较易实现,但这种触发器的性能却不尽人意,如电路复杂、调试难度大、脉冲均匀度不好等。为改善以上问题,采用单片机来实现。本系统中,采用ATMEL公司生产的简装形单片机AT89C2051来实现。
一.AT89C2051单片机介绍
89C2051主要特点是采用Flash存储器技术,降低了制造成本,其软件、硬件与MCS-51完全兼容。89C2051片内含有2K字节的 Flash程序存储器,128字节的片内RAM。允许工作的时钟为0—24MHz。89C2051不允许构造外部总线来扩充程序/数据存储器,所以它不需要ALE、PSEN、RA、WR一类的引脚。89C2051共有20个引脚,它只继承了8031最重要的引脚,体积小巧。具体的引脚图如图1所示。
二.单片机电路设计
单片机电路图如图2所示。
A、B、C相的电流信号经电流互感器TA1、TA2、TA3检测后,经过信号调理电路、逻辑
变换电路后,从89C2051的P3.4、P3.3、P3.2输入,经单片机处理后,从P1.4、P1.3、P1.2输出。输出的电压信号分别经过一个电压比较器再输出。举A相输出来说明它的工作原理。先来看A相输出电路图如图3所示。
从图3可以看到,LM324的同相电压输入端(12脚)为A相电压输入,反相电压输入端(13脚)的电压为15/(10+2)*2=2.5V。当A 相电压输出大于2.5V时,LM324的输出端(14脚)输出高电平,反之,则输出低电平。所以LM324的输出端输出的为方波信号,它驱动发光二极管 L1明暗交替,一闪一闪。同理,B相、C相也一样。
单片机的9脚(P3.5)用来处理热故障,温度开关信号从YZ11接入,没有热故障时,L5一直亮着,出现热故障时,P3.5输出高电平,L5灭。这时提醒用户需要处理这个故障。
三.单片机软件部分设计
软件是系统的灵魂,没有软件,系统就不能正常运行,所以系统软件设计在整个系统中占有重要的地位。软件设计的好坏将关系着整个系统的好坏,软件的优劣也关系到硬件各部分能否协调工作。因此,对一个系统来说,软件设计是很重要的部分。
在整个系统的控制部分,采用89C2051单片机作为控制部分的核心器件,所以软件设计部分也主要是对89C2051单片机进行编程。
89C2051单片机是与 8031完全兼容的单片机,它在指令系统、片内RAM的设置等和8031完全一致。89C2051为20DIP封装,片内带2K的可编程闪速程序存储器,只需外接晶振就可工作。89C2051最高晶振频率可达24MHz,片内程序存储器可多次擦除重新编程,因此89C2051在许多方面的性能优于 8031,是理想的工业控制单片机。
89C2051有以下几点优点:
(1)2051采用的是MCS-51的核心,十分容易为广大用户所接受;
(2)2051内部基本保持了80C31硬件I/O功能;
(3)2051的Flash存贮器技术,可重复擦/写 1000次以上,容易解决调试手段;
(4)更适合小批量系统的应用,容易实现软件的升级。
89C2051可以采用下面2种方法开发应用系统。
(1)由于89C2051内部程序存贮器为Flash,所以修改它内部的程序十分方便快捷,只要配备一个可以编程89C2051的编程器即可。调试人员可以采用程序编辑、编译、固化和插到电路板中试验这样反复循环的方法,对干熟练的MCS-51程序员来说,这种调试方法并不十分困难。当然这种调试不能够了解片内RAM的内容和程序的走向等有关信息。
(2)将普通 8031/80C31仿真器的仿真插头中P1.0-P1.7和P3.0-P3.6引出来仿真2051,这种方法可以运用单步、断点的调试方法,但是仿真不够真实,比如,2051的内部模拟比较器功能,P1口、P3口的增强下拉能力等等。
在软件调试过程中,选用第(1)种调试方法,即采用程序编辑、编译、固化和插到电路板中试验这样反复循环的方法。
在软件设计中,89C2051实现的功能主要是对检测到的A、B、C相电流(电压)根据控制规则给予具体的控制作用,并对缺相和热故障进行监测和报警。
在控制系统中,由于作为控制对象的交流绕线式电机的转子电流是对称的,所以,只需要检测任意一相电流的频率(在程序中变换成半周期的时间进行处理),与设定值进行比较,计算偏差和偏差变化,并确定在控制规则表中对应的位置以及应该采取何种控制决策。
主程序具体的流程图如图4所示。
子程序设计主要包含根据控制规则表确定延时时间,且延时后输出。具体流程图如图5所示。
其中判断何种工况的程序为:
if (200e=250)
CL=9;
else if (150e=200)
四.结束语
采用了单片机作为静止进相器的核心控制部件,有效的提高了系统控制的精确性和稳定性,并且节约了控制成本。
- Linux嵌入式系统开发平台选型探讨(11-09)
- VxWorks实时操作系统下MPC8260ATM驱动的实现(11-11)
- VXWORKS内核分析(11-11)
- Linux内核解读入门(11-09)
- linux文件系统基础(02-09)
- 基于Winodws CE的嵌入式网络监控系统的设计与实现(03-05)