2009 届本科生学士学位论文
学校代码:10269
微电脑吸尘器控制板量产测试系统的设计和实现
The Design and implementation for Production test system of Micro-computer vacuum cleaner control panel
院 专 姓 学
系:教育科学学院教育信息技术学系 业: 名: 号: 教育技术学 胡祝青 [1**********] 毛敏 副教授
指导 教师:
2009 年 5 月完成
1
目
录
摘要 ................................................................... 1 英文摘要 ............................................................... 1 一、引言 ............................................................... 3 (一)问题的提出 .................................................... 3 (二)需求分析 ...................................................... 3 1. 为测试提供的接口 ............................................. 3 2. 需要测试的参数 ............................................... 4 二、系统的总体设计 ..................................................... 7 (一)功能要求 ...................................................... 7 (二)基于单片机的测控系统 .......................................... 8 1.系统构成 ..................................................... 8 2.基本原理 ..................................................... 9 (三)TC-161 测试系统的组成 ........................................ 10 1.ATmaga16 单片机 .............................................. 11 2.交流信号频率采集 ............................................ 11 3.基准时钟频率采集 ............................................ 12 4.电压量采集 .................................................. 13 5.交流电流量采集 .............................................. 13 6.测试结果的呈现 .............................................. 14 7.模拟手柄 .................................................... 14 三、硬件电路的实现 .................................................... 15 (一)单片机系统 ................................................... 15 1.复位电路的设计 .............................................. 15 2.时钟电路的设计 .............................................. 15 (二)数据采集电路 ................................................. 15 1.频率测量 .................................................... 15 2.电压测量 .................................................... 16 3.电流测量 .................................................... 17
2
(三)液晶显示电路 ................................................. 17 (四)模拟手柄电路 ................................................. 18 四、软件的设计 ........................................................ 20 (一)主程序设计 ................................................... 20 1.简单嵌入式操作系统 sEOS ...................................... 20 2.
主程序设计 .................................................. 22 (二)数据采集程序设计 ............................................. 23 1.频率采集程序 ................................................ 23 2.电压与电流采集程序设计 ...................................... 25 (三)LCD 液晶显示器程序设计 ....................................... 26 1.HF12864B2 的相关原理介绍 ..................................... 26 2.LCD 液晶显示器程序设计 ....................................... 29 五、调试及性能分析 .................................................... 34 六、结论和展望 ........................................................ 35 参考文献 .............................................................. 36 附录 .................................................................. 37 致谢 .................................................................. 38
3
正文:
微电脑吸尘器控制板量产测试系统的设计与实现
微电脑吸尘器控制板量产测试系统的设计和实现
: 【摘要】 TC-161 为华师大与某日本公司合作开发的一款微电脑吸尘器内部的控制板。 摘要】 本毕业设计开发了一个用以量产测试此类控制板性能好坏的单片机测试系统。 本文首先详细介绍了本次测试系统开发的需求以及所需测试的 11 个接口和 15 个参数。 其次, 总结了测试系统所需实现的功能要求, 接着从典型的单片机测控系统的原理及框 图入手,介绍了本次测试系统设计的组成框图以及测量原理。 再次,分块介绍了测试系统的单片机系统电路,频率、电流、电压采集电路,液晶显示 电路,以及模拟手柄电路。 最后,设计并实现了系统软件。系统软件的设计包括主程序的设计、数据采集程序的设 计和 LCD 液晶显示器程序的设计。本文还详细介绍了主程序设计所需用到的简单嵌入式操 作系统 sEOS 以及 LCD 液晶显示器的显示原理。 : 【关键词】 AVR 单片机 单片机测试系统 数据采集 关键词】 LCD 液晶显示器
The Design and implementation for Production test system of Micro-computer vacuum cleaner control panel
【Abstract】 】 :TC-161, which is developed by East China Normal University and a Japanese : company, is a micro-computer control panel inside the vacuum cleaner. This thesis has developed a single-chip test system for the mass production of such panels to test the performance of good and bad. Firstly, the paper elaborates on the development requirement of this test system and the 11 interfaces and 15 parameters which are necessary. Secondly, it summarizes the requirement of function in this test system, and also introduces the test system design block diagram as well as the measuring principle, according to the principle and block diagram of typical single-chip test system. Thirdly, it introduces t
he blocks of test system, such as single-chip microcomputer circuit,
1
正文:
微电脑吸尘器控制板量产测试系统的设计与实现
frequency, current, voltage acquisition circuit, liquid crystal display circuit, and circuit simulation of the handle. Finally, system software has been successfully designed. The software involves the design of main program, data collection program and liquid crystal display (LCD) program. This article also introduces the simple embedded operating system (SEOS) as well as the display principle of liquid crystal display (LCD) in detail. 【 Keywords 】 AVR Single-Chip : Liquid crystal display (LCD) Monitor Single-chip test system Data collection
2
正文:
微电脑吸尘器控制板量产测试系统的设计与实现
一、引言
(一)问题的提出 日前,由华东师大与日本某公司合作开发出一系列新式智能吸尘器。该系列 吸尘器内部有一块用以控制吸尘器的工作模式以及确保吸尘器工作安全性的微 处理器控制板(以下简称“控制板”,故又称“微电脑吸尘器” ) 。该系列控制板 有如下作用: 1、控制吸尘器的工作模式 该吸尘器具有五种工作模式,分别为空闲模式、模拟键盘关闭模式、模拟键 盘低档模式、模拟键盘高档模式、异常模式。后面将会详细介绍。 2、实现吸尘器的慢启动 在控制板的控制之下,吸尘器的电动机是慢慢地启动。 3、确保吸尘器的工作安全性 (1)温度保护:控制板能够实时监测吸尘器工作时的内部温度,当温度超 过某一范围时,则自动关闭电动机。 (2)过压保护:控制板能监测电动机的工作电压,当电压超过某一范围时, 则自动关闭电动机。 TC-161 为该系列控制板中功能最全面的一个。为方便检测 TC-161 的好坏, 并满足其工业批量生产的需求, 本毕业设计开发了这个微电脑吸尘器控制板量产 测试系统(以下简称“测试系统”。 ) (二)需求分析 在测试系统的需求分析中,用户[1]只提供测试需要的相关接口以及必要的协 议,而 TC-161 的各项功能的实现原理以及设计图,对此次测试系统的设计来说 可有可无。 1. 为测试提供的接口 用户最终提供的接口有 11 个,分别以 TP1、TP2、……、TP11 计。详细接 口如下图 1-1:
[1]
这里指 TC-161 的生产厂家 3
正文:
微电脑吸尘器控制板量产测试系统的设计与实现
图 1-1 T-161 测试治具接口 Figure 1-1 Fixture interface
各接口说明如下: TP1:接工作电源正极,用于检查测试系统是否工作在正常电压下 TP2:接地 TP3:接 NTC 热敏电阻,用于测试温度保护电路是否正常 TP4:接某交流信号,用于测试 50 赫兹的同步信号是否输入到 TC-161 TP5:接某电阻,用于测试过压保护电路是否正常 TP6:该接口用于测手元电压 TP
7:该接口用于测基准时钟 TP8:手柄插头之一,通过此接口与手柄连接 TP9:手柄插头之一,通过此接口与手柄连接 TP10:用于测量通过负载(电动机)的电流 TP11:用于测量通过负载(电动机)的电流 2. 需要测试的参数 (1)必要的说明 由于即将介绍的许多参数跟如图 1-2 所示的手柄有关, 所以下面就该手柄做 些必要的说明。
4
正文:
微电脑吸尘器控制板量产测试系统的设计与实现
图 1-2 Figure 1-2
手柄与吸尘器的拓扑关系图
Topotaxy chart between handle and vacuum
该手柄的作用是控制 TC-161 的工作模式。TC-161 一共分 5 种工作模式:空 闲模式(开关 S1、S2、S3 全部断开) 、模拟键盘关闭模式(仅开关 S1 合上) 、 模拟键盘低档模式(仅开关 S2 合上) 、模拟键盘高档模式(仅开关 S3 合上) 、 异常模式(专指手柄突然掉落或者被拔下) 。每种工作模式分别对应关于电流和 关于电压的两个参数。 不难发现,以上所说的工作模式中有三个模式都带有“模拟键盘”这个四个 字。 为什么有这么一说呢?原来通过该手柄控制微电脑的工作模式的方法与传统 的键盘直接控制电动机的方式不同,当按下手柄中的某一个按钮时,实际上是在 给控制板发一个信号,而控制板在查询到此信号的变化时,决定对电动机发出停 止、小功率或大功率的信号。因而,该手柄实际上是起到一个模拟键盘的作用。 (2)需要测试的参数 1) 工作电压 此参数检测 TC-161 是否工作在正常电压范围内,由 TP1 接入。 2)NTC 热敏电阻电压 此参数检测 TC-161 内部温度保护电路是否正常, NTC 热敏电阻两端的电压 与温度成负相关,由 TP3 接入。 3)交流信号频率 此参数测试 TC-161 内的信号是否同步(频率为 50Hz) ,由 TP4 接入。
5
正文:
微电脑吸尘器控制板量产测试系统的设计与实现
4)过压 此参数测试 TC-161 的电压保护电路是否正常,由 TP5 接入。 5)基准时钟频率 此参数测基准时钟的频率,一般为 16K 赫兹左右,由 TP7 接入。 6)手元基准电压 “手元”是继承日本公司的叫法,即手柄的意思。此参数为空闲模式下 TP6 点的电压。 7)空载电流 此参数为空闲模式下通过 TC-161 电动机的电流,理论情况下应该为 0。 8)低档电压 此参数为模拟键盘低档模式下 TP6 点的电压。 9)低档电流 此参数为模拟键盘低档模式下通过 TC-161 电动机的电流。 10)高档电压 此参数为模拟键盘高档模式下 TP6 的电压。 11)高档电流 此参数为模拟键盘高档模式下通过 TC-161 电动机的电流。 12)停止电压 此参数为模拟键盘停止模式下 TP6 的电压。 13)停止电流 此参数为模拟键盘停止模式下通过 TC-161 电动机的
电流。 14)手元拔出电压 此参数为异常模式下 TP6 的电压。 15)手元拔出电流 此参数为异常模式下通过 TC-161 电动机的电流
6
正文:
微电脑吸尘器控制板量产测试系统的设计与实现
二、系统的总体设计
根据上一章的需求分析,作者设计出了控制板 TC-161 的测试系统,测试仪 器如图 2-1。
图 2-1 Figure 2-1
测试系统实物图片 Actual pic of test system
下面两节将详细介绍该系统的主要功能要求及其测试原理。 (一)功能要求 毋庸讳言,该测试系统最主要的功能应该是准确地测试出需求分析中的各个 参数大小并及时通过显示模块显示出来。具体地讲,应该实现以下几个功能: (1)频率的测量 可以测量出交流信号频率和基准时钟频率这两个参数。应该注意这两个频率 一个是低频一个是高频,因此运用到的测量方法会有所不同。 (2)电压的测量 可以测量以下 8 个参数的电压:工作电压、NTC 热敏电阻电压、过压、手 元基准电压、低档电压、高档电压、停止电压和手元拔出电压。其中最后五个参 数测量点为都为 TP6 这个接口。 (3)电流的测量 可以测量以下 5 个参数的电流:空载电流、低档电流、高档电流、停止电流
7
正文:
微电脑吸尘器控制板量产测试系统的设计与实现
以及手元拔出电流。注意这五个电流的侧两点都为 TP10 和 TP11 接口。 (4)测试结果的呈现 能将每一步测量的结果都实时地显示出来; 需要有一个指示灯说明测量正在 进行、一个指示灯说明此控制板为坏板、一个指示灯说明此控制板为好板;当测 量出现异常,即测试的某个参数不在其指定范围之内时,有相关设备发出报警的 声音。显示面板如图 2-2。
好板指示灯 坏板指示灯 运行指示灯
液晶显示屏
图 2-2 Figure 2-2
测试系统显示面板
Display mainboard of test system
(二)基于单片机的测控系统 由于单片机体积小、重量轻、成本低,且具有较强的控制功能和多种计算能 力,因此单片机自问世以来便大量应用于工业测控系统当中。在基于单片机的测 控系统中,经常需要对一些现场物理量进行采样,最后将采样结果或进一步处理 的结果显示出来,同时输出需要的物理量反过来控制被测对象以及相关设备。 1.系统构成 下面给出一个典型的,比较全面的单片机测控系统。如图 2-3,图中间是单 片机的主机板。图的左边为计算机的外部设备,包括键盘显示器等。图的右边为 被测控对象,总称为用户。
8
正文:
微电脑吸尘器控制板量产测试系统的设计与实现
接口 键盘 接口 接口 接口
A/D
调节放大 调节放大 调节放大
模拟量传感器 数字量传感器 开关量传感器
单
显示器
接口
片 机
接口 接口 接口
D/A
电压放大 放大电路 电压转换
模拟量输出 模拟量输出 开关量输出
打印机
接口
图 2-3 典型单片机测控系统框图 Figure 2-3 Black diagram of test and control system based on single-chip
由于本次设计的单片机系统主要任务是测试,而工业控制部分涉及得比较 少,因而下面一小节作者将详细介绍基于单片机的测试系统的原理。 2.基本原理 基于单片机的测试系统的基本原理是,通过单片机 I/O 接口传输控制命令和 测试信息,通过单片机串行接口组织测试网络,运行模块化的测试程序自动完成 对不同被测对象的测试任务及测试数据的管理[2]。 (1)测试方式 在测试应用中,测试往往包括了一定的数据处理要求,因此基于单片机的测 控系统执行多任务的实时性会大大降低。然而通过分解被测对象的工作状态,以 分步骤的形式分时安排测试任务, 基于单片机的测控系统在处理和执行相关测试 任务中就显得游刃有余了。 测试步骤是根据被测对象的工作原理人为制定的。有了测试步骤之后,测试 软件的设计才能按模块化的方法编写,使测试程序流程更加有序和科学。 一般测试方式有两种,即步进方式和连续方式。 步进方式是指在人为的控制之下,按步骤地执行测试任务的过程。这种方式 使程序执行完一个步骤之后,进入等待的状态。
[2]
陈步月.基于单片机的测试技术原理与应用[M].北京:机械工业出版社,2007.2,229. 9
正文:
微电脑吸尘器控制板量产测试系统的设计与实现
连续方式是指单片机不按测试步骤停顿,连续执行测试任务的过程。这种方 式特别适合产品的合格检验和流水作业的场合[3]。 (2)测试信息显示 测试信息有三种显示方式, 即单片机控制 LED 数码管显示、 单片机控制 LCD 液晶屏显示、通过串行接口发送数据到 PC 显示。 一般显示的测试信息类型包括:连续、步进方式选择提示、测试步骤提示、 参考数据和测试数据显示、测试步骤结果显示、最终测试结果显示等[4]。 (3)测试软件设计 基于单片机的测试软件比一般的控制软件要大很多,而且相对较复杂,因而 使用模块化的设计方法更加适合不同的被测对象和不同内容的测试步骤。 (三)TC-161 测试系统的组成 按照 TC-161 测试系统的功能要求,决定采用如图 2-4 所示的模块组成系统, 主要包括单片机控制器、交流信号频率检测电路、基准时钟频率检测电路、电压 采样电路、电流采样电路、LED 指示灯电路、液晶显示电路、报警电路和模拟 手柄电路。
图 2-4 微电脑吸尘器控制板量产测试系统的组成框图 Figure 2-4 Composition block diagram of Production test system of
Micro-computer vacuum cleaner control panel
[3] [4]
陈步月.基于单片机的测试技术原理与应用[M].北京:机械工业出版社,2007.2,79~230. 陈步月.基于单片机的测试技术原理与应用[M].北京:机械工业出版社,2007.2,79~84、230~231. 10
正文:
微电脑吸尘器控制板量产测试系统的设计与实现
该测试系统的基本原理是:利用 AVR 单片机(ATmega16L)自带的模数转 换器对被测对象(频率、电压、电流等)进行采样,然后对采样数据进行处理 , 并最终将处理结果通过液晶显示屏、蜂鸣器、LED 指示灯等设备呈现出来。在 测试期间, AVR 单片机会做出相应的控制以方便测量的进行,比如控制模拟手 柄电路,模拟手柄的工作方式,从而逐步测试 TC-161 在不同工作模式下的电压 和电流。由于测试只需检验被测板是否合格,因而测试系统采取的是连续测试方 式,这大大降低了测试的周期,满足了流水作业的需要。下面简述框图中的几个 主要模块: 1.ATmaga16 单片机 ATMEL 公司的 magaAVR 单片机不但性能优越, 同时也有非常好的性能价格 比。ATmega16 是中档型的 AVR 芯片,它的引脚数为 40,在片内集成了 1K 字节 的 SRAM,16K 字节的 Flash,512 字节的 E 2 PROM,两个 8 位和 1 个 16 位共 3 个超强功能的定时/计算器,以及 USART、SPI、多路 10 位 ADC、WDT、RTC、 ISP、IAP、TWI、片内高精度 RC 振荡器等多种功能的接口和特性,较全面的体 现了 AVR 的特点,不仅适合对 AVR 了解和使用的入门起步学习,同时也满足一 般的普通应用,在实际中得到了大量的使用[5]。 考虑到测试时需要用到定时器、外部中断口以及众多的 ADC 口,因此作者 最终选择了 ATmega16 作为主控芯片。 2.交流信号频率采集 考虑到 mega16 的 3 个定时计数器引脚可能会全部都被占用,因而在被测信 号频率(50Hz)不是很高不至于引起 CPU 繁忙的前提下,可以考虑使用外部中断 口(INT0)来测量交流信号的频率。 若用 T 表示一定的时间间隔, N 表示在该时间间隔内的周期信号重复出现 用 的次数,则周期信号的频率表达式为
[5]
ATmega16 的数据手册 11
正文:
微电脑吸尘器控制板量产测试系统的设计与实现
f =
N T
(2-1)
单片机外部中断口测频方法可以严格按照式(2-1)进行,测量原理如图 2-5 所 示。
被测周期信号
外中断 0 触发计数
所得频率
定时器/计数器 1 定时
单片机周期信号
图 2-5 单片机外部中断测频原理图 Figure 2-5 Schematic diagram of frequency measurement by means of external interrupt
单片机的定时器/计数器 1 设置成定时器方式, 由它对单片机周期信号计数定 时,形成时间间隔 T,去控制单片机外部中断的打开和关闭,显然单片机
的机器 周期信号在这里用作时基。将外部中断设置成上跳沿触发或者下跳沿触发方式, 当每接收到一个被测周期信号,外部中断便被触发一次,而在时间间隔 T 内被 触发的次数就是式(2-1)中的 N。再经过单片机的计算,即可得到被测周期信 号的频率。 3.基准时钟频率采集 基准时钟频率的大小大概为 16KHz,若仍然采用外部中断测频法进行测量, 那么测试过程中频繁的中断会占用大量系统资源,所以本毕业设计采用 ATmaga16 定时器/计数器 0 进行测量。 定时器/计数器的测频原理跟外部中断测频原理基本相同(见图 2-6) ,只不 过在这里扮演计数角色的不是外部中断而是定时器/计数器。将定时器/计数器 1 设置成计数器方式,由它对被测周期进行计数,技数的结果就是式(2-1)中的 N。
12
正文:
微电脑吸尘器控制板量产测试系统的设计与实现
被测周期信号
定时器/计数器 0 计数
所得频率
定时器/计数器 1 定时
单片机周期信号
图 2-6 Figure 2-6
单片机定时器/计数器测频原理图
Schematic diagram of frequency measurement by means of Timer/Counter
4.电压量采集 ATmega16 有一个 10 位的逐次逼近型 ADC(模数转换器) 。ADC 与一个 8 通道的模拟多路复用器连接,能对来自端口 A 的 8 路单端输入电压进行采样。 单端电压输入以 0V(GND)为基准[6]。 ADC 通过逐次逼近的方法将输入的模拟电压转换成一个 10 位的数字量。转 换的结果被存入 ADC 结果寄存器(ADCL,ADCH) 。 单次转换的结果如下:
ADC = V IN
× 1024
REF
V
式中,V IN 为被选中引脚的输入电压,V REF 为参考电压。 则所测的电压值为:
V
IN
=
ADC × 1024 V REF
测试系统需要测量的电压的地方有 4 处, 因而可分别用 ADC0、 ADC1、 ADC2、
ADC3 连接被测电压量,再分时采集每一路的 ADC 值,进行计算后即可得到所
测电压值。 5.交流电流量采集
[6]
ATmega16 数据手册 13
正文:
微电脑吸尘器控制板量产测试系统的设计与实现
对于交流电流的检测决定采用电流互感器的方法。电流互感器是利用变压器 原、副边电流成比例的特点制成。其工作原理、等值电路也与一般变压器相同, 只是其原边绕组(初级绕组)串联在被测电路中,且匝数很少;副边绕组(次级 绕组)接电流表、继电器电流线圈等低阻抗负载,近似短路。原边电流(即被测 电流)和副边电流取决于被测线路的负载,而与电流互感器的副边负载无关。由 于副边接近于短路,所以原边电压、副边电压都很小,励磁电流也很小。 将电流互感器的原边绕组串联在被测控制板电路中,即两端分别接 TP10 和 TP11,副边绕组串联一个电阻,然后将电阻两端的电压输
入单片机的 AD 口 (ADC4)进行采样即可得到副边电流的相关量。根据当原边与副边绕组的匝数 比一定时,原边电流与副边电流成正比的特点,即可检测出交流电流的大小。 6.测试结果的呈现 测试结果的呈现分三个方面: (1)通过 LCD 将测试步骤提示、测试数据、 测试结果等信息显示出来。 上海恒芳电子的 HF12864B2 是一块 128*64 的汉字图 形点阵液晶显示模块, 可显示汉字及图形, 内置 8192 个中文汉字 (16*16 点阵) 、 128 个字符(8*16 点阵)及 64*256 点阵显示 RAM(GDRAM)[7]。 (2)通过 I/O 口控制相关的 LED 指示灯的量灭来进一步说明测试的状态。 (3)通过 I/O 控制 蜂鸣器,从而当测试步骤的结果出现异常时,系统会自动报警。 7.模拟手柄 在测试 15 个参数当中的最后 10 个参数时, 因为它 们都跟手柄有关,所以我们在测试系统中必须要电路 模拟这个手柄的存在。模拟手柄电路的关键是控制开 关的开与合,这用单刀双掷开关继电器(如图 2-7)代 替开关即可以解决。用单片机的 I/O 口给 4、5 两端通 电,开关被掷向 3,断电,则开关重新回到 2。
图 2-7 单刀双掷开关继电器 Figure 2-7 Relay-spdt
[7]
恒芳 HF12864B2 型 LCD 数据手册 14
正文:
微电脑吸尘器控制板量产测试系统的设计与实现
三、硬件电路的实现
(一)单片机系统 下面给出单片机系统的基本组成部分,复位电路与时钟电路。见图 3-1。
图 3-1
复位电路与时钟电路图
Fiture 3-1 Diagram of Reset circuit and clock circuit
1.复位电路的设计 外部复位电路采用上电复位和按键复位。 即当给系统上电时, VCC 与地通过 R1 和电容 E3 导通,RST 相当于低电平,此时系统复位;当按下开关 sw1 时, 电容 E3 被短路,则 RST 低电平复位。详见图 3-1 复位电路。 2.时钟电路的设计 采用外部晶振,主机时钟频率为 6MHz。详见图 3-1 时钟电路。 (二)数据采集电路 1.频率测量 如图 3-2,频率的测量电路实现很简单,只要将测频率的接口(TP4、TP7) 串上一个电阻再接入单片机的外部中断口和计数器口即可。
15
正文:
微电脑吸尘器控制板量产测试系统的设计与实现
图 3-2 Figure 3-2
频率测量电路
Circuit of frequency measurement
2.电压测量 如前所述,ATmega16 片内自带了一个 8 通道的 10 位模数转换器,其接口为 PA 口。因而只需将采样的信号串联一个 10K 的电阻接入 ADC 口即可。所有信 号在接入 ADC 口之前最好都串上一个接地电容滤波。具体电路图如图 3-3。
图 3-3 Figure 3-3
电压测量电路
Circuit of voltage measurement
16
正文:
微电脑吸尘器控制板量产测试系统的设计与实现
需要说明的两点是: (1)TP2 连接的是控制板
的地线,必须与测试系统的地 线相连,所以在图 3-3 中,TP2 串联了一个 0Ω的电阻之后再与地相连。 (2)工 作电源(TP1)的测量实际上是分压之后再接至 ADC0 的,这是出于防止因电压 过大而烧坏单片机的考虑。 3.电流测量 电流的测量采取电流互感器的方法,如图 3-4 所示。T2 为电流互感器,流 经 TP10、TP11 的为交流电流,经过电流互感器之后,电流量按一定比例缩小, 通过二级管和电容的作用之后,变为直流电流量,再通过弹片机的 ADC4 口采 样,即可测出电流的大小。
图 3-4 Figure 3-4
电流测量电路
Circuit of current measurement
(三)液晶显示电路 液晶显示器 HF12864B2 的引脚功能[8]如图 3-5 所示, 具体介绍如下。 引脚 1:液晶电源地 引脚 2:液晶电源正端 引脚 3:LCD 驱动电压输入端,调节对比度 引脚 4:并行的指令/数据选择信号;串行的片选信号 引脚 5:并行的读写选择信号;串行的数据口 引脚 6:并行的使能信号;串行的同步时钟 引脚 7~14:液晶的并行数据
图 3-5 液晶显示器 HF12864B2 引脚功能图 Figure 3-5 The Pins 17 of HF12864B2 LCD
[8]
恒芳 HF12864B2 型 LCD 数据手册
正文:
微电脑吸尘器控制板量产测试系统的设计与实现
引脚 15:并串行接口选择:H-并行,L-串行 引脚 16:空脚 引脚 17:复位 低电平有效 引脚 18:空脚 引脚 19:背光 LED 阴极 引脚 20:背光 LED 阳极 单片机与液晶显示器接口电路图如图 3-6 所示。说明以下几点: (1)引脚 V0 的电压是通过可调电阻在 VCC 和 GND 之间分压得到,实践证明当 V0 的电 压在 4.5V 左右的时候,液晶的显示效果最好。 (2)背光的阳极 LED_A 是通过 串上一个电阻接到 VCC 上的,实际上也可以串上可调电阻,调节背光的亮度。 (3)由于测试系统中,单片机与 LCD 的接口采取串行接口方式,因而应将引脚 PSB 接低电平 GND。
图 3-6 Figure 3-6
单片机与液晶显示器接口电路图
Circuit of interface between single-chip and liquid crystal display
(四)模拟手柄电路 模拟手柄电路如图 3-7 所示,可以发现,该图的作用原理跟前面提到的手柄 (图 1-2)是完全一样的。只不过该图是使用开关继电器代替图 1-2 所示手柄的 开关。此处继电器的工作原理为:当单片机的 PC4~5 口输出高电平的时候,继 电器内的线圈通电,开关 P1~4 被吸合;否则,继电器内的线圈电流为 0,开关
18
正文:
微电脑吸尘器控制板量产测试系统的设计与实现
P1~4 被断开。说明以下几点: (1)图中三极管起到放大器的作用,从而以大电 压驱动继电器。 (2)稳压管的作用是在单片机口猛然由高电平到低电平时产生强 大的回流烧坏继电器线圈。
图 3-7 Figure 3-7
模
拟手柄电路
Analog circuit of handle
19
正文:
微电脑吸尘器控制板量产测试系统的设计与实现
四、软件的设计
测试系统的软件采用 CodeVisionAVR 编写并编译。 下面重点介绍下主程序设 计、数据采集程序设计和液晶显示程序设计。 (一)主程序设计 1.简单嵌入式操作系统 sEOS 简单嵌入式操作系统(simple Embedded Operating System,简称 sEOS[8])是一 种开发中小型嵌入式项目比较合适的简单操作系统。sEOS 像许多其它的嵌入式 操作系统一样,可以有效地提供周期性执行单任务的功能,亦可建立多任务状态 系统。在具体的控制系统任务中, 可根据使用要求,通过增减相应的任务函数, 增加和删除任务,使用非常方便。 sEOS 的基础是由片上的定时器在规律且精准的时间间隔产生中断(一个 “tick[9]”,每到中断来临的时候周期性地调用合适的函数,进行任务的调度, ) 这是 sEOS 执行多任务的基本原理。 sEOS 实时操作系统应用任务管理函数原型[10]如下: void main(void) { X_Init();
//初始化任务 X()
sEOS_Init_Timer(n); //设定时间间隔,每隔 nms 调用中断刷新函数(ISR) while(1) //任务 X()在超级循环中有中断 ISR 调用 { sEOS_Go_To_Sleep(); } }
[8] [9]
//系统运行在节电模式,提高 CPU 工作效率
Michael J.Pont. Embedded C[M]. London:Pearson Education Limited 2002,143~203. (美)庞特著;继辉等译.C 语言嵌入式系统开发[M]京:中国电力出版社,2003,147. [10] ] Michael J.Pont. Embedded C[M]. London:Pearson Education Limited 2002,143~203. 20
正文:
微电脑吸尘器控制板量产测试系统的设计与实现
该系统实现任务管理的原理,是采用定时器的溢出所产生的中断调用中断服 务例程 (ISR) ,这里设为 X()。在中断服务例程(ISR)中,实现所需的任务调 度及任务间的转移(或多状态间的转移) 。因而,在 sEOS 中,任务都是从 ISR 中被调度。 中断服务例程(ISR)函数 X()原型: void X(void) interrupt n { X_Update(); } 根据系统的具体任务的分配要求任务调度函数 X_Update()原型设计如下: void X_Update(void) {
//每隔 nms 刷新调用
//n 由具体的定时器决定
//任务调度函数,以执行具体的任务,是系统软件设计的重点
switch(state) { case 1: Task_1(); state = x1; //x1 的值决定了下一个 tick 会执行的任务 break; case 2: Task_2(); state = x2; //x2 的值决定了下一个 tick 会执行的任务 break; . . . case n: Task_n();//xn 的值决定了下一个 tick 会执行的任务 state = xn; break; } }
21
正文:
微电脑吸尘器控制板量产测试系统的设计与实现
在调度函数的 X_Update()里, switch-case 语句中每一个 case 语句对应一个任 务,当需要跳转到某一任务 Task_n()时,只要在当前任务的 case 语句里将 stat
e 设置成 n,那么在下一个 tick 来临时,Task_n()便会被执行。 不难发现,使用 sEOS,使多任务状态系统中的任务调度变得简单,因为系 统中状态的转换只需要改变 state 的值;使实时应用程序的设计具有很大的灵活 性,因为它不需要大的改动,就可以增加新的功能。可以说,sEOS 已经被广泛 应用于单片机的工业控制与测试系统中。 然而在实际应用中,设计者通常不会完全照搬 sEOS 较为繁琐的形式,而只 是应用它利用定时器中断进行任务调度的思想。 微电脑吸尘器控制板量产测试系 统的程序,正是基于 sEOS 的思想设计而成。 2.主程序设计 根据测试系统的功能要求以及终合各被测参数的相关性,决定将整个测试任 务分为 15 个步骤,分别为: 步骤 1:空载测试(测空载电流) ; 步骤 2:工作电源测试(测工作电压) ; 步骤 3: NTC 测试(测 NTC 热敏电阻电压) ; 步骤 4:交流电源测试(测交流信号频率) ; 步骤 5:过压保护(测过压) ; 步骤 6:手元基准测试(测手元基准电压) ; 步骤 7:基准时钟测试(测基准时钟频率) ; 步骤 8:低档电压测试; 步骤 9:低档电流测试; 步骤 10:高档电压测试; 步骤 11:高档电流测试; 步骤 12:停止电压测试; 步骤 13:停止电流测试; 步骤 14::手元拔出测试(测手元拔出电压) ; 步骤 15:2 秒自停测试(测手元拔出电流) 。 根据步骤,画出主程序的框图如图 4-1 所示。图中定时中断由 maga16 的定
22
正文:
微电脑吸尘器控制板量产测试系统的设计与实现
时器/计数器 1 产生。采用 T/C1 的比较匹配中断模式,可以非常精准地产生中断 (一个 tick) ,每个 tick 的时间为 25ms,即每 25ms 调用一次任务调度函数。
图 4-1 Figure 4-1
主程序流程图
Flow chart of main program
(二)数据采集程序设计 1.频率采集程序 如前所述,交流信号频率与基准时钟频率的测试原理基本相同,仅仅是二者 在计算 N(计数值)时所用的方式有所不同。下面分别简述二者的计数方式。 外部中断测频法计数方式: (1)在某一个 tick 到来时,开始对 INT0 进行初始化,这包括在中断控制寄 存器(GICR)中关闭中断 INT0、在通用中断标志寄存器(GIFR)中将中断 INT0 的标志位清 0、将进入外中断的次数(记为 INT0_times)置 0 等。 (2)在初始化工作完毕过后的第一个 tick 到来时,使能(打开)外中断 0。 此后,每当外中断 0 被触发一次,其中断服务子程序中的 INT0_times 都会自动 加 1。 (3)在采样时间为第 n 个 tick 到来时(假设 n=40) ,关闭外中断 0,读取此 时的计数值 N=INT0_times,则测量频率的结果即为:1000*N/(40*25)=N。
23
正
文:
微电脑吸尘器控制板量产测试系统的设计与实现
定时器/计数器测频法计数方式: (1)在某一个 tick 到来时,开始对 T/C0 进行初始化,这包括在 T/C 控制寄 存器(TCCR0)中关闭 T/C0、在 T/C 寄存器(TCNT0)中将计数值清 0。这里 与外中断测频法不同的是,由于待测频率很大,势必会多次超过 T/C0 的最大计 数值 (255) 而溢出, 因而需要一个变量 TC_OVF_times 来记录 T/C0 溢出的次数。 所以,初始化的工作还需加上一条,即将 TC_OVF_times 置 0。 (2) 在初始化工作完毕过后的第一个 tick 到来时, 打开 T/C0。 此后, TCNT0 便会自动对输入的信号上跳沿或下降沿进行计数,每当 T/C0 溢出中断一次,其 中断服务子程序中的 TC_OVF_times 都会自动加 1。 (3)在采样时间为第 n 个 tick 到来时(假设 n=40) ,关闭外中断 0,此时的 计数值的算法位:N=TC_OVF_times * 256 + TCNT0,则测量频率的结果即为: 1000*N/(40*25)=N。 交流信号频率采集子程序见图 4-2。每当交流信号测试任务被 sEOS 所调度, 该子程序便被调用一次,直至测试任务结束任务状态跳转。
图 4-2 Figure 4-2
交流信号频率采集程序流程图
Program flow chart of frequency measurement about AC signal
基准时钟频率采集子程序见图 4-3。同理,每当基准时钟测试任务被 sEOS 所调度,该子程序便被调用一次,直至测试任务结束任务状态跳转。
24
正文:
微电脑吸尘器控制板量产测试系统的设计与实现
图 4-3 Figure 4-3
基准时钟频率采集程序流程图
Program flow chart of frequency measurement about reference clock
2.电压与电流采集程序设计 电压与电流的测量都是通过 maga16 的 ADC 口采集得到。 其软件程序非常简 单, 利用 CodeVisionAVR C 编译器可以直接生成如下读取 ADC 转换值的子程序。
#define ADC_VREF_TYPE 0x40 // Read the AD conversion result unsigned int read_adc(unsigned char adc_input) { ADMUX=adc_input|ADC_VREF_TYPE; // Start the AD conversion ADCSRA|=0x40; // Wait for the AD conversion to complete while ((ADCSRA & 0x10)==0); ADCSRA|=0x10; return ADCW;
25
正文:
微电脑吸尘器控制板量产测试系统的设计与实现
}
该函数的运用也很简单。对于 ADCi 口,其 AD 转换的结果为 read_adc(i) 。 当 参 考 电 压 VREF 近 似 等 于 5V 的 时 候 , ADCi 口 的 输 入 电 压 为 VIN=read_adc(i)/1024*5000,单位为毫伏。 考虑到在数据采集时,会存在许多随机误差,因而在本测试系统中我们不但 在硬件上通过电容滤波, 而且在软件上也加入了多次测量取平均值的数字滤波方 法。下面画出测量手元基准电压的流程图(图 4-4) ,其它电压与电流的测量与 此雷同。
图 4-4 手元基准电压测量流程图 Figure 4-4 Flow chart of reference voltage me
asurement
(三)LCD 液晶显示器程序设计 1.HF12864B2 的相关原理介绍 (1)连接时序 HF12864B2 有并行和串行两种连接方式,本测试系统采用的是串行方式,其 连接时序图如图 4-5 所示。
26
正文:
微电脑吸尘器控制板量产测试系统的设计与实现
图 4-5 Figure 4-5
HF12864B2 串行连接时序图
Sequence chart when HF12864B2 is in series connection
串行数据传送共分三个字节完成[11]: 第一字节:串口控制—格式 11111ABC A 为数据传送方向控制:H 表示数据从 LCD 到 MCU,L 表示 数据从 MCU 到 LCD B 为数据类型选择:H 表示数据是显示数据,L 表示数据是控制 指令 C 固定为 0 第二字节:格式 DDDD0000,四个 D 分别为 8 位数据的高 4 位 第三字节:格式 DDDD0000,四个 D 分别为 8 位数据的低 4 位 (2)显示数据 RAM(DDRAM) DDRAM(128×64bits)是存储图形显示数据的。此 RAM 的每一位数据对 应显示面板上一个点的显示(数据为 H)与不显示(数据为 L) 。DDRAM 能显 示 4 行 8 列共 32 个汉字。汉字显示位置与 DDRAM 的地址对应关系如下表(表 4-1 )。
[11]
恒芳 HF12864B2 型 LCD 数据手册 27
正文:
微电脑吸尘器控制板量产测试系统的设计与实现
表 4-1 汉字显示位置与 DDRAM 地址对照表 Table 4-1 Comparison table of address between display position by Chinese characters and DDRAM
(2)相关指令集 HF12864B2 LCD 液晶显示器内置的指令集很多,下面列出本次系统设计所 用到或比较重要的几条指令集(见表 4-2)
表 4-2 HF12864B2 相关指令集 Table 4-2 Instruction set related
指 令 名 称
控制信号 RS R/W 0 0 0 0 0 0 1 D7 0 0 0 0 1 D6 0 0 0 0 D6
控 D5 0 0 0 1 D5 数 数
制 D4 0 0 0 1 D4
代 D3 0 0 1 X D3 据 据
码 D2 0 1 D RE D2 D1 0 P C X D1 D0 0 S B X D0
清除显示 进入点设定 显示状态开/关 功能设定 设定 DDRAM 地址 写显示数据 读显示数据
0 0 0 0 0 1 1
下面详细解释各个指令集功能。 1)清除显示 将 DDRAM 填满“20H” ,并设定 DDRAM 的地址计数器(AC)到“00H” ,即 起到清屏的作用。该指令需执行的时间为 4.6ms。 2)进入点设定 指定在资料的读取与写入时,设定游标移动方向及指定显示开始处的位移。 S 决定从该行哪里开始显示,一般默认为 0;P 为 1 时,则向右移动光标,为 0 时,向左移动光标。该指令需执行的时间为 72us。
28
正文:
微电脑吸尘器控制板量产测试系统的设计与实现
3)显示状态开/关 D=1:整体显示 ON ;C=1:游标 ON ;B=1:游标位置 ON。该指令需执行的 时间为 72us。 4)功能设定 HF12864B2 的指令集有两种,分别为基本指令集和扩展指令集,当 RE=0 时为 基本指令集,RE=1 时为扩展指令集;X 表示可 0 可 1,这里默认为 0。该指令需 执行的时间为 72us。 5)
设定 DDRAM 地址 设定 DDRAM 地址到地址计数器(AC) 。地址计数器具有自动加一功能,在每 一次读/写数据后它将自动加一,所以在连续进行读/写数据时,地址计数器不必 每次都设置一次。该指令需执行的时间为 72us。 6)写显示数据 该操作将 8 位数据写入先前已确定的显示存储器的单元内。操作完成后地址 计数器自动加一。该指令需执行的时间为 72us。 7)读显示数据 该操作将 LCM 接口部的输出寄存器内容读出,然后地址计数器自动加一。该 指令需执行的时间为 72us。 2.LCD 液晶显示器程序设计 液晶显示器的程序设计必须从底层写起,逐步提高,最后完成显示一行文字 的功能。即先从模拟 LCD 的同步时钟开始写起,逐步往上深入,最终写出能随 意显示某行文字的程序。 (1)模拟同步时钟子程序 此函数的每执行一次,即产生一个同步脉冲。程序如下:
#define RSTLCD PORTC.0 #define CS1 PORTC.1 #define SCLK PORTC.2 void SCLKpulse(void) {
29
正文:
微电脑吸尘器控制板量产测试系统的设计与实现
SCLK=1; SCLK=0; }
(2)向 LCD 发送一位数据子程序 此函数是向 R/W(SIN)口写入一位(bit)数据。程序如下:
#define uchar unsigned char #define SID PORTC.3
void opSID(uchar t) { SID=t; }
(3)向 LCD 发送一字节数据或指令子程序 如前所述,发送一字节的数据需分三个字节完成:第一个字节的格式为: 11111ABC,其中 A 为 RW,B 为 RS;第二个字节格式为:DDDD0000,其中四 个 D 为待传送数据或指令的高四位;第三个格式为:DDDD0000,其中四个 D 为待传送数据或指令的低四位。详细程序实现如下:
#define uchar unsigned char void { uchar i,j,temp; temp=0x80; SCLK=0;
//////////////第一字节开始////////////////////////
out_byte(uchar byte,uchar RW,uchar RS)
opSID(1);
30
正文:
微电脑吸尘器控制板量产测试系统的设计与实现
for(i=0;i
//传第 0 位数据 //传第 1 位数据; //传第 2 位数据
SCLKpulse();
/////////////第 2、第 3 字节开始//////////////////
for(j=0;j
//从最高为开始向右取位
if(temp&byte)opSID(1); else opSID(0); temp=temp>>1; SCLKpulse(); }
//传送四个“0” //传送该位
for(i=0;i
(4)LCD 初始化子程序 程序原型如下: 调用方式:void iniLCD(void)
31
正文:
微电脑吸尘器控制板量产测试系统的设计与实现
函数说明:用于开机初始化 LCD 液晶显示器。 LCD 的初始化程序算法如下:
LCD 初始化 { 启动延时 功能设定 执行 72us 设置显示状态 执行 72us 进入点设定 执行 72us 清屏 执行 4.6ms }
// out_byte(0x30,0,0),即只需基本指令集 // 即延
时 72us // out_byte(0x0c,0,0),即开整体显示,光标不显示、不闪烁 // 即延时 72us // out_byte(0x06,0,0),即光标向右移动 // 即延时 72us // out_byte(0x01,0,0) // 即延时 4.6ms
(5)LCD 显示一行数据子程序 在初始化 LCD 之后,便可显示一行数据了。要显示一行数据,首先要将每 行对应的 DDRAM 地址写入地址计数器,再连续写入字符或汉字的编码数据。 对于某一行来说,由于地址计数器是自动累加的,故而 DDRAM 地址只需写入 一次。 程序原型如下: 调用方式:void LCD(uchar row, uchar *p) 函数说明: 欲显示的内容存在 unsigned char 型数组 p[16]中, row 指示该数据 显示在第几行(一共四行) 。程序流程见图 4-6。
32
正文:
微电脑吸尘器控制板量产测试系统的设计与实现
Figure 4-6
图 4-6 LCD 显示某行数据程序流程图 Program flow chart of some row data displayed by LCD
33
正文:
微电脑吸尘器控制板量产测试系统的设计与实现
五、调试及性能分析
本测试系统开发时的一个主要思想是,测试系统的本质目的是检查被测板 (控制板)电路的正确以及各器件功能的好坏,并不是真正地去测量某个电路上 的电压是多少伏、电流是多少安或者频率是多少赫兹。因而测量的手段是将被测 电路的电压量、电流量、频率量转化成一个单片机能识别的相关量,而判断被测 板好环的方法是将该相关量与工业上能确定绝对 OK 的控制板的相关量比较, 如 果比较结果相差无几,则说明被测板同样是 OK 板,否则就是 NG 板。 出于以上思想的考虑,在系统软件开发的初期并没有也无法确定 15 个被测 参数的精确范围。 因而在调试阶段, 最终要的一个任务便是确定被测参数的范围。 1.调试方法 (1)将软件参数的范围改成能让每一步都能顺利通过的模式,编译下载至 ATmaga16 芯片中,然后拿一块(最好是几块)OK 板放到开发好的测试仪器上 测试。记录下液晶显示器上显示的每一个所测参数的相关量,测试完成之后,根 据所测数据初步确定每一个参数的上下限范围,然后将范围写入软件中。将修改 后的软件编译下载至 ATmega16 中,至此该测试系统便宣告设计完成。 (2)接下来的工作,便是将该系统投入生产线测试。继续收集测试过程中 每一块被判为 NG 板的当前参数的测量数据, 如果不同 NG 板的相同参数的数据 具有一定的有效性和准确性, 则说明这些被测板被判为 NG 板的原因可能不是工 业故障而是软件限定的范围太窄,这时候,就需要再次修改该参数的范围。这样 经过反复的修改,最终确定下来的参数范围便是最接近该批次控制板的。 2.性能分析 经过反复的测试试验,最终确定了一套精确的基
于 TC-161 的参数范围。在 该参数范围下,本测试系统能够准确地判断出被测板(TC-161)的好环。对于 NG 板,该测试系统还能够准确地把错误定位在某个具体参数上,根据该参数可 以判断出哪部分电路出了问题, 进而把错误位置确定在一个比较小的方便人工检 查的范围内,最终为人工检修提供了很好的帮助。
34
正文:
微电脑吸尘器控制板量产测试系统的设计与实现
六、结论和展望
微电脑吸尘器控制板 TC-161 是一块功能多样结构复杂的电路板,本课题设 计并实现了一款用于量产测试 TC-161 好环的基于 ATmega16 单片机的测试系统。 经过多次的生产线测试证明,该系统能够快速并且准确地判定被测板性能的好 坏,而且只需稍加改进,也可以测试 TC-161 同类批次的其他型号(如 TC-131) 控制板。 然而,有于时间有限,该系统还可以在以下几个方面进行改进: 1、液晶显示问题。如今测试的系统,在测试完当前参数之后,除非该参数 因不在指定范围内而跳至异常状态下时能看到显示的结果,在正常情况下,结果 的显示都是一闪而过。因而需要在每测试完一步的时候,都作适当的延时,以让 人眼能够及时捕捉到。然而,这势必会引起测试周期过长的问题。 2、测试周期问题。节约测试时间可以从两个方面来考虑。 (1)软件方面, 可以适当减少某些参数的采样时间。比如低档电压、高档电压、停止电压等的测 量时间可以通过改进软件算法而适当缩小。 (3)硬件方面,可以改变测电流的原 理,比如不用电流互感器而用 AD524,此方法可以准确地采样电流量而无需软 件滤波,从而节约了测量时间。
35
正文:
微电脑吸尘器控制板量产测试系统的设计与实现
参考文献
[1] 于永,戴佳,常江. 51 单片机 C 语言常用模块与综合系统设计实例精讲[M].北京:电 子工业出版社,2007.4,105~131. [2] 欧阳文. ATMEL89 系列单片机的原理与开发实践[M].北京:中国电力出版社, 1007.6,65~67. [3] 楼然苗,李光飞.单片机课程设计指导[M].北京:北京航空航天大学出版社, 2007.7,191~216. [4] 陈步月.基于单片机的测试技术原理与应用[M].北京: 机械工业出版社, 2007.2,79~84、 229~241. [5]求是科技.单片机典型模块设计实例导航[M].北京:人民邮电出版社,2008.7,293. [6]沈兆军,毛敏,刘锦高. 基于 sEOS 思想的 PID 数字控制器设计[J].工业控制计算 机.2005,18(4),59~61. [7]王文勇.高压断路器机械特性单片机测试系统的研制[D].厦门大学,2002.9. [8]王义军.一种新型高压断路器机械参数测试系统的研制[D].东北电力学院,1999.3. [9](美)庞特著;陈继辉等译.C 语言嵌入式系统开发[M]京:中国电
力出版社,2003. [10]Michael J.Pont.bedded C[M]. London:Pearson Education Limited 2002,143~203. [11]Paul Horowitz,Winfield Hill.The Art of Electronics Second Edition.England:The Syndicate of the Press of the University of Cambridge,1989.
36
正文:
微电脑吸尘器控制板量产测试系统的设计与实现
附录
附录一:微电脑吸尘器控制板量产测试系统电路图
37
正文:
微电脑吸尘器控制板量产测试系统的设计与实现
致谢
时光荏苒,光阴似箭,转眼间大学四年生涯即将结束。回想起入学时,恍若 昨日,令人感慨。在校求学这么多年,有太多人需要感谢。 首先要感谢我的指导导师毛敏老师。这次毕业设计,从课题的确定、方案的 选择到论文的撰写,毛老师都给予了我悉心指导。毛老师拥有丰富的工程经验和 深厚的理论素养,跟随他进行科研使我收获颇丰。在科研中,毛老师告诫我要注 重实践,学以致用,这种实践精神将令我终身受用。 此次毕业设计期间,很多同学给予我帮助。感谢同门师兄师姐们的指导和帮 助。感谢我的室友邱和平同学,在论文的撰写过程中与我共同进退。感谢我的学 姐王伟旦同学,对我的论文的撰写和修改提了很多宝贵的意见。 最后要特别感谢我的母亲和父亲,他们含辛茹苦的抚育才使我有了今天。 结尾,谨以此文献给所有关心和帮助过我的人。
38
2009 届本科生学士学位论文
学校代码:10269
微电脑吸尘器控制板量产测试系统的设计和实现
The Design and implementation for Production test system of Micro-computer vacuum cleaner control panel
院 专 姓 学
系:教育科学学院教育信息技术学系 业: 名: 号: 教育技术学 胡祝青 [1**********] 毛敏 副教授
指导 教师:
2009 年 5 月完成
1
目
录
摘要 ................................................................... 1 英文摘要 ............................................................... 1 一、引言 ............................................................... 3 (一)问题的提出 .................................................... 3 (二)需求分析 ...................................................... 3 1. 为测试提供的接口 ............................................. 3 2. 需要测试的参数 ............................................... 4 二、系统的总体设计 ..................................................... 7 (一)功能要求 ...................................................... 7 (二)基于单片机的测控系统 .......................................... 8 1.系统构成 ..................................................... 8 2.基本原理 ..................................................... 9 (三)TC-161 测试系统的组成 ........................................ 10 1.ATmaga16 单片机 .............................................. 11 2.交流信号频率采集 ............................................ 11 3.基准时钟频率采集 ............................................ 12 4.电压量采集 .................................................. 13 5.交流电流量采集 .............................................. 13 6.测试结果的呈现 .............................................. 14 7.模拟手柄 .................................................... 14 三、硬件电路的实现 .................................................... 15 (一)单片机系统 ................................................... 15 1.复位电路的设计 .............................................. 15 2.时钟电路的设计 .............................................. 15 (二)数据采集电路 ................................................. 15 1.频率测量 .................................................... 15 2.电压测量 .................................................... 16 3.电流测量 .................................................... 17
2
(三)液晶显示电路 ................................................. 17 (四)模拟手柄电路 ................................................. 18 四、软件的设计 ........................................................ 20 (一)主程序设计 ................................................... 20 1.简单嵌入式操作系统 sEOS ...................................... 20 2.
主程序设计 .................................................. 22 (二)数据采集程序设计 ............................................. 23 1.频率采集程序 ................................................ 23 2.电压与电流采集程序设计 ...................................... 25 (三)LCD 液晶显示器程序设计 ....................................... 26 1.HF12864B2 的相关原理介绍 ..................................... 26 2.LCD 液晶显示器程序设计 ....................................... 29 五、调试及性能分析 .................................................... 34 六、结论和展望 ........................................................ 35 参考文献 .............................................................. 36 附录 .................................................................. 37 致谢 .................................................................. 38
3
正文:
微电脑吸尘器控制板量产测试系统的设计与实现
微电脑吸尘器控制板量产测试系统的设计和实现
: 【摘要】 TC-161 为华师大与某日本公司合作开发的一款微电脑吸尘器内部的控制板。 摘要】 本毕业设计开发了一个用以量产测试此类控制板性能好坏的单片机测试系统。 本文首先详细介绍了本次测试系统开发的需求以及所需测试的 11 个接口和 15 个参数。 其次, 总结了测试系统所需实现的功能要求, 接着从典型的单片机测控系统的原理及框 图入手,介绍了本次测试系统设计的组成框图以及测量原理。 再次,分块介绍了测试系统的单片机系统电路,频率、电流、电压采集电路,液晶显示 电路,以及模拟手柄电路。 最后,设计并实现了系统软件。系统软件的设计包括主程序的设计、数据采集程序的设 计和 LCD 液晶显示器程序的设计。本文还详细介绍了主程序设计所需用到的简单嵌入式操 作系统 sEOS 以及 LCD 液晶显示器的显示原理。 : 【关键词】 AVR 单片机 单片机测试系统 数据采集 关键词】 LCD 液晶显示器
The Design and implementation for Production test system of Micro-computer vacuum cleaner control panel
【Abstract】 】 :TC-161, which is developed by East China Normal University and a Japanese : company, is a micro-computer control panel inside the vacuum cleaner. This thesis has developed a single-chip test system for the mass production of such panels to test the performance of good and bad. Firstly, the paper elaborates on the development requirement of this test system and the 11 interfaces and 15 parameters which are necessary. Secondly, it summarizes the requirement of function in this test system, and also introduces the test system design block diagram as well as the measuring principle, according to the principle and block diagram of typical single-chip test system. Thirdly, it introduces t
he blocks of test system, such as single-chip microcomputer circuit,
1
正文:
微电脑吸尘器控制板量产测试系统的设计与实现
frequency, current, voltage acquisition circuit, liquid crystal display circuit, and circuit simulation of the handle. Finally, system software has been successfully designed. The software involves the design of main program, data collection program and liquid crystal display (LCD) program. This article also introduces the simple embedded operating system (SEOS) as well as the display principle of liquid crystal display (LCD) in detail. 【 Keywords 】 AVR Single-Chip : Liquid crystal display (LCD) Monitor Single-chip test system Data collection
2
正文:
微电脑吸尘器控制板量产测试系统的设计与实现
一、引言
(一)问题的提出 日前,由华东师大与日本某公司合作开发出一系列新式智能吸尘器。该系列 吸尘器内部有一块用以控制吸尘器的工作模式以及确保吸尘器工作安全性的微 处理器控制板(以下简称“控制板”,故又称“微电脑吸尘器” ) 。该系列控制板 有如下作用: 1、控制吸尘器的工作模式 该吸尘器具有五种工作模式,分别为空闲模式、模拟键盘关闭模式、模拟键 盘低档模式、模拟键盘高档模式、异常模式。后面将会详细介绍。 2、实现吸尘器的慢启动 在控制板的控制之下,吸尘器的电动机是慢慢地启动。 3、确保吸尘器的工作安全性 (1)温度保护:控制板能够实时监测吸尘器工作时的内部温度,当温度超 过某一范围时,则自动关闭电动机。 (2)过压保护:控制板能监测电动机的工作电压,当电压超过某一范围时, 则自动关闭电动机。 TC-161 为该系列控制板中功能最全面的一个。为方便检测 TC-161 的好坏, 并满足其工业批量生产的需求, 本毕业设计开发了这个微电脑吸尘器控制板量产 测试系统(以下简称“测试系统”。 ) (二)需求分析 在测试系统的需求分析中,用户[1]只提供测试需要的相关接口以及必要的协 议,而 TC-161 的各项功能的实现原理以及设计图,对此次测试系统的设计来说 可有可无。 1. 为测试提供的接口 用户最终提供的接口有 11 个,分别以 TP1、TP2、……、TP11 计。详细接 口如下图 1-1:
[1]
这里指 TC-161 的生产厂家 3
正文:
微电脑吸尘器控制板量产测试系统的设计与实现
图 1-1 T-161 测试治具接口 Figure 1-1 Fixture interface
各接口说明如下: TP1:接工作电源正极,用于检查测试系统是否工作在正常电压下 TP2:接地 TP3:接 NTC 热敏电阻,用于测试温度保护电路是否正常 TP4:接某交流信号,用于测试 50 赫兹的同步信号是否输入到 TC-161 TP5:接某电阻,用于测试过压保护电路是否正常 TP6:该接口用于测手元电压 TP
7:该接口用于测基准时钟 TP8:手柄插头之一,通过此接口与手柄连接 TP9:手柄插头之一,通过此接口与手柄连接 TP10:用于测量通过负载(电动机)的电流 TP11:用于测量通过负载(电动机)的电流 2. 需要测试的参数 (1)必要的说明 由于即将介绍的许多参数跟如图 1-2 所示的手柄有关, 所以下面就该手柄做 些必要的说明。
4
正文:
微电脑吸尘器控制板量产测试系统的设计与实现
图 1-2 Figure 1-2
手柄与吸尘器的拓扑关系图
Topotaxy chart between handle and vacuum
该手柄的作用是控制 TC-161 的工作模式。TC-161 一共分 5 种工作模式:空 闲模式(开关 S1、S2、S3 全部断开) 、模拟键盘关闭模式(仅开关 S1 合上) 、 模拟键盘低档模式(仅开关 S2 合上) 、模拟键盘高档模式(仅开关 S3 合上) 、 异常模式(专指手柄突然掉落或者被拔下) 。每种工作模式分别对应关于电流和 关于电压的两个参数。 不难发现,以上所说的工作模式中有三个模式都带有“模拟键盘”这个四个 字。 为什么有这么一说呢?原来通过该手柄控制微电脑的工作模式的方法与传统 的键盘直接控制电动机的方式不同,当按下手柄中的某一个按钮时,实际上是在 给控制板发一个信号,而控制板在查询到此信号的变化时,决定对电动机发出停 止、小功率或大功率的信号。因而,该手柄实际上是起到一个模拟键盘的作用。 (2)需要测试的参数 1) 工作电压 此参数检测 TC-161 是否工作在正常电压范围内,由 TP1 接入。 2)NTC 热敏电阻电压 此参数检测 TC-161 内部温度保护电路是否正常, NTC 热敏电阻两端的电压 与温度成负相关,由 TP3 接入。 3)交流信号频率 此参数测试 TC-161 内的信号是否同步(频率为 50Hz) ,由 TP4 接入。
5
正文:
微电脑吸尘器控制板量产测试系统的设计与实现
4)过压 此参数测试 TC-161 的电压保护电路是否正常,由 TP5 接入。 5)基准时钟频率 此参数测基准时钟的频率,一般为 16K 赫兹左右,由 TP7 接入。 6)手元基准电压 “手元”是继承日本公司的叫法,即手柄的意思。此参数为空闲模式下 TP6 点的电压。 7)空载电流 此参数为空闲模式下通过 TC-161 电动机的电流,理论情况下应该为 0。 8)低档电压 此参数为模拟键盘低档模式下 TP6 点的电压。 9)低档电流 此参数为模拟键盘低档模式下通过 TC-161 电动机的电流。 10)高档电压 此参数为模拟键盘高档模式下 TP6 的电压。 11)高档电流 此参数为模拟键盘高档模式下通过 TC-161 电动机的电流。 12)停止电压 此参数为模拟键盘停止模式下 TP6 的电压。 13)停止电流 此参数为模拟键盘停止模式下通过 TC-161 电动机的
电流。 14)手元拔出电压 此参数为异常模式下 TP6 的电压。 15)手元拔出电流 此参数为异常模式下通过 TC-161 电动机的电流
6
正文:
微电脑吸尘器控制板量产测试系统的设计与实现
二、系统的总体设计
根据上一章的需求分析,作者设计出了控制板 TC-161 的测试系统,测试仪 器如图 2-1。
图 2-1 Figure 2-1
测试系统实物图片 Actual pic of test system
下面两节将详细介绍该系统的主要功能要求及其测试原理。 (一)功能要求 毋庸讳言,该测试系统最主要的功能应该是准确地测试出需求分析中的各个 参数大小并及时通过显示模块显示出来。具体地讲,应该实现以下几个功能: (1)频率的测量 可以测量出交流信号频率和基准时钟频率这两个参数。应该注意这两个频率 一个是低频一个是高频,因此运用到的测量方法会有所不同。 (2)电压的测量 可以测量以下 8 个参数的电压:工作电压、NTC 热敏电阻电压、过压、手 元基准电压、低档电压、高档电压、停止电压和手元拔出电压。其中最后五个参 数测量点为都为 TP6 这个接口。 (3)电流的测量 可以测量以下 5 个参数的电流:空载电流、低档电流、高档电流、停止电流
7
正文:
微电脑吸尘器控制板量产测试系统的设计与实现
以及手元拔出电流。注意这五个电流的侧两点都为 TP10 和 TP11 接口。 (4)测试结果的呈现 能将每一步测量的结果都实时地显示出来; 需要有一个指示灯说明测量正在 进行、一个指示灯说明此控制板为坏板、一个指示灯说明此控制板为好板;当测 量出现异常,即测试的某个参数不在其指定范围之内时,有相关设备发出报警的 声音。显示面板如图 2-2。
好板指示灯 坏板指示灯 运行指示灯
液晶显示屏
图 2-2 Figure 2-2
测试系统显示面板
Display mainboard of test system
(二)基于单片机的测控系统 由于单片机体积小、重量轻、成本低,且具有较强的控制功能和多种计算能 力,因此单片机自问世以来便大量应用于工业测控系统当中。在基于单片机的测 控系统中,经常需要对一些现场物理量进行采样,最后将采样结果或进一步处理 的结果显示出来,同时输出需要的物理量反过来控制被测对象以及相关设备。 1.系统构成 下面给出一个典型的,比较全面的单片机测控系统。如图 2-3,图中间是单 片机的主机板。图的左边为计算机的外部设备,包括键盘显示器等。图的右边为 被测控对象,总称为用户。
8
正文:
微电脑吸尘器控制板量产测试系统的设计与实现
接口 键盘 接口 接口 接口
A/D
调节放大 调节放大 调节放大
模拟量传感器 数字量传感器 开关量传感器
单
显示器
接口
片 机
接口 接口 接口
D/A
电压放大 放大电路 电压转换
模拟量输出 模拟量输出 开关量输出
打印机
接口
图 2-3 典型单片机测控系统框图 Figure 2-3 Black diagram of test and control system based on single-chip
由于本次设计的单片机系统主要任务是测试,而工业控制部分涉及得比较 少,因而下面一小节作者将详细介绍基于单片机的测试系统的原理。 2.基本原理 基于单片机的测试系统的基本原理是,通过单片机 I/O 接口传输控制命令和 测试信息,通过单片机串行接口组织测试网络,运行模块化的测试程序自动完成 对不同被测对象的测试任务及测试数据的管理[2]。 (1)测试方式 在测试应用中,测试往往包括了一定的数据处理要求,因此基于单片机的测 控系统执行多任务的实时性会大大降低。然而通过分解被测对象的工作状态,以 分步骤的形式分时安排测试任务, 基于单片机的测控系统在处理和执行相关测试 任务中就显得游刃有余了。 测试步骤是根据被测对象的工作原理人为制定的。有了测试步骤之后,测试 软件的设计才能按模块化的方法编写,使测试程序流程更加有序和科学。 一般测试方式有两种,即步进方式和连续方式。 步进方式是指在人为的控制之下,按步骤地执行测试任务的过程。这种方式 使程序执行完一个步骤之后,进入等待的状态。
[2]
陈步月.基于单片机的测试技术原理与应用[M].北京:机械工业出版社,2007.2,229. 9
正文:
微电脑吸尘器控制板量产测试系统的设计与实现
连续方式是指单片机不按测试步骤停顿,连续执行测试任务的过程。这种方 式特别适合产品的合格检验和流水作业的场合[3]。 (2)测试信息显示 测试信息有三种显示方式, 即单片机控制 LED 数码管显示、 单片机控制 LCD 液晶屏显示、通过串行接口发送数据到 PC 显示。 一般显示的测试信息类型包括:连续、步进方式选择提示、测试步骤提示、 参考数据和测试数据显示、测试步骤结果显示、最终测试结果显示等[4]。 (3)测试软件设计 基于单片机的测试软件比一般的控制软件要大很多,而且相对较复杂,因而 使用模块化的设计方法更加适合不同的被测对象和不同内容的测试步骤。 (三)TC-161 测试系统的组成 按照 TC-161 测试系统的功能要求,决定采用如图 2-4 所示的模块组成系统, 主要包括单片机控制器、交流信号频率检测电路、基准时钟频率检测电路、电压 采样电路、电流采样电路、LED 指示灯电路、液晶显示电路、报警电路和模拟 手柄电路。
图 2-4 微电脑吸尘器控制板量产测试系统的组成框图 Figure 2-4 Composition block diagram of Production test system of
Micro-computer vacuum cleaner control panel
[3] [4]
陈步月.基于单片机的测试技术原理与应用[M].北京:机械工业出版社,2007.2,79~230. 陈步月.基于单片机的测试技术原理与应用[M].北京:机械工业出版社,2007.2,79~84、230~231. 10
正文:
微电脑吸尘器控制板量产测试系统的设计与实现
该测试系统的基本原理是:利用 AVR 单片机(ATmega16L)自带的模数转 换器对被测对象(频率、电压、电流等)进行采样,然后对采样数据进行处理 , 并最终将处理结果通过液晶显示屏、蜂鸣器、LED 指示灯等设备呈现出来。在 测试期间, AVR 单片机会做出相应的控制以方便测量的进行,比如控制模拟手 柄电路,模拟手柄的工作方式,从而逐步测试 TC-161 在不同工作模式下的电压 和电流。由于测试只需检验被测板是否合格,因而测试系统采取的是连续测试方 式,这大大降低了测试的周期,满足了流水作业的需要。下面简述框图中的几个 主要模块: 1.ATmaga16 单片机 ATMEL 公司的 magaAVR 单片机不但性能优越, 同时也有非常好的性能价格 比。ATmega16 是中档型的 AVR 芯片,它的引脚数为 40,在片内集成了 1K 字节 的 SRAM,16K 字节的 Flash,512 字节的 E 2 PROM,两个 8 位和 1 个 16 位共 3 个超强功能的定时/计算器,以及 USART、SPI、多路 10 位 ADC、WDT、RTC、 ISP、IAP、TWI、片内高精度 RC 振荡器等多种功能的接口和特性,较全面的体 现了 AVR 的特点,不仅适合对 AVR 了解和使用的入门起步学习,同时也满足一 般的普通应用,在实际中得到了大量的使用[5]。 考虑到测试时需要用到定时器、外部中断口以及众多的 ADC 口,因此作者 最终选择了 ATmega16 作为主控芯片。 2.交流信号频率采集 考虑到 mega16 的 3 个定时计数器引脚可能会全部都被占用,因而在被测信 号频率(50Hz)不是很高不至于引起 CPU 繁忙的前提下,可以考虑使用外部中断 口(INT0)来测量交流信号的频率。 若用 T 表示一定的时间间隔, N 表示在该时间间隔内的周期信号重复出现 用 的次数,则周期信号的频率表达式为
[5]
ATmega16 的数据手册 11
正文:
微电脑吸尘器控制板量产测试系统的设计与实现
f =
N T
(2-1)
单片机外部中断口测频方法可以严格按照式(2-1)进行,测量原理如图 2-5 所 示。
被测周期信号
外中断 0 触发计数
所得频率
定时器/计数器 1 定时
单片机周期信号
图 2-5 单片机外部中断测频原理图 Figure 2-5 Schematic diagram of frequency measurement by means of external interrupt
单片机的定时器/计数器 1 设置成定时器方式, 由它对单片机周期信号计数定 时,形成时间间隔 T,去控制单片机外部中断的打开和关闭,显然单片机
的机器 周期信号在这里用作时基。将外部中断设置成上跳沿触发或者下跳沿触发方式, 当每接收到一个被测周期信号,外部中断便被触发一次,而在时间间隔 T 内被 触发的次数就是式(2-1)中的 N。再经过单片机的计算,即可得到被测周期信 号的频率。 3.基准时钟频率采集 基准时钟频率的大小大概为 16KHz,若仍然采用外部中断测频法进行测量, 那么测试过程中频繁的中断会占用大量系统资源,所以本毕业设计采用 ATmaga16 定时器/计数器 0 进行测量。 定时器/计数器的测频原理跟外部中断测频原理基本相同(见图 2-6) ,只不 过在这里扮演计数角色的不是外部中断而是定时器/计数器。将定时器/计数器 1 设置成计数器方式,由它对被测周期进行计数,技数的结果就是式(2-1)中的 N。
12
正文:
微电脑吸尘器控制板量产测试系统的设计与实现
被测周期信号
定时器/计数器 0 计数
所得频率
定时器/计数器 1 定时
单片机周期信号
图 2-6 Figure 2-6
单片机定时器/计数器测频原理图
Schematic diagram of frequency measurement by means of Timer/Counter
4.电压量采集 ATmega16 有一个 10 位的逐次逼近型 ADC(模数转换器) 。ADC 与一个 8 通道的模拟多路复用器连接,能对来自端口 A 的 8 路单端输入电压进行采样。 单端电压输入以 0V(GND)为基准[6]。 ADC 通过逐次逼近的方法将输入的模拟电压转换成一个 10 位的数字量。转 换的结果被存入 ADC 结果寄存器(ADCL,ADCH) 。 单次转换的结果如下:
ADC = V IN
× 1024
REF
V
式中,V IN 为被选中引脚的输入电压,V REF 为参考电压。 则所测的电压值为:
V
IN
=
ADC × 1024 V REF
测试系统需要测量的电压的地方有 4 处, 因而可分别用 ADC0、 ADC1、 ADC2、
ADC3 连接被测电压量,再分时采集每一路的 ADC 值,进行计算后即可得到所
测电压值。 5.交流电流量采集
[6]
ATmega16 数据手册 13
正文:
微电脑吸尘器控制板量产测试系统的设计与实现
对于交流电流的检测决定采用电流互感器的方法。电流互感器是利用变压器 原、副边电流成比例的特点制成。其工作原理、等值电路也与一般变压器相同, 只是其原边绕组(初级绕组)串联在被测电路中,且匝数很少;副边绕组(次级 绕组)接电流表、继电器电流线圈等低阻抗负载,近似短路。原边电流(即被测 电流)和副边电流取决于被测线路的负载,而与电流互感器的副边负载无关。由 于副边接近于短路,所以原边电压、副边电压都很小,励磁电流也很小。 将电流互感器的原边绕组串联在被测控制板电路中,即两端分别接 TP10 和 TP11,副边绕组串联一个电阻,然后将电阻两端的电压输
入单片机的 AD 口 (ADC4)进行采样即可得到副边电流的相关量。根据当原边与副边绕组的匝数 比一定时,原边电流与副边电流成正比的特点,即可检测出交流电流的大小。 6.测试结果的呈现 测试结果的呈现分三个方面: (1)通过 LCD 将测试步骤提示、测试数据、 测试结果等信息显示出来。 上海恒芳电子的 HF12864B2 是一块 128*64 的汉字图 形点阵液晶显示模块, 可显示汉字及图形, 内置 8192 个中文汉字 (16*16 点阵) 、 128 个字符(8*16 点阵)及 64*256 点阵显示 RAM(GDRAM)[7]。 (2)通过 I/O 口控制相关的 LED 指示灯的量灭来进一步说明测试的状态。 (3)通过 I/O 控制 蜂鸣器,从而当测试步骤的结果出现异常时,系统会自动报警。 7.模拟手柄 在测试 15 个参数当中的最后 10 个参数时, 因为它 们都跟手柄有关,所以我们在测试系统中必须要电路 模拟这个手柄的存在。模拟手柄电路的关键是控制开 关的开与合,这用单刀双掷开关继电器(如图 2-7)代 替开关即可以解决。用单片机的 I/O 口给 4、5 两端通 电,开关被掷向 3,断电,则开关重新回到 2。
图 2-7 单刀双掷开关继电器 Figure 2-7 Relay-spdt
[7]
恒芳 HF12864B2 型 LCD 数据手册 14
正文:
微电脑吸尘器控制板量产测试系统的设计与实现
三、硬件电路的实现
(一)单片机系统 下面给出单片机系统的基本组成部分,复位电路与时钟电路。见图 3-1。
图 3-1
复位电路与时钟电路图
Fiture 3-1 Diagram of Reset circuit and clock circuit
1.复位电路的设计 外部复位电路采用上电复位和按键复位。 即当给系统上电时, VCC 与地通过 R1 和电容 E3 导通,RST 相当于低电平,此时系统复位;当按下开关 sw1 时, 电容 E3 被短路,则 RST 低电平复位。详见图 3-1 复位电路。 2.时钟电路的设计 采用外部晶振,主机时钟频率为 6MHz。详见图 3-1 时钟电路。 (二)数据采集电路 1.频率测量 如图 3-2,频率的测量电路实现很简单,只要将测频率的接口(TP4、TP7) 串上一个电阻再接入单片机的外部中断口和计数器口即可。
15
正文:
微电脑吸尘器控制板量产测试系统的设计与实现
图 3-2 Figure 3-2
频率测量电路
Circuit of frequency measurement
2.电压测量 如前所述,ATmega16 片内自带了一个 8 通道的 10 位模数转换器,其接口为 PA 口。因而只需将采样的信号串联一个 10K 的电阻接入 ADC 口即可。所有信 号在接入 ADC 口之前最好都串上一个接地电容滤波。具体电路图如图 3-3。
图 3-3 Figure 3-3
电压测量电路
Circuit of voltage measurement
16
正文:
微电脑吸尘器控制板量产测试系统的设计与实现
需要说明的两点是: (1)TP2 连接的是控制板
的地线,必须与测试系统的地 线相连,所以在图 3-3 中,TP2 串联了一个 0Ω的电阻之后再与地相连。 (2)工 作电源(TP1)的测量实际上是分压之后再接至 ADC0 的,这是出于防止因电压 过大而烧坏单片机的考虑。 3.电流测量 电流的测量采取电流互感器的方法,如图 3-4 所示。T2 为电流互感器,流 经 TP10、TP11 的为交流电流,经过电流互感器之后,电流量按一定比例缩小, 通过二级管和电容的作用之后,变为直流电流量,再通过弹片机的 ADC4 口采 样,即可测出电流的大小。
图 3-4 Figure 3-4
电流测量电路
Circuit of current measurement
(三)液晶显示电路 液晶显示器 HF12864B2 的引脚功能[8]如图 3-5 所示, 具体介绍如下。 引脚 1:液晶电源地 引脚 2:液晶电源正端 引脚 3:LCD 驱动电压输入端,调节对比度 引脚 4:并行的指令/数据选择信号;串行的片选信号 引脚 5:并行的读写选择信号;串行的数据口 引脚 6:并行的使能信号;串行的同步时钟 引脚 7~14:液晶的并行数据
图 3-5 液晶显示器 HF12864B2 引脚功能图 Figure 3-5 The Pins 17 of HF12864B2 LCD
[8]
恒芳 HF12864B2 型 LCD 数据手册
正文:
微电脑吸尘器控制板量产测试系统的设计与实现
引脚 15:并串行接口选择:H-并行,L-串行 引脚 16:空脚 引脚 17:复位 低电平有效 引脚 18:空脚 引脚 19:背光 LED 阴极 引脚 20:背光 LED 阳极 单片机与液晶显示器接口电路图如图 3-6 所示。说明以下几点: (1)引脚 V0 的电压是通过可调电阻在 VCC 和 GND 之间分压得到,实践证明当 V0 的电 压在 4.5V 左右的时候,液晶的显示效果最好。 (2)背光的阳极 LED_A 是通过 串上一个电阻接到 VCC 上的,实际上也可以串上可调电阻,调节背光的亮度。 (3)由于测试系统中,单片机与 LCD 的接口采取串行接口方式,因而应将引脚 PSB 接低电平 GND。
图 3-6 Figure 3-6
单片机与液晶显示器接口电路图
Circuit of interface between single-chip and liquid crystal display
(四)模拟手柄电路 模拟手柄电路如图 3-7 所示,可以发现,该图的作用原理跟前面提到的手柄 (图 1-2)是完全一样的。只不过该图是使用开关继电器代替图 1-2 所示手柄的 开关。此处继电器的工作原理为:当单片机的 PC4~5 口输出高电平的时候,继 电器内的线圈通电,开关 P1~4 被吸合;否则,继电器内的线圈电流为 0,开关
18
正文:
微电脑吸尘器控制板量产测试系统的设计与实现
P1~4 被断开。说明以下几点: (1)图中三极管起到放大器的作用,从而以大电 压驱动继电器。 (2)稳压管的作用是在单片机口猛然由高电平到低电平时产生强 大的回流烧坏继电器线圈。
图 3-7 Figure 3-7
模
拟手柄电路
Analog circuit of handle
19
正文:
微电脑吸尘器控制板量产测试系统的设计与实现
四、软件的设计
测试系统的软件采用 CodeVisionAVR 编写并编译。 下面重点介绍下主程序设 计、数据采集程序设计和液晶显示程序设计。 (一)主程序设计 1.简单嵌入式操作系统 sEOS 简单嵌入式操作系统(simple Embedded Operating System,简称 sEOS[8])是一 种开发中小型嵌入式项目比较合适的简单操作系统。sEOS 像许多其它的嵌入式 操作系统一样,可以有效地提供周期性执行单任务的功能,亦可建立多任务状态 系统。在具体的控制系统任务中, 可根据使用要求,通过增减相应的任务函数, 增加和删除任务,使用非常方便。 sEOS 的基础是由片上的定时器在规律且精准的时间间隔产生中断(一个 “tick[9]”,每到中断来临的时候周期性地调用合适的函数,进行任务的调度, ) 这是 sEOS 执行多任务的基本原理。 sEOS 实时操作系统应用任务管理函数原型[10]如下: void main(void) { X_Init();
//初始化任务 X()
sEOS_Init_Timer(n); //设定时间间隔,每隔 nms 调用中断刷新函数(ISR) while(1) //任务 X()在超级循环中有中断 ISR 调用 { sEOS_Go_To_Sleep(); } }
[8] [9]
//系统运行在节电模式,提高 CPU 工作效率
Michael J.Pont. Embedded C[M]. London:Pearson Education Limited 2002,143~203. (美)庞特著;继辉等译.C 语言嵌入式系统开发[M]京:中国电力出版社,2003,147. [10] ] Michael J.Pont. Embedded C[M]. London:Pearson Education Limited 2002,143~203. 20
正文:
微电脑吸尘器控制板量产测试系统的设计与实现
该系统实现任务管理的原理,是采用定时器的溢出所产生的中断调用中断服 务例程 (ISR) ,这里设为 X()。在中断服务例程(ISR)中,实现所需的任务调 度及任务间的转移(或多状态间的转移) 。因而,在 sEOS 中,任务都是从 ISR 中被调度。 中断服务例程(ISR)函数 X()原型: void X(void) interrupt n { X_Update(); } 根据系统的具体任务的分配要求任务调度函数 X_Update()原型设计如下: void X_Update(void) {
//每隔 nms 刷新调用
//n 由具体的定时器决定
//任务调度函数,以执行具体的任务,是系统软件设计的重点
switch(state) { case 1: Task_1(); state = x1; //x1 的值决定了下一个 tick 会执行的任务 break; case 2: Task_2(); state = x2; //x2 的值决定了下一个 tick 会执行的任务 break; . . . case n: Task_n();//xn 的值决定了下一个 tick 会执行的任务 state = xn; break; } }
21
正文:
微电脑吸尘器控制板量产测试系统的设计与实现
在调度函数的 X_Update()里, switch-case 语句中每一个 case 语句对应一个任 务,当需要跳转到某一任务 Task_n()时,只要在当前任务的 case 语句里将 stat
e 设置成 n,那么在下一个 tick 来临时,Task_n()便会被执行。 不难发现,使用 sEOS,使多任务状态系统中的任务调度变得简单,因为系 统中状态的转换只需要改变 state 的值;使实时应用程序的设计具有很大的灵活 性,因为它不需要大的改动,就可以增加新的功能。可以说,sEOS 已经被广泛 应用于单片机的工业控制与测试系统中。 然而在实际应用中,设计者通常不会完全照搬 sEOS 较为繁琐的形式,而只 是应用它利用定时器中断进行任务调度的思想。 微电脑吸尘器控制板量产测试系 统的程序,正是基于 sEOS 的思想设计而成。 2.主程序设计 根据测试系统的功能要求以及终合各被测参数的相关性,决定将整个测试任 务分为 15 个步骤,分别为: 步骤 1:空载测试(测空载电流) ; 步骤 2:工作电源测试(测工作电压) ; 步骤 3: NTC 测试(测 NTC 热敏电阻电压) ; 步骤 4:交流电源测试(测交流信号频率) ; 步骤 5:过压保护(测过压) ; 步骤 6:手元基准测试(测手元基准电压) ; 步骤 7:基准时钟测试(测基准时钟频率) ; 步骤 8:低档电压测试; 步骤 9:低档电流测试; 步骤 10:高档电压测试; 步骤 11:高档电流测试; 步骤 12:停止电压测试; 步骤 13:停止电流测试; 步骤 14::手元拔出测试(测手元拔出电压) ; 步骤 15:2 秒自停测试(测手元拔出电流) 。 根据步骤,画出主程序的框图如图 4-1 所示。图中定时中断由 maga16 的定
22
正文:
微电脑吸尘器控制板量产测试系统的设计与实现
时器/计数器 1 产生。采用 T/C1 的比较匹配中断模式,可以非常精准地产生中断 (一个 tick) ,每个 tick 的时间为 25ms,即每 25ms 调用一次任务调度函数。
图 4-1 Figure 4-1
主程序流程图
Flow chart of main program
(二)数据采集程序设计 1.频率采集程序 如前所述,交流信号频率与基准时钟频率的测试原理基本相同,仅仅是二者 在计算 N(计数值)时所用的方式有所不同。下面分别简述二者的计数方式。 外部中断测频法计数方式: (1)在某一个 tick 到来时,开始对 INT0 进行初始化,这包括在中断控制寄 存器(GICR)中关闭中断 INT0、在通用中断标志寄存器(GIFR)中将中断 INT0 的标志位清 0、将进入外中断的次数(记为 INT0_times)置 0 等。 (2)在初始化工作完毕过后的第一个 tick 到来时,使能(打开)外中断 0。 此后,每当外中断 0 被触发一次,其中断服务子程序中的 INT0_times 都会自动 加 1。 (3)在采样时间为第 n 个 tick 到来时(假设 n=40) ,关闭外中断 0,读取此 时的计数值 N=INT0_times,则测量频率的结果即为:1000*N/(40*25)=N。
23
正
文:
微电脑吸尘器控制板量产测试系统的设计与实现
定时器/计数器测频法计数方式: (1)在某一个 tick 到来时,开始对 T/C0 进行初始化,这包括在 T/C 控制寄 存器(TCCR0)中关闭 T/C0、在 T/C 寄存器(TCNT0)中将计数值清 0。这里 与外中断测频法不同的是,由于待测频率很大,势必会多次超过 T/C0 的最大计 数值 (255) 而溢出, 因而需要一个变量 TC_OVF_times 来记录 T/C0 溢出的次数。 所以,初始化的工作还需加上一条,即将 TC_OVF_times 置 0。 (2) 在初始化工作完毕过后的第一个 tick 到来时, 打开 T/C0。 此后, TCNT0 便会自动对输入的信号上跳沿或下降沿进行计数,每当 T/C0 溢出中断一次,其 中断服务子程序中的 TC_OVF_times 都会自动加 1。 (3)在采样时间为第 n 个 tick 到来时(假设 n=40) ,关闭外中断 0,此时的 计数值的算法位:N=TC_OVF_times * 256 + TCNT0,则测量频率的结果即为: 1000*N/(40*25)=N。 交流信号频率采集子程序见图 4-2。每当交流信号测试任务被 sEOS 所调度, 该子程序便被调用一次,直至测试任务结束任务状态跳转。
图 4-2 Figure 4-2
交流信号频率采集程序流程图
Program flow chart of frequency measurement about AC signal
基准时钟频率采集子程序见图 4-3。同理,每当基准时钟测试任务被 sEOS 所调度,该子程序便被调用一次,直至测试任务结束任务状态跳转。
24
正文:
微电脑吸尘器控制板量产测试系统的设计与实现
图 4-3 Figure 4-3
基准时钟频率采集程序流程图
Program flow chart of frequency measurement about reference clock
2.电压与电流采集程序设计 电压与电流的测量都是通过 maga16 的 ADC 口采集得到。 其软件程序非常简 单, 利用 CodeVisionAVR C 编译器可以直接生成如下读取 ADC 转换值的子程序。
#define ADC_VREF_TYPE 0x40 // Read the AD conversion result unsigned int read_adc(unsigned char adc_input) { ADMUX=adc_input|ADC_VREF_TYPE; // Start the AD conversion ADCSRA|=0x40; // Wait for the AD conversion to complete while ((ADCSRA & 0x10)==0); ADCSRA|=0x10; return ADCW;
25
正文:
微电脑吸尘器控制板量产测试系统的设计与实现
}
该函数的运用也很简单。对于 ADCi 口,其 AD 转换的结果为 read_adc(i) 。 当 参 考 电 压 VREF 近 似 等 于 5V 的 时 候 , ADCi 口 的 输 入 电 压 为 VIN=read_adc(i)/1024*5000,单位为毫伏。 考虑到在数据采集时,会存在许多随机误差,因而在本测试系统中我们不但 在硬件上通过电容滤波, 而且在软件上也加入了多次测量取平均值的数字滤波方 法。下面画出测量手元基准电压的流程图(图 4-4) ,其它电压与电流的测量与 此雷同。
图 4-4 手元基准电压测量流程图 Figure 4-4 Flow chart of reference voltage me
asurement
(三)LCD 液晶显示器程序设计 1.HF12864B2 的相关原理介绍 (1)连接时序 HF12864B2 有并行和串行两种连接方式,本测试系统采用的是串行方式,其 连接时序图如图 4-5 所示。
26
正文:
微电脑吸尘器控制板量产测试系统的设计与实现
图 4-5 Figure 4-5
HF12864B2 串行连接时序图
Sequence chart when HF12864B2 is in series connection
串行数据传送共分三个字节完成[11]: 第一字节:串口控制—格式 11111ABC A 为数据传送方向控制:H 表示数据从 LCD 到 MCU,L 表示 数据从 MCU 到 LCD B 为数据类型选择:H 表示数据是显示数据,L 表示数据是控制 指令 C 固定为 0 第二字节:格式 DDDD0000,四个 D 分别为 8 位数据的高 4 位 第三字节:格式 DDDD0000,四个 D 分别为 8 位数据的低 4 位 (2)显示数据 RAM(DDRAM) DDRAM(128×64bits)是存储图形显示数据的。此 RAM 的每一位数据对 应显示面板上一个点的显示(数据为 H)与不显示(数据为 L) 。DDRAM 能显 示 4 行 8 列共 32 个汉字。汉字显示位置与 DDRAM 的地址对应关系如下表(表 4-1 )。
[11]
恒芳 HF12864B2 型 LCD 数据手册 27
正文:
微电脑吸尘器控制板量产测试系统的设计与实现
表 4-1 汉字显示位置与 DDRAM 地址对照表 Table 4-1 Comparison table of address between display position by Chinese characters and DDRAM
(2)相关指令集 HF12864B2 LCD 液晶显示器内置的指令集很多,下面列出本次系统设计所 用到或比较重要的几条指令集(见表 4-2)
表 4-2 HF12864B2 相关指令集 Table 4-2 Instruction set related
指 令 名 称
控制信号 RS R/W 0 0 0 0 0 0 1 D7 0 0 0 0 1 D6 0 0 0 0 D6
控 D5 0 0 0 1 D5 数 数
制 D4 0 0 0 1 D4
代 D3 0 0 1 X D3 据 据
码 D2 0 1 D RE D2 D1 0 P C X D1 D0 0 S B X D0
清除显示 进入点设定 显示状态开/关 功能设定 设定 DDRAM 地址 写显示数据 读显示数据
0 0 0 0 0 1 1
下面详细解释各个指令集功能。 1)清除显示 将 DDRAM 填满“20H” ,并设定 DDRAM 的地址计数器(AC)到“00H” ,即 起到清屏的作用。该指令需执行的时间为 4.6ms。 2)进入点设定 指定在资料的读取与写入时,设定游标移动方向及指定显示开始处的位移。 S 决定从该行哪里开始显示,一般默认为 0;P 为 1 时,则向右移动光标,为 0 时,向左移动光标。该指令需执行的时间为 72us。
28
正文:
微电脑吸尘器控制板量产测试系统的设计与实现
3)显示状态开/关 D=1:整体显示 ON ;C=1:游标 ON ;B=1:游标位置 ON。该指令需执行的 时间为 72us。 4)功能设定 HF12864B2 的指令集有两种,分别为基本指令集和扩展指令集,当 RE=0 时为 基本指令集,RE=1 时为扩展指令集;X 表示可 0 可 1,这里默认为 0。该指令需 执行的时间为 72us。 5)
设定 DDRAM 地址 设定 DDRAM 地址到地址计数器(AC) 。地址计数器具有自动加一功能,在每 一次读/写数据后它将自动加一,所以在连续进行读/写数据时,地址计数器不必 每次都设置一次。该指令需执行的时间为 72us。 6)写显示数据 该操作将 8 位数据写入先前已确定的显示存储器的单元内。操作完成后地址 计数器自动加一。该指令需执行的时间为 72us。 7)读显示数据 该操作将 LCM 接口部的输出寄存器内容读出,然后地址计数器自动加一。该 指令需执行的时间为 72us。 2.LCD 液晶显示器程序设计 液晶显示器的程序设计必须从底层写起,逐步提高,最后完成显示一行文字 的功能。即先从模拟 LCD 的同步时钟开始写起,逐步往上深入,最终写出能随 意显示某行文字的程序。 (1)模拟同步时钟子程序 此函数的每执行一次,即产生一个同步脉冲。程序如下:
#define RSTLCD PORTC.0 #define CS1 PORTC.1 #define SCLK PORTC.2 void SCLKpulse(void) {
29
正文:
微电脑吸尘器控制板量产测试系统的设计与实现
SCLK=1; SCLK=0; }
(2)向 LCD 发送一位数据子程序 此函数是向 R/W(SIN)口写入一位(bit)数据。程序如下:
#define uchar unsigned char #define SID PORTC.3
void opSID(uchar t) { SID=t; }
(3)向 LCD 发送一字节数据或指令子程序 如前所述,发送一字节的数据需分三个字节完成:第一个字节的格式为: 11111ABC,其中 A 为 RW,B 为 RS;第二个字节格式为:DDDD0000,其中四 个 D 为待传送数据或指令的高四位;第三个格式为:DDDD0000,其中四个 D 为待传送数据或指令的低四位。详细程序实现如下:
#define uchar unsigned char void { uchar i,j,temp; temp=0x80; SCLK=0;
//////////////第一字节开始////////////////////////
out_byte(uchar byte,uchar RW,uchar RS)
opSID(1);
30
正文:
微电脑吸尘器控制板量产测试系统的设计与实现
for(i=0;i
//传第 0 位数据 //传第 1 位数据; //传第 2 位数据
SCLKpulse();
/////////////第 2、第 3 字节开始//////////////////
for(j=0;j
//从最高为开始向右取位
if(temp&byte)opSID(1); else opSID(0); temp=temp>>1; SCLKpulse(); }
//传送四个“0” //传送该位
for(i=0;i
(4)LCD 初始化子程序 程序原型如下: 调用方式:void iniLCD(void)
31
正文:
微电脑吸尘器控制板量产测试系统的设计与实现
函数说明:用于开机初始化 LCD 液晶显示器。 LCD 的初始化程序算法如下:
LCD 初始化 { 启动延时 功能设定 执行 72us 设置显示状态 执行 72us 进入点设定 执行 72us 清屏 执行 4.6ms }
// out_byte(0x30,0,0),即只需基本指令集 // 即延
时 72us // out_byte(0x0c,0,0),即开整体显示,光标不显示、不闪烁 // 即延时 72us // out_byte(0x06,0,0),即光标向右移动 // 即延时 72us // out_byte(0x01,0,0) // 即延时 4.6ms
(5)LCD 显示一行数据子程序 在初始化 LCD 之后,便可显示一行数据了。要显示一行数据,首先要将每 行对应的 DDRAM 地址写入地址计数器,再连续写入字符或汉字的编码数据。 对于某一行来说,由于地址计数器是自动累加的,故而 DDRAM 地址只需写入 一次。 程序原型如下: 调用方式:void LCD(uchar row, uchar *p) 函数说明: 欲显示的内容存在 unsigned char 型数组 p[16]中, row 指示该数据 显示在第几行(一共四行) 。程序流程见图 4-6。
32
正文:
微电脑吸尘器控制板量产测试系统的设计与实现
Figure 4-6
图 4-6 LCD 显示某行数据程序流程图 Program flow chart of some row data displayed by LCD
33
正文:
微电脑吸尘器控制板量产测试系统的设计与实现
五、调试及性能分析
本测试系统开发时的一个主要思想是,测试系统的本质目的是检查被测板 (控制板)电路的正确以及各器件功能的好坏,并不是真正地去测量某个电路上 的电压是多少伏、电流是多少安或者频率是多少赫兹。因而测量的手段是将被测 电路的电压量、电流量、频率量转化成一个单片机能识别的相关量,而判断被测 板好环的方法是将该相关量与工业上能确定绝对 OK 的控制板的相关量比较, 如 果比较结果相差无几,则说明被测板同样是 OK 板,否则就是 NG 板。 出于以上思想的考虑,在系统软件开发的初期并没有也无法确定 15 个被测 参数的精确范围。 因而在调试阶段, 最终要的一个任务便是确定被测参数的范围。 1.调试方法 (1)将软件参数的范围改成能让每一步都能顺利通过的模式,编译下载至 ATmaga16 芯片中,然后拿一块(最好是几块)OK 板放到开发好的测试仪器上 测试。记录下液晶显示器上显示的每一个所测参数的相关量,测试完成之后,根 据所测数据初步确定每一个参数的上下限范围,然后将范围写入软件中。将修改 后的软件编译下载至 ATmega16 中,至此该测试系统便宣告设计完成。 (2)接下来的工作,便是将该系统投入生产线测试。继续收集测试过程中 每一块被判为 NG 板的当前参数的测量数据, 如果不同 NG 板的相同参数的数据 具有一定的有效性和准确性, 则说明这些被测板被判为 NG 板的原因可能不是工 业故障而是软件限定的范围太窄,这时候,就需要再次修改该参数的范围。这样 经过反复的修改,最终确定下来的参数范围便是最接近该批次控制板的。 2.性能分析 经过反复的测试试验,最终确定了一套精确的基
于 TC-161 的参数范围。在 该参数范围下,本测试系统能够准确地判断出被测板(TC-161)的好环。对于 NG 板,该测试系统还能够准确地把错误定位在某个具体参数上,根据该参数可 以判断出哪部分电路出了问题, 进而把错误位置确定在一个比较小的方便人工检 查的范围内,最终为人工检修提供了很好的帮助。
34
正文:
微电脑吸尘器控制板量产测试系统的设计与实现
六、结论和展望
微电脑吸尘器控制板 TC-161 是一块功能多样结构复杂的电路板,本课题设 计并实现了一款用于量产测试 TC-161 好环的基于 ATmega16 单片机的测试系统。 经过多次的生产线测试证明,该系统能够快速并且准确地判定被测板性能的好 坏,而且只需稍加改进,也可以测试 TC-161 同类批次的其他型号(如 TC-131) 控制板。 然而,有于时间有限,该系统还可以在以下几个方面进行改进: 1、液晶显示问题。如今测试的系统,在测试完当前参数之后,除非该参数 因不在指定范围内而跳至异常状态下时能看到显示的结果,在正常情况下,结果 的显示都是一闪而过。因而需要在每测试完一步的时候,都作适当的延时,以让 人眼能够及时捕捉到。然而,这势必会引起测试周期过长的问题。 2、测试周期问题。节约测试时间可以从两个方面来考虑。 (1)软件方面, 可以适当减少某些参数的采样时间。比如低档电压、高档电压、停止电压等的测 量时间可以通过改进软件算法而适当缩小。 (3)硬件方面,可以改变测电流的原 理,比如不用电流互感器而用 AD524,此方法可以准确地采样电流量而无需软 件滤波,从而节约了测量时间。
35
正文:
微电脑吸尘器控制板量产测试系统的设计与实现
参考文献
[1] 于永,戴佳,常江. 51 单片机 C 语言常用模块与综合系统设计实例精讲[M].北京:电 子工业出版社,2007.4,105~131. [2] 欧阳文. ATMEL89 系列单片机的原理与开发实践[M].北京:中国电力出版社, 1007.6,65~67. [3] 楼然苗,李光飞.单片机课程设计指导[M].北京:北京航空航天大学出版社, 2007.7,191~216. [4] 陈步月.基于单片机的测试技术原理与应用[M].北京: 机械工业出版社, 2007.2,79~84、 229~241. [5]求是科技.单片机典型模块设计实例导航[M].北京:人民邮电出版社,2008.7,293. [6]沈兆军,毛敏,刘锦高. 基于 sEOS 思想的 PID 数字控制器设计[J].工业控制计算 机.2005,18(4),59~61. [7]王文勇.高压断路器机械特性单片机测试系统的研制[D].厦门大学,2002.9. [8]王义军.一种新型高压断路器机械参数测试系统的研制[D].东北电力学院,1999.3. [9](美)庞特著;陈继辉等译.C 语言嵌入式系统开发[M]京:中国电
力出版社,2003. [10]Michael J.Pont.bedded C[M]. London:Pearson Education Limited 2002,143~203. [11]Paul Horowitz,Winfield Hill.The Art of Electronics Second Edition.England:The Syndicate of the Press of the University of Cambridge,1989.
36
正文:
微电脑吸尘器控制板量产测试系统的设计与实现
附录
附录一:微电脑吸尘器控制板量产测试系统电路图
37
正文:
微电脑吸尘器控制板量产测试系统的设计与实现
致谢
时光荏苒,光阴似箭,转眼间大学四年生涯即将结束。回想起入学时,恍若 昨日,令人感慨。在校求学这么多年,有太多人需要感谢。 首先要感谢我的指导导师毛敏老师。这次毕业设计,从课题的确定、方案的 选择到论文的撰写,毛老师都给予了我悉心指导。毛老师拥有丰富的工程经验和 深厚的理论素养,跟随他进行科研使我收获颇丰。在科研中,毛老师告诫我要注 重实践,学以致用,这种实践精神将令我终身受用。 此次毕业设计期间,很多同学给予我帮助。感谢同门师兄师姐们的指导和帮 助。感谢我的室友邱和平同学,在论文的撰写过程中与我共同进退。感谢我的学 姐王伟旦同学,对我的论文的撰写和修改提了很多宝贵的意见。 最后要特别感谢我的母亲和父亲,他们含辛茹苦的抚育才使我有了今天。 结尾,谨以此文献给所有关心和帮助过我的人。
38