维普资讯 http://www.cqvip.com 第34卷第6期 电子工程师 Vo1.34 No.6 2008年6月 ELECTR0NIC ENGINEER Jun.2008 基于ARM7的温度采集及控制系统 罗家奇,张正华 (扬州大学信息工程学院,江苏省扬州市225009) 摘 要:目前的温度采集及控制系统内部芯片采用单片机,采集终端硬件功能简单,芯片性能低, 软件设计复杂,终端设备软件无底层操作系统,任务调度需由程序设计者设定,系统升级困难。基于 ARM7的温度采集及控制系统运用Samsung公司的ARM S3C44BOX01硬件平台,配置嵌入式 ̄CLinux 操作系统,选用两端式温度/电流传感器AD590,构成的温度采集及控制系统。具有高精度多路采集, 更简单的软件设计,方便的软硬件功能修改、扩充、升级等优点,满足了系统实时性需求,有效地解决 了温度采集及控制系统中的问题。 关键词:ARM S3C44 B(】X(】1;温度采集及控制;A/D转换 中图分类号:TP274.2 0引言 模 拟 多 随着现代社会的发展,人们对温度采集及控制系 路 开 统的要求也越来越高。重点体现在系统的多路采集、 关 实时性、软件设计、精度、升级等方面。目前各大商场 图1系统结构框图 宾馆普遍应用的空调以及粮库采用的温度采集和 控制等设备,其温控系统的内部芯片普遍采用单片机, 2系统硬件环境 具有采集终端硬件功能简单、芯片性能低、软件设计复 杂、终端设备软件无底层操作系统、任务调度需由程序 2.1 ARM开发平台 - 设计者设定、系统升级困难等缺点。随着芯片技术和 基于ARM7的嵌入式开发平台,运行I ̄C/OS-Ⅱ和 嵌入式操作系统的发展,基于ARM7的温度采集及控  ̄CLinux双操作系统,具有完善的软硬件资源。 制系统运用Samsung公司的ARM¥3C44BOX01硬件 2.2温度传感器AD590 平台,配置嵌入式 ̄CLinux操作系统,具有高精度多 温度信号采集采用温度传感器AD590。AD590 路采集,更简单的软件设计,方便的软硬件功能修改、 是利用PN结正向电流与温度的关系制成的电流输出 扩充、升级等优点,满足了系统实时性需求,有效地解 型两端温度传感器,具有良好的线性和互换性,测量精 决了温度采集及控制系统中的问题。 度高,并具有消除电源波动的特性。AD590的工作电 压为4 V~30 V;工作温度为一55℃~+150℃,保存 1系统结构 温度为一65℃~+175 oC,正向电压为+44 V,反向电 该系统温度信号采集选择美国AD公司生产的单 压为一20 V,焊接温度(1 0 s)为300 oC,灵敏度为 片集成两端式温度/电流传感器AD590,把室内温度物 1 A/K。 理量转换成模拟物理量的电流信号,并对信号进行放 被测温度一定时,AD590相当于一个恒流源.与 大来给A/D转换器提供足够大的信号。采用运算放 5 V~30 V直流电源相连,并在输出端串接一个1 kQ 大器把输入的电流信号转换成电压信号,电压信号再 的恒值电阻,电阻上流过的电流将和被测温度成正比, 经滤波器滤波送给A/D转换器(选用S3C44BOX01本 电阻两端将会有1 mV/K的电压信号。在利用AU 身集成的8路10位A/D转换器)进行A/D转换,转 特性集成PN结传感器的感温部分核心电路中.T1、他 换结果处理后用键盈控制在LED(发光二极管)上显 起恒流作用,用于使左右两支路的集电极电流,。和,2 不。 相等;T3、T4是感温用的晶体管,两管的材质和工艺相 系统结构框图如图l所示。 同,但T3实质上是由n个晶体管并联而成,其结面积 是T4的n倍。T3和T4的发射结电压 和 经 收稿日期:2007—11-17;修回日期:2007—12-26。 反极性串联后加在电阻R上,所以R上端电压为 .73. 维普资讯 http://www.cqvip.com
・计算机与自动化技术・ 电子工程师 2008年6月 △ ,因此,电流, 为: = 盘和LED通过ZLG7289A驱动芯片连接到主芯片的 I/0口及相关的控制信号,分别用来控制显示通道的 选择和显示采集结果。整个电路的连接简单实用, 对于AD590,n:8,电路的总电流将与热力学温度 成正比,电流引至负载电阻 上便可得到与 成正 比的输出电压。由于恒流特性,输出信号不受电源电 压和导线电阻的影响,电阻R是硅板上形成的薄膜电 ZLG7289A驱动芯片节省了芯片的接口资源,为系统 功能的扩展留下了足够的空间。 4系统软件环境 a)系统硬件电路连接图使用Windows环境下的 阻,已用激光修正了电阻值,因而在基准温度下可得到 1 A/K的,值。 2.3 S3C441 ̄X芯片 S3C44BOXO1是为手持设备和通用设备设计的 16/32位RISC结构低成本高性能芯片。配置8 kB高 速缓存(Cache)、片内SRAM、LCD控制器两路带握手 功能的UART(通用异步收发器)、4路DMA控制器、 系统管理功能(片选逻辑,FP/EDO/SDRAM控制器)、 带PWM(脉宽调制)的定时计数器、I/O接口,RTC (时钟)、8路1O位A/D转换器、IIC总线、IIS总线、同 步SIO接口和为系统提供时钟而设的PLL(锁相环) 倍频电路等。 2.4 A/D转换器 选用¥3C44B0X01集成的8路1O位A/D转换器。 可通过软件设置为休眠模式,减少功率损失,最大转换 速率为500 KSPS(千次采样每秒),非线性度为正负1 位。转换时间可以计算,如系统时钟为66 MHz,比例 值为9,则转换时间为:(66 MHz/2)(9+1)/16(完成 转换至少需要16个时钟周期):205.25 kHz(相当于 4.85 s)。 ARM芯片与A/D功能相关的引脚中,AIN[7:0] 为8路模拟采集通道,AREFT为参考正电压,AREFB 为参考负电压,AVCOM为模拟工电压。 相关的寄存器有: a)ADCPSR(采样比率寄存器)。可设置采样率, 最后得到的除数因子为2×(寄存器值+1)。 b)ADCCON(采样控制寄存器)。0位是转换使 能位,写1表示转换开始;1位是读操作使能转换,写1 表示转换在读操作时开始;2、3、4位是通道号;5位为 睡眠式设定;6位为转换标志位(只读)。可设置该寄 存器,如:rADCCON=0xl1(通道4开始转换)。 c)ADCDAT(转换结果数据寄存器)。该寄存器 的十位表示转换后的结果,全为1时为满量程2.5 V。 3系统硬件设计 数据采集电路由运算放大器的引脚6输出到主芯 片的A/D输入脚AIN1,采集的温度信号转换成电压 信号送给芯片自带的A/D转换器进行A/D转换。键 ・74・ EDA(电子设计自动化)软件Prote199进行设计,设计 过程采用自底向上的设计方法,包括A/D转换模块、 LED液晶显示模块和键盘控制模块。 b)ADS集成开发环境是ARM公司ARM核微控 制器集成开发工具,支持软件调试及JTAG硬件仿真 调试,支持汇编、C、C++源程序,具有编译效率高、系 统库功能强等特点,可在Windows98/Windows XP/ Windows 2000以及RedHat Linux上运行。由命令行 开发工具、ARM时实库、GUI开发环境(Code Warrior 和AXD)、实用程序和支持软件等组成,用户可以为 ARM系列的RISC处理器编写和调试开发的应用程 序。 C)Code Warrior for ARM是为基于ARM RISC处 理器设计的集成开发工具,可加速并简化嵌入式开发 过程环节,开发人员只需通过集成软件开发环境就能 研制出ARM产品,可节省开发人员在操作工具上的 时问,有更多的精力投入代码编写。 d)AXD调试器是ARM扩展调试器,包括ADW/ ADU的所有特性,支持硬件仿真和软件仿真。AXD能 够装载映像文件到目标内存,具有单步、全速和断点等 调试功能,可以观察变量、寄存器和内存的数据。 5系统软件设计 软件主要完成数据采集和转换,图2和图3分别 是转换结果函数和主函数的流程图。 图2取转换结果函数程序流程 维普资讯 http://www.cqvip.com 第34卷第6期 罗家奇,等:基于ARM7的温度采集及控制系统 ・计算机与自动化技术・ 图3函数程序流程 数据采集部分程序如下: void initADdevice() {//初始化 rADCPSR=20; rADCCON=ADCCON—SLEEP; } int GetADr一 esuh(int channe1) { rADCCON=(channel<<2)I ADCCON_ENABLE_START; Delay(10); while(!(rADCCON&ADCCON—FLAG));//转换结束 return rADCDAT;//返回采样值 } int main(void) { int i; lfoat d; ARMTargetlnit();//开发台初始化 init—ADdevice(); Uart—Prinff(”\n”); while(1) { for(i=0;i<=3;i++) {//采样0~3路A/D值 d=(GetADresuh(i)¥2.5 lOOO)/(3 1023)-237;// 数据采集,处理 UartPrinff(”a%d=%f\t”,i,d); Delay(1000); } UartPrinff(”\r”); return 0; } 数据采集主程序在开发台初始化、A/D转换器接 口初始化、串口通信初始化完成后,用一个死循环对 0~3路A/D的信号进行采集,采集的数据放入内存 供显示用。主函数调用获取转换结果子函数,在启动 指定通道后,延迟一段时间等待该通道数据转换结束, 如果A/D转换结束,就把转换结果送主函数中规定的 内存空间,再继续采集转换。 AD590具有1 tLA/K标准线性化输出,0 oC时输 出电流为273 IxA,温度采集范围为0℃~3O℃,放大 器将输出电流信号放大为0 V~3 V。电压信号再转 换回温度信号的算式是: d= 堕 3 采集放大后的电压信号转换成温度信号显示出 来。算式中:乘2.5是转换结果数据寄存器ADCDAT 的十位转换后的结果,全为1时满量程为2.5 V;除以 1 023是把采集转换的二进制数转换成显示用的十进 制数;乘1 000和除以3是采集放大的倍数关系;减 273是把开尔文温度转换成摄氏温度。结果采集显示 的温度与测试点用温度计测量得到的温度是相同的。 6结果数据分析 温度采集后在超级终端中显示的的数据结果如下 (随机取一次值,显示4个通道某一时刻各自的温 度): File U12X12 FNT have been read!Loading 12x12 font, please wait... 12x12 font loading finished File U16X16 FNT have been read!Loading 16x16 font, please wait... 16x16 font loading finished Loading ConFig data... Matirx:An=-267120,Bn=-9630,Cn=107162430 Dn=15540.En=194940.Fn=一356068320 Divider=一1131214 error touch screen data!start system task. begin TouchScreen Task begin key task File 0 BMP have been read!begin LED Fresh Task !!!Enter ABORT 0 BIOS start:OK! al=10.321556 a2=17.897456 a3=36.956473 a4 =42.356584 下面是对应测温点用温度计测得的温度值: al=10.30,a2=17.86,a3=36.90,a4=42.33。 测试温度过程中,4个通道处于不同的温度测量 点,可通过测试结果研究整个系统的性能。对比测试 结果与温度计测试结果,可以看出系统的精度符合设 计要求。随着温度变化,输出显示随之迅速改变,说明 系统的灵敏度也符合要求。 7结束语 从上面调试的数据结果和分析可以看出,该系统 .75. 维普资讯 http://www.cqvip.com ・计算机与自动化技术・ 电子工蠢师 2008年6月 的设计效果已达到预期要求。相对于空调、粮仓 温度控制等系统的应用,通过基于ARM的温度控制 系统节省了硬件资源,采集精度高,实时处理能力强, 编程简单,开发成本低,便于升级。可以在更多的温度 控制系统中得到更广泛的应用。 参考文献 [3]雎丙东,等.单片机应用技术与实例[M].北京:电子工业 出版社,2005:25.31. [4]张大波.嵌入式系统原理、设计与应用[M].北京:机械工 业出版社,2005:416420. [5]文全刚.汇编语言程序设计——基于ARM体系结构[M]. 北京:京航空航天大学出版社,2007:243.248. [6]梁延贵.数字单元电路转换电路分册[M].北京:科学技 术文献出版社,2003. [I]全国大学生嵌入式系统专题邀请赛组委会.全国大学生 嵌入式系统专题邀请赛优秀作品选编[M].上海:上海交 通大学出版社,2005. [7]贾智平.嵌入式系统原理与接口技术[M].北京:清华大 学出版社,2005. [2]GANSSLE J,BARR M.英汉双解嵌入式系统词典[M].马 广云,等译.北京:北京航空航天大学出版社。2006:1-552. 罗家奇(1969 ),男,实验师,硕士研究生,主要研究方向为 计算机仿真及应用。 Temperature Gathering and Controlling System Based on ARM7 LUO Jiaqi.ZHANG Zhenghua (College of Information Engineering,Yangzhou University,Yangzhou 225009,China) Abstract:Current temperature gathering and controlling system S internal chip is single chip microcom— puter,gathering terminal function simply,chips performance low,software design complexity,the terminal equipments having no underlying OS,task scheduling needing to be set by programmer and system upgrading dificult.Using hardware plfatform of the Samsung Corporation ARM¥3C44BOX01,installing embedded i ̄CLinux OS and choosing two—terminal temperature or electic transducer AD590 to make—up a temperature rgathering and controlling system、The system has excellence of high degree of accuracy multiplexing acquisi— tion,more simple software design,convenient soft and hardware function modifying,enlarging and upgrade etc.,which satisfies real—time needing and solves the problems in temperature gathering and controlling system efficaciously. Keywords:ARM¥3C44BOX01;temperature gathering and controllng;A/D transformation 瞳童瞳塞砖塞畦:曼畦:塞瞠 畦:美 ?妻蝗? (上接第69页) Virtual Reality Modeling Method Based on X3D XING Aifeng (Jinling Professional Education Center,Nanjing 210014,China) Abstract:With the development of computer communication technology,the Internet has made the world smal1.However,the current websites provide mostly two—dimensional plane display.Virtual reality technology can integrate these two technologies and introduce into the website a three—dimensional scene SO as to allow US— er8 of the Internet have a presonal feeling of the scene.This paper suggests a simple modeling method to achieve interaction. Keywords:vitual realitry;X3 D;modeling ・76・