ARM芯片S3C44B0在高精度直流开关电源设计中的应用

互联网 | 编辑: 2006-08-16 10:38:00原创
  
 
摘要:介绍了嵌入式ARM处理器S3C44B0的系统结构,并将其应用到开关电源控制系统的软硬件设计中,详细给出了系统的硬件架构和软件主程序流程图。
关键词:ARM;开关电源;PID

0    引言

    近年来,嵌入式技术发展极为迅速,出现了以单片机、专用嵌入式ARM为核心的高集成度处理器,并在通信、自动化、电力电子等领域得到了广泛应用。电源行业也开始采用内部集成资源丰富的嵌入式控制器来构成大型开关电源的控制系统。开关电源是效率较高的一种电源,是由占空比可调的脉宽调制波(PWM)来控制MOS管、IGBT等开关器件的开通与关闭,从而实现电压电流稳定输出,其性能的优劣直接关系到整个电子系统的工作性能指标。将SAMSUNG公司的嵌入式ARM处理器S3C44B0X芯片,应用到开关电源的控制系统的设计中,采用C语言和少量汇编语言,就可以实现一种以嵌入式ARM处理器为核心、具有智能PID控制器以及触摸屏、液晶显示器等功能的开关电源控制系统。

1    系统硬件架构

    随着数字电路和半导体工艺日趋完善成熟,数字信号、数字电路在应用中所占比例越来越大,同时显现出越来越多的优点:便于计算机处理控制、减小信号的干扰、提高抗干扰能力、便于调试,也便于自诊断、容错等技术的植入。随着嵌入式处理器主频的提升,片内控制功能的增强,PWM波形频率与精度的进一步提高,使得电源控制系统的集成度与精度得以提高。

    本电源对输出的电压电流信号进行采样,进行PID控制,最后输出PWM驱动波形调节输出电压。输出电压通过对大容量钽电容充放电,给负载提供稳定的高电压大电流输出,供工厂进行电镀使用。电源的控制系统硬件架构如图1所示。

 

图1    电源控制系统硬件架构

    本系统包括PID控制器,PWM输出,AD采样,构成单闭环系统。前端三相交流电源输入到开关电源整流模块,经整流滤波后输出平稳的直流电压。该直流电压直接输出至IGBT模块。高精度AD转换器将后端输出的电压电流信号由模拟信号量变为数字量供给S3C44B0进行数字PID运算,经过PID控制运算后,由S3C44B0输出PWM至IGBT从而构成一个闭环系统,控制电压电流稳定输出,从而实现开关电源控制系统。

    对于PID运算和PWM波输出模块,要求较高。通过计算和考查,我们选取了SAMSUNG公司的S3C44B0,这是一款32位基于ARM7TDMI架构的CPU,拥有高达59MIPS的运算速度,其具体功能特性如下:

    运算速度高达59MIPS,完全满足复杂PID控制器运算的实时性要求;

    16位的定时器,可实现精度高达0.03μs的PWM脉冲波,并且有防死区(DEADZONE)功能;

    外部中断源多达8个,可以对系统外部故障信息进行实时响应;

    内部嵌入了LCD控制器,并拥有DMA通道,使得电压电流值可以实时显示在LCD上;

    多达71个通用IO口线,可以方便地扩展外部接口;

    内嵌的IIC接口控制器可以将系统信息保存在EEPROM中,为系统操作员提供参考;

    内部的看门狗功能可使系统在软件或硬件出错的情况下自动复位,保证了系统的安全正常运行;

    2个异步串行接口(UART)可以方便地实现和上位机的通信;

    外扩的大容量存储器为软件提供了充足的空间。

    首先系统采用触摸屏和LCD作为人机接口。S3C44B0内部集成了LCD控制器,可支持高达320×240分辨率,256色STN-LCD,并通过DMA通道与CPU相连,可以快速动态地显示彩色图形,替代了厂家传统的51系列单片机与LED数码管组成的人机接口,使工人操作更加方便。S3C44B0外部GPIO接口,可以提供多种外部信号如表1所列。

表1    S3C44BO的I/O口

端口 输入输出 功能
GPC0 输出 合闸
GPC1 输出 软启动
GPC2 输出 系统工作LED
GPC10 输入 软启动成功
GPC11 输入 合闸成功
GPC12 输出 继电器分档
GPC13 输出 蜂鸣器启动
GPC14 输出 风扇开关
 

表2    S3C44BO的中断表

中断端口 功能
EXTINT0 超温
EXTINT1 过流
EXTINT2 过压
EXTINT3 触摸屏
EXTINT4 缺相
EXTINT5 超时
EXTINT6 IGBT
EXTINT7 开路

    8个外部中断,满足对过流,过压,缺相,超温等特殊情况的即时停机响应。S3C44B0带有外部存储器接口,通过外扩FLASHSST39VF160和SDRAMHY641620保证了本数字控制系统有足够的空间保存和运行程序。由于设计精度要求千分之一,未选用S3C44B0片内10BIT-ADC,而是选用了AD7705这款双通道、16BITΔ-Σ的ADC,并通过SIO同步端口与CPU连接。AD7705的配置可见参考文献[7],这里不再说明。

2    PWM控制原理

    采样控制理论中有一个重要结论:冲量相等而形状不同的窄脉冲加在惯性环节上时,其效果基本相同。PWM控制技术就是以该结论为理论基础,对半导体开关器件的导通和关断进行控制,使输出端得到一系列幅值相等而宽度不相等的脉冲,用这些脉冲列来代替正弦波或其他所需要的波形,并按照一定的规则对各个脉冲的宽度进行调制。

    在本系统中,PWM波形由中央处理器S3C44B0的时钟TIMER0输出口TOUT0输出。由于要求输出频率30kHz的PWM波,且精度在千分之一,所以通过设置TCFG0和TCFG1寄存器的设置,将4BIT分频器设置为0.5,预定标寄存器设置为1,计数比较寄存器TCNTB0设置为1000,这样,在S3C44B0主频于66MHz时,TOUT0输出的PWM波频率为30kHz。当TIMER0开始计时后,每次TCNTB0的值与定时器的向下计数器值相同时,定时器控制PWM波电平改变。使得修改TCNTB0的值可以控制PWM波的占空比,增加或者减少1,则PWM输出占空比增加或者减少千分之一,从而达到千分之一精度。图2为输出的PWM波形图,我们可以看出,通过专用的定时器输出口TOUT0输出的PWM波形,波形很好,经过测试,上升沿与下降沿均在ns级。

3    PID算法与软件流程图

3.1    主程序软件流程

    由于采用了嵌入式ARM芯片,使得在系统软件实现中主要以C语言进行驱动和应用程序的开发,仅在CPU初始化阶段使用ARM汇编语言。使用ARMS3C44B0芯片外扩了2MFLASH,8MSDRAM大容量存储器,完全满足了系统程序运行和数据的存储,这样充分发挥了S3C44B0ARM嵌入式系统存储器容量大,软件编程简单,速度快,精度高的优势。数字控制系统软件流程如图2所示。

图2    PWM波形图

    在系统开机后,首先要检测系统外围设备的状态是否正常,以免出现故障。在系统运行中,为了防止软件跑飞,还需要开启看门狗功能,加入喂狗程序,这样软件上保证系统的可靠性和稳定性。在ADC部分对采样值进行均值滤波,保证采样值的正确与稳定。

3.2    PID控制算法

    在自动控制技术中,应用最为广泛的调节器控制规律为比例(P)、积分(I)、微分(D)控制,简称PID控制,又称PID调节。其原理的关键是测量、比较和执行。PID控制器将测量受控对象(在本系统中即电压电流值)与设定值相比较,用这个误差来调节系统的响应。

    在电源数字PID控制系统中,使用比例环节控制电压电流的输出与输入误差信号成比例改变,但是实际值与给定值通常会存在偏差,这个偏差称作稳态误差。因此,需要引入积分环节的消除稳态误差功能提高精度,但是考虑到电源系统开机、关机或大幅增加电压电流工作设定值时,产生积分积累,就会引起电压电流超调,甚至在给定值上下振荡。所以为减小在运行过程中积分环节对电压电流动态性能的影响,采用了积分分离PID控制电压电流,即当电压电流与设定工作值的误差小于一个范围时,再采用积分环节去消除系统比例环节产生的稳态误差。

    积分分离PID控制算法需设定积分分离阀ε,当|e(k)|>ε时,即偏差值较大时,仅采用PD控制环节,减少超调量,使系统有较快响应;当|e(k)|≤ε时,即偏差值比较小时,采用PID控制,以保证电压电流精度和稳定度。在开机后,按照固定步长打开PWM波宽度,使得电压升高。在达到设定值一定范围后,为防止电压过冲,需要加入积分分离PID控制算法进行控制,防止电压超调。在电压达到千分之一进度范围后,需要加入积分环节,完成电源开机时迅速稳定的输出。PID算法流程如图3所示。

图3    主程序软件流程图

 

图4    PID控制算法流程图

4结语

    嵌入式ARM芯片S3C44B0在高精度开关电源数字控制系统设计中的应用,充分利用该芯片上强大的资源,简化了硬件电路,提高了软件开发速度,方便了软硬件调试,提高了系统的可靠性。该系统经现场调试证明,设计合理、运行可靠,为厂家实现了51系列8位单片机到ARM32位系统的升级,降低了成本并提高了产品的性能。

相关阅读

每日精选

点击查看更多

首页 手机 数码相机 笔记本 游戏 DIY硬件 硬件外设 办公中心 数字家电 平板电脑