WO2018223714A1 - 用于智能驾驶辅助系统控制算法的快速原型开发验证系统及方法 - Google Patents

用于智能驾驶辅助系统控制算法的快速原型开发验证系统及方法 Download PDF

Info

Publication number
WO2018223714A1
WO2018223714A1 PCT/CN2018/074171 CN2018074171W WO2018223714A1 WO 2018223714 A1 WO2018223714 A1 WO 2018223714A1 CN 2018074171 W CN2018074171 W CN 2018074171W WO 2018223714 A1 WO2018223714 A1 WO 2018223714A1
Authority
WO
WIPO (PCT)
Prior art keywords
industrial computer
control algorithm
algorithm model
driving assistance
assistance system
Prior art date
Application number
PCT/CN2018/074171
Other languages
English (en)
French (fr)
Inventor
彭思崴
章健勇
Original Assignee
蔚来汽车有限公司
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 蔚来汽车有限公司 filed Critical 蔚来汽车有限公司
Publication of WO2018223714A1 publication Critical patent/WO2018223714A1/zh

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/40Transformation of program code
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs

Definitions

  • the present invention relates to the field of vehicle control, and more particularly to a rapid prototyping verification system and method for a smart driving assistance system control algorithm.
  • the development of vehicle controllers is usually divided into hardware development, low-level driver software development, and application layer control algorithm development.
  • the hardware is the carrier of the function implementation, and the underlying driver software is the medium, and finally the application layer control algorithm can realize the control of each actuator in the vehicle. Due to the long development cycle of the vehicle controller hardware, in order to shorten the development cycle of the entire vehicle controller and reduce the project risk, the rapid prototyping environment is often used to verify the application layer control algorithm during the hardware development period.
  • ADAS Advanced Driving Assistant System
  • the ADAS controller needs to connect multiple sensors such as camera, millimeter wave radar, laser radar, ultrasonic radar, inertial navigation, and each sensor will have a large amount of data to interact with the ADAS controller, and it will involve CAN, Ethernet
  • a variety of communication networks such as the network therefore, the ADAS control algorithm has the characteristics of large computational complexity, simultaneous interaction of multiple communication networks, processing of a large amount of communication data, and interaction of fewer actuators, so that the hardware requirements are very high. It is often necessary to use multiple rapid prototyping hardware to support algorithm verification, which not only makes this verification method expensive, but also makes it difficult to install wiring in the car.
  • the communication network supported by this type of prototype development hardware is very single, and it can only support CAN, Traditional vehicle communication networks such as K-line cannot support Ethernet; 2.
  • This type of prototype development hardware has a small number of communication network channels and cannot support such a large data interaction; 3.
  • This type of prototype development hardware uses a single chip to process data. The processing power is weak and cannot cope with a large number of floating point calculations in the ADAS control algorithm. The above three points determine that this type of prototyping hardware is not suitable for ADAS control algorithms.
  • the present invention has been made to overcome the above disadvantages or other disadvantages, and the technical solution adopted is as follows.
  • the present invention provides a rapid prototyping verification system for an intelligent driving assistance system control algorithm, comprising: an industrial computer on which an integrated tool chain assembly is configured, and the industrial computer is configured to utilize the integrated tool a chain component to construct a prototype environment for verifying the intelligent driving assistance system control algorithm; and at least one data interaction device detachably disposed on the industrial computer and configured to be driven by the industrial computer And providing the IPC with data related to verifying the intelligent driving assistance system control algorithm according to a specific transmission protocol, and outputting the result of execution of the intelligent driving assistance system control algorithm from the industrial computer to the outside, wherein
  • the integrated toolchain component includes: an algorithm modeling component configured to control a task between the smart driving assistance system and an operating system and the at least one data interaction device according to an operating system assigned by the industrial computer The data interaction method to build the corresponding control algorithm model; the model transformation component, Configuring to convert the control algorithm model to an executable file; and an algorithm execution component configured to run the executable file and output using data interacting with the at least one data interaction device to the industrial
  • the algorithm modeling component includes: a control task receiving unit configured to receive an assigned intelligent driving assistance system control task from an operating system of the industrial computer An interaction mode determining unit configured to determine a data interaction manner between the industrial computer and the at least one data interaction device corresponding to the specific transmission protocol; a model interface definition unit configured to Deriving a data interaction manner to define a conversion method between input and output data of the industrial computer and input and output data of the control algorithm model, and a format of input and output data of the control algorithm model; and an algorithm model creation unit, which is The control algorithm model is configured to be based on the intelligent driving assistance system control task and in accordance with the format of the input and output data of the control algorithm model.
  • the model conversion component includes: a first conversion unit configured to convert the control algorithm model into a code of a predetermined format; and a second conversion unit, It is configured to convert the code of the predetermined format into an executable file.
  • the first conversion unit is further configured to generate a calibration file prototype for calibrating the calibration variable information.
  • the industrial computer includes: a calibration file update unit configured to update the calibration file prototype.
  • the invention provides a rapid prototyping verification method for an intelligent driving assistance system control algorithm, comprising: step a, controlling an intelligent driving assistance system assigned by an operating system of an industrial computer, and the industrial computer and loading and unloading Setting a data interaction manner between the at least one data interaction device of the industrial computer to construct a corresponding control algorithm model; step b, converting the control algorithm model into an executable file; and step c, using the The data exchanged by the at least one data interaction device to the industrial computer to run the executable file and output a running result.
  • the step a includes: a control task receiving step, receiving an assigned intelligent driving assistance system control task from an operating system of the industrial computer; and an interaction mode determining step, Determining a data interaction manner between the industrial computer and the at least one data interaction device; a model interface defining step of defining input and output data of the industrial computer and input and output of the control algorithm model according to the data interaction manner a method of converting between data and a format of input and output data of the control algorithm model; and an algorithm model creating step of creating a location based on the intelligent driving assistance system control task and in accordance with a format of input and output data of the control algorithm model The control algorithm model.
  • the step b includes: a first converting step configured to convert the control algorithm model into a code of a predetermined format; and a second converting step It is configured to convert the code of the predetermined format into an executable file.
  • a calibration file prototype for calibrating the calibration variable information is also generated in the first conversion step.
  • the method further includes: a calibration file update step of updating the calibration file prototype.
  • the application layer control algorithm is developed by using a control algorithm model such as simulink component, dspace component, target link component, etc. to the executable file conversion component in the early stage, which not only conforms to the development habit of the domestic control algorithm engineer, but also can Maintain the development environment consistency of the previous prototype verification to the later mass production products;
  • a control algorithm model such as simulink component, dspace component, target link component, etc.
  • FIG. 1 is a block diagram of a prototype development verification system for an intelligent driving assistance system control algorithm in accordance with an embodiment of the present invention
  • FIG. 2 is a structural block diagram of an algorithm modeling component in an integrated toolchain component included in the prototype development verification system shown in FIG. 1;
  • FIG. 3 is a structural block diagram of a model conversion component in an integrated toolchain component included in the prototype development verification system shown in FIG. 1;
  • FIG. 4 is a flow chart of a prototype development verification method for an intelligent driving assistance system control algorithm according to an embodiment of the present invention
  • Figure 5 is a flow chart of step a in the prototype development verification method shown in Figure 4;
  • Figure 6 is a flow chart of step b in the prototype development verification method shown in Figure 4.
  • the prototype development verification system 100 is taken as an example, and mainly includes the industrial computer 101 and the data interaction device 102.
  • the industrial computer 101 is configured therein with an integrated tool chain assembly 1000.
  • the industrial computer 101 utilizes the integrated toolchain assembly 1000 to construct a prototype environment for verifying the intelligent driving assistance system control algorithm.
  • the data interaction device 102 can be disposed in the industrial computer 101 in a detachable manner.
  • the prototype development verification system 100 is shown in FIG. 1 to include only one data interaction device 102, those skilled in the art will appreciate that the number of data interaction devices 102 included in the prototype development verification system 100 is not limited thereto, and It can be two or more.
  • the data interaction device 102 is driven by the industrial computer 101 to provide data related to the verification of the intelligent driving assistance system control algorithm to the industrial computer 101 according to a specific transmission protocol, and the industrial computer 101 is The smart driving assistance system control algorithm is executed to output the results of the intelligent driving assistance system control algorithm execution to the outside (such as various external actuators) via the data interaction device 102.
  • the data interaction device 102 can be an expandable card, such as a CAN card or an Ethernet card, etc.
  • the specific transmission protocol can be a CAN protocol or an Ethernet protocol or the like.
  • the integrated tool chain component 1000 includes an algorithm modeling component 1001 , a model transformation component 1002 , and an algorithm execution component 1003 .
  • the algorithm modeling component 1001 constructs a corresponding control algorithm model according to the intelligent driving assistance system control task assigned by the operating system of the industrial computer 101 and the data interaction mode between the industrial computer 101 and the data interaction device 102.
  • the algorithm modeling component 1001 includes a control task receiving unit 1001A, an interaction mode determining unit 1001B, a model interface defining unit 1001C, and an algorithm model creating unit 1001D.
  • the control task receiving unit 1001A receives the assigned smart driving assistance system control task from the operating system of the industrial computer 101, and transmits the assigned intelligent driving assistance system control task to the algorithm model creating unit 1001D, wherein the task may be Periodically, for example, tasks that are executed every 10 ms or every 100 ms, the tasks may also be event-type, such as tasks triggered by signals defined according to human-computer interaction.
  • the interaction mode determining unit 1001B determines a data interaction manner between the industrial computer 101 and the data interaction device 102 corresponding to the specific transmission protocol described above.
  • the prototype development verification system 100 includes a data interaction device 102 and the data interaction device 102 is a Kvaser company CAN card. Accordingly, the interaction mode determination unit 1001B determines to pass between the industrial computer 101 and the CAN card 102. Interact with the CAN message mode corresponding to the CAN protocol.
  • the prototype development verification system 100 includes a plurality of data interaction devices 102 and a portion of the data interaction device 102 is a Kvaser company's CAN card and the remaining data interaction devices 102 are Ethernet cards, and accordingly, the interaction mode determination unit 1001B determines The industrial computer 101 and the CAN card 102 interact with each other through the CAN message mode corresponding to the CAN protocol, and the industrial computer 101 and the Ethernet card 102 interact with each other through an Ethernet frame mode corresponding to the Ethernet protocol.
  • the model interface definition unit 1001C defines a conversion method between the input and output data of the industrial computer 101 and the input and output data of the control algorithm model according to the data interaction manner determined by the interaction manner determining unit 1001B, and the format of the input and output data of the control algorithm model. And the format of the input and output data of the control algorithm model is transmitted to the algorithm model creating unit 1001D.
  • the algorithm model creating unit 1001D creates a control algorithm model based on the smart driving assistance system control task obtained from the control task receiving unit 1001A and in accordance with the format of the input and output data of the control algorithm model obtained from the model interface defining unit 1001C.
  • the control task receiving unit 1001A, the interaction mode determining unit 1001B, the model interface defining unit 1001C, and the algorithm model creating unit 1001D operate as described above, whereby the algorithm modeling component 1001 constructs a control algorithm model corresponding to the intelligent driving assistance system control task.
  • the control algorithm model is output to the model transformation component 1002.
  • the model transformation component 1002 converts the control algorithm model into an executable file.
  • the model conversion component 1002 includes a first conversion unit 1002A and a second conversion unit 1002B.
  • the first conversion unit 1002A converts the control algorithm model obtained from the algorithm modeling component 1001 into a code of a predetermined format.
  • the first conversion unit 1002A may be a simulink component.
  • the first conversion unit 1002A may be a dspace component.
  • the first conversion unit 1002A may also be a target link component.
  • the code of the predetermined format may be a code of the C++ format, or may be a code of the C format or the like.
  • the second conversion unit 1002B converts the code of the predetermined format generated by the first conversion unit 1002A into an executable file.
  • the second conversion unit 1002B can be a C++ development component.
  • the second conversion unit 1002B may be a C development component.
  • the first conversion unit 1002A is a simulink component
  • the code of the above-described predetermined format is a code of the C++ format
  • the second conversion unit 1002B is a C++ development component.
  • the simulink component 1002A converts the control algorithm model obtained from the algorithm modeling component 1001 into C++ format code according to a preset code generation rule
  • the C++ development component 1002B creates a new C++ development project and formats the C++ format.
  • the code is loaded into a new development project for compilation to generate an executable file.
  • the first conversion unit 1002A generates a calibration file prototype for calibrating the calibration variable information in addition to the code of the predetermined format as described above.
  • the calibration variable information herein may be, but is not limited to, a memory address of the calibration variable
  • the calibration file prototype herein may be, but is not limited to, an a2l file used for vehicle calibration work.
  • the industrial computer 101 includes, in addition to the integrated toolchain assembly 1000, a calibration file update unit that updates the prototype file. This is because the calibration variable information (such as the memory address of the calibration variable) is updated during the process of generating the executable file by the integrated toolchain component 1000, and thus the updated calibration variable information (such as the calibration variable) needs to be calibrated accordingly. Memory address).
  • the algorithm execution component 1003 uses the data related to the verification smart driving assistance system control algorithm provided from the data interaction device 102 to the industrial computer 101 to run the executable file generated by the model conversion component 1002 and output the operation result. This verifies the intelligent driving assistance system control algorithm corresponding to the assigned intelligent driving assistance system control task.
  • FIG. 4 is a flow chart of a prototype development verification method for an intelligent driving assistance system control algorithm in accordance with an embodiment of the present invention.
  • the prototype development verification method S100 corresponding to the prototype development verification system 100 will be described below as an example.
  • step a the corresponding control algorithm model is constructed according to the intelligent driving assistance system control task assigned by the operating system of the industrial computer 101 and the data interaction mode between the industrial computer 101 and the data interaction device 102.
  • the data interaction device 102 can be disposed in the industrial computer 101 in a detachable manner, and the number of the data interaction devices 102 disposed on the industrial computer 101 and interacting with the data may be one or multiple.
  • the data interaction device 102 can be an expandable card, such as a CAN card or an Ethernet card.
  • the data interaction mode with the industrial computer 101 can be a CAN message mode or an Ethernet frame. Ways, etc.
  • step a includes a control task receiving step a1, an interaction mode determining step a2, a model interface defining step a3, and an algorithm model creating step a4.
  • the assigned intelligent driving assistance system control task is received from the operating system of the industrial computer 101, wherein the task may be periodic, for example, tasks performed every 10 ms or every 100 ms, and the tasks may also be It is event type, such as a task triggered by a signal defined by human-computer interaction.
  • the prototype development verification system 100 includes a data interaction device 102 and the data interaction device 102 is a Kvaser company CAN card, and accordingly, in step a2, it is determined that the IPC 101 and the CAN card 102 pass between Interact with the CAN message mode corresponding to the CAN protocol.
  • the prototype development verification system 100 includes a plurality of data interaction devices 102 and a portion of the data interaction device 102 is a Kvaser company's CAN card and the remaining data interaction devices 102 are Ethernet cards, and accordingly, in step a2, a determination is made.
  • the industrial computer 101 and the CAN card 102 interact with each other through the CAN message mode corresponding to the CAN protocol
  • the industrial computer 101 and the Ethernet card 102 interact with each other through an Ethernet frame mode corresponding to the Ethernet protocol.
  • step a3 a conversion method between the input and output data of the industrial computer 101 and the input and output data of the control algorithm model and the input and output data of the control algorithm model are defined according to the data interaction manner determined in the above step a2. format.
  • step a4 the control algorithm model is created based on the intelligent driving assistance system control task received in the above step a1 and in accordance with the format of the input and output data of the control algorithm model defined in the above step a3.
  • step a1 is performed between, or step a1 may be performed between step a3 and step a4, or step a1 may be performed in parallel with step a2, and so on.
  • step b the built control algorithm model is converted into an executable file.
  • step b includes a first conversion step b1 and a second conversion step b2.
  • step b1 the control algorithm model built in the above step a is converted into a code of a predetermined format.
  • the conversion can be performed by a simulink component.
  • the conversion can be performed by a dspace component.
  • the conversion may also be performed by a target link component.
  • the code of the predetermined format may be a code of the C++ format, or may be a code of the C format or the like.
  • step b2 the code of the predetermined format generated in the above step b1 is converted into an executable file.
  • the conversion can be performed by a C++ development component.
  • the conversion can be performed by a C development component.
  • the simulink component converts the control algorithm model built in the above step a into C++ format code according to a preset code generation rule, and the C++ development component creates a new C++ development project therein, and the C++ format is The code is loaded into the newly created development project for compilation to generate an executable file.
  • a prototype file for calibrating the calibration variable information is generated.
  • the calibration variable information herein may be, but is not limited to, a memory address of the calibration variable
  • the calibration file prototype herein may be, but is not limited to, an a2l file used for vehicle calibration work.
  • the prototype development verification method S100 further includes a calibration file update step of updating the above-described calibration file prototype. This is because the calibration variable information (such as the memory address of the calibration variable) is updated during the process of generating the executable file in the above step b, and thus the updated calibration variable information (such as the memory of the calibration variable) needs to be calibrated accordingly. address).
  • step c the generated executable file is run using the data interacted with from the data interaction device 102 to the industrial computer 101 and the running result is output, thereby verifying the assigned The intelligent driving assistance system control algorithm corresponding to the intelligent driving assistance system control task.

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Automation & Control Theory (AREA)
  • Control By Computers (AREA)
  • Testing And Monitoring For Control Systems (AREA)

Abstract

本发明涉及用于智能驾驶辅助系统控制算法的快速原型开发验证系统及方法。所述原型开发验证系统包括工控机和至少一个数据交互设备。在所述工控机上配置有集成工具链组件,所述集成工具链组件包括:算法建模组件、模型转换组件、以及算法执行组件。

Description

用于智能驾驶辅助系统控制算法的快速原型开发验证系统及方法 技术领域
本发明涉及车辆控制领域,更具体地涉及用于智能驾驶辅助系统控制算法的快速原型开发验证系统及方法。
背景技术
车载控制器的开发通常分为硬件开发、底层驱动软件开发、应用层控制算法开发。其中硬件为功能实现的载体,底层驱动软件为媒介,最终使得应用层控制算法能够实现对车辆中的各个执行器的控制。由于车载控制器硬件开发周期较长,所以,为了缩短整个车载控制器的开发周期并且降低项目风险,在硬件开发时期,往往会使用快速原型环境来验证应用层控制算法。
随着近两年智能驾驶辅助系统(Advanced Driving Assistant System,以下简称ADAS)的普及,各大厂商都在开发ADAS专用控制器,相应地,用于在项目前期验证其中运行的控制算法的快速原型环境的需求也越来越多。
由于ADAS控制器需要连接诸如摄像头、毫米波雷达、激光雷达、超声波雷达、惯导之类的多个传感器,并且每个传感器都会有大量数据与ADAS控制器进行交互,而且会涉及到CAN、以太网等多种通讯网络,所以,ADAS控制算法具有大运算量、多个通讯网络的同时交互、大量通讯数据的处理、较少执行器的交互等特点,这样一来,对硬件要求非常高,往往需要使用多个快速原型硬件才能支撑算法验证,不仅使得这种验证方式成本昂贵,而且会难以在车内安装布线。
如果将普遍用于验证汽车电子控制算法的原型开发硬件应用于ADAS控制算法的验证,那么存在以下几个问题:1.该类原型开发硬件能支持的通讯网络非常单一,其仅能支持CAN、K线等传统车辆通讯网络而无法支持以太网;2.该类原型开发硬件的通讯网络通道数量少,支持不了如此庞大的数据交互;3.该类原型开发硬件是利用单片机来处理数据,其处理能力较弱,无法应对ADAS控制 算法中的大量的浮点计算。以上3点决定了该类原型开发硬件不适合ADAS控制算法。
另一方面,如果采用专门用于验证ADAS控制算法的原型开发硬件,那么存在价格昂贵的问题,其高额的成本决定了无法在多辆样车上安装验证ADAS算法。
另外,也有开发人员在工控机上进行ADAS控制算法的开发和验证,但是由于没有很好的工具支持,基本上是采用编写手工代码的方式来进行验证工作,这种方式不仅不符合国内控制算法工程师的开发习惯,而且验证完的控制算法也很难直接应用于将来的量产嵌入式产品。
发明内容
本发明是为了克服上述缺点或其它缺点而完成的,所采用的技术方案如下。
本发明提供一种用于智能驾驶辅助系统控制算法的快速原型开发验证系统,包括:工控机,在所述工控机上配置有集成工具链组件,并且所述工控机被配置成利用所述集成工具链组件来构建用于验证所述智能驾驶辅助系统控制算法的原型环境;以及至少一个数据交互设备,其以可装卸的方式设置于所述工控机,并且被配置成通过被所述工控机驱动来按照特定的传输协议向所述工控机提供与验证所述智能驾驶辅助系统控制算法相关的数据,以及将来自所述工控机的所述智能驾驶辅助系统控制算法执行的结果输出至外部,其中,所述集成工具链组件包括:算法建模组件,其被配置成根据由所述工控机的操作系统分配的智能驾驶辅助系统控制任务和所述工控机与所述至少一个数据交互设备之间的数据交互方式来搭建相应的控制算法模型;模型转换组件,其被配置成将所述控制算法模型转换为可执行文件;以及算法执行组件,其被配置成使用从所述至少一个数据交互设备向所述工控机交互的数据来运行所述可执行文件以及输出运行结果。
进一步地,在根据本发明的快速原型开发验证系统中,所述算法建模组件包括:控制任务接收单元,其被配置成从所述工控机的操作系统接收被分配的智能驾驶辅助系统控制任务;交互方式确定单元,其被配置成确定所述工控机与所述至少一个数据交互设备之间的与所述特定的传输协议对应的数据交互方式;模 型接口定义单元,其被配置成根据所述数据交互方式来定义所述工控机的输入输出数据与所述控制算法模型的输入输出数据之间的转换方法以及所述控制算法模型的输入输出数据的格式;以及算法模型创建单元,其被配置成基于所述智能驾驶辅助系统控制任务并且按照所述控制算法模型的输入输出数据的格式来创建所述控制算法模型。
进一步地,在根据本发明的快速原型开发验证系统中,所述模型转换组件包括:第一转换单元,其被配置成将所述控制算法模型转换成预定格式的代码;以及第二转换单元,其被配置成将所述预定格式的代码转换成可执行文件。
进一步地,在根据本发明的快速原型开发验证系统中,所述第一转换单元还被配置成生成用于对标定变量信息进行标定的标定文件原型。
进一步地,在根据本发明的快速原型开发验证系统中,所述工控机包括:标定文件更新单元,其被配置成对所述标定文件原型进行更新。
本发明提供一种用于智能驾驶辅助系统控制算法的快速原型开发验证方法,包括:步骤a,根据由工控机的操作系统分配的智能驾驶辅助系统控制任务和所述工控机与以可装卸的方式设置于所述工控机的至少一个数据交互设备之间的数据交互方式来搭建相应的控制算法模型;步骤b,将所述控制算法模型转换为可执行文件;以及步骤c,使用从所述至少一个数据交互设备向所述工控机交互的数据来运行所述可执行文件并输出运行结果。
进一步地,在根据本发明的快速原型开发验证方法中,所述步骤a包括:控制任务接收步骤,从所述工控机的操作系统接收被分配的智能驾驶辅助系统控制任务;交互方式确定步骤,确定所述工控机与所述至少一个数据交互设备之间的数据交互方式;模型接口定义步骤,根据所述数据交互方式来定义所述工控机的输入输出数据与所述控制算法模型的输入输出数据之间的转换方法以及所述控制算法模型的输入输出数据的格式;以及算法模型创建步骤,基于所述智能驾驶辅助系统控制任务并且按照所述控制算法模型的输入输出数据的格式来创建所述控制算法模型。
进一步地,在根据本发明的快速原型开发验证方法中,所述步骤b包括:第一转换步骤,其被配置成将所述控制算法模型转换成预定格式的代码;以及第二转换步骤,其被配置成将所述预定格式的代码转换成可执行文件。
进一步地,在根据本发明的快速原型开发验证方法中,在所述第一转换步骤中还生成用于对标定变量信息进行标定的标定文件原型。
进一步地,在根据本发明的快速原型开发验证方法中,还包括:标定文件更新步骤,对所述标定文件原型进行更新。
相对于现有技术,本发明的有益效果如下:
1)通过利用工控机和以可装卸的方式设置于所述工控机的诸如可扩展板卡之类的至少一个数据交互设备来构建用于智能驾驶辅助系统控制算法的原型开发验证系统,从而使得通讯网络资源不受限制,能够快速且低成本地增加CAN、以太网等网络通道;
2)通过在前期使用诸如simulink组件、dspace组件、target link组件之类的控制算法模型向可执行文件的转换组件来进行应用层控制算法的开发,不仅符合国内控制算法工程师的开发习惯,也能保持前期原型验证到后期量产产品的开发环境一致性;
3)通过集成工具链,从而减少手工代码,通过自动化方式降低整个集成过程的操作难度,降低了对开发工程师的要求,提高了整个算法开发测试效率。
附图说明
图1是根据本发明的一实施方式的用于智能驾驶辅助系统控制算法的原型开发验证系统的框图;
图2是图1所示的原型开发验证系统所包括的集成工具链组件中的算法建模组件的结构框图;
图3是图1所示的原型开发验证系统所包括的集成工具链组件中的模型转换组件的结构框图;
图4是根据本发明的一实施方式的用于智能驾驶辅助系统控制算法的原型开发验证方法的流程图;
图5是图4所示的原型开发验证方法中的步骤a的流程图;以及
图6是图4所示的原型开发验证方法中的步骤b的流程图。
具体实施方式
以下将结合附图对本发明涉及的用于智能驾驶辅助系统控制算法的原型开发验证系统及方法作进一步的详细描述。需要注意的是,以下的具体实施方式 是示例性而非限制的,其旨在提供对本发明的基本了解,并不旨在确认本发明的关键或决定性的要素或限定所要保护的范围。
图1是根据本发明的一实施方式的用于智能驾驶辅助系统控制算法的原型开发验证系统的框图。以原型开发验证系统100为例进行说明,其主要地包括工控机101和数据交互设备102。
工控机101在其中配置有集成工具链组件1000。该工控机101利用该集成工具链组件1000来构建用于验证智能驾驶辅助系统控制算法的原型环境。
数据交互设备102可以以可装卸的方式设置于工控机101。尽管在图1中示出了原型开发验证系统100包括仅一个数据交互设备102,但是本领域技术人员应当意识到,原型开发验证系统100中所包括的数据交互设备102的数目不限于此,也可以是两个或两个以上。
在图1所示的原型开发验证系统100中,数据交互设备102通过被工控机101驱动来按照特定的传输协议向工控机101提供与验证智能驾驶辅助系统控制算法相关的数据,工控机101在运行该智能驾驶辅助系统控制算法之后经由数据交互设备102向外部(诸如,各个外部执行器)输出该智能驾驶辅助系统控制算法执行的结果。在一个实施例中,数据交互设备102可以是一种可扩展板卡,诸如CAN卡或者以太网卡等,相应地,特定的传输协议可以是CAN协议或者以太网协议等。
进一步地,如图1所示,集成工具链组件1000包括:算法建模组件1001、模型转换组件1002、以及算法执行组件1003。
算法建模组件1001根据由工控机101的操作系统分配的智能驾驶辅助系统控制任务和工控机101与数据交互设备102之间的数据交互方式来搭建相应的控制算法模型。
具体地,如图2所示,算法建模组件1001包括:控制任务接收单元1001A、交互方式确定单元1001B、模型接口定义单元1001C以及算法模型创建单元1001D。
控制任务接收单元1001A从工控机101的操作系统接收被分配的智能驾驶辅助系统控制任务,并将该被分配的智能驾驶辅助系统控制任务传输给算法模型创建单元1001D,其中,所述任务可以是周期性的,例如每10ms或每100ms执 行一次的任务,所述任务也可以是事件型的,例如由根据人机交互定义好的信号触发的任务。
另一方面,交互方式确定单元1001B确定工控机101与数据交互设备102之间的与上述特定的传输协议对应的数据交互方式。在一个实施例中,原型开发验证系统100包括一个数据交互设备102并且该数据交互设备102为Kvaser公司的CAN卡,相应地,交互方式确定单元1001B确定在工控机101与CAN卡102之间通过与CAN协议对应的CAN报文方式进行交互。在另一个实施例中,原型开发验证系统100包括多个数据交互设备102并且部分数据交互设备102为Kvaser公司的CAN卡而其余数据交互设备102为以太网卡,相应地,交互方式确定单元1001B确定在工控机101与CAN卡102之间通过与CAN协议对应的CAN报文方式进行交互而在工控机101与以太网卡102之间通过与以太网协议对应的以太网帧方式进行交互。
模型接口定义单元1001C根据由交互方式确定单元1001B确定的数据交互方式来定义工控机101的输入输出数据与控制算法模型的输入输出数据之间的转换方法以及控制算法模型的输入输出数据的格式,并且将该控制算法模型的输入输出数据的格式传输给算法模型创建单元1001D。在一个实施例中,所述转换方法可以是:控制算法模型的输入输出数据=工控机的输入输出数据*增益系数+偏移系数。
算法模型创建单元1001D基于从控制任务接收单元1001A获得的智能驾驶辅助系统控制任务并且按照从模型接口定义单元1001C获得的控制算法模型的输入输出数据的格式来创建控制算法模型。
通过控制任务接收单元1001A、交互方式确定单元1001B、模型接口定义单元1001C以及算法模型创建单元1001D如上述那样工作,由此,算法建模组件1001搭建与智能驾驶辅助系统控制任务对应的控制算法模型并将该控制算法模型输出至模型转换组件1002。
模型转换组件1002将该控制算法模型转换为可执行文件。
具体地,如图3所示,模型转换组件1002包括第一转换单元1002A和第二转换单元1002B。
第一转换单元1002A将从算法建模组件1001获得的控制算法模型转换成 预定格式的代码。在一个实施例中,第一转换单元1002A可以是simulink组件。可替换地,在另一个实施例中,第一转换单元1002A可以是dspace组件。还可替换地,在又一个实施例中,第一转换单元1002A也可以是target link组件。此外,预定格式的代码可以是C++格式的代码,或者,可以是C格式的代码等等。
第二转换单元1002B将由第一转换单元1002A生成的预定格式的代码转换成可执行文件。在一个实施例中,第二转换单元1002B可以是C++开发组件。可替换地,在另一个实施例中,第二转换单元1002B可以是C开发组件。
例如,设想第一转换单元1002A是simulink组件、上述预定格式的代码是C++格式的代码、第二转换单元1002B是C++开发组件的情况。在该情况下,simulink组件1002A按照预先设置的代码生成规则将从算法建模组件1001获得的控制算法模型转换成C++格式的代码,C++开发组件1002B新建一个C++的开发工程,并将该C++格式的代码加载到新建的开发工程中进行编译,进而生成可执行文件。
虽然未图示,但是,在一些优选实施例中,第一转换单元1002A除了如上述那样生成预定格式的代码以外,还生成用于对标定变量信息进行标定的标定文件原型。其中,此处的标定变量信息可以是但不限于标定变量的内存地址,此处的标定文件原型可以是但不限于用于车辆标定工作的a2l文件。相应地,在这些优选实施例中,工控机101除了包括集成工具链组件1000以外,还包括对上述标定文件原型进行更新的标定文件更新单元。这是因为,在集成工具链组件1000生成可执行文件的过程中标定变量信息(诸如,标定变量的内存地址)会发生更新,因而需要相应地标定更新后的标定变量信息(诸如,标定变量的内存地址)。
返回至图1,算法执行组件1003使用从数据交互设备102向工控机101提供的与验证智能驾驶辅助系统控制算法相关的数据来运行由模型转换组件1002生成的可执行文件以及输出运行结果,由此验证与所分配的智能驾驶辅助系统控制任务对应的智能驾驶辅助系统控制算法。
图4是根据本发明的一实施方式的用于智能驾驶辅助系统控制算法的原型开发验证方法的流程图。下面以原型开发验证系统100对应的原型开发验证方法S100为例进行说明。
首先,在步骤a中,根据由工控机101的操作系统分配的智能驾驶辅助系 统控制任务和工控机101与数据交互设备102之间的数据交互方式来搭建相应的控制算法模型。
数据交互设备102可以以可装卸的方式被设置于工控机101,而且设置于工控机101并且与之进行数据交互的数据交互设备102的数目可以是一个,也可以是多个。在一个实施例中,数据交互设备102可以是一种可扩展板卡,诸如CAN卡或者以太网卡等,相应地,与工控机101之间的数据交互方式可以是CAN报文方式或者以太网帧方式等。
具体地,如图5所示,步骤a包括:控制任务接收步骤a1、交互方式确定步骤a2、模型接口定义步骤a3、以及算法模型创建步骤a4。
在步骤a1中,从工控机101的操作系统接收被分配的智能驾驶辅助系统控制任务,其中,所述任务可以是周期性的,例如每10ms或每100ms执行一次的任务,所述任务也可以是事件型的,例如由根据人机交互定义好的信号触发的任务。
接着,在步骤a2中,确定工控机101与数据交互设备102之间的数据交互方式。在一个实施例中,原型开发验证系统100包括一个数据交互设备102并且该数据交互设备102为Kvaser公司的CAN卡,相应地,在步骤a2中,确定在工控机101与CAN卡102之间通过与CAN协议对应的CAN报文方式进行交互。在另一个实施例中,原型开发验证系统100包括多个数据交互设备102并且部分数据交互设备102为Kvaser公司的CAN卡而其余数据交互设备102为以太网卡,相应地,在步骤a2中,确定在工控机101与CAN卡102之间通过与CAN协议对应的CAN报文方式进行交互而在工控机101与以太网卡102之间通过与以太网协议对应的以太网帧方式进行交互。
接着,在步骤a3中,根据在上述步骤a2中确定出的数据交互方式来定义工控机101的输入输出数据与控制算法模型的输入输出数据之间的转换方法以及控制算法模型的输入输出数据的格式。在一个实施例中,所述转换方法可以是:控制算法模型的输入输出数据=工控机的输入输出数据*增益系数+偏移系数。
最后,在步骤a4中,基于在上述步骤a1中接收的智能驾驶辅助系统控制任务并且按照在上述步骤a3中所定义的控制算法模型的输入输出数据的格式来创建控制算法模型。
需要注意的是,虽然在图5中示出了按照步骤a1、步骤a2、步骤a3、步骤a4的顺序来执行搭建控制算法模型的过程,但是,不限于此,也可以在步骤a2与步骤a3之间执行步骤a1,或者,也可以在步骤a3与步骤a4之间执行步骤a1,或者,还可以与步骤a2并行地执行步骤a1,等等。
返回至图4,在搭建好相应的控制算法模型之后,在步骤b中,将所搭建的控制算法模型转换为可执行文件。
具体地,如图6所示,步骤b包括:第一转换步骤b1和第二转换步骤b2。
在步骤b1中,将在上述步骤a中搭建的控制算法模型转换成预定格式的代码。在一个实施例中,所述转换可以由simulink组件执行。可替换地,在另一个实施例中,所述转换可以由dspace组件执行。还可替换地,在又一个实施例中,所述转换也可以由target link组件执行。此外,预定格式的代码可以是C++格式的代码,或者,可以是C格式的代码等等。
接着,在步骤b2中,将在上述步骤b1中所生成的预定格式的代码转换成可执行文件。在一个实施例中,所述转换可以由C++开发组件执行。可替换地,在另一个实施例中,所述转换可以由C开发组件执行。
例如,设想第一转换由simulink组件执行、上述预定格式的代码是C++格式的代码、第二转换由C++开发组件执行的情况。在该情况下,simulink组件按照预先设置的代码生成规则将在上述步骤a中搭建的控制算法模型转换成C++格式的代码,C++开发组件在其中新建一个C++的开发工程,并将该C++格式的代码加载到新建的开发工程中进行编译,进而生成可执行文件。
虽然未图示,但是,在一些优选实施例中,在步骤b1中,除了如上述那样生成预定格式的代码以外,还生成用于对标定变量信息进行标定的标定文件原型。其中,此处的标定变量信息可以是但不限于标定变量的内存地址,此处的标定文件原型可以是但不限于用于车辆标定工作的a2l文件。相应地,在这些优选实施例中,原型开发验证方法S100还包括对上述标定文件原型进行更新的标定文件更新步骤。这是因为,在上述步骤b中生成可执行文件的过程中标定变量信息(诸如,标定变量的内存地址)会发生更新,因而需要相应地标定更新后的标定变量信息(诸如,标定变量的内存地址)。
返回至图4,在生成可执行文件之后,在步骤c中,使用从数据交互设备 102向工控机101交互的数据来运行所生成的可执行文件并输出运行结果,由此验证与所分配的智能驾驶辅助系统控制任务对应的智能驾驶辅助系统控制算法。
以上示例主要说明了本发明的用于智能驾驶辅助系统控制算法的原型开发验证系统及方法。尽管只对其中一些本发明的具体实施方式进行了描述,但是本领域普通技术人员应当了解,本发明可以在不偏离其主旨与范围内以许多其它的形式实施。因此,所展示的示例与实施方式被视为示意性的而非限制性的,在不脱离如所附各权利要求所定义的本发明精神及范围的情况下,本发明可能涵盖各种的修改与替换。

Claims (10)

  1. 一种用于智能驾驶辅助系统控制算法的快速原型开发验证系统,其特征在于,包括:
    工控机,在所述工控机上配置有集成工具链组件,并且所述工控机被配置成利用所述集成工具链组件来构建用于验证所述智能驾驶辅助系统控制算法的原型环境;以及
    至少一个数据交互设备,其以可装卸的方式设置于所述工控机,并且被配置成通过被所述工控机驱动来按照特定的传输协议向所述工控机提供与验证所述智能驾驶辅助系统控制算法相关的数据,以及将来自所述工控机的所述智能驾驶辅助系统控制算法执行的结果输出至外部,
    其中,所述集成工具链组件包括:算法建模组件,其被配置成根据由所述工控机的操作系统分配的智能驾驶辅助系统控制任务和所述工控机与所述至少一个数据交互设备之间的数据交互方式来搭建相应的控制算法模型;模型转换组件,其被配置成将所述控制算法模型转换为可执行文件;以及算法执行组件,其被配置成使用从所述至少一个数据交互设备向所述工控机交互的数据来运行所述可执行文件以及输出运行结果。
  2. 根据权利要求1所述的快速原型开发验证系统,其特征在于,
    所述算法建模组件包括:
    控制任务接收单元,其被配置成从所述工控机的操作系统接收被分配的智能驾驶辅助系统控制任务;
    交互方式确定单元,其被配置成确定所述工控机与所述至少一个数据交互设备之间的与所述特定的传输协议对应的数据交互方式;
    模型接口定义单元,其被配置成根据所述数据交互方式来定义所述工控机的输入输出数据与所述控制算法模型的输入输出数据之间的转换方法以及所述控制算法模型的输入输出数据的格式;以及
    算法模型创建单元,其被配置成基于所述智能驾驶辅助系统控制任务并且按照所 述控制算法模型的输入输出数据的格式来创建所述控制算法模型。
  3. 根据权利要求1所述的快速原型开发验证系统,其特征在于,所述模型转换组件包括:
    第一转换单元,其被配置成将所述控制算法模型转换成预定格式的代码;以及
    第二转换单元,其被配置成将所述预定格式的代码转换成可执行文件。
  4. 根据权利要求3所述的快速原型开发验证系统,其特征在于,所述第一转换单元还被配置成生成用于对标定变量信息进行标定的标定文件原型。
  5. 根据权利要求4所述的快速原型开发验证系统,其特征在于,所述工控机包括:标定文件更新单元,其被配置成对所述标定文件原型进行更新。
  6. 一种用于智能驾驶辅助系统控制算法的快速原型开发验证方法,其特征在于,包括:
    步骤a,根据由工控机的操作系统分配的智能驾驶辅助系统控制任务和所述工控机与以可装卸的方式设置于所述工控机的至少一个数据交互设备之间的数据交互方式来搭建相应的控制算法模型;
    步骤b,将所述控制算法模型转换为可执行文件;以及
    步骤c,使用从所述至少一个数据交互设备向所述工控机交互的数据来运行所述可执行文件并输出运行结果。
  7. 根据权利要求6所述的快速原型开发验证方法,其特征在于,
    所述步骤a包括:
    控制任务接收步骤,从所述工控机的操作系统接收被分配的智能驾驶辅助系统控制任务;
    交互方式确定步骤,确定所述工控机与所述至少一个数据交互设备之间的数据交互方式;
    模型接口定义步骤,根据所述数据交互方式来定义所述工控机的输入输出数据与所述控制算法模型的输入输出数据之间的转换方法以及所述控制算法模型的输入输出数据的格式;以及
    算法模型创建步骤,基于所述智能驾驶辅助系统控制任务并且按照所述控制算法模型的输入输出数据的格式来创建所述控制算法模型。
  8. 根据权利要求6所述的快速原型开发验证方法,其特征在于,所述步骤b包括:
    第一转换步骤,其被配置成将所述控制算法模型转换成预定格式的代码;以及
    第二转换步骤,其被配置成将所述预定格式的代码转换成可执行文件。
  9. 根据权利要求8所述的快速原型开发验证方法,其特征在于,在所述第一转换步骤中还生成用于对标定变量信息进行标定的标定文件原型。
  10. 根据权利要求9所述的快速原型开发验证方法,其特征在于,还包括:标定文件更新步骤,对所述标定文件原型进行更新。
PCT/CN2018/074171 2017-06-07 2018-01-25 用于智能驾驶辅助系统控制算法的快速原型开发验证系统及方法 WO2018223714A1 (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201710422229.8A CN109240694B (zh) 2017-06-07 2017-06-07 用于智能驾驶辅助系统控制算法的快速原型开发验证系统及方法
CN201710422229.8 2017-06-07

Publications (1)

Publication Number Publication Date
WO2018223714A1 true WO2018223714A1 (zh) 2018-12-13

Family

ID=64566387

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2018/074171 WO2018223714A1 (zh) 2017-06-07 2018-01-25 用于智能驾驶辅助系统控制算法的快速原型开发验证系统及方法

Country Status (2)

Country Link
CN (1) CN109240694B (zh)
WO (1) WO2018223714A1 (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110435562A (zh) * 2019-09-06 2019-11-12 深圳市英博超算科技有限公司 汽车模块化硬件系统

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117082010B (zh) * 2023-10-17 2024-02-06 北京汤谷软件技术有限公司 一种基于大数据的芯片原型验证报文传输管理方法及系统

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1111483A1 (en) * 1998-07-06 2001-06-27 Toyota Jidosha Kabushiki Kaisha Method and apparatus for assisting development of program for vehicle
CN103941594A (zh) * 2014-04-10 2014-07-23 北京工业大学 一种电动车辆电、液制动快速控制原型
CN106371813A (zh) * 2015-07-23 2017-02-01 广州汽车集团股份有限公司 一种基于Simulink的电动汽车电机控制器软件生成方法

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103092082B (zh) * 2013-01-07 2015-08-12 河南科技大学 一种驾驶员在环车辆性能优化仿真试验系统
EP2801872B1 (de) * 2013-05-06 2018-06-06 dSPACE digital signal processing and control engineering GmbH Testeinrichtung zum Test eines virtuellen Steuergeräts
CN104360682A (zh) * 2014-11-07 2015-02-18 北京汽车研究总院有限公司 车身灯光控制系统功能测试实验平台
CN105808216A (zh) * 2014-12-29 2016-07-27 联创汽车电子有限公司 车载控制软件系统策略代码与底层代码集成方法

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1111483A1 (en) * 1998-07-06 2001-06-27 Toyota Jidosha Kabushiki Kaisha Method and apparatus for assisting development of program for vehicle
CN103941594A (zh) * 2014-04-10 2014-07-23 北京工业大学 一种电动车辆电、液制动快速控制原型
CN106371813A (zh) * 2015-07-23 2017-02-01 广州汽车集团股份有限公司 一种基于Simulink的电动汽车电机控制器软件生成方法

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110435562A (zh) * 2019-09-06 2019-11-12 深圳市英博超算科技有限公司 汽车模块化硬件系统

Also Published As

Publication number Publication date
CN109240694A (zh) 2019-01-18
CN109240694B (zh) 2023-03-07

Similar Documents

Publication Publication Date Title
CN104142676B (zh) 用于测试虚拟控制仪的测试装置
CN114787838A (zh) 软件定义的制造/组装系统
Muthukumar et al. A model-based approach for design and verification of Industrial Internet of Things
EP1784694A4 (en) SYSTEM AND METHOD FOR RAPID PROTOTYPING AND IMPLEMENTATION OF A DISTRIBUTED SCALABLE TASK CONTROL ARCHITECTURE
WO2018223714A1 (zh) 用于智能驾驶辅助系统控制算法的快速原型开发验证系统及方法
WO2020127895A1 (en) A method and system for generating an artificial intelligence model
WO2021002059A1 (ja) 制御システム、設定装置およびコンピュータプログラム
CN112751905B (zh) 多个装置之间的任务的分配
CN115327950A (zh) 控制器的仿真测试方法、装置、电子设备及存储介质
US11899432B2 (en) Industrial automation project library cross sharing
Nice et al. Middleware for a heterogeneous cav fleet
Nicolas et al. Model-based development of an fpga encoder simulator for real-time testing of elevator controllers
Oftadeh et al. Unified framework for rapid prototyping of linux based real-time controllers with matlab and simulink
CN115378761B (zh) 一种基于PLC的EtherCAT主站系统快速实现方法
Bucher et al. Automated assessment of E/E-architecture variants using an integrated model-and simulation-based approach
US20100211361A1 (en) System and Method for Modeling Signal Flows in Automation Technology Equipment
US20210325855A1 (en) Methods and apparatus for time-sensitive networking coordinated transfer learning in industrial settings
Caprita et al. Improvement of automotive sensors by migrating AUTOSAR end-to-end communication protection library into hardware
Porter et al. An experimental model-based rapid prototyping environment for high-confidence embedded software
CN110546618A (zh) 开发辅助装置
Ernst et al. Unmanned vehicle controller design, evaluation and implementation: from matlab to printed circuit board
EP3547125A1 (en) Methods of configuring an automation system
EP1489531A1 (en) Simulation system and computer-implemented method for simulation and verifying a control system
JP2008519346A (ja) 相互シミュレーションの装置および方法
Imanishi et al. Optimization-based robust architecture design for autonomous driving system

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 18814103

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 18814103

Country of ref document: EP

Kind code of ref document: A1