单片机控制电流源设计Word文档格式.docx
《单片机控制电流源设计Word文档格式.docx》由会员分享,可在线阅读,更多相关《单片机控制电流源设计Word文档格式.docx(35页珍藏版)》请在冰豆网上搜索。
3.2.2人机界面模块11
3.2.3低通滤波电路与电压电流转化电路模块15
3.2.4恒流源模块17
4系统的软件设计及实现17
4.1系统的总体流程图19
4.2数码管正常显示子程序流程图20
4.3按键扫描子程序流程图21
4.4PWM俞出子程序流程图22
5数据测试及分析23
6结束语24
参考文献24
附录25
1绪论(设计背景)
1.1直流电流源
直流电流源作为稳定电源的分支,在工程技术和测量领域中有着重要的实用价值。
基于
模拟电路的电流源虽然可以实现高精度、宽电流范围输出,但其结构复杂,调整困难,指示
不直观。
随着单片机技术的发展,数字控制电流源开始出现,其以控制灵活、调节方便等特点展示了良好的应用前景。
当今社会,数控恒压技术已经很成熟,但是恒流源方面特别是数控恒流源的技术还有待发展,高性能的数控恒流器件的开发和应用存在巨大的发展空间。
数
控的目的是要用微处理器来代替传统直流稳流电源中手动旋转电位器,实现输出电流的预置,精度要求高。
数控直流恒流源要实现电流的键盘化输入控制,同时具有显示功能。
1.2脉冲宽度调制(PWM概述
脉冲宽度调制(PWM是利用微处理器的数字输出来对模拟电路进行控制的一种非常有效的技术,广泛应用在从测量、通信到功率控制与变换的许多领域中。
脉宽调制是开关型稳压电源中的术语。
这是按稳压的控制方式分类的,除了PWh型,还有PFM型和PWMPFM混合
型。
脉宽调制式开关型稳压电路是在控制电路输出频率不变的情况下,通过电压反馈调整其占空比,从而达到稳定输出电压的目的。
PWMI一种模拟控制方式,根据相应载荷的变化来调制晶体管栅极或基极的偏置,来实现开关稳压电源输出晶体管或晶体管导通时间的改变,这种方式能使电源的输出电压在工作条件变化时保持恒定。
PWMI一种对模拟信号电平进行数字编码的方法。
通过高分辨率计数器的使用,方波的占空比被调制用来对一个具体模拟信号的电平进行编码。
PWMI号仍然是数字的,因为在给
定的任何时刻,满幅值的直流供电要么完全有(ON),要么完全无(OFF)。
电压或电流源是以
一种通(ON)或断(OFF)的重复脉冲序列被加到模拟负载上去的。
通的时候即是直流供电被加到负载上的时候,断的时候即是供电被断开的时候。
只要带宽足够,任何模拟值都可以使用PWMS行编码。
多数负载(无论是电感性负载还是电容性负载)需要的调制频率高于10Hz,通常调制频率为1kHz到200kHz之间。
许多微控制器内部都包含有PW控制器。
占空比是接通时间与周期之比;
调制频率为周期的倒数。
执行PW操作之前,这种微处理器要求在软件中完成以下工作:
设置提供调制方波的片上定时器/计数器的周期
在PWM控制寄存器中设置接通时间
设置PWM输出的方向,这个输出是一个通用I/O管脚
启动定时器
使能PWM控制器
PWM的一个优点是从处理器到被控系统信号都是数字形式的,无需进行数模转换。
让信号保持为数字形式可将噪声影响降到最小。
噪声只有在强到足以将逻辑1改变为逻辑0或将逻辑0改变为逻辑1时,也才能对数字信号产生影响。
对噪声抵抗能力的增强是PWM目对于模拟控制的另外一个优点,而且这也是在某些时候将PWM用于通信的主要原因。
从模拟信号转向PWM可以极大地延长通信距离。
在接收端,通过适当的RC或LC网络可以滤除调制高频方波并将信号还原为模拟形式。
总之,PWM既经济、节约空间、抗噪性能强,是一种值得广大工程师在许多设计应用中使用的有效技术。
1.3单片机概述
自1946年第一台电子计算机诞生以来,经过50多年的发展,计算机能够对信息进行加工处理,并得到了各行各业的广泛应用。
计算机对人类社会的发展起到了极大的推动作用。
然而,使计算机的应用能够真正深入社会生活各个方面,促使人类社会大步跨入电脑时代的一个重要原因,是微型计算机和单片微型计算机的产生和发展。
单片微型计算机(SingleChipMicrocomputer)简称单片机,是指在一片芯片体上集成了中央处理器CPU随机存储器ROM
或EPROMI定时器/计数器、中断控制器及串行和并行I/O接口等部件,构成一个完整的微型计算机。
目前,新型单片机内还有A/D及D/A转换器、高速输入/输出部件、DMAS道、浮点运算等特殊功能部件。
由于它的结构和指令都是按工业控制要求设计的,特别适用与工业控制及数据处理场合。
因此,确切的称谓应该是微控制器,单片机只是其习惯称呼。
单片机的特点和应用
(1)单片机的特点:
体积小、使用灵活、成本低、易于产业化。
它能方便地嵌入到各种智能式测控设备及各
种智能仪器仪表中;
可靠性好,适应温度范围宽。
由于单片机的生产厂商不断地提高产品的抗干扰能力,单片机芯片本身也是按照工业测控设计的,能适应各种恶劣的环境,其抗工业噪声干扰的能力优于一般通用的CPU
易扩展,很容易构成各种规模的应用系统,控制功能强。
I/O接口多,指令系统丰富,
易于单片机的逻辑控制功能的实现;
系统内无监控或系统管理程序。
单片机系统内部一般无监控或系统管理程序,使用简单,只有用户设计和调试好的应用程序;
(2)其主要应用领域有:
测控系统。
用单片机可构成各种工业控制系统、自适应系统、数据采集系统等。
例如,温度人工气候控制、水闸自动控制、电镀生产线控制、汽轮机电调节系统、车辆检测系统、机器人轴处理器等;
智能仪表。
用单片机改造原有的测量、控制仪表,能促进仪表向数字化、智能化、多功能化、综合化、柔性化发展。
如温度、压力、流量、浓度等的测量、显示及仪表控制。
通过采用单片机软件编程技术,使测量仪表中长期存在的误差修正、线性化处理等难题迎刃而解;
机电一体化产品。
单片机与传统的机械产品结合。
是传统机械产品结构简化,控制智能化。
这类产品如:
简易数控机床,电脑绣花机,医疗器械等;
智能接口。
在计算机控制系统(特别是较大型的工业测控系统)中,普遍采用单片机进
行接口的控制与管理,因单片机与主机是并行工作,故大大提高了系统的运行速度。
例女口:
在大型数据采集系统中,用单片机对ADC接口进行控制不仅可提高采集速度,而且还能对数据进行预处理,如数字滤波,线性化处理,误差修正等;
智能民用产品。
在家用电器、玩具、游戏机、声响设备、电子称、收银机、办公设备、厨房设备等产品中引入单片机,不仅使产品的功能大大加强,而且获得了良好的使用效果;
多机应用系统。
A、功能集散系统。
多功能集散系统是为了满足工程系统多种外围功能的要求而设置的多机系统。
例如:
一个加工中心的计算机系统除了完成机床加工运行控制夕卜,还要控制对刀系统、坐标系统、状态监视、伺服驱动等工程应用系统的快速问题,以便构成大型实时工程应用系统。
典型的有快速并行数据采集、处理系统、实时图象处理系统等;
2系统方案的选择与论证
2.1功能要求
设计使用单片机与数码管键盘驱动芯片为核心制作直流电流源设计,实现直流电流输出
与数值显示功能,设计要求进行硬件、软件系统设计。
2.2系统总体方案选择与论证
方案1:
本设计采用AT89C51单片机作为整机的控制单元,通过改变AD的输入数字量来改变输出电压值,从而使输出功率管的基极电压发生变化,间接地改变输出电流的大小。
为了能够使系统具备检测实际输出电流值的大小,可以将电流转换成电压,并经过ADC进行模
数转换,间接用单片机实时对电压进行采样,然后进行数据处理及显示。
此系统比较灵活,采用软件方法来解决数据的设置以及电流的步进控制,使系统硬件更加简洁,各类功能易于
实现,能很好地满足题目的要求。
本方案的基本原理如图2-1所示。
方案2:
采用STC12C2052A单片机作为整机的控制单元,利用PWN脉宽调制技术来实现高精度数控恒流源的设计。
本系统通过小键盘和LED实现人机交流,小键盘负责设计输入要
实现的电流值,LED负责显示电流数值。
单片机根据输入的电流数值通过软件控制产生对应的PWM波,经过滤波电路后对压控恒流元件进行控制,产生电流,电流再经过采样电阻到达负载。
同时,对采样电阻两端信号进行差分和放大,送入ADC单片机根据采集到的值调整
PWM输出,从而调整了输出电流。
如此反复,直到电流达到设定要求。
本方案的基本原理如图2-2所示。
图2-1系统原理框图
图2-2系统原理框图
方案论证:
比较以上两种方案的优缺点,方案2简洁、灵活,从精度和成本等方面考虑能达到题目的设计要求,因此本次毕业设计采用方案2来实现。
2.3系统各模块方案选择与论证
(1中央控制模块
系统的核心控制模块为STC12C2052A单片机。
主要使用了STC12C2052A单片机的PWM脉宽调制功能和A/D功能。
单片机片内有一个PWM功能的定时/计数器。
PWM波是数字向模拟转换的一种重要方法,通常使用单片机的定时器做频率发生器,含有数字比较器,当设定值与定时器的值相等,引脚的电平发生翻转。
控制设定值,就控制了PWM波占空比,通过滤波,输出直流模拟量。
PWMF关稳流电源基本工作原理就是在输入电压变化、内部参数变化、外接负载变化的情况下,控制电路通过被控制信号与基准信号的差值进行闭环反馈,调节主电路开关器件的导通脉冲宽度,使得开关电源的输出电流等被控制信号稳定。
PWM波产生过程:
单片机片内有一个具有8位PWMfe能的定时/计数器。
在普通模式下,计数器不停地累加,计到最大值0xff后溢出,返回到最小值0x00重新开始。
当启用PWMft能即在单片机的快速PW模式下,通过调整CCAPN的值x可实现输出PWM波的占空比变化。
产生PWM波形的机理是:
PWMI脚电平在发生匹配时以及在计数器清零的那一个定时器时钟周期内发生跳变,即波形产生相应变化。
PWM占空比:
(256-x)/256*100%。
(2)人机界面模块
方案选择:
方案1:
采用LCD显示。
特点:
显示内容丰富,采用数字式接口,体积小、重量轻,功率消耗小,但编程复杂,且成本相对LED较高。
采用LED并行动态显示。
即一位一位地轮流点亮各位显示器,对每一位显示器而言,每隔一段时间点亮一次。
其硬件电路简单,但同样的功率驱动下,显示亮度不及静态显示,且占用I/O口较多。
方案3:
采用LED串行静态显示。
即显示某一字符时,相应的发光二极管恒定导通或
截止,这种方式每一个显示位都需要一个8位输出口控制,占用硬件较多,但仅占用控制器串口的两个I/O口,软件实现简单,显示亮度高,成本低。
LED数码管显示器由8个发光二极管组成,因此也称之为8段LED数码管,因为LED数码管显示成本较低,外加一个驱动芯片,所需单片机接口较少,而且程序容易实现。
考虑到本次设计的需要,只要显示3位电流值,采用方案2,使用1个4位共阴极数码管及1个驱动芯片ZLG7289b
本模块以ZLG7289b数码管显示驱动及键盘扫描管理芯片为核心,包括键盘电路和数码管显示电路。
键盘设计为1X4按键,由功能键“+”、“-”、“选择”及“确认”组成,
输入最小设定步进等级为0.1mA“选择”完成显示值数值切换功能。
功能键“确定”完成确定输出显示值并且产生对应数值直流电流功能。
通过驱动电路实现键值识别。
数码管采用4位共阴极数码管。
(3)低通滤波电路模块
PWM波产生后不能直接用于控制场效应晶体管,需把其变成能随占空比变化而变化的直流电压。
本次设计采用有源滤波电路,主要由放大器与RC网络组成。
低通滤波电路模块在
电路中的作用:
对PWM输出信号进行调制,首先PWM模块将输入信号转换成对时间进行调制而幅度等于电源电压的脉冲信号,PWM莫块内的全桥放大器一般都利用反相锁存调制,当一个输出为咼,另一个输出总是低。
假如50%占空比,贝U意味着开关频率的每个周期内咼和低的时间相等,脉冲信号必须通过低通功率滤波电路解调后,才能到达负载端其信号值为零。
低通功率滤波电路抑制通过时间调制的方波载波信号,在滤波电路的输出端上可以得到远低于PWM开关频率的负载载波信号,事实上占空比不断变化的PWMI号参杂了很多高
频毛刺成分,会严重干扰反馈电路的参数,同时过高的载波频率可能会损坏负载本身。
(4)恒流源模块
基本的恒流源电路主要是由输入级和输出级构成,输入级提供参考电流,输出级输出需
要的恒定电流。
恒流源电路就是要能够提供一个稳定的电流以保证其它电路稳定工作的基础,即要求恒流源电路输出恒定电流。
因此作为输出级的器件应该是具有饱和输出电流的伏安特性。
这可以采用工作于输出电流饱和状态的BJT或者MOSFE来实现。
为了保证输出晶体管的电流稳定,就必须要满足两个条件:
其输入电压要稳定
输出晶体管的输出电阻尽量大(最好是无穷大)
采用恒流二极管或者恒流三极管。
其特点精度比较高,但这种电路能实现的恒流范围很小。
采用四端可调恒流源。
这种器件靠改变外围电阻元件参数,从而使电流达到可调的目的,这种器件能够达到1〜2000毫安的输出电流。
改变输出电流,通常有两种方法:
一是通过手动调节来改变输出电流,这种方法不能满足题目的数控调节要求;
二是通过数字电位器来改变需要的电阻参数,虽然可以达到数控的目的,但数字电位器的每一级步进电阻
比较大,所以很难调节输出电流。
压控恒流源。
通过改变恒流源的外围电压,禾I」用电压的大小来控制输出电流的大小。
电压控制电路采用数控的方式,利用单片机送出数字量,经过D/A转换转变成模拟信
号,再送到大功率三极管进行放大。
单片机系统实时对输出电流进行监控,采用数字方式作为反馈调整环节,由程序控制调节功率管的输出电流恒定。
当改变负载大小时,基本上不影响电流的输出,采用这样一个闭路环节使得系统一直在设定值维持电流恒定。
该方案通过软件方法实现输出电流稳定,易于功能的实现,便于操作,故选择方案3。
(5)米样电路
当对采样电阻两端信号进行差分后,可得到采样电阻两端的电压值U,而在已知采样电
阻阻值情况下,很容易得到流经采样电阻的电流,即I=U/R。
由于负载与采样电阻在同一条
支路,故流经负载的电流也为I。
差分放大电路的放大倍数可根据采样电阻阻值以及ADC勺
参考电压来选择,差分信号经ADC口送入单片机进行处理。
3系统的硬件电路设计与实现
3.1系统的硬件组成部分
系统硬件电路主要由中央控制模块、人机界面模块、低通滤波与电压电流转换模块和恒
流源模块组成。
系统总原理图如图3-1所示
口•口■口「口1
—4**°
«
ab
~ILji—
■■1I
3.2主要电路模块设计
321中央控制模块
本模块设计主要以STC12C2052A单片机最小系统为核心。
ZLG7289b数码管显示驱动及键盘扫描管理芯片与单片机STC12C2052A的接口采用3线制SPI串行总线,由CSCLK和DIO这3根信号线组成。
CS和CLK是输入信号,由STC12C2052A提供。
DIO信号是双向的,必须接到STC12C2052A上具有双向功能的I/O上。
STC12C2052A单片机与ZLG7289b数码管显示驱动及键盘扫描管理芯片引脚对应关系如表3.1所示。
中央控制模块系统原理图如图
3-2所示。
表3.1STC12C2052AD与ZLG7289b引脚对应关系
STC12C2052A引脚
ZLG7289b引脚
功能说明
P1.2
INT
键盘请求信号,低电平(负边沿)有效
P1.4
DIO
数据信号,双向
P1.5
CLK
时钟信号,上升沿有效
P1.6
CS
片选信号,低电平有效
VCC-*5V[
图3-2中央控制模块系统原理图
STC12C2052A系列1T单片机简介:
STC12C2052AD系列单片机是宏晶科技生产的单时钟/机器周期(1T)的高速/低功耗/超强抗干扰的新一代851单片机,指令代码完全兼容传统8051,单速度快8-12倍,内部集成MAX810专用复位电路。
2路PWM8路高速8位A/D转换,针对电机控制,强干扰场合。
STC12C2052A引脚图如图3-3所示
STC12C2052AD列1T单片机特点:
增强型1T流水线/精简指令集结构8051CPU
工作电压:
2.4V〜3.8V/3.4V〜5.5V
工作频率范围:
0〜35MHz相当于普通8051的0〜420MHz
用户应用程序空间512/1K/2K/3K/4K/5K字节
片上集成256字节RAM
15个通用I/O口复位后为:
准双向口/弱上拉
可设置成四种模式:
准双向口/弱上拉,推挽/强上拉,仅为输入/高阻,开漏
EEPROM能
共2个16位定时器/计数器
PWM(路)/PCA(可编程计数器阵列)
ADC,8路8位精度
通用异步串行口(UART)
SPI同步通信口,主模式/从模式
看门狗
内部集成R/C振荡器,精度要求不高时可省外部晶体
ISP(在系统可编程)/IAP(在应用可编程),无需专用仿真器可通过串口直接下载用户程序,数秒即可完成一片
工作温度范围:
0〜75r/-40〜+85C
封装:
PDIP-20
RST
vcc
PlORxD
ADCT'
StLK'
Pl;
P3.l.TxD
ADC6MSOP1.6
XTAL2
.ADC5MO3P1.5
XTAL1
.WC4'
SS?
1,4
P3.2MD
ADC3P』
P33IXT1
ADC2P匕
P3.4TOEO
C1K0UT1ADC1PLL
P3.5T1PCA1mil
CLKOW.WCOP1.Q
GM)
miOK'
AOPi?
STC12C2O51AD
图3-3STC12C2052AD引脚图
322人机界面模块
本模块以ZLG7289b数码管显示驱动及键盘扫描管理芯片为核心,包括键盘电路和LED
显示电路。
LED选用4位共阴极数码管,实际只选通前3位使用。
键盘电路设置4个按键,通过驱动电路实现键值识别。
4个按键分别为“+”、“-”、“选择”和“确定”键。
人机界面模块系统原理图如图3-4所示。
图3-4人机界面模块系统原理图
(1)ZLG7289b数码管显示驱动与键盘管理芯片
ZLG7289b是广州周立功单片机发展有限公司自行设计的数码管显示驱动及键盘扫描管理芯片,可直接驱动8位共阴极数码管(或64只独立LED,同时还可以扫描管理多达64只按键,并自动消除抖动,可广泛地应用于仪器仪表、工业控制器、条形显示器、控制面板等领域。
ZLG7289B内部含有显示译码器,可直接接受BCD码或16进制码,并同时具有2种译码
方式。
此外,还具有多种控制指令,如消隐、闪烁、左移、右移、段寻址等。
芯片采用SPI
串行总线与微控制器接口,仅占用少数几根I/O口线。
利用片选信号,多片ZLG7289b还可以并接在一起使用,能够方便地实现多于8位的显示或多于64只按键的应用。
芯片采用I2C总线方式,与微控制器的接口仅需两根信号线。
ZLG7289b引脚图如图3-5所示,ZLG7289b引脚功能说明如表3.2所示
ZLG7289b数码管显示驱动与键盘管理芯片特点:
串行接口,无需外围元件可直接驱动LED各位独立控制译码/不译码/及消隐和闪烁属性(循环)左移/(循环)右移指令具有段寻址指令,方便控制独立LED64键键盘控制器,内含去抖动电路
工作电压2.7V〜6.0V
图3-5ZLG7289b引脚图
表3.2ZLG7289b引脚功能说明
引脚序号
引脚名称
功能描述
1
RTCC
接电源
2
Vcc
电源,+2.7〜6V
3
NC
悬空
4
GND
接地
5
6
SPI总线片选信号,低电平有效
7
SPI总线时钟输入信号,上升沿有效
8
SPI总线数据信号,双向
9
键盘中断请求信号,低电平(下降沿)有效
10
SG/KR0
数码管g段/键盘行信号0
11
SF/KR1
数码管f段/键盘行信号1
12n
SE/KR2
数码管e段/键盘行信号2
13
SD/KR3
数码管d段/键盘行信号3
14
SC/KR4
数码管c段/键盘行信号4
15
SB/KR5
数码管b段/键盘行信号5
16
SA/KR6
数码管a段/键盘行信号6
17
DP/KR7
数码管dp段/键盘行信号7
18
DIG0/KC0
数码管字选信号0/键盘列信号0
19
DIG1/KC1
数码管字选信号1/键盘列信号1
20
DIG2/KC2
数码管字选信号2/键盘列信号2
21
DIG3/KC3
数码管字选信号3/键盘列信号3
22
DIG4/KC4
数码管字选信号4/键盘列信号4
23
DIG5/KC5
数码管字选信号5/键盘列信号5
24
DIG6/KC6
数码管字选信号6/键盘列信号6
25
DIG7/KC7
数码管字选信号7/键盘列信号7
26
OSC2
晶振输出信号
27
OSC1
晶振输入信号
28
复位信号,低电平有效
ZLG7289bSPI串行接口信号:
ZLG7289与STC12C2052A的接口采用3线制SPI串行总线,由CSCLI和DIO&
3根信号线
组成。
CS和CLI是输入信号