基于PIC
单片机的便携式测试记录仪(以下简称记录仪)既有一般数据采集装置的实时采集与保存功能,同时又能够对采集数据进行实时处理、显示和打印。适用于对采集速度要求不高、交流供电比较困难以及无须长期留人值班的场合。
以追求高可靠、低功耗、小体积设计思想的本记录仪具有如下功能:对现场物理量进行实时采集、保存、处理与显示;自动识别现场安装的传感器数量、传感器号和量程;自动和手动两种采集方式,自动采集适用于长期无人值班的固定场合,手动采集便于对分布在不同区域的物理量进行测试;与PC机通讯,可根据需要将采集数据下载至PC数据库;实时打印;自检功能,避免了系统运行过程中可能遇到本身无法容错处理的异常事件而导致的死机现象。
1 硬件设计
1.1 总体设计原则
根据高可靠、低功耗、小体积的设计思想及应用对象几乎对采集速度无要求(此处指系统本身的采集速度已远远超过实际应用要求)的特性,总体设计原则是: 元器件采用低功耗、宽范围工作
电源的CMOS集成
电路;总线采用口线少的串行总线;允许情况下,尽量用软件实现硬件功能,用中断代替查询工作方式;一旦系统空闲则立即使其进入低功耗休眠状态,当需要时再用外部中断予以唤醒。
1.2 硬件组成
根据总体设计原则,硬件组成如图1所示。其中:单片机为美国MicroChip公司的中档产品PIC16C74,+5V供电、4MHz主频时功耗低于2mA;E2PROM存储阵列由超低工作电压(+2.5V~+5.5V)、具有可编程选择多种特性的8KB智能化电可擦除存贮器24LC65芯片组成。其中,0#为传感器识别片(以下简称识别片),保存现场实际安装的传感器数量、传感器号及量程。该芯片被设计在放大器板上,永久安装于现场。传感器号由4位数字组成,前2位表示组号,后2位表示传感器组内号。1# 为字典片,分为三个存储区:第一存储区被设置成高寿命写入区,保存表头参数,如疵点单元计数器、记录计数器、记录指针、自动采集时间等;第二存贮区为字典区,保存传感器修正系数、实时打印所涉及的汉字国标码等,查找时以传感器号为关键字进行指针定位;第三存储区被定义为疵点单元地址队列,保存在写过程中遇到的疵点单元地址。2#~7# 为数据片,保存实时采集的数据。RS232口为最简单的零调制3线经济型,具有双重功能,接上TPμP_T微型打印机,则进行实时打印;接上PC机,则与PC进行全双工通讯。A/D转换器MAX189为串行、12位逐次逼近型,功耗75mW,最大转换时间8.5μs。实时时钟DS1302具有可编程涓流充电功能,能够提供秒、分、时、日、月、星期、年至2100年,并且对闰年和小于31天的月份进行自动调节。键盘由手动、自动、通讯、打印、清零等五个触摸按键组成,通过按键产生外部中断唤醒单片机完成相应功能。液晶显示器(LCD)采用4位半静态方式驱动,用来显示处理后的结果以及系统运行过程中检错的代码。32.768kHz晶振用于自动采集时产生定时中断。
1.3 工作原理
本记录仪基本工作原理是:一旦系统完成某项工作后,立即进入低功耗休眠状态,当需要时再由外部中断予以唤醒。
1.3.1 加电初始化
加电后,首先初始化有关寄存器和接口,然后自检各功能部件。测试结果无论正常或错误均以代码形式显示在LCD上,进入休眠状态。
1.3.2 采 集
本记录仪有自动和手动两种采集方式。
休眠状态下,当按手动键时则进入手动采集过程。首先读识别片和字典片,以确立现场中实际安装的传感器数量、量程及数据片可写空间。若数据片未写满,则从组内0通道传感器开始,循环对现场中实际安装的所有传感器进行采集、处理、显示,直至当再按一次手动键时,方将传感器号、量程、最近一次采集值(注意:不是实时处理后结果,而是原始A/D转换码值)以及采集时刻的日历信息─年、月、日、时、分、秒等组成的记录写入记录指针指向的数据片中,接着对表头参数进行修改,进入休眠状态。
休眠状态下,当按自动键时则进入自动采集过程。首先开放定时中断,然后进入采集─保存─休眠─唤醒─再采集─再保存─再休眠─再唤醒的循环状态,直到数据片被写满或人工干预结束自动采集过程为止。上述唤醒由外部中断完成,其单片机从休眠状态到唤醒工作之间的时间间隔有等距和变距两种形式可供选择。所谓等距即每次采集的时间间隔相同。与其相反,变距则每次采集的时间间隔随采集次数的增多而变长或缩短,视实际应用需要而确定。本记录仪出厂设置为等距1小时,即每间隔1小时采集1次。
0