고객사례

Delphi Develops Radar Sensor Alignment Algorithm for Automotive Active Safety System

Challenge

Deliver a production automotive radar sensor alignment algorithm in four weeks

Solution

使用MATLAB开发算法并使用MATLAB编码器生成生产C代码

结果

  • Generated C code as efficient as handwritten C code for this algorithm
  • 开发时间减半
  • 算法在秒内容易验证和编码

“MATLAB is my preferred tool because it speeds algorithm design and improvement. I can do the data analysis, algorithm development, algorithm visualization, and simulation in one place and then generate C code that is reliable, efficient, and easy for software engineers to integrate within a larger system.”

Liang Ma, Delphi
Delphi的多模电子扫描雷达(ESR),它使用单个雷达,在长距离的中间和高分辨率覆盖下提供广泛的覆盖范围。图像由德尔福提供。

Automotive radar is an enabling technology for collision mitigation, blind-spot alerts, adaptive cruise control, and many other active safety features. Radar systems provide range, range rate, and azimuth information data on vehicles and other objects. The accuracy of this data depends on precise alignment of the radar sensor.

delphi使用matlab.®和MATLAB编码器™加速生产雷达传感器对准算法的设计,仿真和实现。

“With MATLAB we can analyze data and design algorithms in one environment, so we can rapidly try out new ideas and then evaluate them with plots and statistical analysis,” says Liang Ma, Delphi system engineer. “Once we’ve verified an algorithm, we use MATLAB Coder to generate production C code that is as efficient as handwritten code.”

Challenge

雷达传感器对准算法在车辆运行时每秒执行超过40倍。在1毫秒内,必须基于雷达传感器提供的数据以及车辆速度,传感器在车辆上的位置来计算未对准角度,以及其指向角度。

In the past, Delphi system engineers handed off a MATLAB prototype algorithm to software engineers for implementation in C. This approach had several drawbacks. When the software engineers had a heavy workload, they often could not begin working on a C implementation for weeks. Communication was challenging because system engineers and offshore software engineers were separated by several time zones. Software engineers sometimes misinterpreted the prototype algorithm and delivered C code that failed to meet the design and performance requirements.

凭借高需求的主动安全系统,Delphi只需四周即可改进新雷达产品的雷达传感器对准算法。下载188bet金宝搏他们需要一种方法,使系统工程师能够提供自己的生产C代码。

Solution

Delphi采用MATLAB和MATLAB编码器开发和实施雷达传感器对准算法。

Liang used MATLAB to analyze recorded sensor data captured from road testing a real vehicle. With huge amounts of testing data and the help of powerful MATLAB built-in functions, Liang realized and verified a radar sensor alignment algorithm that calculates sensor misalignment angles from raw radar detection and host vehicle speed. The algorithm computes the least squares solution to a system of linear equations. It also estimates the computed angle’s accuracy based on the residual of the least squares solution.

To verify the algorithm, Liang ran simulations using recorded sensor and vehicle data in MATLAB. He then used MATLAB scripts to process huge amounts of vehicle data to verify the accuracy of the sensor misalignment angle calculated by the algorithm.

他使用MATLAB编码器从算法生成C代码。他通过在MATLAB测试代码中调用MEX函数并将生成的代码的结果与原始MATLAB算法的结果进行比较,在几分钟内完成每个迭代来验证C代码。

最初,在ARM10处理器上运行的生成的C代码计算超过3毫秒的未对准角度。梁删除了冗余逻辑,组合循环,并在MATLAB代码中执行了其他优化,直到生成的代码在小于1毫秒的计算中完成了吞吐量要求。

在计划中,梁先生为软件集成团队提供了改进算法的已验证的C代码,以集成到生产系统中。

Delphi already uses this radar sensor alignment algorithm in active safety systems in production vehicles for several OEMs, with no reported defects.

Liang and his co-workers have used MATLAB and MATLAB Coder to design and implement several other production algorithms, including a target selection algorithm that uses fusion tracks information, camera vision objects, and host vehicle information to select appropriate targets for OEMs’ active safety features.

结果

  • Generated C code as efficient as handwritten C code for this algorithm. “The C code we generated with MATLAB Coder runs as fast as an earlier implementation of the algorithm that was hand-coded,” says Liang. “The generated code is also easy to integrate and free of defects—we never modify it.”

  • 开发时间减半. “I developed the algorithm in three weeks, leaving just one week to implement it in C and verify it,” says Liang. “MATLAB Coder enabled me to complete the project on schedule. Hand-coding by a software engineer would have required up to four more weeks.”

  • 算法在秒内容易验证和编码. “With our traditional approach, it could take a week for a software engineer to implement a change I had made to an algorithm,” says Liang. “With MATLAB and MATLAB Coder I can generate production C code myself in less than a minute, enabling me to evaluate new ideas quickly.”

Products Used

귀하의성공을소개하십시오。

고객사례공유공유