基于DSP的数字式MEMS加速度传感器的设计与应用
时间:04-17
来源:
点击:
引言
加速度传感器一直是振动测试中的重要元件。ADXL203加速度计是美国模拟器件(ADI)公司的新型单芯片双轴传感器,测量范围是±1.7g.可以承受3500g振动冲击。相对于传统的加速度计,他的成本比较低,性能好,功耗低。此外,该加速度计可以同时测量两个垂直方向的加速度,适用于静态和动态的加速度测量。
测量原理
ADXL203采用先进的MEMS技术,由一个利用表面微机械加工的多晶体硅机构和一个差动电容器组成。在加速度的作用下,多晶体硅结构会产生偏移,于是就会拉动电容的运动极板滑动是电容值发生变化,最终导致输出方波的变化,利用这个原理,就可以通过查动电容检测到加速度的变化,加速度与输出方波成正比。
应用要点
ADXL203可以测量静态加速度,也可以测量动态加速度,其最小带宽为0.5Hz,最大带宽可以达到2500Hz。
在设计时,首先要确定北侧加速度频率范围,然后再设定滤波器的参数。尽量使滤波器的带宽略高于被测频率,这样做不仅有利于滤除高频干扰,也有利于降低系统噪声干扰。
因此要选择合适的带宽,如果一味提高通频带宽将会给测量带来更多的噪音,降低测量精度。
实际应用
在加速度测量研究中,我们采用了TI公司生产的TMS320LF2407 DSP信号处理器来进行处理。这里首先介绍一下2407的特点与性能。
1 TMS320LF2407的硬件特点
采用了采用高性能静态CMOS技术,使得供电电压降为3.3V,减少了功耗;基于TMS320C2xx DSP的CPU核,保证与TMS320系列DSP代码兼容;片内有高达32K字的单口RAM(SARAM);两个事件管理器模块EVA和EVB,适用于控制各类电机;看门狗定时模块(WDT);控制局域网络(CAN)2.0B模块;串行通信接口(SCI)模块;16位的串行外设接口(SPI)模块;JTAG接口,使得在系统编程(ISP)很容易实现;10位A/D转换器最小的转换时间为500ns,可选择由两个事件管理器来触发2个8通道输入A/D转换器或1个16通道输入A/D转换器,而每次要转换的通道都可通过编程来选择。需要说明的是,TMS320LF2407 DSP是丁点16位芯片,存储数据的最小单位是16位的字,每个地址(包括程序地址,数据地址及I/O地址)所存的数据都是16位。
2 软件环境
TMS320C2407 DSP提供两种编程语言:汇编语言和C语言。两种语言各有所长:用C语言开发DSP芯片,开发速度快,可读性好,可移植性强;而用汇编语言开发DSP芯片,则能充分利用DSP芯片的软硬件资源,程序代码的执行效率高。在开发过程中几乎不可避免的要使用C语言和汇编语言的混合编程。如果源程序为C语言,需调用TMS320C2xx DSP的C编译器将其编译成汇编语言,然后送汇编器进行汇编。汇编后产生COFF格式的目标文件,再用链接器进行链接(链接过程包括将编译器的运行支持库相关代码链接进来以及代码段和数据段的重定位),生成在TMS320C2xx DSP上可执行的COFF格式的目标代码,并调用下载程序将目标代码下载到目标芯片上。
3 系统设计
系统设计包括:变成逻辑器件接口,数字量扩展单元,传感器信号产生单元,A/D转换单元,电源管理模块(提供5V,3.3V)和数据存储器等,将TMS320LF2407的资源全部引出。
系统主要模块如下:
1.DSP控制单元。包括晶振,RAM,电源模块,和相应的数据输出接口。根据DSP的实验板电路作出相应的改动,然后就可以与传感器单元连接了。连接完毕,接入仿真器与电脑对接,进行程序的调试。
2.传感器信号输出单元。包括ADXL203,AD8341 A/D转换器,运放电路。传感器电路分为两个相同的组成部分,测量三个方向的加速度。使用的是AD公司生产的MEMS传感器ADXL203,和由TI公司生产的A/D转换器ADS8341。传感器输出的模拟信号送入A/D转换器,然后送入DSP的SPI口进行处理。板子的输入电源由一个5V电源提供,在输入之前,用电容进行滤波以提高精度,减少毛刺。尽量减少对传感器的影响。
4 系统软件
CCS的设置与使用。运行Code Composer Studio Setup 软件,在Processor Configuration窗中,在Available Processor 中选择TMS320C24X,然后,点击Add Single;对话框右边出现CPU_1图标,将板卡的I/O值修改为0X378。点击Finish,关闭Code Composer Studio Setup程序,选择保存。Code Composer Studio 就设置完毕。
一个DSP应用软件的标准开发,需要经历下列步骤:用文本编辑器(Editor)编辑满足汇编器(Assembler)格式要求的汇编源程序;调用汇编器汇编该源文件,如果源文件中调用了宏,汇编器还会到宏库中搜索该宏;汇编之后生成格式为公共目标文件格式(COFF,Common Object File Format)的目标文件(.obj),称为COFF目标文件;调用链接器(Linker)链接目标文件,如果包含了运行支持库和目标文件库,链接器还会到所保护的库中搜索所需的成员;链接之后生成可执行的COFF执行文件(.out)将COFF执行文件下载到DSP中执行。同时也可借助调试工具(Debugging Tool)对程序进行跟踪调试或优化,也可利用交叉参考列表器(Cross-reference Lister)和绝对列表器(Absolute Lister)生成一些包含调试信息的表。
TI公司在其系列芯片上设置了符合IEEE1149标准的JTAG(Joint Action Group)标准测试接口及相应的控制器,从而不但能控制和观察多处理器系统中的每一个处理器的运行,测试每一块芯片,还可以用这个接口来装入程序。用37芯扁平电缆使计算机通过并行口或转接卡与SEED-SDSPP仿真盒相连,再用14芯JTAG接口线连接到用户DSP目标板。在PCB电路设计好后,程序先将JTAG的控制指令通过TDI送入JTAG控制器的指令寄存器中。再通过TDI将要写的数据及控制线信号输入到BSR(边界扫描寄存器)中,并将数据锁存到BSC(边界扫描单元)中,此后BSC的内容送到其连接的相应芯片的引脚!因芯片的数据线、地址线及控制线的引脚上都有其相应的BSC,只要用JTAG指令将数据、地址及控制信号送到其BSC中,就对芯片内的寄存器进行读写,通过BSC对应的引脚,不但可以将信号送给发Flash,实现对Flash的操作,也可以对SDRAM进行操作。
加速度传感器一直是振动测试中的重要元件。ADXL203加速度计是美国模拟器件(ADI)公司的新型单芯片双轴传感器,测量范围是±1.7g.可以承受3500g振动冲击。相对于传统的加速度计,他的成本比较低,性能好,功耗低。此外,该加速度计可以同时测量两个垂直方向的加速度,适用于静态和动态的加速度测量。
测量原理
ADXL203采用先进的MEMS技术,由一个利用表面微机械加工的多晶体硅机构和一个差动电容器组成。在加速度的作用下,多晶体硅结构会产生偏移,于是就会拉动电容的运动极板滑动是电容值发生变化,最终导致输出方波的变化,利用这个原理,就可以通过查动电容检测到加速度的变化,加速度与输出方波成正比。
应用要点
ADXL203可以测量静态加速度,也可以测量动态加速度,其最小带宽为0.5Hz,最大带宽可以达到2500Hz。
在设计时,首先要确定北侧加速度频率范围,然后再设定滤波器的参数。尽量使滤波器的带宽略高于被测频率,这样做不仅有利于滤除高频干扰,也有利于降低系统噪声干扰。
因此要选择合适的带宽,如果一味提高通频带宽将会给测量带来更多的噪音,降低测量精度。
实际应用
在加速度测量研究中,我们采用了TI公司生产的TMS320LF2407 DSP信号处理器来进行处理。这里首先介绍一下2407的特点与性能。
1 TMS320LF2407的硬件特点
采用了采用高性能静态CMOS技术,使得供电电压降为3.3V,减少了功耗;基于TMS320C2xx DSP的CPU核,保证与TMS320系列DSP代码兼容;片内有高达32K字的单口RAM(SARAM);两个事件管理器模块EVA和EVB,适用于控制各类电机;看门狗定时模块(WDT);控制局域网络(CAN)2.0B模块;串行通信接口(SCI)模块;16位的串行外设接口(SPI)模块;JTAG接口,使得在系统编程(ISP)很容易实现;10位A/D转换器最小的转换时间为500ns,可选择由两个事件管理器来触发2个8通道输入A/D转换器或1个16通道输入A/D转换器,而每次要转换的通道都可通过编程来选择。需要说明的是,TMS320LF2407 DSP是丁点16位芯片,存储数据的最小单位是16位的字,每个地址(包括程序地址,数据地址及I/O地址)所存的数据都是16位。
2 软件环境
TMS320C2407 DSP提供两种编程语言:汇编语言和C语言。两种语言各有所长:用C语言开发DSP芯片,开发速度快,可读性好,可移植性强;而用汇编语言开发DSP芯片,则能充分利用DSP芯片的软硬件资源,程序代码的执行效率高。在开发过程中几乎不可避免的要使用C语言和汇编语言的混合编程。如果源程序为C语言,需调用TMS320C2xx DSP的C编译器将其编译成汇编语言,然后送汇编器进行汇编。汇编后产生COFF格式的目标文件,再用链接器进行链接(链接过程包括将编译器的运行支持库相关代码链接进来以及代码段和数据段的重定位),生成在TMS320C2xx DSP上可执行的COFF格式的目标代码,并调用下载程序将目标代码下载到目标芯片上。
3 系统设计
系统设计包括:变成逻辑器件接口,数字量扩展单元,传感器信号产生单元,A/D转换单元,电源管理模块(提供5V,3.3V)和数据存储器等,将TMS320LF2407的资源全部引出。
系统主要模块如下:
1.DSP控制单元。包括晶振,RAM,电源模块,和相应的数据输出接口。根据DSP的实验板电路作出相应的改动,然后就可以与传感器单元连接了。连接完毕,接入仿真器与电脑对接,进行程序的调试。
2.传感器信号输出单元。包括ADXL203,AD8341 A/D转换器,运放电路。传感器电路分为两个相同的组成部分,测量三个方向的加速度。使用的是AD公司生产的MEMS传感器ADXL203,和由TI公司生产的A/D转换器ADS8341。传感器输出的模拟信号送入A/D转换器,然后送入DSP的SPI口进行处理。板子的输入电源由一个5V电源提供,在输入之前,用电容进行滤波以提高精度,减少毛刺。尽量减少对传感器的影响。
4 系统软件
CCS的设置与使用。运行Code Composer Studio Setup 软件,在Processor Configuration窗中,在Available Processor 中选择TMS320C24X,然后,点击Add Single;对话框右边出现CPU_1图标,将板卡的I/O值修改为0X378。点击Finish,关闭Code Composer Studio Setup程序,选择保存。Code Composer Studio 就设置完毕。
一个DSP应用软件的标准开发,需要经历下列步骤:用文本编辑器(Editor)编辑满足汇编器(Assembler)格式要求的汇编源程序;调用汇编器汇编该源文件,如果源文件中调用了宏,汇编器还会到宏库中搜索该宏;汇编之后生成格式为公共目标文件格式(COFF,Common Object File Format)的目标文件(.obj),称为COFF目标文件;调用链接器(Linker)链接目标文件,如果包含了运行支持库和目标文件库,链接器还会到所保护的库中搜索所需的成员;链接之后生成可执行的COFF执行文件(.out)将COFF执行文件下载到DSP中执行。同时也可借助调试工具(Debugging Tool)对程序进行跟踪调试或优化,也可利用交叉参考列表器(Cross-reference Lister)和绝对列表器(Absolute Lister)生成一些包含调试信息的表。
TI公司在其系列芯片上设置了符合IEEE1149标准的JTAG(Joint Action Group)标准测试接口及相应的控制器,从而不但能控制和观察多处理器系统中的每一个处理器的运行,测试每一块芯片,还可以用这个接口来装入程序。用37芯扁平电缆使计算机通过并行口或转接卡与SEED-SDSPP仿真盒相连,再用14芯JTAG接口线连接到用户DSP目标板。在PCB电路设计好后,程序先将JTAG的控制指令通过TDI送入JTAG控制器的指令寄存器中。再通过TDI将要写的数据及控制线信号输入到BSR(边界扫描寄存器)中,并将数据锁存到BSC(边界扫描单元)中,此后BSC的内容送到其连接的相应芯片的引脚!因芯片的数据线、地址线及控制线的引脚上都有其相应的BSC,只要用JTAG指令将数据、地址及控制信号送到其BSC中,就对芯片内的寄存器进行读写,通过BSC对应的引脚,不但可以将信号送给发Flash,实现对Flash的操作,也可以对SDRAM进行操作。
- 在采用FPGA设计DSP系统中仿真的重要性 (06-21)
- 基于 DSP Builder的FIR滤波器的设计与实现(06-21)
- 达芬奇数字媒体片上系统的架构和Linux启动过程(06-02)
- FPGA的DSP性能揭秘(06-16)
- 用CPLD实现DSP与PLX9054之间的连接(07-23)
- DSP+FPGA结构在雷达模拟系统中的应用(01-02)