0 引 言
冶金、化工、电力行业中广泛采用了晶闸管可控整流装置。在这些装置中通过控制晶闸管的导通角来改变电压或电流,并实现稳流控制。这类装置大多采用模拟装置来实现触发和稳流,其硬件电路复杂,调试困难,不适应现代迅速发展并大量采用的集散型控制系统(简称DCS)的需要。我国现有的数字触发装置大多采用51系列单片机构成,由于受51系列单片机的运行速度和性能的限制,无法将三相同步信号都检测出来,运算速度也不够快,因此,控制精度和实时性均不理想,同内还没有性能很可靠的产品。本文介绍的数字触发装置采用先进的微控制器80C196KC构成。80C196KC运行速度快(比51系列产品快近十倍),而且它的一些功能对于构成数字触发装置非常实用。第一,它拥有的六个高速输出口刚好用来发生整流装置所需要的六相触发脉冲,电流反馈、PID控制及触发脉冲的移相由软件来实现,不需要其他移相电路,从而大大简化了硬件电路;第二,它的两个高速口,可以将三相同步信号都检测出来。而已有的基于51系列单片机的数字触发装置只采用了单相或两相同步,其它相是依靠推算来确定同步信号到来的时间,所以控制精度和控制的实时性都不够理想。基于80C196KC微控制器的系统克服了已有系统的不足,大大改善了系统的整体性能。
1 系统结构
80C196KC单片微控制器控制的晶闸管可控整流系统框图如图1所示。图中虚线框内为单片机所完成的工作。
(1) CPU主电路
由80C196KC为主组成的CPU电路包括程序存储器(EPROM)电路数据存储器(RAM)电路、总线及读写控制电路以及CPU的时钟电路、复位电路等,在此不再详述。
(2) 同步信号电路
80C196KC的四个高速输入/高速输出复用口中的两个用作输出口后,就只剩下两个高速输入口可用来作同步信号检测。也就是说,用高速输入口只能检测到两相同步信号。利用80C196KC的新功能,可以检测剩下的一相同步信号。80C196KC的计时器T2可采用内部时钟即与T1为同一时钟,同时T2信号捕获口可将信号的上升沿发生时间记录下来。利用这项功能可将另一相同步信号检测出来。
同步信号的获取是将Uab、Ubc、Uca三路线电压经过光电隔离、滤波整形,获得三路同步脉冲。将其中两路脉冲送到80C196KC的高速输入口,高速输入口将这两路信号的正、负跳变的发生及发生时间记录在HIS的FIFO队列寄存器中。由于T2捕获口只能捕获信号的上升沿发生时间,所以另一路同步信号需同时两个单稳触发器处理,分别将信号的上升沿和下降沿都转化为一个上跳变信号后送到T2信号捕获口,该口将信号发生的时间记录在T2CAPTURE寄存器中,经CPU识别相序后,根据控制要求将相应的触发脉冲的发生及发生时间写入高速输出口的保持寄存器中,在触发时间到来后,高速输出口会自动产生6路触发脉冲,而无需CPU的干涉。
(3) A/D采样电路
80C196KC有内嵌的10位A/D转换器,但10位的A/D转换器的精度只有千分之一,不能满足该系统的要求。虽然可以通过外接一些高精度的电阻来完成12位的A/D转换,但其可靠程度仍然不高。所以,本系统采用外接的12位A/D转换器AD1674。在AD1674与80C196连接时,其时序匹配问题需要注意。当采用16MHz的时钟源时,80C196KC的时钟周期只有125ns,而AD1674的运行速度相对而言比较慢,其使能信号、片选信号及读/转换信号的有效宽度都在300ns以上,为了使它们的时序匹配,要将AD1674的片选信号与80C196的就绪控制端READY相连,并在80C196KC的芯片控制字CCR中写入等待周期,得CPU在对AD1674进行操作时加上等待周期,从而两者时序相匹配。在此系统中需要转换的信号有给定和反馈电流,单片机通过控制一模拟开关选择需要转换的多路信号中的一个。
(4) 键盘控制与显示电路
为了进行人机对话,实现系统的在线控制,并将电流反馈值实时显示出来,采用专用的8279接口芯片,配6位LED显示器。需要改变一些设定值时,可以通过按键来实现。当CPU接受到有键按下的信息后,就转出相应的处理程序。电流反馈值也在LED上实时显示出来。
(5) 隔离驱动电路
从80C196KC的高速输出口输出的六相脉冲需要经过隔离、放大后输出才能驱动晶闸管。在此不再详述。
2 软件技术
系统软件由一个主程序和两个中断子程序组成。主程序框图见图2。
(1) 数字触发大多应用在大功率条件下,其工作电流达十万安培,因此,系统初始化后,为了减小启动电流对设备及电网的影响,应将工作电流从零逐步增加至给定电流(开环状态下)。系统启动的软件模块就是完成该工作。
(2) 开HSI和T2捕获中断中断后,系统允许处理HSI和T2捕获中断,得到所需要的同步信号的信息。要让HSO的引脚上输出要求的触发脉冲,应在HSO-CAM中写入脉冲的上升沿时间和下降沿时间,该系统采用双窄脉冲触发,脉冲宽度为18度。HSO-CAM中可同时保存八个事件,每次同步信号到来时,只需向其中写入两个事件,而每个同步信号相距约60度,触发角度在0~120度,因此,在第四个同步信号到来之前,HSO-C AM中的事件最少已经发生了两个,因此,事件可以及时写入。在HIS中断程序中,先将同步信号到来的状态(正跳变还是负跳变)和时间读出来,再向HSO-CAM中写入相应的事件;而在T2捕获中断程序中,还需先判断相序。
(3) 待机状态是80C196系列产品的一种特殊的节电工作方式。在这种方式下,CPU停止工作,CPU时钟被冻结在逻辑零状态,但外设时钟继续工作。当中断信号到来时 ,CPU退出待机工作方式,进入中断服务程序。中断服务程序的返回地址为键盘查询,之后进入采样程序模块,这样一来,就保证了在两次同步信号之间进行一次采样和PID计算。
3 结 论
采用80C196KC构成的该系统由于其运算速度很快,采样、PID运算及显示全部程序可在两次同步信号之间完成(本文所涉及的该段程序全部运行只需2.5ms左右),而且每个同步信号均被采集到了。因此,每次同步信号到来之后,在中断程序中都可按最新的电流反馈数据改写触发脉冲发生的时间,所以,该系统的控制精度和实时性几乎可以与模拟系统相比。
参考文献
1 孙涵芳.INTEL16位单片机.北京:北京航空航天大学出版社,1995
2 喻方平,罗薇.MCS-96系列单片机L/M语言编程及系统设计与调试.北京:电子工业出版社,1998
3 王福瑞.单片微机测控系统设计大全.北京:北京航空航天大学出版社,1998
关键字:模拟 单片机 触发
引用地址:基于80C196KC微控制器的晶闸管整流装置数字控制器的设计
冶金、化工、电力行业中广泛采用了晶闸管可控整流装置。在这些装置中通过控制晶闸管的导通角来改变电压或电流,并实现稳流控制。这类装置大多采用模拟装置来实现触发和稳流,其硬件电路复杂,调试困难,不适应现代迅速发展并大量采用的集散型控制系统(简称DCS)的需要。我国现有的数字触发装置大多采用51系列单片机构成,由于受51系列单片机的运行速度和性能的限制,无法将三相同步信号都检测出来,运算速度也不够快,因此,控制精度和实时性均不理想,同内还没有性能很可靠的产品。本文介绍的数字触发装置采用先进的微控制器80C196KC构成。80C196KC运行速度快(比51系列产品快近十倍),而且它的一些功能对于构成数字触发装置非常实用。第一,它拥有的六个高速输出口刚好用来发生整流装置所需要的六相触发脉冲,电流反馈、PID控制及触发脉冲的移相由软件来实现,不需要其他移相电路,从而大大简化了硬件电路;第二,它的两个高速口,可以将三相同步信号都检测出来。而已有的基于51系列单片机的数字触发装置只采用了单相或两相同步,其它相是依靠推算来确定同步信号到来的时间,所以控制精度和控制的实时性都不够理想。基于80C196KC微控制器的系统克服了已有系统的不足,大大改善了系统的整体性能。
1 系统结构
80C196KC单片微控制器控制的晶闸管可控整流系统框图如图1所示。图中虚线框内为单片机所完成的工作。
(1) CPU主电路
由80C196KC为主组成的CPU电路包括程序存储器(EPROM)电路数据存储器(RAM)电路、总线及读写控制电路以及CPU的时钟电路、复位电路等,在此不再详述。
(2) 同步信号电路
80C196KC的四个高速输入/高速输出复用口中的两个用作输出口后,就只剩下两个高速输入口可用来作同步信号检测。也就是说,用高速输入口只能检测到两相同步信号。利用80C196KC的新功能,可以检测剩下的一相同步信号。80C196KC的计时器T2可采用内部时钟即与T1为同一时钟,同时T2信号捕获口可将信号的上升沿发生时间记录下来。利用这项功能可将另一相同步信号检测出来。
同步信号的获取是将Uab、Ubc、Uca三路线电压经过光电隔离、滤波整形,获得三路同步脉冲。将其中两路脉冲送到80C196KC的高速输入口,高速输入口将这两路信号的正、负跳变的发生及发生时间记录在HIS的FIFO队列寄存器中。由于T2捕获口只能捕获信号的上升沿发生时间,所以另一路同步信号需同时两个单稳触发器处理,分别将信号的上升沿和下降沿都转化为一个上跳变信号后送到T2信号捕获口,该口将信号发生的时间记录在T2CAPTURE寄存器中,经CPU识别相序后,根据控制要求将相应的触发脉冲的发生及发生时间写入高速输出口的保持寄存器中,在触发时间到来后,高速输出口会自动产生6路触发脉冲,而无需CPU的干涉。
(3) A/D采样电路
80C196KC有内嵌的10位A/D转换器,但10位的A/D转换器的精度只有千分之一,不能满足该系统的要求。虽然可以通过外接一些高精度的电阻来完成12位的A/D转换,但其可靠程度仍然不高。所以,本系统采用外接的12位A/D转换器AD1674。在AD1674与80C196连接时,其时序匹配问题需要注意。当采用16MHz的时钟源时,80C196KC的时钟周期只有125ns,而AD1674的运行速度相对而言比较慢,其使能信号、片选信号及读/转换信号的有效宽度都在300ns以上,为了使它们的时序匹配,要将AD1674的片选信号与80C196的就绪控制端READY相连,并在80C196KC的芯片控制字CCR中写入等待周期,得CPU在对AD1674进行操作时加上等待周期,从而两者时序相匹配。在此系统中需要转换的信号有给定和反馈电流,单片机通过控制一模拟开关选择需要转换的多路信号中的一个。
(4) 键盘控制与显示电路
为了进行人机对话,实现系统的在线控制,并将电流反馈值实时显示出来,采用专用的8279接口芯片,配6位LED显示器。需要改变一些设定值时,可以通过按键来实现。当CPU接受到有键按下的信息后,就转出相应的处理程序。电流反馈值也在LED上实时显示出来。
(5) 隔离驱动电路
从80C196KC的高速输出口输出的六相脉冲需要经过隔离、放大后输出才能驱动晶闸管。在此不再详述。
2 软件技术
系统软件由一个主程序和两个中断子程序组成。主程序框图见图2。
(1) 数字触发大多应用在大功率条件下,其工作电流达十万安培,因此,系统初始化后,为了减小启动电流对设备及电网的影响,应将工作电流从零逐步增加至给定电流(开环状态下)。系统启动的软件模块就是完成该工作。
(2) 开HSI和T2捕获中断中断后,系统允许处理HSI和T2捕获中断,得到所需要的同步信号的信息。要让HSO的引脚上输出要求的触发脉冲,应在HSO-CAM中写入脉冲的上升沿时间和下降沿时间,该系统采用双窄脉冲触发,脉冲宽度为18度。HSO-CAM中可同时保存八个事件,每次同步信号到来时,只需向其中写入两个事件,而每个同步信号相距约60度,触发角度在0~120度,因此,在第四个同步信号到来之前,HSO-C AM中的事件最少已经发生了两个,因此,事件可以及时写入。在HIS中断程序中,先将同步信号到来的状态(正跳变还是负跳变)和时间读出来,再向HSO-CAM中写入相应的事件;而在T2捕获中断程序中,还需先判断相序。
(3) 待机状态是80C196系列产品的一种特殊的节电工作方式。在这种方式下,CPU停止工作,CPU时钟被冻结在逻辑零状态,但外设时钟继续工作。当中断信号到来时 ,CPU退出待机工作方式,进入中断服务程序。中断服务程序的返回地址为键盘查询,之后进入采样程序模块,这样一来,就保证了在两次同步信号之间进行一次采样和PID计算。
3 结 论
采用80C196KC构成的该系统由于其运算速度很快,采样、PID运算及显示全部程序可在两次同步信号之间完成(本文所涉及的该段程序全部运行只需2.5ms左右),而且每个同步信号均被采集到了。因此,每次同步信号到来之后,在中断程序中都可按最新的电流反馈数据改写触发脉冲发生的时间,所以,该系统的控制精度和实时性几乎可以与模拟系统相比。
参考文献
1 孙涵芳.INTEL16位单片机.北京:北京航空航天大学出版社,1995
2 喻方平,罗薇.MCS-96系列单片机L/M语言编程及系统设计与调试.北京:电子工业出版社,1998
3 王福瑞.单片微机测控系统设计大全.北京:北京航空航天大学出版社,1998
上一篇:基于A3967SLB的步进电机细分驱动系统设计
下一篇:基于MSC1210Y5的多通道数据采集系统
推荐阅读最新更新时间:2024-05-13 18:16
从RS232口获取单片机工作电源
计算机RS232串行口是一种很常用的通信接口,一直在工业、科研中占有极为重要的角色。除作为简单的串口通信外,许多用户在串行口上开发了不少种类繁多、用途广泛的扩展产品,如手写笔、RS232/RS-485转换接口、数据采集器等。这些产品大多需要有电源供电,如果由外部来给接口产品提供电源,难免繁琐且增加成本,本文向大家介绍从PC机RS232串口获取电源的简单方法。 图一所示是一种最简单的正、负电源获取方法。电路非常简单,成本也很低,仅需要4只二极管和2只电容即可完成整个功能,该电路的缺点是电流有限、电压不稳定。为此需要对图一的电路进行改进,以获得更好的正、负电源获取电路。 如图二所示。在PC机通电启动初始化串行口前,RS-232
[单片机]
dsPIC33F单片机的程序升级探讨
引言 实际应用中,由于客户需求变化或程序BUG修改等原因,经常出现需要使单片机应用程序升级的情况,本文利用 dsPIC33F 单片机运行时的自编程(Run-Time Serf-Programming,RTSP)特性,实现了基于该单片机应用程序的升级功能。 1 基本原理 dsPIC33F系列单片机提供了两种方式用于对其内部程序存储器进行编程:在线串行编程(In-Circuit Serial Programming,ICSP)和运行时自编程(Run-TimeSelf-Programming,RTSP)。ICSP使用5根线对单片机编程,主要用于产品调试或生产过程中,显然不适合用于产品运行时的程序升级。RTSP是通过
[单片机]
AVR单片机学习开发基础知识
简介:AVR单片机学习开发基础知识: 一、AVR开发工具简介及开发环境的建立 二、计算机原理基础知识讲解 三、C语言基础知识讲解 一、AVR开发工具简介及开发环境的建立 软件开发工具 编译环境:WinAVR 下载软件:MucodeISP 仿真环境:AVR Studio 集成环境:AVR Studio,可以内联WinAVR 成为一个具有编译、仿真、下载功能的集成环境 硬件开发工具 下载线(并口也有USB接口的,功能是下载程序配置熔丝位) 仿真器 学习板(或手工焊接的系统板) 工具手册 WinAVR技术手册 ATmega16官方中文版技术手册(英文水平好也可以看看英文版) WinAVR 说明 WinAVR 下载安装后只用到
[单片机]
低压驱动RF MEMS开关设计与模拟--用于MEMS开关缺陷的改进
近年来射频微电子系统(RF MEMS)器件以其尺寸小、功耗低而受到广泛关注,特别是MEMS开关构建的移相器与天线,是实现上万单元相控阵雷达的关键技术,在军事上有重要意义。在通信领域上亦凭借超低损耗、高隔离度、成本低等优势在手机上得到应用。然而RF MEMS开关普遍存在驱动电压高、开关时间长的问题,劣于FET场效应管开关和PIN二极管开关。相对于国外已取得的成果,国内的研究尚处于起步阶段。下文将针对MEMS开关的缺陷做一些改进。 1 RF MEMS开关的一般考虑 当MEMS开关的梁或膜受静电力吸引向下偏移到一定程度时达到阈值电压,梁或膜迅速偏移至下极板,电压大小取决于材料参数、开关尺寸及结构。梁或膜的材料需要比较好的杨
[传感器]
薄如原子的人工神经元面世,有助更好模拟和理解人脑
来自英国牛津大学、IBM欧洲研究所和美国得克萨斯大学的一个科研团队宣布了一项重要成就:他们通过堆叠二维(2D)材料,开发出一种厚度仅几个原子大小的人工神经元,其能够处理光和电信号进行计算,有望用于下一代人工智能计算,也有助科学家更好地模拟和理解人脑。相关研究成果刊载于最新一期《自然·纳米技术》杂志。 神经元 图片来源:《自然·纳米技术》杂志 几十年来,科学家们一直在研究如何重建生物神经元的计算能力,以开发更快、更节能的机器学习系统。一种很有前途的方法是使用忆阻器,但使用忆阻器复制生物神经元和大脑面临一个关键挑战:难以整合前馈和反馈神经元信号,而前馈和反馈机制巩固了人类利用奖励和错误来学习复杂任务的能力。 在最新研究中,
[医疗电子]
32位智能微控制器AT91SAM7S512-AU数据资料
AT91SAM7S512-AU描述 控制器系列/系列:AT91SAM7xxxx 核心尺寸:32bit 输/输出数:32 程序存储器大小:512 KB 存储器容量, RAM:64KB 处理器速度:55MHz 振荡器类型:External, Internal 计时器数:3 周边设备:ADC, RTT, PMC PWM通道数:4 封装形式:LQFP 电源电压范围:1.65V 到 1.95V, 3V 到 3.6V 工作温度范围:-40°C 到 +85°C AT91SAM7S512-AU针脚数:64 SVHC(高度关注物质):No SVHC (20
[单片机]
PIC单片机加PWM芯片的开关电源的设计
随着各种电器和仪表设备的日渐丰富,对电源应用的灵活性提出了更高的要求。设计一款使用灵活、方便且价格相对便宜的通用电源,正越来越成为市场所需。现代单片机正朝着处理速度越来越快,外设资源越来越丰富,价格越来越便宜的方向发展,将单片机融入电源的设计中可以极大地提升电源的性能和灵活性。本文介绍了一种单片机加PWM芯片的开关电源设计方法,既可以保留PWM芯片带来的稳定工作性能,又可以利用单片机的控制能力提供各种人机交互和通信接口。笔者设计的电源作为通用电源使用,可以提供灵活可编程的电压电流输出,另外还可以设置成铅酸电池充电器的模式,具有广阔的应用前景。 1 系统功能 通过对电源的编程,可以方便地实现图1所示的电压输出波形。
[单片机]
C51单片机串口通信
1、在使用串口之前,应对其进行初始化,步骤如下: (1)定时器1工作模式,设置TMOD寄存器 (2)装载TH1,TL1,决定波特率的值 (3)启动定时器1 (4)串口工作模式设置,SCON (5)如需中断,开总中断,开串行中断 2、如需奇偶校验: 偶校验:就是发送的8个数据位的1的个数为偶数时,TB8=0;为奇数时,TB8=1; 奇校验:与偶校验相反的TB8。 用软件产生奇偶校验位是根据51系列单片机的状态寄存器PSW的定义:当累加器ACC中为1的个数为奇数时,P=1,否则P=0。 3、程序(采用偶校验) #include reg52.h #define uchar unsigned char #define ui
[单片机]