首页 电子设计竞赛论文-简易数控直流稳压电源设计

电子设计竞赛论文-简易数控直流稳压电源设计

举报
开通vip

电子设计竞赛论文-简易数控直流稳压电源设计 电子设计大赛论文 简易数控直流稳压电源设计 题目 名称 简易数控直流稳压电源设计 学院 专业 指导教师 设计要求: (1)输出电压:范围 0~+9.9V,步进 0.1V,纹波不大于 10mV; (2)输出电流:500mA; (3)输出电压值由数码管显示; (4)由“+”、“-”两键分别控制输出电压步进增减; (5)为实现上述几部件工作,自制一稳压直流电源,输出±10V,+5V。 提高要求: (1)输出电压可预置在 0~9.9V 之间的任意一个值; (2)用自动扫描...

电子设计竞赛论文-简易数控直流稳压电源设计
电子设计大赛 论文 政研论文下载论文大学下载论文大学下载关于长拳的论文浙大论文封面下载 简易数控直流稳压电源设计 题目 名称 简易数控直流稳压电源设计 学院 专业 指导教师 设计要求: (1)输出电压:范围 0~+9.9V,步进 0.1V,纹波不大于 10mV; (2)输出电流:500mA; (3)输出电压值由数码管显示; (4)由“+”、“-”两键分别控制输出电压步进增减; (5)为实现上述几部件工作,自制一稳压直流电源,输出±10V,+5V。 提高要求: (1)输出电压可预置在 0~9.9V 之间的任意一个值; (2)用自动扫描代替人工按键,实现输出电压变化(步进 0.1V 不变); (3)扩展输出电压种类(比如三角波等)。 比赛工作 计划 项目进度计划表范例计划下载计划下载计划下载课程教学计划下载 : (1)查阅资料,设计硬件电路;(4.17-4.20) (2)硬件电路焊接; (4.21-4.23) (3)整机调试,编写设计报告(4.24-4.29) 参考书籍: [1]《单片微机原理及应用》,第二版,机械工业出版社,2004年2月。 [2]《C8051F系列单片机原理与应用》,张培仁,孙力,清华大学出版社,2013年1月第一版。 [3]C程序设计,谭浩强,第三版,清华大学出版社,2005年7月第二版。 参考文献: [1]何希才,张明莉。新趔稳压电源及应用实例[M]。北京:电子工业出版社.2004. [2]王小明,卢志强。基于STC89C52数控直流电源设计。微计算机信息,2009,12。 [3]何香玲,邓刚。数控式步进可调稳压源[J]。现代电子技术,2007。 [4]刘兰波。数控直流电源的研究[J]。河北北方学院学报:自然科学版,2009。 项 目 组 成 员 姓 名 学 号 专业班级 所在学院 项目中的分工 摘 要 数控直流稳压电源是电子技术常用的设备之一,广泛的应用于教学、科研等领域。本课题以单片机为控制核心,进行算法控制和集成运放线性负反馈,并通过7219驱动四位显示器进行精确显示,设计并实现了一台高精度、低噪声的数控直流电流源。 该稳压电源由供电电源、数控系统、模拟输出三个部分组成。供电电源采用MC7815和MC7915稳压器,通过桥式整流电路,为整机提供了稳定的直流供电;控制系统以单片机C8051F020为核心,其内部的12位DAC转换器产生控制输出,实现了输出电流的实时数控和精确检测。模拟部分利用集成运放继电器等模块实现不同波形的输出;系统还设置了串口通讯、遥控功能。 经测试,输出电压范围达0—9.9V,输出纹波及噪声小于10mV,均达到题目指标。 论文阐明了软硬件设计依据,给出了系统功能和性能测试结果,并附录了详细的设计资料。 关键词: 恒压源 集成运放 7219驱动器 单片机 实时数控 目 录 第 1 章 方案 气瓶 现场处置方案 .pdf气瓶 现场处置方案 .doc见习基地管理方案.doc关于群访事件的化解方案建筑工地扬尘治理专项方案下载 论证与原理设计 1 1.1 模拟输出方案 1 1.2 供电电源方案 1 1.3 控制系统方案 2 1.4 整机方案框图 2 第 2 章 电路设计与参数论证 3 2.1 供电电源(15V) 3 2.2 5V供电电源 5 2.3 数控电路 5 2.4 模拟输出电路及AD校准 7 2.5 驱动数码管显示电路 10 第 3 章 系统功能与软件设计 11 3.1 系统功能分析 11 3.2 软件设计结构 12 第 4 章 功能及性能测试 16 4.1 测试条件 16 4.2 整机调试 16 4.3 系统性能测试 16 4.4 性能参数测试 17 第 5 章 设计总结及技术展望 21 参考资料 23 附录 23 附录一 测试仪器清单 23 附录二 原理电路图 23 附录三 元器件清单 24 附录四 单片机程序 25 数控直流稳压电源是输出为稳定直流电压、并可用数控方式调节和稳定输出电压的电源设备,在对工作电压稳定度、纹波电压大小等有较高要求的领域具有广泛的应用,如:电镀、精密加工、激光器等。 为此我们选择了简易数控直流稳压电源设计作为此次竞赛的课题。 第 1 章 方案论证与原理设计 1.1 模拟输出方案 模拟输出部分是数控直流稳压电源的重要组成部分,是决定各项设计指标的关键性因素。 1.1.1 方案选择 模拟部分,通过给功放供电,功放构成反相器、反相相加器、反相发大器,积分器分别实现反相、反相相加、放大、积分等功能,结合继电器的控制,分别输出方波、三角波和直流,并反馈给单片机,用AD采样并校准。同时,利用OP547输出稳定的500mA直流电流。 1.1.2 参数优化设计 由于本题要求的输出电压精度高,纹波小。因此我们必须考虑保证这些质量参数的优化方案。 纹波与噪声控制 最大纹波电压是在设定的直流电压的情况下,使电压的纹波(包过噪声)的绝对值大小,通常以峰-峰值或有效值表示。所以在设计时充分考虑这些因素,在电路中必要部分加入多种降噪滤波措施。 安全保护功能 安全保护主要用于输出电流较大而负载阻值较小时。因此在设计电路时考虑了系统的过热、过流、过压和反压保护。 1.2 供电电源方案 供电电源一般有开关电源、线性电源两种方案。 开关电源 这种电源主要提供可靠稳定的电压类似开关式恒流源,功率损耗小,效率高,比较经济,但电压波纹大,难以滤除,会对后续电路造成影响。 线性电源 这种电源也提供可靠稳定的电压,结构简单,纹波电压小(10mV以下),易滤除,抗电磁干扰性能和电源纯净性好。 1.3 控制系统方案 控制系统功能接收取样信号,进行运算处理,并发出控制信号控制负载电流,而且有相应显示和写入控制字等功能。 常用的实现方案有硬件逻辑电路、单片机软件编程和CPLD硬件逻辑编程。硬件逻辑电路结构简单,实现方便,但功能扩展性不强;单片机系统通过自身时钟编程产生逻辑信号序列,可键盘预置信号序列状态及数码显示,使用灵活方便,可通过软件升级达到系统升级,开发容易,性价比高;CPLD电路也可实现以上功能,且处理速度更快,但价格偏贵,开发难度大,多用于高速实时系统。 所以选用单片机作为控制系统的的核心接收取样信号对其处理并发出控制信号控制负载电流。其他外围电路还有LED显示、输入键盘、时钟信号。 1.4 整机方案框图 由以上分析可得出整机电路的基本结构方案框图如图1-1所示。 图 1‑1 数控直流稳压电源框图 第 2 章 电路设计与参数论证 通过前一章的分析,欲获得一个高性能的数控直流电流源 ,主要是设计好调整器电路,放大电路,反馈控制电路,电源电路。 本章详细的介绍了各部分功能电路的设计思想和原理。 2.1 供电电源(15V) 整机供电电源原理电路如图2-2所示。 线性稳压电源电路主要由桥式整流电路、滤波电路、线性稳压器、保护电路和工作指示电路(LED灯)组成。 经降压变压器变换后的±15V交流电压由P2端口输入,经过整流、滤波和稳压后,由P1端口出端±15V直流电压,为信号处理电路供电。 图2-1 线性±15V稳压电源电路原理图 稳压器选择 根据所选运算放大器OP07的特性(运算放大器的选择依据将在信号处理电路元件选择中给出),需要提供直流电电压。根据信号处理电路原理图和系统方案框图,计算得信号处理电路所需的电流约为1A(后面将给出详细计算过程)。所以稳压器选择MC7815和MC7915。表2-1列出了MC7815和MC7915的部分参数。 表2-1 稳压器部分参数 型号 输出V (典型值) 输出电流A 输入范围V 最小压差V 测试条件 Ui(v) Io(mA) MC7815AC 15 1.0~1.2 17.9~30 2 23 1000 MC7915AC -15 1.0~1.2 -17.9~-30 2 -23 500 变压器选择 因为运放供电需±15V电压,而稳压器输入输出电压差要求不小于3V,所以此处整流电路电压输入处取18V。 若设桥式整流电路输入电压为U1 QUOTE ,输出电压为U2,则在一般情况下(负载,滤波电容), QUOTE U2估算值为: (2-1) 故当 QUOTE U1=15V时,整流电路输入为。所以选取220V输入±15V电压输出的变压器。 整流二极管选择 桥式整流电路输入±15电压,即输入电压U=30V。二极管击穿电压。 对于桥式整流电路,流过每个二极管的平均电流是负载电流的一半,即 (2-2) 式中(±18V)为整流电路输入电压,为其负载。 线性稳压电源的负载主要由信号处理系统中的运放构成,运放OP07工作电流小于10mA,系统中共5个运放,故整流电路输出电流I0=26mA(考虑其他负载估算输出最大电流)。稳压电路输出电压U0=30V(±15V),故负载估算值为RL==1.2kΩ。 故流过二极管电流为18mA。 所以选择1N4001二极管,其反相击穿电压为50V,额定工作电流为1A。 保护二极管的选择(D1、D9) 当输入端意外短路时,保护二极管能给输出电容、提供一个放电通路,防止稳压器调节管击穿。 此处选取1N4001型二极管,其最高反相电压Urm=50V,远大于稳压器输入、输出端电压差3V;且其额定电流I=1A,满足放电要求。 滤波电容选择(C1、C2)选择 滤波电容的选取应满足 Td=RLC1>=(3~5)T2 (2-3) Td为放电时常数,T为交流电周期。由前面计算得RL= =1.2kΩ。故C1=C2>1.67nF,此处取C1=C2=330uF。 性能改善电容选择 C3,C4用于改善高频波纹,当稳压器距离C1,C2越远时,C3,C4越大。一般取0.1~1uF,此处选取C3=C4=0.1uF。 C5,C6用于减小由负载电流瞬时变化引起的高频干扰,一般取C5=C6=0.1uF。 当稳压器输出离负载较远时,器输出端接电容用以改善输出波纹特性并减小低频干扰。一般取C7=C8=100uF。 发光二极管(D2、D8)及限流电阻(R1、R2)选择 电路中发光二极管D2、D8用来显示电源是否正常工作,其工作电流小于10mA。故此处选取限流电阻R1=R2=5.1KΩ。 2.2 5V供电电源 供电电源原理电路如图2-2所示。 提供+5V直流电电压,供给单片机及键盘、显示器等其它器件正常工作。其器件参数等同于15V供电电源,在此不加累述。 图2-2 线性5V稳压电源电路原理图 2.3 数控电路 数控直流电流源的控制电路采用单片机最小系统对电路各部分进行控制。最小系统由MCU、采样输入、控制输出、键盘、显示电路组成。 2.3.1 单片机最小系统 单片机最小系统电路如图2-3所示。 图 2‑3 单片机最小系统电路 MCU选型 MCU选用Silicon Laboratories公司的C8051F020单片机,该系列单片机片内含CIP-51的CPU内核,它的指令系统与MCS-51完全兼容。其中C80511020单片机具有控制系统所需的模拟和数字外设,包括看门狗、ADC、DAC、电压比较器,VDD监视器和温度传感器等,并具有多种总线接口。与以前的5l系列单片机相比,C8051F020增添了许多功能,其可靠性和速度也有了很大提高。 时钟设计 数控直流稳压电源要求微处理器采样周期设置为0.5s,并且实测值和设定值间隔显示变换周期为2s左右,采用12MHZ晶振,可满足系统要求。 键盘与显示 数控直流稳压电源具有键盘输入与显示功能。用自治键盘对电压进行设定,采用四位数码管显示实测值和设定值。采用7219芯片电路作为显示控制和驱动端,其优点是显示位数多,节约IO端口,使用方便,价格合理。 DA转换电路 为了满足取样精度需要,选择电压为2.5V的基准电压,通过其内部的12位DA变换器,使其步长精度达到2.5V212 *41≈0.1V,通过软件编程,从DAC0、DAC1端口输出相应信号波,传到模拟部分完成波形的转换;DA是先写入高8位,再写入低4位。 2.4 模拟输出电路及AD校准 方波实现原理 控制单片机内的DA转换,使其DAC0口输出方波(此时的方波为单极性,电压幅值为2.5V),同时,DAC1输出直流(控制其电压为1.25V),直流电压经过反相器,变成-1.25V,然后,与方波进行反相相加,得到±1.25V方波。原理图如图2-5所示。 图 2‑4-1 叠加方波实现图 反相放大调节实现原理 根据要求需0—9.9V电压,则经过功放OP07AJ的反相放大器,与前一个反相器想抵,输出正向电压,通过调动滑动变阻器R32确定放大倍数,倍数为得到 QUOTE 10 V的方波。若仅直流,DAC1无输入,直流电压直接由DAC0进入,直接反相即可,原理图如图2-5所示。 图 2‑4-2 OP07AJ功放的反相放大器 三角波实现原理 需要三角波输出时,控制继电器K1,使其开关合下,三角波经过积分电路,变成三角波,输出。如不需三角波,K1上拨,将积分器短路,直接流过。(图6) 图2-4-3 继电器与积分器 通过OP547功率放大器,在电压不变的情况下,增大电流,达到要求的500mA,S23为拨键开关,按下将会产生输出。下方的R43,R45电阻起到3:1的分压作用 图2-4-4 OP547电流调整图 AD校准原理 在任何输出情况下,需要输出电压对单片机进行反馈,通过反馈控制DA转换的精度。当直流输出时,控制继电器K2,将二极管短路,而在方波、三角波输出时,使继电器开关合上,双极性的信号(方波或三角波)经过二极管变成单极性(0V-2.5V)反馈给单片机AIN0.0端口,经过单片机内部12位的A D采样,再与DA输入的数字量比较,进行校正,保证其准确性。 图2-4-5 反馈电路图 2.5 驱动数码管显示电路 该部分由7219显示驱动和四位LED显示器组成,MAX7219是一种集成化的串行输入输出共阴极显示驱动器,它连接单片机驱动4位LED显示器的BCD码——7段数字显示,电路图如下: 图2-5 MAX7219引脚连接图 与单片机相连部分,将DIN,LOAD,CLK端分别于IO端 P1.4,P1.6,P1.7相连,串行数据在DIN 输入16 位数据包,通过时钟的上升沿数据均移入到内部16 位移位寄存器,LOAD的上升沿被载入数据寄存器或控制寄存器。16位串行数据D0-D15,其中,D8-D11 为寄存器地址位。D0-D7 为数据位。D12-D15 为无效位。在传输过程中,首先接收到的是D15 位与数码管相接部分。 与数码管相连部分, DIG0、DIG 1、DIG 2、DIG 3端分别接四个数码管相连进行位选,SEG A、SEG B、SEG C、SEG D、SEG E、SEG F、SEG G、SEG DP分别与数码管相应字母的片选端相连进行数字显示。外部电阻的最小值为9.53KΩ,它设定段电流为40mA。 第 3 章 系统功能与软件设计 3.1 系统功能分析 1)显示功能 四位数码管分别各两位显示电压的大小值(0—9.9V)和频率值; 2)键盘示意图 1 2 3 4 5 6 7 8 9 0 . 确定 预置 自扫 直流 三角波 方波 速度 自动+ 自动- 手动+ 手动- 图 3‑1 键盘示意图 复位按键22个,0-9和“.”作为数字输入键,并有“预置”“自扫”“直流”“三角波”“方波”“速度”“自动+”“自动-”“手动+”“手动-”“确定”作为功能控制键具体介绍如下; 预置:在工作状态前预先设置一个电压。 自扫:按下该键,输入数值,再按“确定”键,可直接由预设值自动扫描到该数值。 直流:按下,示波器显示直流电压输出。 三角波:按下,示波器显示三角波形电压输出。 方波:按下,示波器显示方波形电压输出。 速度:控制电压自动变化的速度,分快慢两档。 自动+-:在自扫状态下,使电压自动以0.1V步进增加或减小。 手动+-:手动调节时,每按一次使电压以0.1V步进增加或减小。 确定:输入数字后,按此键确认。 拨键开关1个,为输出“output”,当键拨上时输出信号,拨回时停止输出。 3)控制: a) 接收采样电压并与设定值比较产生控制信号输出 b) 可由键盘设置设定值 3.2 软件设计结构 3.2.1 控制及显示程序设计思想 程序由主程序、定时器中断程序、键盘扫描程序四部分组成。各部分功能及流程图如下。 主程序 主程序的主要工作是进行初始化,扫描键盘,并响应键盘,设定电流值。 图 3-1 主程序流程图 键盘扫描子程序 该系统需要22个按键即可实现所有功能。当单片机响应键盘后,则得到一个返回值。软件设计采用了状态转换的编程方法,有工作状态和编辑状态两种状态。在工作状态只响应确认键,并转入编辑状态,不响应其它任何键;在编辑状态设定输出电流值,确认和取消键退出编辑状态,转入工作状态。这样不仅降低了编程的难度,也提高了程序的稳定性。 其流程图如下: 图 3‑2 键盘扫描子程序流程图 定时器中断程序 电路中AD采样周期为130ms,当定时器T0中断后进行一次采样,单片机处理后,输出DA进行调节,并且显示。定时器中断程序流程如图3-3所示。 图 3‑3 定时器中断程序流程 ADC反馈调节 需要得到精确的电压值,模拟功放电路部分终端会输入一个反馈,单片机的ADC会进行采样,读采样数据,并与DAC设定值进行对比,若误差err<=0.05,则返回重新采样;若err>=0.05,进行PID线性校正,控制调整电压和传送显示。 设电压变化为 ,当前电压为Vn,利用err*coff进行修正。 图 3‑4 ADC反馈调节子程序流程图 自动扫描中断服务程序 此功能是计算机实现自动加减功能的程序,根据扫描方向修改当前电压值,并判断其是否超过极性范围(0—9.9V),到达端点值时停止扫描,来完成自动扫描的全部过程。 图 3‑5 自动扫描中断服务子程序流程图 方波三角波中断 进入该功能模块时,定时器1启动,当其溢出时,触发中断服务程序,使DA交替输出高电平、低电平,实现方波输出;输出三角波时,控制继电器,将积分器接入电路,对方波进行积分,得到三角波。 图 3‑6 方波三角波中断子程序流程图 第 4 章 功能及性能测试 4.1 测试条件 测试环境 航海学院222大型电子实验室,常温常湿常压。 测试仪器 表 4‑1 主要测试仪器清单 序号 名 称 型号、规格 生产厂家 1 数字示波器 DPO7354 TEK 2 数字万用表 VC9806 VICTOR 4.2 整机调试 在电路板装配好后,进行整机调试。 1) 测试供电电源: =14.266V, =-14.898V, =5.000V,系统供电正常。 2) 把电路各部分连为一体。对控制部分进行检测,观察显示部分能正常工作和键盘按键功能能实现,且显示与测量值基本一致,所以电路能正常工作。 4.3 系统性能测试 显示部分功能测试 用键盘随意编辑一个设定值,观察能否交替显示设置值和测量值,同时用电压表测量负载电压值,比较这3个值大小,相差很小,达到了设计指标,负载输出正常。重复上述操作后结果一致,显示功能实现。 键盘按键功能测试 1) 开机默认直流输出状态,数码管显示直流电压; 2) 按下“+-”键,电压值以步进0.1增加减小; 3) 按“预置”键,预置一个电压值,断电重启后,显示该预置电压值; 4) 按“自动扫描”键,进入自动扫描状态,此时,在键盘上输入一个电压值,按“确定”键,开始以0.1的步进自动扫描到该数值; 5) 按“自扫+-”电压自动以0.1的步进增加减小,直到增加至9.9V减小至0.0V在扫描时,按“确认”键停止; 6) 在“自扫+-”状态下,按“速度”键,可以控制扫描的速度(快慢); 7) 按“方波”键,实现输出方波(用示波器观测),数码管显示方波峰值; 8) 按“三角波”键,实现输出三角波(用示波器观测),数码管显示三角波峰值; 9) 在“方波”、“三角波”输出状态下,按“直流”键,转入直流输出状态; 10) 按“确认”键,实现数字的有效输入及正确显示。 4.4 性能参数测试 4.4.1输出电压精度定标 改变输出电流的设定值,用高精度电压表测量负载上电压,填入下表。分别在开路、200mA、500mA三种状态下,进行数据段测量和误差的计算,从而判断出输出电压的精确读。 表 4‑2 开路输出电压精度定标数据(单位:V) 预设值 开路 200mA 500mA 显示值 测量值 显示值 测量值 显示值 测量值 0.0V 0.0 0.009 0.0 0.009 0.0 0.009 0.1V 0.1 0.102 0.1 0.101 0.1 0.100 0.2V 0,2 0.203 0,2 0.202 0,2 0.200 0.3V 0,3 0.305 0,3 0.303 0,3 0.301 0.4V 0,4 0.406 0,4 0.403 0,4 0.401 0.5V 0,5 0.508 0,5 0.505 0,5 0.502 0.6V 0.6 0.608 0.6 0.604 0.6 0.601 0.7V 0.7 0.710 0.7 0.705 0.7 0.701 0.8V 0.8 0.810 0.8 0.805 0.8 0.800 0.9V 0.9 0.912 0.9 0.906 0.9 0.900 1.0V 1.0 1.012 1.0 1.005 1.0 0.999 1.1V 1.1 1.112 1.1 0.105 1.1 1.099 1.2V 1.2 1.215 1.2 1.207 1.2 1.200 1.3V 1.3 1.315 1.3 1.307 1.3 1.299 1.4V 1.4 1.417 1.4 1.408 1.4 1.400 1.5V 1.5 1.517 1.5 1.507 1.5 1.498 1.6V 1.6 1.618 1.6 1.608 1.6 1.599 1.7V 1.7 1.720 1.7 1.709 1.7 1.699 1.8V 1.8 1.820 1.8 1.808 1.8 1.798 1.9V 1.9 1.922 1.9 1.910 1.9 1.899 2.0V 2.0 2.024 2.0 2.011 2.0 2.000 2.1V 2.1 2.125 2.1 2.111 2.1 2.099 2.2V 2.2 2.225 2.2 2.210 2.2 2.198 2.3V 2.3 2.327 2.3 2.312 2.3 2.299 2.4V 2.4 2.426 2.4 2.411 2.4 2.397 2.5V 2.5 2.529 2.5 2.513 2.5 2.499 2.6V 2.6 2.631 2.6 2.615 2.6 2.600 2.7V 2.7 2.730 2.7 2.713 2.7 2.697 2.8V 2.8 2.833 2.8 2.815 2.8 2.799 2.9V 2.9 2.935 2.9 2.917 2.9 2.900 3.0V 3.0 3.036 3.0 3.016 3.0 2.999 3.1V 3.1 3.136 3.1 3.116 3.1 3.099 3.2V 3.2 3.238 3.2 3.216 3.2 3.199 3.3V 3.3 3.337 3.3 3.316 3.3 3.297 3.4V 3.4 3.440 3.4 3.417 3.4 3.398 3.5V 3.5 3.540 3.5 3.517 3.5 3.498 3.6V 3.6 3.643 3.6 3.619 3.6 3.599 3.7V 3.7 3.743 3.7 3.719 3.7 3.698 3.8V 3.8 3.844 3.8 3.820 3.8 3.798 3.9V 3.9 3.946 3.9 3.920 3.9 3.898 4.0V 4.0 4.045 4.0 4.019 4.0 3.996 4.1V 4.1 4.147 4.1 4.120 4.1 4.097 4.2V 4.2 4.248 4.2 4.221 4.2 4.197 4.3V 4.3 4.350 4.3 4.322 4.3 4.298 4.4V 4.4 4.451 4.4 4.423 4.4 4.398 4.5V 4.5 4.551 4.5 4.522 4.5 4.497 4.6V 4.6 4.654 4.6 4.624 4.6 4.598 4.7V 4.7 4.753 4.7 4.722 4.7 4.696 4.8V 4.8 4.855 4.8 4.823 4.8 4.796 4.9V 4.9 4.957 4.9 4.925 4.9 4.898 5.0V 5.0 5.057 5.0 5.024 5.0 4.996 5.1V 5.1 5.058 5.1 5.124 5.1 5.095 5.2V 5.2 5.260 5.2 5.226 5.2 5.197 5.3V 5.3 5.360 5.3 5.325 5.3 5.295 5.4V 5.4 5.462 5.4 5.427 5.4 5.396 5.5V 5.5 5.562 5.5 5.526 5.5 5.495 5.6V 5.6 5.665 5.6 5.628 5.6 5.596 5.7V 5.7 5.766 5.7 5.729 5.7 5.696 5.8V 5.8 5.867 5.8 5.829 5.8 5.796 5.9V 5.9 5.967 5.9 5.929 5.9 5.895 6.0V 6.0 6.068 6.0 6.028 6.0 5.995 6.1V 6.1 6.170 6.1 6.130 6.1 6.096 6.2V 6.2 6.272 6.2 6.231 6.2 6.196 6.3V 6.3 6.372 6.3 6.330 6.3 6.295 6.4V 6.4 6.473 6.4 6.431 6.4 6.395 6.5V 6.5 6.575 6.5 6.533 6.5 6.496 6.6V 6.6 6.675 6.6 6.632 6.6 6.595 6.7V 6.7 6.779 6.7 6.736 6.7 6.697 6.8V 6.8 6.880 6.8 6.836 6.8 6.797 6.9V 6.9 6.980 6.9 6.936 6.9 6.896 7.0V 7.0 7.080 7.0 7.034 7.0 6.994 7.1V 7.1 7.179 7.1 7.133 7.1 7.094 7.2V 7.2 7.282 7.2 7.234 7.2 7.195 7.3V 7.3 7.384 7.3 7.336 7.3 7.295 7.4V 7.4 7.484 7.4 7.435 7.4 7.393 7.5V 7.5 7.587 7.5 7.538 7.5 7.494 7.6V 7.6 7.686 7.6 7.636 7.6 7.593 7.7V 7.7 7.788 7.7 7.737 7.7 7.693 7.8V 7.8 7.890 7.8 7.839 7.8 7.795 7.9V 7.9 7.992 7.9 7.940 7.9 7.895 8.0V 8.0 8.092 8.0 8.039 8.0 7.993 8.1V 8.1 8.193 8.1 8.140 8.1 8.093 8.2V 8.2 8.295 8.2 8.242 8.2 8.195 8.3V 8.3 8.396 8.3 8.342 8.3 8.294 8.4V 8.4 8.499 8.4 8.444 8.4 8.395 8.5V 8.5 8.599 8.5 8.543 8.5 8.494 8.6V 8.6 8.701 8.6 8.645 8.6 8.595 8.7V 8.7 8.800 8.7 8.743 8.7 8.693 8.8V 8.8 8.904 8.8 8.846 8.8 8.795 8.9V 8.9 9.003 8.9 8.945 8.9 8.893 9.0V 9.0 9.104 9.0 9.045 9.0 8.993 9.1V 9.1 9.204 9.1 9.144 9.1 9.090 9.2V 9.2 9.307 9.2 9.246 9.2 9.191 9.3V 9.3 9.409 9.3 9.347 9.3 9.292 9.4V 9.4 9.510 9.4 9.448 9.4 9.393 9.5V 9.5 9.610 9.5 9.546 9.5 9.491 9.6V 9.6 9.711 9.6 9.647 9.6 9.591 9.7V 9.7 9.812 9.7 9.748 9.7 9.690 9.8V 9.8 9.915 9.8 9.850 9.8 9.792 9.9V 9.9 10.017 9.9 9.951 9.9 9.892 图 3‑7 输出电压误差测量图 结论: 输出电压Uo的设定值在0~9.9V变化时显示的测量值、实际测的值、纹波电压、绝对误差均基本达到要求。 4.4.2 纹波及噪声 由测试结果,可知: 最大纹波及噪声电压U在负载20Ω时小于等于10mV,完全符合题目要求。 4.4.1 极限参数测试 最大输出电压范围:0~9.9V; 纹波电压:开路时,纹波电压小于120mV; 负载20Ω时,纹波电压小于10mV; 负载50Ω时,纹波电压小于50mV。 第 5 章 设计总结及技术展望 本课题设计并实现了数控直流稳压电源,功能和性能部分超过了题目的基本要求与发挥要求,圆满地完成了竞赛题目的要求,并从实用性和可行性出发,对系统做出了一定的技术发挥和改进。 系统功能与性能总结 系统功能与性能测试结果与题目要求的性能指标对比总结如表5-1所示。 表 5‑1 系统功能与性能总结 基本要求 输出电压范围:0V~9.9V 具有”+”、”-“步调功能,步进0.1V 自动扫描代替“+”、“-”步调功能,步进0.1V 纹波电压≤10 mV 扩展输出电压种类 实测性能 输出电压范围:0V~9.9V 具有”+”、”-“步调功能,步进为0.1V 具有自动扫描功能,步进为0.1V 纹波电压≤10Mv(负载20Ω) 三角波、方波 技术展望 我们很好的完成的附加功能有: 增加系统自检、自校,ADC采样后,利用PID线性校准实现高精度恒流和稳压输出,; 由于时间和条件的限制,我们设想而尚未实现的功能有: 1) 在性能上,增大输出电流极限(本系统硬件已具备输出9.9V电压的能力); 2) 在检测上,增加系统温度漂移和时间漂移等稳定性能的测试。 工作总结 控电源是一个原理和操作都比较简单的电子系统,数控电源的输出电压调整范围为0.0V到9.9V,在这个范围内,以0.1V的步进值,可以提供任一想要得到的电压,为负载供电,并且操作简单,使用方便。 本次设计在完成了题目的要求中仍有不足之处,其中主要的是没有达到高精度的设计要求。其主要原因是设计条件不够,在选择元器件上没有能够很好的选择。 参考 [1]《单片微机原理及应用》,第二版,机械工业出版社,2004年2月。 [2]《C8051F系列单片机原理与应用》,张培仁,孙力,清华大学出版社,2013年1月第一版。 [3]C程序设计,谭浩强,第三版,清华大学出版社,2005年7月第二版。 [4]何希才,张明莉。新稳压电源及应用实例[M]。北京:电子工业出版社.2004. [5]王小明,卢志强。基于STC89C52数控直流电源设计。微计算机信息,2009,12。 [6]何香玲,邓刚。数控式步进可调稳压源[J]。现代电子技术,2007。 [7]刘兰波。数控直流电源的研究[J]。河北北方学院学报:自然科学版,2009。 附录 附录一 测试仪器清单 附表 1 主要测试仪器清单 序号 名 称 型号、规格 生产厂家 3 数字示波器 DPO7354 TEK 4 数字万用表 VC9806 VICTOR 附录二 原理电路图 整体电路图 附录三 元器件清单 型号 个数 封装 电阻 10k 30 直插 2k 10 直插 4.7k 1 直插 10K电位器 1 直插 1k 15 直插 0Ω 2 直插 100k 1 直插 51k 1 直插 5.1k 1 直插 3k 1 直插 电容 100Uf25V 4 贴片钽电容 22Uf16V 1 贴片钽电容 330Uf25V 1 贴片钽电容 104 2 直插 LED灯 6 直插(大) LED灯 1 直插(小) IN4148 1 直插 IN4001 5 直插 HFD27005(继电器) 2 直插 LT1460 1 DIP-8 HDR1*3(插座) 1 直插 HDR1*2(插座) 2 直插 9013(QNPN) 2 SOT-23 BUTTON(按钮) 23 直插 MAX7219CNG 1 直插 C8051F020 1 TQFP100 REG1117-3.3 1 贴片 OP07AJ 5 DIP8 C8051F020JTAG 1 直插 SM420564(数码管) 1 4合一 MC78T05ACT 1 直插 12MHZ晶振 1 直插 变压器(220v转15V) 1 无 变压器(220v转6V) 1 无 附录四 单片机程序 file name: pressureMeasure.c #include "c8051f020.; used for SCANUP and SCANDOWN int counter; used in WK_PRESET unsigned int g_code; unsigned int measureVol; unsigned int num; 数字键标志0-99 int scan_counter; used for auto-scaning int vol; GPIO定义的例子 sbit CLK7219 = P1^5; 7219输入时钟 sbit LOAD7219 = P1^6; 7219数据输入帧信号 sbit DIN7219 = P1^4; 7219数据串行收入 sbit LED_PRESET = P0^0; 预置键指示灯 sbit LED_AUTO_SCAN = P0^1; 自动扫描指示灯 sbit LED_DC_MOD = P0^2; 直流输出指示灯 sbit LED_SQU = P0^3; 方波输出指示灯 sbit LED_TRI = P0^4; 三角波输出指示灯 sbit SET = P0^5; 预置键 sbit AUTO_SCAN = P0^6; 自动扫描键 sbit DC_MOD = P0^7; 直流输出 sbit SQU = P3^0; 方波输出 sbit TRI = P3^1; 三角波输出 sbit SCAN_SPEED = P3^2; 扫描速度控制键 sbit SCAN_A = P3^6; 自动扫描+ sbit SCAN_S = P3^5; 自动扫描— sbit INCREASE = P3^4; 旋钮— sbit DECREASE = P3^3; 旋钮+ sbit NUM_0 = P1^0; 数字0 sbit NUM_1 = P3^7; 数字1 sbit NUM_2 = P2^0; 数字2 sbit NUM_3 = P2^1; 数字3 sbit NUM_4 = P2^2; 数字4 sbit NUM_5 = P2^3; 数字5 sbit NUM_6 = P2^4; 数字6 sbit NUM_7 = P2^5; 数字7 sbit NUM_8 = P2^6; 数字8 sbit NUM_9 = P2^7; 数字9 sbit DECIMAL_POINT = P1^1; 小数点 sbit ENTER = P1^2; Enter键 延时 void Delay(uint nCount) delay nCount us { while(nCount--); } void SetDAC0(int dat) { uchar low; uchar _counter++; if(up==1) { if(scan_counter==5) { scan_counter=0; if(i<99) { g_code=code_tab[i++]; SetDAC0(g_code); vol=g_code*0.02483; DisBuf[2]=Tab[vol10]| 0x80; DisBuf[3]=Tab[vol%10]; } else g_code=code_tab[i]; SetDAC0(g_code); vol=g_code*0.02483; DisBuf[2]=Tab[vol10]| 0x80; DisBuf[3]=Tab[vol%10]; } } if(down==1) { if(scan_counter==5) { scan_counter=0; if(i>0) { g_code=code_tab[i--]; SetDAC0(g_code); vol=g_code*0.02483; DisBuf[2]=Tab[vol10]| 0x80; DisBuf[3]=Tab[vol%10]; } else g_code=code_tab[i]; SetDAC0(g_code); vol=g_code*0.02483; DisBuf[2]=Tab[vol10]| 0x80; DisBuf[3]=Tab[vol%10]; } } TR0=1; EA=1; } 定时器1中断 char squareLevel = 0; void Timer1IntServe(void) interrupt 3 { EA=0; TR1 = 0; TL1 = 0x18; TH1 = 0xFC; TR1 = 1; if(squareLevel == 0) { squareLevel = 1; DAC0L=0x00; DAC0H=0x00; } else (squareLevel == 1) { squareLevel = 0; DAC0L=0xFF; DAC0H=0xFF; } EA=1; } ADC0转换结束中断 void ADCIntServe() interrupt 15 { float vol=0; AD0INT = 0; EA = 0; measureVol = ADC0H << 8; measureVol += ADC0L; vol= measureVol; vol = vol * 2.3597; measureVol = (int)vol; DisBuf[3] = (measureVol % 10); DisBuf[2] = (measureVol 10) % 10; DisBuf[1] = (measureVol 100) % 10; DisBuf[0] = (measureVol 1000) | 0x80; EA = 1; } void OscInit() { OSCXCN = 0x67; 允许外部晶体 Delay(0x100); while((OSCXCN & 0x80) != 0x80) 等待稳定 { Delay(10); } Delay(0x100); OSCICN = 0X88; 切换到外部晶体 } 端口初始化 注:7219对应的端口需要配置成推挽方式 void PortInit() { P0MDOUT = 0X00; 漏极开路 P1MDOUT = 0X70; 漏极开路 P2MDOUT = 0X00; 漏极开路 P3MDOUT = 0X00; 漏极开路,P31推挽 XBR2 = 0X40; 使能交叉开关, 弱上拉全局允许 P74OUT = 0x3C; } 初始化 void Initial() { P0 = 0xff; P1 = 0xff; P2 = 0xff; P3 = 0xff; DisBuf[0] = 0; DisBuf[1] = 11; DisBuf[2] = 4; DisBuf[3] = 5; DisplayInterval = 0; ------------------------------------------------------------------ DIN7219 = 1; LOAD7219 = 1; CLK7219 = 0; initial 7219 Send7219(0x09,0x00); decode mode for all display Send7219(0x0A,0x01); set brightness to normal states Send7219(0x0F,0x00); leave test mode ------------------------------------------------------------------ } void DAC_Init() DA输出初始化 { DAC0H=0x00; DAC0输出0V(即初始电压为0V) DAC0L=0x00; DAC1H=0x00; DAC1输出0V DAC1L=0x00; DAC0CN=0x80; 开启并选择DAC0、DAC1的工作方式(输出更新在写DACXH时) DAC1CN=0x80; } void ADC0Init (void) { REF0CN = 0x03; enable temp sensor, on-chip VREF, and VREF output buffer AMX0CF = 0X00; AMX0SL = 0x00; select AIN00 ADC0CF = (160000002500000) << 3; ADC conversion clock = 2.5MHz ADC0CF |= 0x00; PGA gain = 1 ADC0CN = 0x84; EIE2 |= 0x02; EA=1; enable ADC interrupts } 定时器3初始化 定时器3用来定时启动ADC0 sfr16 TMR3RL = 0x92; Timer3 reload value sfr16 TMR3 = 0x94; Timer3 counter void Timer3Init (void) { TMR3RL = 0x0300; 500Hz TMR3 = 0xffff; set to reload immediately EIE2 &= ~0x01; disable Timer3 interrupts TMR3CN = 0x04; start Timer3,using system clock } void Time0_and_Time1_Init() ** { CKCON = 0x00; 所有定时器时钟使用系统时钟的12分频 TMOD = 0x11; 定时器1、2皆设为16位 TF0 = 0; TF1 = 0; } void DC() { int vol; if(g_workmode==WK_SET)return; i=50; g_code=code_tab[i]; SetDAC0(g_code); SetDAC1(0); vol=g_code*0.02483; DisBuf[0]=Tab[12]; DisBuf[1]=Tab[13]; DisBuf[2]=Tab[vol10]| 0x80; DisBuf[3]=Tab[vol%10]; LED_PRESET = 1; LED_DC_MOD = 0; LED_TRI = 1; LED_AUTO_SCAN = 1; LED_SQU = 1; g_workmode=WK_DC; ET0=0; TR0=0; close Timer0. ET1=0; TR1=0; CLOSE TIMER1. TMR3CN|=0x04; OPEN timer3 EIE2 |= 0x02; P5=0x01; P6=0x00; } void preset() { DC(); } void square() { if(g_workmode==WK_DC||g_workmode==WK_TRI) { LED_PRESET = 1; LED_DC_MOD = 1; LED_TRI = 1; LED_AUTO_SCAN = 1; LED_SQU = 0; TMR3CN&=0xFB; close timer3. EIE2 &= ~0x02; TH1=0xFC; open timer1,delay 1ms,f=1kHz. TL1=0x18; ET1=1; TR1=1; P5=0x00; P6=0x00; DAC1L=0xFF; DAC1:1.25V DAC1H=0x07; DAC0L=0x00; DAC0:0V DAC0H=0x00; g_workmode=WK_SQU; DisBuf[0]=Tab[14]; DisBuf[1]=Tab[10]; DisBuf[2]=Tab[11]; DisBuf[3]=Tab[14]; } } void triangel() { if(g_workmode==WK_DC||g_workmode==WK_SQU) { LED_PRESET = 1; LED_DC_MOD = 1; LED_TRI = 0; LED_AUTO_SCAN = 1; LED_SQU = 1; TMR3CN&=0xFB; close timer3. EIE2 &= ~0x02; TH1=0xFC; open timer1,delay 1ms,f=1kHz. TL1=0x18; ET1=1; TR1=1; P5=0x00; P6=0x01; DAC1L=0xFF; DAC1:1.25V DAC1H=0x07; DAC0L=0x00; DAC0:0V DAC0H=0x00; g_workmode=WK_TRI; DisBuf[0]=Tab[14]; DisBuf[1]=Tab[10]; DisBuf[2]=Tab[11]; DisBuf[3]=Tab[14]; } } void Set() { if(g_workmode==WK_SQU||g_workmode==WK_TRI)return; TMR3CN&=0xFB; close timer3. EIE2 &= ~0x02; ET0=0; TR0=0; close Timer0. DisBuf[2]=Tab[0]; DisBuf[3]=Tab[0]; counter=0; g_workmode=WK_SET; LED_PRESET=0; } void scan_add() { if(g_workmode==WK_DC||g_workmode==WK_SCANDOWN) { g_workmode=WK_SCANUP; TL0 = 0xAF; TH0 = 0x3C; ET0=1; open timer0 TR0=1; up=1; 设方向标志 down=0; } } void scan_sub() { if(g_workmode==WK_DC||g_workmode==WK_SCANUP) { g_workmode=WK_SCANDOWN; TL0 = 0xAF; TH0 = 0x3C; ET0=1; open timer0 TR0=1; up=0; 设方向标志 down=1; } } void KeyBoard() { if (!INCREASE) { Delay(200); if (!INCREASE) { ==================================== if(g_workmode==WK_DC) { if (i<99) i++; else i=99; g_code=code_tab[i]; SetDAC0(g_code); SetDAC1(0); vol=g_code*0.02483; DisBuf[2]=Tab[vol10]| 0x80; DisBuf[3]=Tab[vol%10]; } ==================================== while(!INCREASE); Delay(200); } } 减号 if (!DECREASE) { Delay(200); if (!DECREASE) { if(g_workmode==WK_DC) { if (i>0) i--; else i=0; g_code=code_tab[i]; SetDAC0(g_code); SetDAC1(0); vol=g_code*0.02483; DisBuf[2]=Tab[vol10]| 0x80; DisBuf[3]=Tab[vol%10]; } while(!DECREASE); Delay(200); } } if (!DC_MOD) { Delay(200); if (!DC_MOD) { ==================================== DC(); ==================================== while(!DC_MOD); Delay(200); } } if (!SCAN_A) { Delay(200); if (!SCAN_A) { ==================================== scan_add(); ==================================== while(!SCAN_A); Delay(200); } } if (!SCAN_S) { Delay(200); if (!SCAN_S) { ==================================== scan_sub(); ==================================== while(!SCAN_S); Delay(200); } } if (!ENTER) { Delay(200); if (!ENTER) { ==================================== if(g_workmode==WK_SCANUP||g_workmode==WK_SCANDOWN) { ET0=0; TR0=0; g_workmode=WK_DC; } if(counter==3&&g_workmode==WK_SET) { counter++; i=num; num=0; g_code=code_tab[i]; SetDAC0(g_code); vol=g_code*0.02483; DisBuf[2]=Tab[vol10]| 0x80; DisBuf[3]=Tab[vol%10]; TMR3CN|=0x04; OPEN timer3 EIE2 |= 0x02; LED_PRESET=1; g_workmode=WK_DC; } ==================================== while(!ENTER); Delay(200); } } if (!SET) { Delay(200); if (!SET) { ==================================== Set(); ==================================== while(!SET); Delay(200); } } if (!NUM_0) { Delay(200); if (!NUM_0) { ==================================== if(counter==0&&g_workmode==WK_SET) { counter++; num+=0; DisBuf[2]=Tab[0]; DisBuf[3]=Tab[0]; } if(counter==2&&g_workmode==WK_SET) { counter++; num+=0; DisBuf[2]=Tab[0]| 0x80;; DisBuf[3]=Tab[0]; } ==================================== while(!NUM_0); Delay(200); } } if (!NUM_1) { Delay(200); if (!NUM_1) { ==================================== if(counter==0&&g_workmode==WK_SET) { counter++; num+=1; DisBuf[2]=Tab[1]; DisBuf[3]=Tab[0]; } if(counter==2&&g_workmode==WK_SET) { counter++; num+=1; DisBuf[2]|= 0x80;; DisBuf[3]=Tab[1]; } ==================================== while(!NUM_1); Delay(200); } } if (!NUM_2) { Delay(200); if (!NUM_2) { ==================================== if(counter==0&&g_workmode==WK_SET) { counter++; num+=2; DisBuf[2]=Tab[2]; DisBuf[3]=Tab[0]; } if(counter==2&&g_workmode==WK_SET) { counter++; num+=2; DisBuf[2]|= 0x80;; DisBuf[3]=Tab[2]; } ==================================== while(!NUM_2); Delay(200); } } if (!NUM_3) { Delay(200); if (!NUM_3) { ==================================== if(counter==0&&g_workmode==WK_SET) { counter++; num+=3; DisBuf[2]=Tab[3]; DisBuf[3]=Tab[0]; } if(counter==2&&g_workmode==WK_SET) { counter++; num+=3; DisBuf[2]|= 0x80;; DisBuf[3]=Tab[3]; } ==================================== while(!NUM_3); Delay(200); } } if (!NUM_4) { Delay(200); if (!NUM_4) { ==================================== if(counter==0&&g_workmode==WK_SET) { counter++; num+=4; DisBuf[2]=Tab[4]; DisBuf[3]=Tab[0]; } if(counter==2&&g_workmode==WK_SET) { counter++; num+=4; DisBuf[2]|= 0x80;; DisBuf[3]=Tab[4]; } ==================================== while(!NUM_4); Delay(200); } } if (!NUM_5) { Delay(200); if (!NUM_5) { ==================================== if(counter==0&&g_workmode==WK_SET) { counter++; num+=5; DisBuf[2]=Tab[5]; DisBuf[3]=Tab[0]; } if(counter==2&&g_workmode==WK_SET) { counter++; num+=5; DisBuf[2]|= 0x80; DisBuf[3]=Tab[5]; } ==================================== while(!NUM_5); Delay(200); } } if (!NUM_6) { Delay(200); if (!NUM_6) { ==================================== if(counter==0&&g_workmode==WK_SET) { counter++; num+=6; DisBuf[2]=Tab[6]; DisBuf[3]=Tab[0]; } if(counter==2&&g_workmode==WK_SET) { counter++; num+=6; DisBuf[2]|= 0x80;; DisBuf[3]=Tab[6]; } ==================================== while(!NUM_6); Delay(200); } } if (!NUM_7) { Delay(200); if (!NUM_7) { ==================================== if(counter==0&&g_workmode==WK_SET) { counter++; num+=7; DisBuf[2]=Tab[7]; DisBuf[3]=Tab[0]; } if(counter==2&&g_workmode==WK_SET) { counter++; num+=7; DisBuf[2]|= 0x80; DisBuf[3]=Tab[7]; } ==================================== while(!NUM_7); Delay(200); } } if (!NUM_8) { Delay(200); if (!NUM_8) { ==================================== if(counter==0&&g_workmode==WK_SET) { counter++; num+=8; DisBuf[2]=Tab[8]; DisBuf[3]=Tab[0]; } if(counter==2&&g_workmode==WK_SET) { counter++; num+=8; DisBuf[2]|=0x80; DisBuf[3]=Tab[8]; } ==================================== while(!NUM_8); Delay(200); } } if (!NUM_9) { Delay(200); if (!NUM_9) { ==================================== if(counter==0&&g_workmode==WK_SET) { counter++; num+=9; DisBuf[2]=Tab[9]; DisBuf[3]=Tab[0]; } if(counter==2&&g_workmode==WK_SET) { counter++; num+=9; DisBuf[2]|=0x80; DisBuf[3]=Tab[9]; } ==================================== while(!NUM_9); Delay(200); } } if (!DECIMAL_POINT) { Delay(200); if (!DECIMAL_POINT) { ==================================== if(counter==1&&g_workmode==WK_SET) { counter++; num*=10; DisBuf[2]|=0x80; DisBuf[3]=Tab[0]; } ==================================== while(!DECIMAL_POINT); Delay(200); } } if (!SQU) { Delay(200); if (!SQU) { ==================================== square(); ==================================== while(!SQU); Delay(200); } } if (!TRI) { Delay(200); if (!TRI) { ==================================== triangel(); ==================================== while(!TRI); Delay(200); } } } 主程序 void main() { EA = 0; WDTCN = 0XDE; disable watch dog WDTCN = 0XAD; P5 = 0x01; P6 = 0x00; EA=1; OscInit(); PortInit(); DAC_Init(); Timer3Init (); Time0_and_Time1_Init(); ADC0Init (); Initial(); preset(); 读取FLASH的预置电压值,并输出 while(1) { if (++DisplayInterval == DISINTER) display cycled, interval at 256 { DisplayInterval = 0; DisplayLed(); } KeyBoard(); }; } 程序结束 毕业设计(论文)原创性声明和使用授权说明 原创性声明 本人郑重承诺:所呈交的毕业设计(论文),是我个人在指导教师的指导下进行的研究工作及取得的成果。尽我所知,除文中特别加以标注和致谢的地方外,不包含其他人或组织已经发表或公布过的研究成果,也不包含我为获得 及其它教育机构的学位或学历而使用过的材料。对本研究提供过帮助和做出过贡献的个人或集体,均已在文中作了明确的说明并表示了谢意。 作 者 签 名:       日  期:        ​​​​​​​​​​​​ 指导教师签名:        日  期:        使用授权说明 本人完全了解 大学关于收集、保存、使用毕业设计(论文)的规定,即:按照学校要求提交毕业设计(论文)的印刷本和电子版本;学校有权保存毕业设计(论文)的印刷本和电子版,并提供目录检索与阅览服务;学校可以采用影印、缩印、数字化或其它复制手段保存论文;在不以赢利为目的前提下,学校可以公布论文的部分或全部内容。 作者签名:        日  期:        ​​​​​​​​​​​​ 学位论文原创性声明 本人郑重声明:所呈交的论文是本人在导师的指导下独立进行研究所取得的研究成果。除了文中特别加以标注引用的内容外,本论文不包含任何其他个人或集体已经发表或撰写的成果作品。对本文的研究做出重要贡献的个人和集体,均已在文中以明确方式标明。本人完全意识到本声明的法律后果由本人承担。 作者签名: 日期: 年 月 日 学位论文版权使用授权书 本学位论文作者完全了解学校有关保留、使用学位论文的规定,同意学校保留并向国家有关部门或机构送交论文的复印件和电子版,允许论文被查阅和借阅。本人授权      大学可以将本学位论文的全部或部分内容编入有关数据库进行检索,可以采用影印、缩印或扫描等复制手段保存和汇编本学位论文。 涉密论文按学校规定处理。 作者签名: 日期: 年 月 日 导师签名: 日期: 年 月 日 指导教师评阅书 指导教师 评价 LEC评价法下载LEC评价法下载评价量规免费下载学院评价表文档下载学院评价表文档下载 : 一、撰写(设计)过程 1、学生在论文(设计)过程中的治学态度、工作精神 □ 优 □ 良 □ 中 □ 及格 □ 不及格 2、学生掌握专业知识、技能的扎实程度 □ 优 □ 良 □ 中 □ 及格 □ 不及格 3、学生综合运用所学知识和专业技能分析和解决问题的能力 □ 优 □ 良 □ 中 □ 及格 □ 不及格 4、研究方法的科学性;技术线路的可行性; 设计方案 关于薪酬设计方案通用技术作品设计方案停车场设计方案多媒体教室设计方案农贸市场设计方案 的合理性 □ 优 □ 良 □ 中 □ 及格 □ 不及格 5、完成毕业论文(设计)期间的出勤情况 □ 优 □ 良 □ 中 □ 及格 □ 不及格 二、论文(设计)质量 1、论文(设计)的整体结构是否符合撰写规范? □ 优 □ 良 □ 中 □ 及格 □ 不及格 2、是否完成指定的论文(设计)任务(包括装订及附件)? □ 优 □ 良 □ 中 □ 及格 □ 不及格 三、论文(设计)水平 1、论文(设计)的理论意义或对解决实际问题的指导意义 □ 优 □ 良 □ 中 □ 及格 □ 不及格 2、论文的观念是否有新意?设计是否有创意? □ 优 □ 良 □ 中 □ 及格 □ 不及格 3、论文(设计说明书)所体现的整体水平 □ 优 □ 良 □ 中 □ 及格 □ 不及格 建议成绩:□ 优 □ 良 □ 中 □ 及格 □ 不及格 (在所选等级前的□内画“√”) 指导教师: (签名) 单位: (盖章) 年 月 日 评阅教师评阅书 评阅教师评价: 一、论文(设计)质量 1、论文(设计)的整体结构是否符合撰写规范? □ 优 □ 良 □ 中 □ 及格 □ 不及格 2、是否完成指定的论文(设计)任务(包括装订及附件)? □ 优 □ 良 □ 中 □ 及格 □ 不及格 二、论文(设计)水平 1、论文(设计)的理论意义或对解决实际问题的指导意义 □ 优 □ 良 □ 中 □ 及格 □ 不及格 2、论文的观念是否有新意?设计是否有创意? □ 优 □ 良 □ 中 □ 及格 □ 不及格 3、论文(设计说明书)所体现的整体水平 □ 优 □ 良 □ 中 □ 及格 □ 不及格 建议成绩:□ 优 □ 良 □ 中 □ 及格 □ 不及格 (在所选等级前的□内画“√”) 评阅教师: (签名) 单位: (盖章) 年 月 日 教研室(或答辩小组)及教学系意见 教研室(或答辩小组)评价: 一、答辩过程 1、毕业论文(设计)的基本要点和见解的叙述情况 □ 优 □ 良 □ 中 □ 及格 □ 不及格 2、对答辩问题的反应、理解、表达情况 □ 优 □ 良 □ 中 □ 及格 □ 不及格 3、学生答辩过程中的精神状态 □ 优 □ 良 □ 中 □ 及格 □ 不及格 二、论文(设计)质量 1、论文(设计)的整体结构是否符合撰写规范? □ 优 □ 良 □ 中 □ 及格 □ 不及格 2、是否完成指定的论文(设计)任务(包括装订及附件)? □ 优 □ 良 □ 中 □ 及格 □ 不及格 三、论文(设计)水平 1、论文(设计)的理论意义或对解决实际问题的指导意义 □ 优 □ 良 □ 中 □ 及格 □ 不及格 2、论文的观念是否有新意?设计是否有创意? □ 优 □ 良 □ 中 □ 及格 □ 不及格 3、论文(设计说明书)所体现的整体水平 □ 优 □ 良 □ 中 □ 及格 □ 不及格 评定成绩:□ 优 □ 良 □ 中 □ 及格 □ 不及格 (在所选等级前的□内画“√”) 教研室主任(或答辩小组组长): (签名) 年 月 日 教学系意见: 系主任: (签名) 年 月 日 学位论文原创性声明 本人郑重声明:所呈交的学位论文,是本人在导师的指导下进行的研究工作所取得的成果。尽我所知,除文中已经特别注明引用的内容和致谢的地方外,本论文不包含任何其他个人或集体已经发表或撰写过的研究成果。对本文的研究做出重要贡献的个人和集体,均已在文中以明确方式注明并表示感谢。本人完全意识到本声明的法律结果由本人承担。 学位论文作者(本人签名): 年 月 日 学位论文出版授权书 本人及导师完全同意《中国博士学位论文全文数据库出版章程》、《中国优秀硕士学位论文全文数据库出版章程》(以下简称“章程”),愿意将本人的学位论文提交“中国学术期刊(光盘版)电子杂志社”在《中国博士学位论文全文数据库》、《中国优秀硕士学位论文全文数据库》中全文发表和以电子、网络形式公开出版,并同意编入CNKI《中国知识资源总库》,在《中国博硕士学位论文评价数据库》中使用和在互联网上传播,同意按“章程”规定享受相关权益。 论文密级: □公开 □保密(___年__月至__年__月)(保密的学位论文在解密后应遵守此协议) 作者签名:_______ 导师签名:_______ _______年_____月_____日 _______年_____月_____日 独 创 声 明 本人郑重声明:所呈交的毕业设计(论文),是本人在指导老师的指导下,独立进行研究工作所取得的成果,成果不存在知识产权争议。尽我所知,除文中已经注明引用的内容外,本设计(论文)不含任何其他个人或集体已经发表或撰写过的作品成果。对本文的研究做出重要贡献的个人和集体均已在文中以明确方式标明。 本声明的法律后果由本人承担。   作者签名: 二〇一〇年九月二十日   毕业设计(论文)使用授权声明 本人完全了解滨州学院关于收集、保存、使用毕业设计(论文)的规定。 本人愿意按照学校要求提交学位论文的印刷本和电子版,同意学校保存学位论文的印刷本和电子版,或采用影印、数字化或其它复制手段保存设计(论文);同意学校在不以营利为目的的前提下,建立目录检索与阅览服务系统,公布设计(论文)的部分或全部内容,允许他人依法合理使用。 (保密论文在解密后遵守此规定)   作者签名: 二〇一〇年九月二十日 致 谢 时间飞逝,大学的学习生活很快就要过去,在这四年的学习生活中,收获了很多,而这些成绩的取得是和一直关心帮助我的人分不开的。 首先非常感谢学校开设这个课题,为本人日后从事计算机方面的工作提供了经验,奠定了基础。本次毕业设计大概持续了半年,现在终于到结尾了。本次毕业设计是对我大学四年学习下来最好的检验。经过这次毕业设计,我的能力有了很大的提高,比如操作能力、分析问题的能力、合作精神、严谨的工作作风等方方面面都有很大的进步。这期间凝聚了很多人的心血,在此我表示由衷的感谢。没有他们的帮助,我将无法顺利完成这次设计。 首先,我要特别感谢我的知道郭谦功老师对我的悉心指导,在我的论文书写及设计过程中给了我大量的帮助和指导,为我理清了设计思路和操作方法,并对我所做的课题提出了有效的改进方案。郭谦功老师渊博的知识、严谨的作风和诲人不倦的态度给我留下了深刻的印象。从他身上,我学到了许多能受益终生的东西。再次对周巍老师表示衷心的感谢。 其次,我要感谢大学四年中所有的任课老师和辅导员在学习期间对我的严格要求,感谢他们对我学习上和生活上的帮助,使我了解了许多专业知识和为人的道理,能够在今后的生活道路上有继续奋斗的力量。 另外,我还要感谢大学四年和我一起走过的同学朋友对我的关心与支持,与他们一起学习、生活,让我在大学期间生活的很充实,给我留下了很多难忘的回忆。 最后,我要感谢我的父母对我的关系和理解,如果没有他们在我的学习生涯中的无私奉献和默默支持,我将无法顺利完成今天的学业。 四年的大学生活就快走入尾声,我们的校园生活就要划上句号,心中是无尽的难舍与眷恋。从这里走出,对我的人生来说,将是踏上一个新的征程,要把所学的知识应用到实际工作中去。 回首四年,取得了些许成绩,生活中有快乐也有艰辛。感谢老师四年来对我孜孜不倦的教诲,对我成长的关心和爱护。 学友情深,情同兄妹。四年的风风雨雨,我们一同走过,充满着关爱,给我留下了值得珍藏的最美好的记忆。 在我的十几年求学历程里,离不开父母的鼓励和支持,是他们辛勤的劳作,无私的付出,为我创造良好的学习条件,我才能顺利完成完成学业,感激他们一直以来对我的抚养与培育。 最后,我要特别感谢我的导师赵达睿老师、和研究生助教熊伟丽老师。是他们在我毕业的最后关头给了我们巨大的帮助与鼓励,给了我很多解决问题的思路,在此表示衷心的感激。老师们认真负责的工作态度,严谨的治学精神和深厚的理论水平都使我收益匪浅。他无论在理论上还是在实践中,都给与我很大的帮助,使我得到不少的提高这对于我以后的工作和学习都有一种巨大的帮助,感谢他耐心的辅导。在论文的撰写过程中老师们给予我很大的帮助,帮助解决了不少的难点,使得论文能够及时完成,这里一并表示真诚的感谢。 本科生毕业设计(论文)规范化要求 第一部分 学生应遵守以下规范要求 一、毕业设计论文说明 1. 毕业设计论文独立装订成册,内容包括: (1) 封面(题目、学生姓名、指导教师姓名等) (2) 中、外文内容摘要 (3) 正文目录(含页码) (4) 正文(开始计算页码) (5) 致谢 (6) 参考文献 (7) 附录 2. 中、外文内容摘要包括:课题来源,主要设计,实验方法,本人主要完成的成果。要求不少于400汉字,并译成外文。 3. 毕业设计论文页数为45页-50页。 4. 纸张要求:毕业设计说明书(论文报告)应用标准B5纸单面打字成文。 5. 文字要求:文字通顺,语言流畅,无错别字。 6. 图纸要求:毕业设计图纸应使用计算机绘制。图纸尺寸标注应符合国家标准。图纸应按“规范”叠好。 7. 曲线图表要求:所有曲线、图表、流程图、程序框图、示意图等不得徒手画,必须按国家规定标准或工程要求绘制。 8. 参考文献、资料要求:参考文献总数论文类不少于10篇、,应有外文参考文献。文献应列出序号、作者、文章题目、期刊名、年份、出版社、出版时间等。 二、外文翻译 1. 完成不少于2万印刷符的外文翻译。译文不少于5千汉字。 2. 译文内容必须与题目(或专业内容)有关,由指导教师在下达任务书时指定。 3. 译文应于毕业设计中期2月底前完成,交指导教师批改。 4. 将原文同译文统一印成B5纸规格装订成册,原文在前,译文在后。 三、形式审查 5月15日前,将毕业设计论文上交指导教师,审查不合格者,不能参加答辩。 四、准备答辩 答辩前三天,学生要将全部材料(包括光盘、论文)统一交指导教师。 关于毕业论文格式的要求 为方便统一、规范论文格式,现将学院的相关要求做如下强调、补充: 1. 基本要求 纸型: B5纸(或16开),单面打印; 页边距: 上2.54cm,下2.54cm,左2.5cm,右2.5cm; 页眉:1.5cm,页脚1.75cm,左侧装订 正文字体:汉字和标点符号用“宋体”,英文和数字用“Times New Roman”,字号小四; 图号1-1,指第1章第1个图 在图的前部要有文字说明(如图1-1所示) 表号3-5,指第3章第5个表 在表的前部要有文字说明(如表3-5所示) 图、表的标注字体大小是五号宋体 行距: 固定值20; 页码: 居中、小五、底部。 2. 封面格式 封皮: 大连理工大学城市学院(二号、黑体、居中) 本科生毕业设计(论文)(二号、黑体、居中) 学 院:(四号、黑体、居中、下划线:电子与自动化学院) 专 业:(四号、黑体、居中、下划线、专业名字之间无空格) 学 生:(四号、黑体、居中、下划线,名字是2个字的中间空1个字、3个或3个以上字的中间无空格) 指导教师:(四号、黑体、居中、下划线,名字是2个字的中间空1个字、3个或3个以上字的中间无空格,两位指导教师的中间用顿号“、”) 完成日期:(四号、黑体、居中、下划线,如:2009年5月25日) (注意:5个下划线两端也是对齐的,单倍行距) 内 封:大连理工大学城市学院本科生毕业设计(论文)(四号、黑体) 题目 (二号、黑体、居中); 总计 毕业设计(论文) 页(五号、宋体) 表格 表(五号、宋体) 插图 幅 (五号、宋体) (注意:页数正常不少于40页,优秀论文原则上不少于45页) 3. 中外文摘要 中文摘要:标题“摘 要” (三号、黑体、居中、中间空1个字) 正文(不少于400字) 关键词 (五号、黑体):3-5个主题词(五号),中间用分号“;”隔开。 外文摘要 (另起一页):标题“Abstract” (三号、黑体、居中) 正文 (必须用第三人称) 关键词: Key words(五号、黑体):3-5个主题词(五号)与中文关键词对应,中间用分号“;”隔开。 4. 目录 标题 “目录”(三号、黑体、居中); 章标题(四号、黑体、居左); 节标题(小四、宋体); 页码 (小四、宋体); 二、三级目录分别缩近1和2个字; 四级目录不在“目录”中体现,在正文中也不是单独一行,可以黑体(没有句号),然后空2个字接正文; 注意:正文中每章开头要另起一页; “目录”下方中间的页码和摘要一样统一用罗马字,顺接摘要的。 摘要 目录加页眉 5. 论文正文 页眉: 论文题目(居中、小五、黑体); 章标题(三号、黑体、居中); 节标题(四号、黑体、居左); 正文 程序用“Times New Roman”,字号小四; 6. 参考文献 标题:“参考文献”(小四、黑体、居中) 参考文献的著录,按文稿中引用顺序排列,并注意在文内相应位置用上标标注,如:……的函数。 示例如下:(字体为五号、宋体) 期刊类:[序号]作者1,作者2,……作者n。文章名。期刊名(版本),出版年,卷次(期次)。页次 图书类:[序号]作者1,作者2,……作者n。书名。版本。出版地:出版者,出版年。页次 会议论文集:[序号]作者1,作者2,……作者n。论文集名。出版地:出版者,出版年。页次 网上资料:[序号]作者1,作者2,……作者n。文章名。网址。发表时间 7. 其它 量和单位的使用:必须符合国家标准规定,不得使用已废弃的单位(如高斯(G和Gg)、亩、克分子浓度(M)、当量能度(N)等)。量和单位不用中文名称,而用法定符号表示。 图表及公式:插图宽度一般不超过10cm,表名(小四)置上居中,图名(小四)置下居中。标目中物理量的符号用斜体,单位符号用正体,坐标标值线朝里。标值的数字尽量不超过3位数,或小数点以后不多于1个“0”。如用30Km代替30000m,用5µg代替0.005mg等,并与正文一致。图和表的编号从前至后顺序排列,图的编号及说明位于图的下方,居中;表的编号及说明位于表的上方,居中。公式编号加圆括号,居行尾。图表中的字体不应大于正文字体。注意:图表标题中的数字也是“Times New Roman”。 8.论文依次包括:封皮、内封、中文摘要、英文摘要、目录、正文、结论、致谢、参考文献、(附录),不要落项。 9.注意:上面没有说“加粗”的“黑体”,均为“黑体不加粗”。 补充: 1.答辩要求:自述15分钟,回答问题10分钟,自述要求使用PPT 答辩内容: 1).论文题目 2).设计内容 3).设计方案 4).如何完成设计 工作原理 软件或硬件设计 制作\调试\安装 5).存在不足,今后努力的方向 6).致谢 3.最后上交学生装订好的论文、光盘、记录表、成绩单 4.光盘里的文件夹命名为:学号_姓名_年级专业班级 文件夹里包括的文件有:论文、ppt、英文翻译 1) 论文的文件名格式:学号_姓名_年级专业班号_题目(论文)_完成日期doc 2) ppt的文件名格式:学号_姓名_年级专业班号_题目(ppt)_完成日期ppt 3) 英文翻译的文件名格式:学号_姓名_年级专业班号_题目(英文翻译)_完成日期doc 例如: 答辩问题5个, 侧重总体思路一个 软件或硬件一个 翻译一个 其他2个 PAGE v _1429109954.vsd �� ��� N��N��1� ����A/D����� ������������������� ����� _1429109956.vsd � � ADC 采样 对比DAC DAC对比 PID线性校正 Err>=0.05 Err<=0.05 _1429109958.vsd � � 启动定时器1 溢出? 进入中断服务程序 DA交替输出高低电平 YES _1429109961.unknown _1429109962.unknown _1429109959.unknown _1429109957.vsd � � 启动自动扫描定时器 按键为S+? 电压自动加0.1V 电压=9.9? 电压自动减0.1V 电压=0? 停止 停止 NO YES YES NO NO YES ENTER=0? YES NO 结束 ENTER=0? 结束 YES NO _1429109955.unknown _1429109952.vsd �� ��� ������� ������� ��������������� _1429109953.vsd � � 读取键值 编辑状态 工作状态 预置 自扫 S+/- +/- 三角 方波 确定 直流 数字键 其他键 输入 确定 确定 返回显示 开始 有键动? 延时 有键动? YES NO YES NO _1429109951.vsd � 单片机 功放电路 LED显示 +5V电压 D/A 复位 220V交流 +15V电压 键盘 变压器 反馈 基准 7815稳压 A/D 桥式整流 7805稳压 OUTPUT 数控系统 模拟功放系统 电源供电系统
本文档为【电子设计竞赛论文-简易数控直流稳压电源设计】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
该文档来自用户分享,如有侵权行为请发邮件ishare@vip.sina.com联系网站客服,我们会及时删除。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。
本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。
网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
下载需要: 免费 已有0 人下载
最新资料
资料动态
专题动态
个人认证用户
不系舟红枫
从教近30年,经验丰富,教学水平较高
格式:doc
大小:1MB
软件:Word
页数:74
分类:工学
上传时间:2019-01-22
浏览量:22