基于ARM的煤矿瓦斯涌出量预测系统的设计
1 总体设计
瓦斯传感器将被测物理量瓦斯涌出量转换成电信号,经过A/D转换采样,转换成数字信号,在ARM处理器中处理。基于ARM920T内核的S3C2440核心板带有内置STN/CSTN/TFT LCD控制器,支持1 024×768分辨率以下的各种液晶,用于显示预测信息、检测量、检测时间等。内置4线制电阻式触摸屏控制器,用于用户与系统的交互,也可以通过键盘对系统参数等进行设置。100 Mbit/s 以太网控制器,用于与上位PC的双向信息传递。系统的软件开发是在Fedora Linux环境下基于QT设计的。QT是挪威的Trolltech 公司开发的一个开源的、跨平台的C++图形用户界面应用程序框架。它提供给应用程序开发者建立艺术级的图形用户界面所需的所用功能。QT完全面向对象,很容易扩展,并且允许真正地组件编程。系统依据分源法[1,2]将矿井各个开采面分为不同的瓦斯涌出源,建立瓦斯分源预测模型,经过换算得到预测数据并显示。系统结构如图1所示。
2硬件设计
2.1芯片及存储器设计
系统选用了三星公司基于ARM 9 内核的S3C2440嵌入式处理器。S3C2440被广泛应用于PDA、移动通信、路由器、工业控制等领域, 芯片中集成了下列模块: 16 KB指令Cache、16 KB数据Cache、MMU、外部存储器控制器、LCD控制器、NAND Flash控制器、4通道PWM 定时器和1个内部定时器、168脚通用GPIO、实时时钟、8通道10 bit的AD和触摸屏接口、标准20 pin JTAG调试接口等。存储器方面采用标准的64 MB Nand-Flash用于数据存储和64 MB SDRAM用于程序的运行。
2.2A/D采样、显示和接口设计
A/D转换单元采用MAX1297AEEG实现12位并行模数转换,直接与核心板的I/O线连接,如图2所示。由于S3C2440自带有LCD控制器,所以免去了LCD控制器的设计,显示屏采用NEC公司的3.5寸的压电式触摸LCD,分辨率为240×320。以太网接口采用TC3097F-5芯片。
3 软件设计
3.1 BootLoader的移植
BootLoader是在操作系统内核运行之前运行的一段小程序。大多数BootLoader都分为Stage1 和Stage2 两大部分。Stage1主要包含依赖于CPU的体系结构硬件初始化的代码,通常都用汇编语言来实现。这个阶段的任务有:(1)为基本的硬件设备初始化;(2)为第二阶段准备RAM空间;(3)设置堆栈并跳转到第二阶段的程序入口点。Stage2通常用C语言完成,以便实现更复杂的功能,也使程序有更好的可读性和可移植性。这个阶段的任务有:(1)初始化本阶段要使用到的硬件设备,检测系统内存映射;(2)将内核映像和根文件系统映像从Flash读到RAM;(3)为内核设置启动参数,调用内核。系统采用韩国MIZI公司开发的开源BootLoader, 即vivi,对vivi进行必要的裁剪并移植到系统当中。
评论