欢迎进入红旗仪表(江苏)有限公司官方网站!
热门关键词:

联系我们

红旗仪表(江苏)有限公司

地址:江苏省金湖县戴楼工业园区润楼路19号

销售热线:17761857690

电话:0517-86880702

传真:0517-86880702

邮箱:2851676107@qq.com

联系人:王先生

当前位置:主页 > 新闻中心 >

齿轮流量计---二次仪表的设计及原理

2019-07-25    来源:红旗仪表(江苏)有限公司

随着工业生产和技术的不断发展,流量测量的对象越来越多,精度要求也越来越高,新的测量 方法和测试仪器也不断涌现。但依据信号输出类型,各种流量计总是可分为开方式模拟量输出流量 计、线性模拟量输出流量计、脉冲式输出流量计。例如,差压式流量计属于开方式模拟量输出流量 计,流量同输出信号的开方成线性关系;线性模拟量输出流量计有电磁流量计、质量流量计、旋进 漩涡式流量计等,这些流量计的输出信号与流量成线性关系;脉冲式输出流量计包括容积式流量计、 涡轮流量计、涡街流量计、插入式流量计等,这些流量计的发信器输出脉冲信号,一个脉冲代表一 定体积的流量。 对于不同信号类型输出的流量计,二次显示仪表的测量原理都是不一样的。例如:线性模拟量 输出流量计,二次仪表测量模拟量(如 4-20mA)信号,经过线性转换之后就得到瞬时流量,然后根 据瞬时流量进行累积运算;对于开方式模拟量输出流量计的测量,需要在模拟量的测量后增加开方 运算,开方后经过线性转换得到瞬时流量,再根据瞬时流量进行累积运算。从这两种流量计的测量 方法可以看出,二次显示仪表从一次表获得的参数只有瞬时流量,而累积流量是二次表内部对瞬时 流量的积分运算后得到的,即 ∫ M = F dt t ,式中: M 为累积流量; Ft 为瞬时流量。对于脉冲式输 出流量计,二次表通过测量脉冲频率,经过线性转换后得到瞬时 流量,而对于累积流量的测量,也可以通过对瞬时流量的积分运 算获得。 本文针对脉冲式输出流量计的特点,提出一种以 LPC2119 处 理器为核心,以 uC/OS-II 嵌入式操作系统为软件平台,可以自 动调零,线性化,补偿环境因素变化,并配以 LED 显示并具有超 量程报警输出,具有 CAN 总线输出接口的智能型脉冲式输出流量 计专用二次仪表,实物如左侧图 1 所示。
1 频率测量方法 脉冲式输出流量计的脉冲频率一般在 10KHz 以内,如涡街流量计输出频率为 0-5KHz,容积式流 量计更小,一般只有几百 Hz,甚至几十 Hz。流量计输出脉冲一般不是很均匀的脉冲,例如容积式流 量计(又称定排量流量计,简称 PD 流量计),利用机械测量元件将流体连续不断地分割成单个已知 的体积部分,根据测量室逐次重复地充满和排放该体积部分流体的次数来测量流体体积总量,其内 部测量元件的转动通过磁性密封联轴器及传动齿轮减速机构传递给计数器,并附加发信装置输出脉 冲信号,由于机械传动部分不可避免地存在输出脉动和噪音,在一个转动周期内,脉冲的分布不均 匀。对于这样的脉冲信号,就需要有一种合适的频率测量方法来提高测量精度和响应速度,并解决 瞬时流量的跳动和抗干扰问题。 通常采用的频率测量方法有两种:测频法,就是在一定的时间间隔T 内,对输入的周期信号脉 冲计数为 N ,则信号的频率为 f = N /T ,这种方法适合于高频信号的检测;测周法,通过计数器 计量输入信号 n 个周期内所用的时间为T ,则信号的频率为 f = n /T ,这种方法适合于低频信号的 测量。两种方法各有优缺点,测频法适合于高频信号的测量,但对于像容积式流量计输出的低频信 号,测量精度低,不宜采用;测周法适合于低频信号的测量,为了提高精度,一般在多个被测信号 周期内计量标准信号的脉冲数,但这样会增加采样时间,降低响应速度。 本文所设计的二次仪表在测量频率时将测频法和测周法二者有机地结合起来,充分利用它们的 优点,以达到在较宽的频率范围内有较好的精度和响应速度。初始情况下以时间T1 为计时时间,首 先采用测频法对输入频率脉冲进行计数 N1 ,若计时时间中止时 N1 为零,则表明输入脉冲频率低于 该计时时间所能测到的最低频率 1 1/T ,应改用测周法重新对该输入脉冲进行测量。每次测周法测量 完毕后,还要将当次测量结果与临界频率1/T1 ×110% 相比较,若 f x >1/T1 ×110% 则下次计算频率 时改用测频法对脉冲进行测量。在此设定临界频率为1/T1 ×110% ,主要为消除输入脉冲频率刚好 位于 1 1/T 附近,而带来两种测量方法的频繁切换影响频率测量的相应速度
2 系统硬件组成 在实际工程环境下,流量计传送的流量脉冲信号较微弱,同时受外界环境影响,信号携带大量 噪声,故电路配置了光耦隔离电路和运放电路进行信号整形,然后送入 LPC2119 单片机的定时器/ 计数器 1;在液压系统的流量测量中,为保证测量的精度,需要实时采集液压油的温度作为补偿信 号,电路中设置了温度信号输入接口,可直接将管路上的温度传感器信号直接接入仪表,经有源滤 波和调理电路后,送入 LPC2119 单片机;在通讯方面,采用 LPC2119 内部所带有的串口和 CAN 总线 收发单元,直接完成向上位机传送数据的任务;人机界面采用 6 位 8 段数码管和三个按键。 LPC2119 串口 看门狗 A/D转 换器 定时器 计数器 CAN 控制器 I2C 通用IO口 通用IO口 光耦隔离 比较器滤波 信号调理 电路 CAT 24WC TJA 1050 MAX 232 6位8段数码关、三个按键 脉冲信号入 模拟量入 2个LED报警、2路继电器输出 串行数 据线 CAN 总线 LPC2119 单片机 LPC2119 单片机是飞利浦半导体公司最新推出的一款基于支持实时仿真和跟踪的 16/32 位 ARM7TDMI-S CPU 的微控制器,并带有 128k 字节嵌入的高速 Flash 存储器,通过片内 PLL 可实现 最大为 60MHz 的 CPU 操作频率。由于 LPC2119 较小的 64 脚封装、极低的功耗、2 个 32 位定时器、 4 路 10 位 ADC、1 路 CAN 以及多达 9 个外部中断使它特别适用于各种仪器仪表,测试单元,工业控 制单元中。本设计选用 LPC2119 单片机作为仪表的核心,由于本身集成了较多的功能模块,这样无 需其他过多外围器件支持,使得整个仪表的可靠性和整体成本大大降低。 E 2 PROM 存贮电路 CAT24WC01 是一个 1K 位串行 CMOS E2 PROM,内部含有 128 个 8 位字节,CATALYST 公司的先进 CMOS 技术实质上减少了器件的功耗,CAT24WC01 有一个 8 字节页写缓冲器,I2 C 总线接口进行操作,并 有一个专门的写保护功能。仪表中用户所设值的高低报警值,量程范围的值,通讯方式都存放在这 里,以方便掉电后可以重新读取。 通讯电路 CAN-bus 是一种多主方式的串行通讯总线,有高的位速率,高抗电磁干扰性,而且能够检测出产生 的任何错误。CAN 总线还具有传输距离远,多主机,时间同步多点接受等特性。作为一种技术先进、 可靠性高、功能完善、成本合理的远程网络通讯控制方式,CAN-bus 已被广泛应用到各个自动化控 制系统中。由于 LPC2119 内置了 CAN 总线控制器,故只需在外围添加一个 CAN 收发器 TJA1050 即可 实现 CAN 总线的通讯。本仪表还提供串口通讯方式和上位机传输数据。 数码管显示和按键电路 数码管和按键均由 LPC2119 的普通 I/O 驱动,仪表面板如 图 3 所示。面板中央 6 位 8 段数码管动态显示当前流量值, 依据用户所设量程小数点的位置会浮动显示。当流量超过 设定界限时,高报警灯 HI 或低报警灯 LO 点亮,继电器同 时吸合,从仪表后面板输出相应的信号。按键功能依次为 保存切换键,光标左移键,数值加一键,用户通过面板按 键 可以设定采用 CAN 总线或 UART 来实现通讯,并可以设定脉 冲当量数,用户量程,高低报警界限等参数。
3 软件设计 uC/OS-II 是源代码公开的实时嵌入式操作系统,它具有可移植性强、可裁减、完全抢占式多任 务的实时内核、任务栈、系统服务、可固化、稳定性、中断管理等特点,包含了任务管理、时间管理、 任务间通信同步(信号量,邮箱,消息队列等)和内存管理等功能。它是面向中小型嵌入式系统的,包含 全部功能模块的内核大约为 10KB,如果经过裁减只保留核心代码,则可压缩到 2KB 左右。由于结构简 单,源代码量少,对处理器及外围电路的要求不高,因此非常适合于应用在仪器仪表的内嵌微控制器。 仪表采用 uC/OS-II 操作系统做为软件开发的平 台,并在上面开发数据队列、I2 C 总线驱动,CAN 总 线驱动,串口驱动等中间件,uC/OS-II 上创建任务 时只需调用这些中间件就可以完成对实际硬件的操 作。左图 4 说明了 uC/OS-II 的软硬件体系结构。应 用程序处于整个系统的顶层,每个任务都可以认为自 己独占 CPU,因而可以设计成为一个无限循环。 uC/OS-II 处理器无关的代码提供了 uC/OS-II 的系统 服务,应用程序可以使用这些 API 函数进行内存管 理、任务间通信以及创建、删除任务等。由于设计 uC/OS II 时就考虑到了在不同处理器上移植,因而移 植 uC/OS II 实际上需要修改的代码量很小,其中需要 修改的部分只是与处理器相关部分的文件。在 uC/OS-II 的官方网站 www.uC/OS-II.org 提供了 uC/OS-II 在一百多种处理器上的移植代码,其中也 包括针对 LPC2119 处理器的移植源代码,故具体移植过程和方法再此就不多叙述。 任务建立 根据仪表的功能要求,系统设计了频率测量,数据传输,A/D 采集,数码管显示,仪表参数设 置 5 个任务,具体程序流程图详见图 。每个任务都有自己的名称、内存空间和优先级。不同的任务 必须有不同的优先级,它们可以是 0~62 之间的任意值,数值越小优先级越高。优先级的设置有不同的 依据,以本仪表为例,频率测量的任务对时间要求最苛刻,该任务的实现频率直接关系到仪表的精度 和响应速度,优先级设为最高;串口通讯或 CAN 总线通讯要及时将所测流量值传送给上位机,优先级 设置为高;显示任务只是通过 LED 显示瞬时流量值提供给用户参考,优先级设为次高;提供 AD 采集 任务运行使用来采集油温,为测量实际流量提供补偿量,由于改量缓慢变化特性,对其采样频率不必 太快,优先级设为低;参数设置任务只实现人机交互,显示状态和参数对控制器性能没有直接影响, 优先级设为最低。uC/OS-II 要求为每个任务分配 OS_STK 类型的堆栈空间,并且它们占用的 RAM 存储 空间必须是连续的。任务延时是指任务执行完毕处于挂起等待状态到下一次重新运行之间的时间间 隔,它的单位是时钟中断节拍。由于 OS_TICKS_PER_SEC 为 100,每一拍为 10ms。每个任务的调用间隔 不能小于一个节拍,否则它将影响模拟量的采样频率。各个任务的属性定义如表 1 所示。 表 1 任务属性定义 任务名称 优先级 内存空间 延时(节拍) 主要功能 Task_Measure 8 40 2 计算当前流量 Task_Uart 9 80 2 串口发送数据 Task_Can 10 80 2 CAN 发送数据 Task_Show 11 100 5 LED 显示流量 Task_A/D 12 40 5 采集油温 Task_Set 13 100 5 设置仪表参数 任务间通信 uC/OS-II应用程序 uC/OS-II处理器无关代码 OS_CORE.C OS_Q.C OS_MBOX.C OS_MEM.C OS_TASK.C uC/OS_II.C OS-TIME.C uC/OS_II.H OS_TASK.C uC/OS-II配置文件 (与应用程序有关) OSCFG.H INCLUDES.H 移植uC/OS-II (与处理器相关代码) OS_CPU.H OS_CPU_A.ASM OS_CPU_C.C CPU 定时器 图 4 uC/OS-II 文件结构图 各个任务是通过抢占 CPU 的使用权来运行的,它们之间存在一定的逻辑关系,彼此互相联系又互 相制约。信号量、邮箱、消息队列等功能为实现任务间通信提供了有力工具,它们的使用方法灵活多 变,如用信号量设置事件标志,唤醒任务、用邮箱在任务间传递参数、用消息队列的循环寻址功能进 行模拟通道的数据采集等。本仪表采用一个信号量 SemSet,在出现按键中断后该信号量置位,用来 唤醒主程序中仪表参数设定任务。数据队列 Trans_Que,用来在频率测量任务和通讯任务之间传递实 际需要发送的参数。邮箱 ADCMbox,邮箱 PARAMbox 和邮箱 LEDMbox 是分别用来在 AD 采集任务、参 数设定任务、数据显示任务与频率测量任务之间建立联系的纽带。
4 结论 本仪表采用 LPC2119 处理器和 uC/OS-II 操作系统设计了一个针对脉冲输出型流量计二次仪表, 硬件结构简单成本低廉,软件借助于操作系统的多任务管理,任务间同步与通信特点,提高了系统 的可靠性和实时性。经标准信号发生器输出频率范围 0-500KHz 的方波信号,经该仪表测量最大误差 均不超过 0.5%。

客户服务热线

0517-86880702

在线客服