基于ARM的温度采集系统设计_第1页
基于ARM的温度采集系统设计_第2页
基于ARM的温度采集系统设计_第3页
基于ARM的温度采集系统设计_第4页
基于ARM的温度采集系统设计_第5页
已阅读5页,还剩6页未读 继续免费阅读

下载本文档

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

文档简介

1、基于ARM的温度采集系统设计王义涛一.引言本文针对试验对温度监控系统的要求,设计、开发了基于嵌入式操作系统 Linux 和 S3C2410 处理系统软硬件平台的嵌入式多通道高精度温度测量系统的软、硬件设计与实现方法,研究并实现热电阻的多通道高精度监测电路。本文在对测温技术发展研究的基础上,根据本课题设计的任务要求,设计了基于 PT100(铂电阻)传感器的新型多通道温度检测板(8 通道)。在该多点温度测量系统中,要求温度监测点 12个,测量范围:0+50,分辨力:0.1,准确度:0.2。温度检测系统将实现多点温度数据的采集、保存、上传。该系统主要包括两个部分:多通道温度检测板和ARM 通信电路。

2、温度检测板由电源电路、信号放大及调理电路以及 AD 转换电路与单片机接口电路三部分组成。基于 ARM 的通信电路通过两种方式:串口及网口方式实现对温度数据的采集、上传、读取、保存。完成 Linux 操作系统在嵌入式系统上的移植,以及 Linux 实时性能改造;软件任务划分与设计,包括 A/D 数据采集任务,算法任务,编制构成本温度多路测量仪的嵌入式程序,并对各部分电路进行实验、调试。二.系统硬件设计2.1温度检测系统架构框图温度检测系统将实现多点温度数据的采集、保存、上传。其系统结构图如下:2.1基于四线制接法和自校正设计的电阻测量电路当温度探头附近环境温度发生改变的时候,引起了温度探头 PT

3、100 电阻值的改变。由于流经 PT100 的电流为恒定值,因此温度采集板通过对 PT100 两端的电压值采集便可以计算出环境温度。本温度采集板中的温度探头采用了 4 线制解法,可以避免因导线过长带来的电阻误差。6 路采样信号和 2 路标准电阻信号通过多路模拟开关分时段被进行采样,采样得到的值依次通过信号放大电路和A/D 转换电路进入微控制器(MCU)。通过自校准算法,从而得到精确温度值采集到的温度测量值可以通过串口或网口的方式与上位机相连。2.2基于ARM的通信电路2.2.1 ARM 核心板本核心板采用 NAND FLASH 芯片 K9F1208 作为存储器,用来存储数据和程序。一片 K9F

4、1208 的容量为 64M,能够满足系统的需要。K9F1208 和 S3C2410 接口电路图如图所示。2.2 K9F1208 和 S3C2410 接口图在本系统中,ARM 核心板主要起到对前端采集到的温度数据的收发。核心板的接口电路如下:2.3 ARM 核心板接口图2.2.2 信号输入电路该信号为温度板采集得到的信号,通过 4PIN 的外接端子接入。由于信号之间有相互干扰,故需要采取隔离措施。ISO7221 是双通道数字隔离器,该系列器件有一个由 SiO2隔离栅组成的逻辑输入输出缓冲区,隔离电压达 4KV。若在独立的电源系统中联合应用,它们可以阻止高电压,隔离地平面和阻止噪声流入数据总线或者

5、其它线路,预防干扰或者破坏敏感线路。隔离后的信号直接与 ARM 相连进行通信。2.4信号输入电路2.2.3ARM 与串口和网口连接电路对于数据的传输,我们采取两种方式分别是:网口方式和串口方式。对于网口方式,我们选用 RJ45 接口为网卡接口。10/100base tx RJ45 接口是常用的以太网接口,支持10M 和 100M 自适应的网络连接速度,10/100base tx RJ45 接口引脚定义如下:2.5 RJ45接口引脚定义2.6 网口连接电路由于 ARM 与 PC 机的传输协议不同,因此需要将 RS232 转换为 TTL。这里我们选用MAX3232 为转换元件。原理图如下:2.7

6、串口连接图三.系统软件设计3.1单片机系统软件单片机软件系统的设计与开发是实现对于温度数据实时采集的重要保证,温度数据采集结果的好坏与单片机软件系统的编写密切相关。本节将会详细的介绍系统软件开发的设计思想、程序设计和编写、各个功能模块的实现以及各个功能模块的流程图。3.1.1主体程序设计系统的主程序设计主要完成整个系统的初始化、中断优先级设定以及调用各个模块程序,既主要实现各个模块程序的连接。3.1主程序控制流程图3.1.2数据采集子程序设计该子程序功能是将 PT100 所检测到的温度模拟信号转换为数字信号。完成以下主要操作:分时段轮询 8 测温通道、启动 AD7715、延时等待 A/D 转换

7、结果、读取转换结果并将结果存入 RAM 和上传给上位机等。程序框图如下:3.2数据采集流程图3.2嵌入式Linux操作系统的建立3.2.1开发前的准备工作(1)交叉编译环境的建立交叉编译器选用的是集成交叉编译器cross-3.4.1。程序下载方式选择串口方式。程序编写调试在台式计算机集成开发环境下进行,编译生成可执行代码后,通过串口下载到嵌入式目标板上。(2)基于 S3C2410 的 BootLoader 移植本项目选用的 BootLoader 是由深圳优龙公司自行开发的、专门针对 S3C2410 运用的 ST2410_BIOS_V2.36。该 BootLoader 具有的功能是:配合三星公司

8、开发的 DNW 软件,利用 USB 或者串行口下载文件;执行 FLASH 烧写功能;从 NANDFLASH 中启动操作系统;擦除 NAND FLASH 分区;设置启动参数等。这个 BootLoader运行稳定可靠,使用简单方便,而且源码开放,可以根据自己的应用需求任意修改BootLoader 源码,满足了项目需求。(3)Linlux 内核移植所谓 Linux 内核移植,就是针对具体的目标平台对 Linux 做必要的改写后,安装到该目标平台并使其正确运行的过程。基本内容包括:获取某一版本的 Linux 内核源码。内核裁剪:根据具体的目标平台和系统要求,对源码进行量身定做的改写(主要是有关体系结构

9、的部分);然后添加一些驱动模块,构成一款合适目 标平台的新的操作系统。对该系统进行针对目标平台的交叉编译,生成一个内核映像文件(Makefile 文件),该文件可以在目标平台运行。对该映像文件烧写、安装到目标平台中。(4)Linux 文件系统 文件系统是文件存储的物理空间,Linux 操作系统的运行离不开对文件的操作。文件系统的任务是对逻辑文件进行管理,包括复制、删除、修改等操作,方便用户操作文件和目录。为适应便携与移动的需求,嵌入式系统一般采用 Flash 作为存储介质。考虑到 Flash 的持久存储能力、可写性、压缩性和掉电保护能力等因素,Flash 必须使用专门的文件系统。本项目采用的文

10、件系统是 cramfs+yaffs 文件系统的形式,cramfs 文件系统是一种只读文件系统,用来存储系统运行所必须的一些配置、环境变量、数据等;yaffs文件系统是一种可读写的文件系统,用来存储用户的程序、数据等。yaffs 文件系统挂接在 cramfs 文件系统/mnt 目录下,完整的目录路径名为/mnt/yaffs。/mnt/yaffs 目录可读可写,用户可以将自己的程序下载到这里运行,同时也可以在这个目录下配置用户级的环境变量、启动参数等。3.2.2 系统应用程序的设计C.可能造成较大环境影响的建设项目,应当编制环境影响报告书为了实现本系统功能,需要对系统划为多个不同的子任务,并且要分

11、配不同的优先级别。在嵌入式实时系统中,对任务合理的划分和优先级合理的设置是至关重要的。任务划分得越准确,不仅可以减少软件设计的工作量,而且也可以增强系统的稳定性。对任务优先级的合理设置,则是对嵌入式系统实时性的主要保障,可以保证任务调度的合理性。具体到本系统的基本功能划分如下几个子任务: 温度量数据采集任务,数据串行通信给上位机任务,以太网模块数据传输任务,用户配置任务。应用程序编写、调试完毕后,编译成模块,然后将模块下载到/mnt/yaffs 目录下,编辑相关启动脚本,使操作系统启动后自动加载这三个程序模块。以模块的形式加载应用程序,应用灵活,方便升级。6.提出安全对策措施建议3.3 应用程

12、序总体框架图2)应用环境质量标准时,应结合环境功能区和环境保护目标进行分级。由于时间的制约,该版本的温度测量系统只包含基本的温度量采集和将采集到的数据上传给网络的功能。关于用户配置功能,待以后继续完善。线程一:温度量采集,通过采集前端部分与 ARM 系统采用串口通讯连接。线程二:采集数据上传给网络,利用S3C2410 通过串口调用采集前端的各种数据,然后通过基于 DM9000A 的 100M 以太网接口传送给远程的网络监控系统。线程三:数据串行通信给上位机,利用上位机自带的串口与 ARM 进行数据的传递。(三)环境价值的定义1.温度量输入采集线程环境影响的经济损益分析,也称环境影响的经济评价,

13、即估算某一项目、规划或政策所引起的环境影响的经济价值,并将环境影响的经济价值纳入项目、规划或政策的经济费用效益分析中去,以判断这些环境影响对该项目:规划或政策的可行性会产生多大的影响。对负面的环境影响估算出的是环境费用,对正面的环境影响估算出的是环境效益。开关量输入采集线程的整体流程如图所示。该线程首先利用标准系统函数 open()打开各温度测量通道输入设备,再调用标准系统函数 read()读取各温度采集通道的值,然后申请对互斥锁 net_wr_buf_mutex 上锁,来实现将各温度采集通道结果写入 net_wr_buf结构体。若此时有其它线程对互斥锁 net_wr_buf_mutex 已上

14、锁,该线程将阻塞,直到互斥锁 net_wr_buf_mutex 解锁为止;等到该线程对互斥锁 net_wr_buf_mutex 上锁后,将各通道的逻辑状态更新到结构体成员 net_wr_buf.di8中;net_wr_buf.di0net_wr_buf.di7分别存储着温度采集输入通道 1 到通道 8 的温度值。该线程约每隔 1s 循环进行一次各输入通道温度值采集。三、安全预评价报告的基本内容(二) 环境影响经济损益分析的步骤3.4温度输入采集线程流程图2.串口通信线程(1)规划和建设项目环境影响评价。 由于串行口为 8 位异步通信接口,一帧信息为 10 位:1 位起始位(0),8 位数据位(

15、低位先)和 1 位停止位(1),TXDI 为发送端,RXDI 为接收端。这些都是对 UART 寄存器的初始化。完成初始化后,图 4-7 是通讯程序流程图。分类具体内容应编写的环境影响评价文件(二)建设项目环境影响评价的工作等级3.5 RS-232 串口流程图结论针对温度测量系统的要求,本文开发出了基于 ARM+Linux 的多通道温度采集系统,该系统可以实时的将不同通道的温度数据采集、保存并通过两种方式上传给上位机。在硬件方面,本文设计了温度检测系统主板和 ARM 通信板,温度检测板由电源电路、信号放大及调理电路以及 AD 转换电路与单片机接口电路三部分组成。ARM 通信板完成对数据的上传。为了确

温馨提示

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

评论

0/150

提交评论