基于DSP的车载雷达测速系统设计(2)
时间:2026-01-17
时间:2026-01-17
经典
计算机应用
Computer applications
《自动化技术与应用》2006年第25卷第7期
图1中,各方框表示系统组成的各个单元功能模块;图中实线部分表示各部分数据或信号连接,虚线部分为电源供应部分。
4.1应用层软件分为5个模块
1、信号采集模块:DSP每次中断,读取从FPGA中按DMA方式发送过来的帧数据。
2、滤波模块:直接使用FIR低通滤波,通过加窗函数实现。
3、Chirp-Z变换模块:按照Chirp-Z变换进行频谱分析,计算出临时fd附近的频谱。这一步先在Matlab中仿真并直接产生代码。
4、瞬时速度模块:按照Chirp-Z变换分析的频谱,求出频谱的最大值对应的下标,按照下标求出频率,按照频率求出速度。
5、输出模块:信号通过RS485输出,建立DSP和主机板的通信协议。
3 系统硬件设计和功能
DSP是整个设备的核心部分,包括运算器和控制器,而TMS320C6701还将外围电路部件的定时计数器、中断控制器、DMA控制器、多功能串口等集成的DSP中。其中雷达探头将速度变换成微弱的正弦波信号。SDRAM、SSRAM作为同步动态数据存储器,是系统数据存储器之一。FLASH用作程序存储器,存放系统程序。时钟Y1是DSP外部的时钟,为DSP提供时钟。时钟Y2作为FPGA外部时钟,为FPGA提供时钟。A/D转换将模拟的信号转换成数字量的信号输出到FPGA。
数据传输:系统可用三种方式作数据的输出。分别是脉冲方式、I/O串口方式和McBSP串口方式。输出的数据是检测到的速度值。
FPGA:实现三部分的功能。第一部分,对A/D进行控制;第二部分,对A/D转换的数据进行采集,并缓存在FPGA内存中,由DSP响应中断再发送给DSP处理;第三部分,接受DSP的控制信号。
信号放大:对微弱的电信号进行放大,系统是用有源器件对微弱的速度电信号放大到系统所需的电信号。
电源:系统电源部分由12V直流电输入。经过变换为系统分别提供8V、±5V、3.3V、1.8V和1.5V直流电输出。
电路设计中为了提高系统运行的运行可靠性,对各部分电路作了分别接地和敷铜等多种方法处理。
4.2 程序工作流程
信号首先由FPGA进行A/D转换,采样频率值可选,由DSP决定。采集过程当缓冲区数据满时,FPGA产生中断信号,CPU响应中断,总线控制权交给DMA开始读取块数据,同时对接收数据进行去直流分量,分实部、虚部为数据分配存储空间。注意在程序实现时将数据在经过缓冲区时进行分帧处理。
滤波模块完成的工作:处理后的信号含有一定的干扰信号,使用软件滤波将频率范围外的高频、工频干扰消除。首先用Matlab模拟窗函数系数,使用循环卷积对输入信号进行FIR滤波。
Chirp-Z变换模块完成的工作:对输入信号经Chirp-Z变换求出临时fd附近频谱,根据频谱分析理论和在仿真软件Matlab下仿真知,该算法能估计出信号的主频,而且抗干扰能力强,实现简单。此变换是整个系统软件中的核心。
瞬时速度模块分为三个部分实现:频谱最大值及下标计算、起始角度更新计算、速度计算。
输出模块:测得的速度信号值经RS485接口输出。
4 系统软件设计和功能
软件系统采用了流行的面向对象的设计思想和模块化的设计流程,并且采用了分层设计的原则,充分利用TI公司提供的相应数字信号处理库进行设计件框架图如下:
[1]
,其软
4.3 DSP系统引导设计和FLASH烧写
TMS320C6701在进行引导工作中,首先进行DSP上电复位,程序段存储在外部Flash,DSP自动将位于地址空间CE1(0x1400000~0x1430000)开头的64KB代码通过EDMA方式传输到DSP的EMIF(本设计为SBSRAM)的地址空间0x400000处。ROM中的程序以little endian格式存储。数据传输采用默认时序,
图2 系统软件框架图
SST39VF400的数据宽度为16bit,由EMIF自动将两次
(下转第32页)
| 21
下一篇:第一学期四年级专题教育教学计划