基于CPLD的高精度频率测量系统设计
2011-01-10黄银国
邵 毅 ,王 欣 ,黄银国
(1.国家海洋技术中心,天津 300112;2.天津大学精密仪器与光电子学院,天津 300072)
基于CPLD的高精度频率测量系统设计
邵 毅1,王 欣1,黄银国2
(1.国家海洋技术中心,天津 300112;2.天津大学精密仪器与光电子学院,天津 300072)
介绍了等精度频率测量原理,对测量误差进行了分析。在6 000 m高精度CTD剖面仪数据采集系统设计中,采用单片机结合Altera公司EPM1270T144C5型CPLD实现系统功能,CPLD基于QuartusII软件平台开发,采用模块化设计方法,实现多通道频率信号等精度同步测量。通过海上的多次现场比测试验,验证了系统的可靠性。
CPLD;等精度;频率测量;数据采集;CTD
数据采集系统设计中频率信号的采集是一项重要研究内容。传统的频率采集方法主要分为测频法和测周法两种,测量精度受被测信号影响,均存在较大局限性。等精度测量方法是在直接测频方法基础上发展起来的,其特点是测量精度仅由标准信号频率和采样时间长短决定,不随被测信号频率的变化而变化,可以实现宽频率范围内的高精度测量。
CPLD(ComplexProgrammable Logic Device,复杂可编程逻辑器件)是为满足人们对专用集成电路(ASIC,Application Specific Integrated Circuit)的需求而产生的,由于其集成度高,可以满足大多数数字系统设计的需要,虽然作为通用集成电路生产,但是通过设计编程就可以把要实现的系统集成在一片芯片上,代替专用集成电路。可编程逻辑器件的出现改变了传统的电路系统设计方法,形成一种基于芯片的设计方法,具有集成度高、功耗低、设计灵活、调试方便、系统可靠性高等优点。
本文介绍了等精度测量的原理及其实现,并分析了影响其误差的因素。在6 000 m高精度CTD剖面仪数据采集系统设计中,采用单片机结合CPLD实现多个传感器频率信号的同步等精度测量,并通过海上的多次现场试验,测试了系统的可靠性。
1 测频原理
常用直接测频方法分为测频法和测周法两种。测频法在标准时间闸门内对被测信号计数,计算得到被测频率,这种测频方法存在对被测频率计数的±1误差,当频率越低时误差越显著,因此往往应用于高频信号的测量;测周法是在被测信号1个周期内,对高频参考信号计数,因为高频参考信号频率是稳定已知的,可以得到被测信号的频率,这种方法存在对高频参考信号计数的±1误差,因此当被测信号频率很高,周期很短时,高频计数值相应减少,误差增加,测周法往往应用于低频信号的测量。综上所述,两种方法都存在其局限性。等精度测频方法与之的区别在于闸门时间不是固定值,而是被测信号周期的整数倍,即与被测信号同步,因此消除了对被测信号计数产生的±1误差,并达到在整个测试频段内的等精度测量。其实现原理如图1所示。
图1 频率测量实现原理
时间闸门信号根据采样率要求确定,连接到D触发器的输入端,当时间闸门信号从低电平变为高电平,输出并不立即改变,而是等到被测频率信号的上升沿到来,触发器状态才发生转换。计数器1和计数器2是两个可控计数器,当触发器输出高电平时同时开始对标准频率信号和被测频率信号计数。当时间闸门信号从高电平变为低电平,同样等到被测频率信号的上升沿到来,触发器状态才发生转换,两个计数器同步停止计数。
由以上的测量原理可见实际的采样时间与时间闸门信号并不相同,由于采用被测频率信号和时间闸门信号共同决定实际采样时间,对被测频率信号的计数不存在误差,对标准频率信号的计数存在不超过±1的计数误差。
设标准频率信号为fs,被测频率信号为fx,同一时间段内的二者计数比值即二者的频率比值,设计数值分别为Ns和Nx,由于标准频率信号fs可知,即可以计算出被测频率:
设被测频率的真实值为fx',fx的相对误差可以表示为:
由测量原理可知,对被测频率的计数值Nx不存在误差,设实际采样时间为τ,实际采样时间与预置时间的差为Δt,则可知被测频率的真实值可表示为:
(1)式可表示为:
将(3)式和(4)式代入(2)式,得到:
由测量原理可知,对标准频率的计数误差为±1,则:
当τ远大于Δt时(5)式可表示为:
即测量相对误差仅与采样时间和标准频率成反比,与被测频率无关,采样时间越长,采样率越低,标准频率越高,测量的相对误差就越小。当采样频率一定时,可以通过提高标准频率提高测量的精度。当标准频率为10 MHz,采样频率为100 Hz时,相对误差达到10-5。
2 频率测量系统设计
6 000 m高精度CTD剖面仪用于0~6 000 m水深海洋垂直剖面的温度、电导率和深度参数测量,是水文调查的重要仪器,采样率24 Hz,其测量准确度指标见下表1。
表1 6 000 m高精度CTD剖面仪测量准确度
除了具有采样率高、精度高的特点,由于海洋盐度计算的特殊性,对各传感器还有同步测量的要求,即温度、电导率和压力的测量对象必须是同一水体,否则就会由于温度与电导率测量的不一致造成盐度计算中出现虚假尖峰。在以往的设计中采用基于单片机的频率采集设计方案,这种方式通过充分开发单片机内集成模块完成各传感器参数的测量,但由于系统的测量参数多、控制任务繁杂,必须采用多CPU协同处理的架构,结构复杂,同时由于各测量通道不完全独立,单片机本身存在中断冲突的问题,会影响测量的精度和同步性。
CTD剖面仪的数据采集系统的主要功能是按采样率和精度要求完成温度、电导率、压力传感器和高度计的数据采集,采集数据经计算编码实时传输,同时根据甲板单元控制指令完成潜水泵和采水器控制。根据系统的设计要求,采用了单片机集合CPLD的设计方案。单片机与CPLD具有很强的功能互补性,单片机的功能灵活,易于人机对话,有很强的数据处理能力,但是高速实时信号的并发处理能力不强;而CPLD为纯硬件结构,速度快,可靠性高,利用二者的优点,在设计中,单片机完成系统控制、命令应答、数据处理功能,CPLD完成高速、高精度的多路传感器频率信号测量,二者功能相对独立,通过数据接口连接。
各传感器输出频率的波形、振幅各不相同,不能直接接入单片机的采集端口。为了把传感器输出的频率信号转换成单片机可以采集的标准信号,必须经过正弦波到方波的变换,才能进入计数电路,否则会因为闸门开启时间影响计数精度,而且信号幅度也不满足单片机的要求。传感器输出的频率信号的预处理采用一个低功耗双路电压比较器LM393实现,输出为标准方波信号。
温度、电导率和压力传感器三路频率信号采集采用Altera公司MAX II器件系列的EPM1270T144C5型CPLD完成,该系列CPLD采用全新的CPLD体系结构,运用低功耗的工艺技术,和前一代MAX器件相比,成本降低一半,功率降至1/10,容量增加4倍,性能增加2倍。根据设计要求采集模块内部分为多个功能模块,如分频、时序控制、计数、锁存、编译码等,而此器件提供1 270个逻辑单元,116个I/O端口,8 kbit用户Flash存储容量,能够完全满足系统需要。
CPLD的开发基于QuartusII软件平台,采用自顶向下的设计方法,确定输入输出信号,同时根据时序分析划分功能模块,然后把所有的输入输出信号分配到各个功能模块中,对每个功能模块分别进行设计输入,功能仿真。在各个功能模块实现其各自功能后,再完成顶层设计输入,功能仿真,综合仿真,直至达到设计要求。
为了满足三路采集通道的同步性和独立性,各路通道的计数、锁存完全独立,但采用相同的时序控制信号。标准频率源采用24 MHz高稳定性时钟源,其电压稳定性、年漂移和温度漂移均不足1×10-6,采样率24 Hz时测量相对误差达到10-6,满足测量精度要求。每路频率信号采用5个计数器完成采样间隔内对传感器信号和标准频率信号的计数,计数完成后结果自动锁存,并给出采样完成标志,由单片机按地址依次分别读取。
采用MSP430F149单片机作为系统主控芯片,单片机与CPLD之间通过数据接口和数据选择接口连接,数据采集开始后,CPLD自动按照24 Hz采样率采集各传感器数据,采样完成后给出采样完成标志,单片机检测到采样完成标志后,按照地址编码,依次读取各计数器结果,经计算编码后发送给甲板单元。
系统组成示意如图2。
图2 系统组成示意图
3 试验比测
为了检验系统现场工作适应性和长期工作可靠性,6000 m电缆传输CTD剖面仪参加了2010年8月5日至9月2日的“863”规范化外海试验,通过高精度6 000 m CTD剖面仪与国际先进的同类仪器设备开展海上综合比测试验,检验高精度6 000 m CTD剖面仪的技术性能和验证优化设计效果,试验结果为高精度6 000 m CTD剖面仪的进一步改进、完善提供依据。
此次外海实验自2010年8月6日搭乘东方红2号科学考察船从青岛中苑码头出发,8月11-26日完成了10次CTD比测试验,比测站位如图3。
图3 试验站位图
图4 比测试验现场
图5 温度比测曲线
图6 电导率比测曲线
比测仪器为SBE25,比测试验采用双机同步比测方法,把高精度CTD剖面仪与SBE25仪器安装在同一个实验架上,两台仪器水平放置,把相同类型的传感器在互不干扰的前提下尽量靠近,由于海洋水文环境要素在垂直方向上的变化一般要大于水平方向上的变化,所以尽量保持温度和电导率传感器在同一水平位置。比测安装情况如图4。
测量数据比对分析方法为将被测仪器和比测仪器都经数据处理转换为按压力平均形式,比较同一压力下的测量参数值,以08232站位的试验数据为例,温度、电导率和盐度的比测曲线如图5、图6和图7。
图7 盐度比测曲线
从比测曲线可见被测和比测仪器的变化趋势一致,比测试验数据统计分析见表2。
表2 08232站位试验数据统计分析
在这一航次的比测试验中,6 000 m高精度CTD剖面仪共进行了10次比测试验,最大深度达到了3 205 m,数据采集系统工作正常,很好地完成了数据采集和采水任务,温度、电导率相关系数始终优于0.999 9,第三方检验报告认为“6 000 m高精度CTD工作稳定,具有良好的可靠性和环境适应性”。
4 总结和展望
采用单片机和复杂可编程逻辑器件共同实现6 000 m高精度CTD剖面仪数据采集控制系统,具有集成度高,可靠性好,灵活性强等优点。CPLD内部集成资源丰富,能完成复杂的数字系统功能,开发采用模块化设计方法,设计调试方便,系统开发周期短,节约成本,在海洋仪器的开发中有广阔的应用前景。
[1]张兆英.海水电导率、温度和深度测量技术探讨[J].仪器仪表学报,2003,24(4):38-41.
[2]何小艇.数字电路[M].浙江:浙江大学出版社,1995.
[3]王开军,姜宇柏.面向CPLD/FPGA的VHDL设计[M].北京:机械工业出版社,2007.
[4]吴继华,王诚.Altera FPGA/CPLD设计[M].北京:人民邮电出版社,2005.
[5]周润景,图雅,张丽敏.基于QuartusⅡ的FPGA/CPLD数字系统设计实例[M].北京:电子工业出版社,2007.
Design of High Precision Frequency Measuring System Based on CPLD
SHAO Yi1,WANG Xin1,HUANG Yin-guo2
(1.National Ocean Technology Center,Tianjin 300112,China;2.College of Precision Instrument and Opto-Electronics Engineering,Tianjin University,Tianjin 300072,China)
The principal of equal precision frequency measurement is introduced and the measurement error is analyzed.Data acquisition system of 6000 meter high precision CTD profiler is designed based on microcontroller and Altera EPM1270T144C5 CPLD to realize the design functions.CPLD is developed based on Quartus II software kit to realize multi-channel frequency signals synchronized equal precision measurement adopting modular principal.The site experiments validate the reliability of the system.
CPLD;equal precision;frequency measurement;data acquisition;CTD
P715;TN79
B
1003-2029(2011)04-0019-04
2010-11-20
国家高技术研究发展计划(863)——船载6 000 m温盐深剖面仪(CTD)定型样机工艺、材料和优化设计的改进研究(2006AA09A313)
邵毅(1976-),男,高级工程师,主要研究方向:嵌入式系统开发和传感器测量系统研究。Email:shao_yi@sohu.com