陀螺仪是一种测量运动物体相对惯性空间旋转的装置。以陀螺仪为核心的惯性测量系统在飞行器控制与制导,空中、海上和陆上导航/定位中都起着至关重要的作用。作为新型陀螺,光纤陀螺得到了迅速的发展和应用。光纤陀螺(FOG)是利用光纤构成的一种环状干涉仪,属纯光学、静止型陀螺,通过萨格奈克(Sagnac)效应来实现旋转角速度的检测。由于光纤陀螺突出的技术特点和应用背景,光纤陀螺将在惯性元件领域占有非常重要的位置。光纤陀螺脉冲输出的采集,对于检验陀螺性能、提高陀螺精度、增强产品可靠性,具有重要作用。
1 PSoC简介
2003年Cypress半导体公司推出了可编程片上系统(Programmable System on Chip,PsoC),它不但集8位微控制器、可编程数字阵列和可编程模拟阵列为一体,而且实现了“在系统可编程”,既满足了一般电子系统的资源要求,又顺应了现代电子设计方法的发展方向,是第一种真正具有混合信号处理能力的片上系统(SoC)。
PSoC是一种可编程的半导体器件,与现场可编程门阵列FPGA(Field Programmable Gate Array)、在系统可编程模拟器件ispPAC(InSys-tem Programmable Arialog Circuit)和单片机相比,具有如下特点:
1)PSoC综合FPGA和ispPAC的功能为一体,既具有FPGA的可编程数字阵列,又具有ispPAC的可编程模拟阵列,即具有处理数字和模拟两种信号的能力。此外,PSoC所具有的A/D、D/A用户模块解决了两个阵列的接口问题。
2)PSoC有1个8位的微处理器,可以方便地实现系统设计。尽管FPGA可以通过设计,实现一个软核微控制器或微处理器,但是增加了系统设计的难度。
3)与ispPAC相同,PSoC不需要编程器,就能够在系统运行过程中编辑,用以修改和重构电子系统,使用灵活方便。
4)虽然也可将PSoC视为1个8位的微控制器,即8位单片机。但是与一般单片机不同的是,它几乎不需要外部电路,一片PSoC就可实现一个电子系统。而且PSoC具有比一般单片机更多的内部资源,如低电压监测电路(Low Voltage Detect,LVD)、开关式升压泵(Switch Mode Pum-p,SMP)、内部精密参考电压(Intemal Voltage Reference)等。另外,PSoC同时具有片内和片外系统时钟源,可以不需要外部晶体振荡器即可自行工作。
PSoC的以上特点,使其在小型系统设计方面正在得到越来越广泛的应用。
2 系统核心器件CY29666-24VXI
本系统采用PSoC芯片CY29666-24PVXI,来实现对光纤陀螺脉冲输出的采集。芯片CY29666-24PVXI的结构框图如下图1所示。它由4部分构成:PSoC Core、数字系统(Digital System)、模拟系统(Analog System)和系统资源(System Resources)。其中,PSoC Core是PSoC器件的核心部分,包括M8C微处理器、SROM、32 K字节Flash、2 K字节SRAM、中断控制器、可编程的多时钟源、休眠计时器及看门狗等;数字系统和模拟系统并存,是PSoC芯片的独特之处。CY29666-24PVXI中有16个数字PSoC用户模块,如计数器功能模块、定时器功能模块、脉宽调制功能模块等:12个模拟PSoC用户模块,如A/D、D/A、可编程增益放大器等;CY29666-24PVXI提供的系统资源包括:数字时钟、乘法加法器、采样抽取器、主从及多主模式的I2C、上电复位(
[page]
3 系统硬件设计及硬件模块的配置
本系统的硬件部分包括信号预处理模块、脉冲采集模块及液晶显示模块,其总的框图如下图2所示。
3.1 信号预处理部分
脉冲信号是一种短暂、跃变的,达到一定跃变幅度的电信号。而对于输出信号为脉冲信号的光纤陀螺,为提高其输出信号的抗干扰性,本系统在光纤陀螺与PSoC器件之间加了一个光电耦合器HCPL-2630,完成信号的预处理。
光电耦合器对输入、输出电信号起隔离作用,HCPL-2630一般由3部分组成:光的发射、光的接收及信号放大。输入的电信号驱动发光二极管(
由于光耦合器输入输出问互相隔离,电信号传输具有单向性等特点,因而具有良好的电绝缘能力和抗干扰能力。又由于光耦合器的输入端属于电流型工作的低阻元件,因而具有很强的共模抑制能力。
3.2 脉冲采集部分
脉冲采集模块由定时器模块和计数器模块组成。PSoC芯片嵌入了强大的定时器功能模块。它拥有8位、16位、24位和32位可编程递减定时器。通过对定时器模块编程,用户可实现多种工作方式的定时器功能。PSoC的定时器模块由1个周期寄存器、1个同步递减计数器和1个捕获比较寄存器组成,结构如图3所示,每个寄存器大小都是1个字节。当定时器不工作时,向周期寄存器(Period Register)写入一个周期值。当定时器工作时,周期值会被自动从周期寄存器中载入到递减计数器(Down Counter)中,随后,计数器将会执行递减计数操作直到0。在下一个时钟上升沿,周期值将会被重新载入,紧接着继续计数。递减计数器模块主要的功能是输出信号,它可以被配置成全时钟循环或者半时钟循环。定时器具有定时、比较和捕获比较3种功能。本系统中运用其定时功能。原理如下:将系统的数字时钟或其他输入信号作为Clock,通过设置Period值即可获得相应的定时间隔,定时间隔T=(Period+1)/fClock。当递减计数器值减为0时,定时器时间到,此时Terminal Counter Out将输出一个高电平脉冲,若设置了中断,则将产生定时器中断。
定时器的核心是一个递减计数的计数器,计数器功能模块和定时器功能模块具有相同的结构,都包含1个周期寄存器、1个同步递减计数器和1个捕获比较寄存器。两者的功能模块主要有如下的区别:
1)计数器的数据输入是一个计数器的使能位而不是一个捕获输入,计数器不能用作异步捕获,当计数器被使能工作时,数据寄存器不能执行读操作;
2)比较器输出作为计数器的主输出,而计数器终止输出是作为辅助输出;
3)计数终止输出只能是全周期输出。
本系统中运用计数器的计数功能,其原理是:将光纤陀螺仪脉冲输出信号作为Clock输入,预先设定一个Period数值,通过读取减数计数器DR0数值的变化获得输入信号的计数值,计数值C=Period-DR0。[page]
3. 3
PSoC集成开发环境(IDE)PSoC Designer5.O中有LCD、
3.4 PSoC内部硬件搭建
在集成开发环境(IDE)PSoC Designer5.0的器件编辑器中,可实现硬件模块的搭建。本系统只用到了PSoC芯片内部的1个8位定时器、1个16位计数器和1块LCD用户模块。
8位定时器产生1 ms的方波信号,接在16位定时器的使能端,用于控制定时器对光纤陀螺脉冲信号计数,最终的采集结果在液晶显示器LCD上显示。PSoC内部硬件搭建如图4所示。
4 软件设计
系统首先用8位定时器Timer8通过中断方式产生准确时间,而后调用计数子程序对光纤陀螺脉冲输出进行计数,最后调用显示子程序将采样结果在LCD上显示出来。其软件流程如下图5所示。
需要注意的是,在定时器最终计数结束后的下一个系统时钟周期,定时器会自动重新加载计数初值。所以要在此之前读取计数器的计数值。此操作可以通过定时器的中断程序来实现。
5 测试结果
将应用层代码下载到PSoC程序下载软件环境PSoCProgrammer3.06中。进行仿真。本系统选用南京盛普仪器科技有限公司生产的SP1641D型函数信号发生器来
由表1可看出,本测试系统能够精确测量频率范围在0.1Hz~1MHz之间的光纤陀螺脉冲输出,并且误差小于万分之一,满足了实际的测试需求。
6 结束语
本设计以PSoC芯片CY29666-24PVXI为核心,完成了光纤陀螺脉冲输出的高精度采集。测试范围能够达到0.1Hz~1 MHz,误差小于万分之一。该设计电路简单、集成度高、性能稳定、抗干扰能力强、价格低廉、且可靠性高,充分体现了PSoC芯片的优点,在对光纤陀螺进行测试,提高光纤陀螺精度方面,有较大的价值。
上一篇:基于CPLD/FPGA的半整数分频器的设计实例
下一篇:基于SOPC的视频编解码IP核的设计
推荐阅读最新更新时间:2024-05-02 21:24