Infineon Position2Go开发套件测评@4.开发篇
[复制链接]
1.雷达传感器原理:
开发前先熟悉下基本原理吧:
多普勒雷达是一种利用多普勒效应来探测运动目标的位置和相对运动速度的雷达。多普勒雷达的工作原理是向运动物体发射一束电磁辐射波,并调谐到精确的频率。当电磁辐射波击中运动物体时,它会“反弹”回同样包含接收器的源。然而,由于波是从运动物体上反射出来的,所以波会像多普勒效应所描述的那样移动。
返回到雷达的波被视为一个全新的波,就好像它是由反弹回来的目标发射的一样。目标就像是新波的新源头。当它被雷达接收到时,这种波的频率与最初发送到目标的频率不同。根据多普勒频移原理计算出对应的物体的相对速度。
可应用场景:
智能感应:自动门感应器、扶梯控制、移动物体探测
智能安防:安防监控装置、摄像头智能启动控制
智慧家庭:水龙头控制、微波感应开关、智能马桶
工业智能:传送带测速、工业控制
多普勒效应示意图
FMCW(Frequency Modulated Continuous Wave),即调频连续波,应用于高精度雷达测距,其基本原理为发射波为高频连续波,接收的回波频率与发射的频率变化规律相同,都是三角波规律,其频率随时间按照三角波规律变化,并存有一个频率差,利用这个微小的频率差可计算出目标距离。
上图显示了典型调频连续波(FMCW)雷达系统的流程。调频发送信号通过发送天线发送。在接收天线处获得来自目标的反射信号。该信号在混频器处与发送信号混合以获得中频(IF)输出。然后在ADC处对IF信号进行数字化,以获得所接收输出的数据样本。
上图显示了FMCW雷达系统的基本操作。发送的信号是调频信号。接收端输出的接收信号是在将发送信号和接收信号混合后获得的。这将生成一个中频信号,在图中可以看到它是一个正弦信号。中频信号的频率对应于拍频。这个拍频被用来估计目标的距离。在多个目标的情况下,中频信号包括与目标范围相对应的不同频率的正弦信号。
可应用场景:
室内外停车场系统
共享停车位
车辆盲区监控
智慧路灯
液体检测
2.官方资源:
原理确实有点复杂,如何开发呢?
英飞凌免费提供了丰富的资源:
API帮助文档:
硬件资源:
PCB图
3D视图
DAVE工程:
在DAVE中编程:
C语言和MATLAB语言接口:
官方提供的资源非常丰富,简化了开发的难度。非常不错,是不是有点跃跃欲试?
3.利用官方套件开发:
最简单的方法就是直接用官方套件二次开发了,前面用过的MATLAB程序extract_raw_data.m读取的数据,点击MATLAB运行后:
具体程序:
clc
disp('******************************************************************');
addpath('..\..\RadarSystemImplementation'); % add Matlab API
clear all %#ok<CLSCR>
close all
resetRS; % close and delete ports
% 1. Create radar system object
szPort = findRSPort; % scan all available ports
oRS = RadarSystem(szPort); % setup object and connect to board
disp('Connected RadarSystem:');
oRS %#ok<*NOPTS>
% 2. Enable automatic trigger with frame time 1s
oRS.oEPRadarBase.set_automatic_frame_trigger(1000000);
while true
% 3. Trigger radar chirp and get the raw data
[mxRawData, sInfo] = oRS.oEPRadarBase.get_frame_data;
ydata = mxRawData; % get raw data
disp(ydata);
end
可以看到,实时显示的数据ydata就是雷达传来的数据,对ydata进行编程处理就可以二次开发,实现自己的应用。
当然,英飞凌还提供了了C语言的API,通过访问串口实现,在文件夹中找到extract_raw_data.c,在C编译器中,创建项目,编译,就可以得到雷达传感器传输的数据。
总之,官方提供的资源非常丰富,极大的降低了开发的难度和门槛。
硬件和工具都由英飞凌制作好了,有想法就可以开始你的应用编程了~~~
|