水温控制系统.pdf_第1页
水温控制系统.pdf_第2页
水温控制系统.pdf_第3页
水温控制系统.pdf_第4页
水温控制系统.pdf_第5页
已阅读5页,还剩9页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

北京北阳电子技术有限公司北京北阳电子技术有限公司 电子竞赛电子竞赛 具有语音播报功能的水温控制系统具有语音播报功能的水温控制系统 Electroncompetition Specification Technology for Easy Life http:/ 2 历届全国大学生电子竞赛 SPCE061A 实现方案 目录目录 具有语音功能的水温控制系统3 摘要 3 一、方案设计与论证 .4 二、系统硬件电路设计4 2.1 电路方框图及说明4 2.2 各部分电路设计 .5 三、软件设计.9 3.1PID 控制算法介绍 .9 3.2 程序结构图 .11 3.3 主程序流程图 .12 3.4 中断流程图 .13 3.5 测试方法和测试结果14 四、总结.14 五、参考资料.14 Technology for Easy Life http:/ 3 历届全国大学生电子竞赛 SPCE061A 实现方案 具有语音功能的水温控制系统具有语音功能的水温控制系统 摘要摘要 本系统采用凌阳十六位单片机 SPCE061A 实现温度控制,温度信号由 PT1000 和 电压放大电路提供。通过 PID 算法实现对电炉功率和水温控制。同时,具有温度数字 语音播报和显示。 关键词: 关键词: SPCE061A 单片机 Pt1000 PID SPCE061A 单片机概述 SPCE061A 单片机概述 SPCE061A 是继nSP 系列产品 SPCE500A 等之后凌阳科技推出的又一个 16 位结构 的微控制器。目前有两种封装形式:84 引脚的 PLCC84 封装和 80 引脚的 LQFP80 贴 片封装。 主要性能如下: 16 位nSP 微处理器; 工作电压:VDD 为 2.43.6V(cpu), VDDH 为 2.45.5V(I/O); CPU 时钟:32768Hz49.152MHz ; 内置 2K 字 SRAM、内置 32K FLASH; 可编程音频处理; 32 位通用可编程输入/输出端口; 32768Hz 实时时钟,锁相环 PLL 振荡器提供系统时钟信号; 2 个 16 位可编程定时器/计数器(可自动预置初始计数值); 2 个 10 位 DAC(数-模转换)输出通道; 7 通道 10 位电压模-数转换器(ADC)和单通道语音模-数转换器; 声音模-数转换器输入通道内置麦克风放大器自动增益控制(AGC)功能; 系统处于备用状态下(时钟处于停止状态)耗电小于 2A3.6V; 14 个中断源:定时器 A / B,2 个外部时钟源输入,时基,键唤醒等; 具备触键唤醒的功能; 使用凌阳音频编码 SACM_S240 方式(2.4K 位/秒),能容纳 210 秒的语音数据; 具备异步、同步串行设备接口; 具有低电压复位(LVR)功能和低电压监测(LVD)功能; 内置在线仿真电路接口 ICE(In- Circuit Emulator) ; 具有保密能力; 具有 WatchDog 功能(由具体型号决定) Technology for Easy Life http:/ 4 历届全国大学生电子竞赛 SPCE061A 实现方案 一、方案设计与论证一、方案设计与论证 本题目是设计一个水温控制系统,对象为 1 升净水,加热器为 1 千瓦电热炉。要 求能在 40 摄氏度至 90 摄氏度范围内设定控制水温,静态控制精度为 0.2 摄氏度。 并具有较好的快速性与较小的超调,以及十进制数码管显示、温度曲线打印、语 音播报温度等功能。 1、 测量部分 方案一:采用热敏电阻,可满足 40 摄氏度至 90 摄氏度测量范围,但热敏电阻精 度、重复性、可靠性较差,对于检测小于 1 摄氏度的信号是不适用的。 方案二:采用温度传感器铂电阻 Pt1000。铂热电阻的物理化学性能在高温和氧化 性介质中很稳定,它能用作工业测温元件,且此元件线性较好。在 0100 摄氏度 时, 最大非线性偏差小于 0.5 摄氏度。 铂热电阻与温度关系是, Rt = R0(1+At+Bt*t); 其中 Rt 是温度为 t 摄氏度时的电阻;R0 是温度为 0 摄氏度时的电阻;t 为任意温 度值,A,B 为温度系数。 2、 驱动控制部分 方案一:此方案采用 89C51 单片机实现,单片机软件编程自由度大,可用编程实 现各种控制算法和逻辑控制。但是 89C51 需外接模数转换器来满足数据采样。如 果系统增加语音播放功能,还需外接语音芯片,对外围电路来说,比较复杂,且 软件实现也较麻烦。另外,51 单片机需要用仿真器来实现软硬件调试,较为繁琐。 方案二:此方案采用 SPCE061A 单片机实现,此单片机内置 8 路 ADC,2 路 DAC, 且集成开发环境中,配有很多语音播放函数,用 SPCE061A 实现语音播放极为方 便。另外,比较方便的是该芯片内置在线仿真、编程接口,可以方便实现在线调 试,这大大加快了系统的开发与调试。 二、系统硬件电路设计二、系统硬件电路设计 2.1 电路方框图及说明电路方框图及说明 Technology for Easy Life http:/ 5 历届全国大学生电子竞赛 SPCE061A 实现方案 SPCE061A 16bit CPU 键盘设定 数据显示 串行接口-PC- -打印 数据采集 继电器热电炉 语音播放 1、 语音播放:语音播放水温设置温度,并播报整数温度变化。 2、 键盘设定:用于温度设定。共三个按键。 KEY1: 设置温度的十位数;0-9 KEY2: 设置温度的个位数;0-9 KEY3: 温度设置确认;并语音播报./温度重新设置。 系统上电后,数码管全部显示为零,根据按 KEY1 次数,十位的数码管顺序增 加。 同样 KEY2,也如此。按 KEY3 后,系统开始测温,开关电炉。并语音播报变化 的整数值温度。 3、 数据采样:将电压信号经 AD 转换后,换算成温度值,用于播报和显示。 4、 数据显示:采用三位八段数码管显示,设置温度与测量温度,显示小数点后 1 位数字。 5、 串行口传输:将采样温度值,上传至 PC 机,描绘曲线并打印。 继电器/热电炉:通过三极管控制继电器的开关来完成对热电炉的功率控制。 2.2 各部分电路设计各部分电路设计 1、 CPU 本系统采用 SPCE061A 芯片作为核心部件,SPCE061A 内部带有 8 路 ADC 和 2 路的 DAC,32 个 IO 口,内置 32K 字闪存和 2K 字的静态存储器。用来实现 水温控制资源足够使用。 Technology for Easy Life http:/ 6 历届全国大学生电子竞赛 SPCE061A 实现方案 +C29 100u C8 104 + C5 100u +C4 100u C7 104 +C17 100u C18 104 C28 104 U1 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 33 34 35 36 37 38 41 42 43 44 45 46 47 48 49 50 51 52 53 39 40 30 31 32 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 75 76 77 70 71 72 73 74 78 79 80 81 1 2 3 82 83 84 4 5 6 7 8 9 10 11 OSC32O OSC32I XTEST VDD XICE XICECLK XICESDA VSS PVIN DAC1 DAC2 VREF2 VSS AGC OPI MICOUT MICN PFUSE MICP VCM VRTPAD VDD VMIC VSS IOA0 IOA1 IOA2 IOA3 IOA4 IOA5 IOA6 IOA7 VSS VSS VDDH VDDH IOA8 NC NC NC NC NC IOA9 IOA10 IOA11 IOA12 IOA13 IOA14 IOA15 XROMT VSS XSLEEP IOB15 IOB14 IOB13 IOB12 IOB11 PVPP VDDH IOB10 IOB9 NC NC NC NC NC IOB8 IOB7 IOB6 IOB5 IOB4 IOB3 IOB2 NC NC NC IOB1 IOB0 XRESB VDD VCP VSS NC NC + C27 100u C31 104 VSS IOA6 IOA15 VMIC VREF2 IOA8 IOA13 IOA11 AVSS1 IOB4 VDDH RES_B IOB3 ICE_EN VDDH VSS OSCI IOA3 IOA7 AGC ICE_SCK OSCO VSS IOA5 VSS IOB5 VDDH IOA1 VDD_P VSS IOB7 DAC1 MICOUT MICN IOA0 IOA12 IOB12 VCM IOB1 IOB14 IOB10 IOB6 VSS IOA10 IOA2 VCP IOA4 IOB13 IOB2 VDD IOB0 DAC2 IOB9 SLEEP VRT AVSS1 IOA9 DAC VSS VDD_A IOB11 MICP IOA14 ICE_SDA OPI VSS IOB8 IOB15 AVSS1 IOA2 V5 IOA0 IOA1 2、键盘设置电路 IOA0 接 KEY1,IOA1 接 KEY2,IOA2 接 KEY3。 S4 K3 S3 K2 KEY S2 K1 3、数码显示电路 外接三位数码管,通过三极管控制 LED 片选。 Technology for Easy Life http:/ 7 历届全国大学生电子竞赛 SPCE061A 实现方案 Q2 80502 13 R32 R-PACK4 12 34 56 78 LED5641A U10 13 9 4 2 1 12 5 3 8 14 11 7 10 6 A+ B+ C+ D+ E+ F+ G+ DP+ DD+ COM1- COM2- DD- COM3- COM4- Q3 8050 2 13 LED-3 Q1 80502 13 R32 R-PACK4 12 34 56 78 C25 104R9 1K 13 2 J3 Speaker 1 2 C26 104 SPL R10 1K + C21 100u J12 PHONEJACK 1 2 3 J2 CON3 1 2 3 C20 104 C23 224 + - U2 SPY0030 5 4 6 1 2 83 7 DAC SPH IOB0 IOA12 IOA14 IOA11 IOB1 IOB2 IOA13 IOA8 IOA10 IOA15 IOA9 DAC VDDH AVSS2 VSS 4、音频输出电路 通过 SPY0030 功率放大器,驱动喇叭。完成语音播放。 5、热电炉控制电路 通过三极管控制继电器的开关。 Technology for Easy Life http:/ 8 历届全国大学生电子竞赛 SPCE061A 实现方案 CONTROL TEMPERATURE VCC Q8 NPN8050 K1 RELAY SPDT 3 5 4 1 2 IOA4 6、测温部分电路 VCC VCC_5V VCC D1 1.2V 100k R CHECK_TEMPERATURE + - U1B HT9274 5 6 7 411 R3 R 100k 1MVCC R4 Pt1000 1k + - U1A HT9274 3 2 1 411 1M 温度传感器使用 Pt 电阻,运放采用 HT9274 集成芯片。因为 Pt 电阻在 0 摄氏 度时, 阻值为 1 千欧姆, 在 100 摄氏度时, 阻值为 1380 欧姆, 则表示阻值变换从 0380 欧姆,电压从 0V-3.3V。 采用差动运放,通过可调分压电阻可以满足零点调节。因 为 Pt 电阻中电流基本为 12mA,则 Pt 电阻电压就在 0380mV 波动。因此采用 10 倍 电压放大。基本满足 SPCE061A 数模转换。 6、串行通讯部分电路 系统设计要求控制系统能同 PC 联机通信, 已利用 PC 图形处理能力打印显示温度 曲线。由于 SPCE061A 串行口为 TTL 电平,PC 串行口为 RS232 电平,使用一片 MAX232 为电平转换驱动。通信速率为 9600 波特率。数据 5 秒传输一次。 Technology for Easy Life http:/ 9 历届全国大学生电子竞赛 SPCE061A 实现方案 VB1 SUB-D 9 5 9 4 8 3 7 2 6 1 C5 104 U1 HIN232CP 1 2 3 4 5 6 7 89 10 11 12 13 14 15 16 C1+ V+ C1- C2+ C2- V- DOUT2 RIN2ROUT2 DIN2 DIN1 ROUT1 RIN1 DOUT1 GND VCC VDDH + C11 0.1u + C4 0.1u + C10 0.1u + C3 0.1u XTXD1 VDDH XRXD1 三、软件设计三、软件设计 3.1PID 控制算法介绍控制算法介绍 控制器被控对象 s(k) - e(k)u(k) y(k) 图 PID 算法有两种: 直接计算法就是当前需要的控制量。 公式:Pout = Kp * e(t) + Ki * e(t) + Kd (e(t) e(t-1); 增量计算法就是相对于标准算法的相邻两次运算之差,得到的结果是增量,也就是说 在上一次的控制量的基础上需要增加的控制量。 Technology for Easy Life http:/ 10 历届全国大学生电子竞赛 SPCE061A 实现方案 公式:Pout(t-1) = Kp*(e(t) e(t-1) + Ki e(t) + Kd(e(t) 2*e(t-1) + e(t-2); 基本偏差:e(t) 表示当前测量值与设定目标之差,设定目标是被减数,结果可以是正或 负,正数表示还没有达到,负数表示已经超过了设定值。这是面向比例项用的变动数 据。 累计偏差: e(t)= e(t) + e(t-1) + e(t-2)+.+e(1),这是我们每一次测量到的偏差值的 总和,这是代数和,考虑到正负符号的运算,这是面向积分项用的变动数据。 基本偏差的相对偏差:e(t) e(t-1),用本次的基本偏差减去上一次的基本偏差,用于 考察当前控制的对象的趋势,作为快速反应的重要依据,这是面向微分项的一个变动 数据。 比例调节作用:比例调节作用:是按比例反应系统的偏差,系统一旦出现了偏差,比例调节立即产生 调节作用用以减少偏差。比例作用大,可以加快调节,减少误差,但是过大的比例, 使系统的稳定性下降,甚至造成系统的不稳定。 积分调节作用:积分调节作用:是使系统消除稳态误差,提高无差度。因为有误差,积分调节就进行, 直至无差,积分调节停止,积分调节输出一常值。积分作用的强弱取决与积分时间常 数 Ti,Ti 越小,积分作用就越强。反之 Ti 大则积分作用弱,加入积分调节可使系统 稳定性下降,动态响应变慢。积分作用常与另两种调节规律结合,组成 PI 调节器或 PID 调节器。 微分调节作用:微分调节作用:微分作用反映系统偏差信号的变化率,具有预见性,能预见偏差变化 的趋势,因此能产生超前的控制作用,在偏差还没有形成之前,已被微分调节作用消 除。因此,可以改善系统的动态性能。 在微分时间选择合适情况下,可以减少超调,减少调节时间。微分作用对噪声干扰有 放大作用,因此过强 的加微分调节,对系统抗干扰不利。此外,微分反应的是变化率,而当输入没有变化 时,微分作用输出为 微分作用不能单独使用,需要与另外两种调节规律相结合,组成 PD 或 PID 控制器。 Technology for Easy Life http:/ 11 历届全国大学生电子竞赛 SPCE061A 实现方案 程 序 结 构 键 盘 扫 描 键 值 处 理 PID计算 AD 采 样及上传 继 电 器 控 制 语 音 播 报 LED 显 示 3.2 程序结构图程序结构图 Technology for Easy Life http:/ 12 历届全国大学生电子竞赛 SPCE061A 实现方案 3.3 主程序流程图主程序流程图 开始 系统初始化 取键值 语音播报处理 键值处理 是否有采样数据处理 PID计算 继

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论