WO2018008145A1 - 制御装置及び制御方法 - Google Patents

制御装置及び制御方法 Download PDF

Info

Publication number
WO2018008145A1
WO2018008145A1 PCT/JP2016/070249 JP2016070249W WO2018008145A1 WO 2018008145 A1 WO2018008145 A1 WO 2018008145A1 JP 2016070249 W JP2016070249 W JP 2016070249W WO 2018008145 A1 WO2018008145 A1 WO 2018008145A1
Authority
WO
WIPO (PCT)
Prior art keywords
unit
auxiliary device
csmw
information
data
Prior art date
Application number
PCT/JP2016/070249
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 三菱電機株式会社
Priority to JP2018525910A priority Critical patent/JP6559350B2/ja
Priority to PCT/JP2016/070249 priority patent/WO2018008145A1/ja
Publication of WO2018008145A1 publication Critical patent/WO2018008145A1/ja

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/10Program control for peripheral devices

Definitions

  • the present invention relates to a control device for connecting an auxiliary device and performing control based on information obtained from the auxiliary device, and a control method for controlling the auxiliary device.
  • Patent Document 1 includes a vehicle data communication unit that transmits and receives vehicle data via a vehicle LAN (Local Area Network) device, a storage unit that stores vehicle data and a conversion table, and a vehicle-specific format based on the conversion table.
  • a vehicle data conversion unit that converts certain vehicle data into a practical data format that can be used by an application, and converts vehicle data in a practical data format calculated by the application into vehicle data in a vehicle-specific format based on a conversion table;
  • An in-vehicle terminal provided with vehicle information I / F for an application to access vehicle data is described.
  • the in-vehicle terminal described in Patent Document 1 converts vehicle data from a device such as a sensor into practical data that can be used by an application using a conversion table.
  • a conversion table for converting vehicle data of the newly installed device into data in a practical data format must be prepared separately. I must. Creating a conversion table that converts vehicle data into data in a practical data format is complicated. Furthermore, such a conversion table must be created for each vehicle data. For this reason, in the conventional example, when an auxiliary device such as a sensor is newly installed, a lot of labor is required in order to be able to use the auxiliary device.
  • an object of the present invention is to make it possible to easily use a new auxiliary device when a new auxiliary device such as a sensor is installed.
  • a control device is a control device that connects an auxiliary device and performs control based on information obtained from the auxiliary device, and indicates a variable and an API name for operating the auxiliary device.
  • a driver unit that has a configuration file and generates symbol information in which variables and API symbols necessary for operating the auxiliary device are described; and when the auxiliary device is connected, the driver unit Obtaining a configuration file, referring to the symbol information from the driver unit, confirming the consistency between the configuration file and the symbol information, and confirming the consistency between the configuration file and the symbol information. If confirmed, the variables described in the symbol information and Use PI, characterized in that it comprises a middleware unit for operating said auxiliary device.
  • a control method is a control method for controlling a connected auxiliary device, and a configuration for indicating a variable and an API name for operating the auxiliary device when the auxiliary device is connected.
  • Obtains a configuration file generates symbol information in which variables and API symbols necessary for operating the auxiliary device are generated, confirms consistency between the configuration file and the symbol information, and configures the configuration
  • the auxiliary device is operated using the variable and API described in the symbol information.
  • auxiliary device such as a sensor
  • an absorption layer that absorbs input from the new auxiliary device
  • Simple auxiliary equipment can be used easily.
  • FIG. 1 is a block diagram illustrating an example of a configuration of a vehicle control system according to Embodiments 1 to 4.
  • FIG. 5 is a block diagram showing an example of a configuration of an F / E board, a B / E board, and a navigation board in the first to fourth embodiments.
  • FIG. 5 is a schematic diagram showing an example in which auxiliary equipment in Embodiments 1 to 4 is mounted on an automobile.
  • 6 is a schematic diagram showing an example of a peripheral software stack of CSMW in Embodiments 1 to 4.
  • FIG. 6 is a schematic diagram showing an example of a configuration file referred to by CSMW in Embodiments 1 to 4.
  • FIG. FIG. 10 is a schematic diagram for explaining CFG file delivery in the first to fourth embodiments.
  • (A) And (B) is the schematic which shows an example of each hardware constitutions of a F / E board, a B / E board, and a navigation board.
  • Embodiment 1 it is a state chart figure which shows an example of the process which passes data from a low-order function part to a high-order function part via CSMW.
  • Embodiment 2 it is a state chart figure which shows an example of the process which passes apparatus control data from a high-order function part to a low-order function part via CSMW.
  • Embodiment 3 it is a state chart figure which shows an example of the process which passes apparatus data from a low-order function part to a high-order function part via CSMW.
  • Embodiment 4 it is a state chart figure which shows an example of the process which passes apparatus control data from a high-order function part to a low-order function part via CSMW.
  • FIG. 1 is a block diagram showing an example of a configuration of a vehicle control system 100 according to Embodiments 1 to 4.
  • the vehicle control system 100 includes an auxiliary device 1, a front-end board (hereinafter referred to as F / E board) 110, a back-end board (hereinafter referred to as B / E board) 140 that performs vehicle behavior determination and the like, GPS ( And a navigation board 150 that operates based on input data from the Global Positioning System (13).
  • the F / E board 110 and the B / E board 140 constitute a control device 105 that controls the vehicle.
  • the control device 105 connects the auxiliary device 1 and performs control based on information obtained from the auxiliary device 1.
  • the F / E board 110 includes, as auxiliary devices 1, a monocular camera 2, a stereo camera 3, a lateral sonar 4, a millimeter wave radar 5, a sonar 6, and a LIDAR (Laser Imaging Detection and Ranging) 7. It is connected.
  • the auxiliary device 1 includes cameras such as a monocular camera 2 and a stereo camera 3, and sensors such as side sonar 4, millimeter wave radar 5, sonar 6, and LIDAR 7.
  • the monocular camera 2 and the stereo camera 3 take an image and acquire the video data.
  • the side sonar 4 performs measurement using analog audio (sound wave) in order to determine whether an obstacle such as another vehicle is approaching from a side of the vehicle body to a long distance of about 15 m.
  • An analog-to-digital converter (hereinafter referred to as AD / DA) 8 necessary for exchanging data is provided between the side sonar 4 and the F / E board 110.
  • the millimeter wave radar 5 measures the distance and direction to the obstacle by emitting radio waves around the automobile and measuring the reflected wave from the obstacle, and acquires information such as the distance and direction to the obstacle. .
  • the millimeter wave radar 5 includes a millimeter wave radar main body that acquires data and a millimeter wave radar ECU that exchanges the data.
  • the sonar 6 detects an obstacle around the vehicle using sound waves.
  • LIDAR 7 detects obstacles around the vehicle using laser light.
  • the F / E board 110 exchanges data with the V2P module 9, the V2I module 10, the GPS receiver 11, and the INS (Internal Navigation System) 12.
  • V2P is an abbreviation for Vehicle to Person
  • the V2P module 9 detects pedestrians around the vehicle and acquires pedestrian trend information indicating the detection results.
  • V2I is an abbreviation for Vehicle to Infrastructure
  • the V2I module 10 acquires roadside device information indicating a communication result between a vehicle and a roadside device set as an infrastructure.
  • the V2P module 9 and the V2I module 10 are collectively referred to as a V2X module.
  • the GPS receiver 11 receives various GPS information.
  • the INS 12 is an on-board navigation device for determining a position by obtaining a moving direction, a speed and a distance from the acceleration of a moving automobile without depending on radio waves or geomagnetism from a ground navigation assistance facility.
  • the B / E board 140 exchanges data with the F / E board 110 via an SPI (Serial Peripheral Interface).
  • SPI Serial Peripheral Interface
  • FIG. 2 is a block diagram showing an example of the configuration of the F / E board 110, the B / E board 140, and the navigation board 150 in the first to fourth embodiments.
  • the monocular camera 2 and the stereo camera 3 transmit the video data to the sensor fusion 112 via the customizable middleware (hereinafter referred to as CSMW) 111 of the F / E board 110 by LVDS (Low Voltage Different Signaling).
  • LVDS is a short-distance digital wired transmission technology and a relatively high-speed differential interface with small amplitude and low power consumption.
  • the LVDS is used for transmission of data such as video data from a graphics card to a video monitor.
  • the measurement result in the side sonar 4 is digitally modulated by the AD / DA 8 and transmitted to the sensor fusion 112 via the CSMW 111.
  • the CSMW 111 is also referred to as a middleware unit.
  • the F / E board 110 is provided with a driver unit 106 for operating the auxiliary device 1.
  • the driver unit 106 holds a configuration file (referred to as a CFG file) indicating variables for operating the auxiliary device 1 and an API (Application Programming Interface) name. Further, the driver unit 106 generates symbol information in which variables and API symbols necessary for operating the auxiliary device 1 are described according to an instruction from the CSMW 111, and provides the generated symbol information to the CSMW 111. Although only one driver unit 106 is shown in FIG. 2, it is assumed that the driver unit 106 is provided in each auxiliary device 1.
  • the CSMW 111 acquires the CFG file from the driver unit 106 and refers to the symbol information from the driver unit 106 to confirm the consistency between the CFG file and the symbol information. . For example, it is confirmed whether or not all addresses corresponding to variables and API names described in the CFG file are described in the symbol information.
  • the CSMW 111 The auxiliary device 1 is operated using the variables and API described in the information.
  • the CAN (Controller Area Network) 101 is a communication path used for data transmission between connected devices designed in consideration of noise resistance enhancement.
  • the CAN 101 is widely used for transmission of device control information, and is used for transmission of information such as information exchange with a sensor, engine or brake, and failure diagnosis information in an automobile.
  • the millimeter wave radar 5 transmits information such as the distance and direction to the obstacle to the sensor fusion 112 via the CAN 101 and the CSMW 111.
  • Information from the sonar 6 is transmitted to the sensor fusion 112 via the CAN 101 and the CSMW 111.
  • the V2P module 9 transmits the roadside device information to the coordinate conversion unit 113 via the CAN 101 and the CSMW 111.
  • the V2I module 10 transmits pedestrian trend information to the dynamic map unit 114 via the CAN 101 and the CSMW 111.
  • the Ethernet (registered trademark) 102 is one of computer network standards, but in the case of in-vehicle use, the Ethernet (registered trademark) 102 is employed as a communication network for transmitting data of sensors for monitoring the periphery of the automobile. Information from LIDAR 7 is transmitted to sensor fusion 112 via Ethernet 102 and CSMW 111.
  • Information from the GPS receiver 11 and the INS 12 is transmitted to the locator unit 115 via the CSMW 111.
  • the navigation board 150 includes an HMI (Human Machine Interface) 151 and a navigation unit 152.
  • the HMI 151 is an input unit that receives an instruction input from a user.
  • the navigation unit 152 operates based on a serial signal from the GPS 13 and information from the HMI 51, and exchanges data with the F / E board 110.
  • a signal from the GPS 13 is transmitted to the navigation unit 152 on the navigation board 150 via the serial communication cable 104.
  • various data from the auxiliary device 1 such as video data from the monocular camera 2, video data from the stereo camera 3, radio wave information from the millimeter wave radar 5, and sound wave information from the sonar 6, etc. , And transmitted to the sensor fusion 112 via the CSMW 111.
  • Various data from the auxiliary device 1 are synchronized by the sensor fusion 112 as integrated data and coordinated with each other.
  • the synchronized data is transmitted from the sensor fusion 112 to the map generation unit 116 which is a higher-level application.
  • Data transmitted from the V2P module 9 to the coordinate conversion unit 113 via the CSMW 111 is transmitted from the coordinate conversion unit 113 to the map generation unit 116.
  • Data transmitted from the V2I module 10 to the dynamic map unit 114 via the CSMW 111 is transmitted from the dynamic map unit 114 to the map generation unit 116 and the lane level route generation unit 117 as map information.
  • Video data of the monocular camera 2 is also input to the locator unit 115 via the LVDS and CSMW 111, and data from the GPS receiver 11 and INS 12 is also input to the locator unit 115. Further, road obstacle information from the map generation unit 116 is input to the locator unit 115.
  • the data transmitted to the locator unit 115 is transmitted to the map generation unit 116, the lane level route generation unit 117, and the navigation unit 152 as own vehicle position information.
  • Guidance information from the navigation unit 152 is input to the lane level route generation unit 117 via the Ethernet 102.
  • ECUs (Electronic Control Units) 160 own vehicle speed information, own vehicle acceleration information, steering angle information, accelerator / brake information, and winker operation information are input to the driving operation characteristic unit 118 via the CAN 101.
  • the vehicle speed information is also input to the map generation unit 116 via the CAN 101.
  • 3D map information is transmitted to the blind spot detection unit 119a of the risk map generation unit 119 and the movement prediction unit 120, and the 3D map information is transmitted to the HMI 151 of the navigation board 150 via the Ethernet 102. Is transmitted.
  • the exercise model database 121 updates the information in the database with the update information from the exercise model update unit 122 and inputs the exercise model information to the movement prediction unit 120.
  • the movement prediction unit 120 generates movement prediction information from the 3D map information from the map generation unit 116 and the exercise model information from the exercise model database 121, and inputs this to the risk estimation unit 119b of the risk map generation unit 119.
  • the lane level route generation unit 117 inputs map information and lane level route information to the path generation unit 123.
  • the driving operation characteristic unit 118 exchanges driving operation characteristic information with the driving operation characteristic database 124, and inputs the updated driving operation characteristic information to the path generation unit 123.
  • the path generation unit 123 inputs path information to the HMI 151 of the navigation board 150 via the Ethernet 102. Further, the path generation unit 123 inputs the path information to the determination unit 141 of the B / E board 140 via the SPI communication path 103.
  • the HMI 151 acquires F / E failure information and B / E failure information from the CAN 101, and transmits an operation mode and emergency stop information to the CAN 101.
  • the determination unit 141 of the B / E board 140 acquires the vehicle position information, road gradient information, and curve curvature information via the CAN.
  • the determination unit 141 transmits the vehicle control information and the B / E failure information to the CAN 101 and inputs the vehicle control information and the B / E failure information to the vehicle control determination unit 142.
  • the vehicle control determination unit 142 acquires the operation mode and F / E failure information from the CAN 101 and acquires emergency control information from the emergency control unit 143 that has acquired sensing information from the CAN 101.
  • FIG. 3 is a schematic diagram showing an example in which the auxiliary device 1 according to the first to fourth embodiments is mounted on an automobile.
  • a vehicle control system 100 is mounted on the automobile MO.
  • the monocular camera 2 is attached to the front center and the rear center of the automobile MO, and recognizes front and rear objects, respectively.
  • the stereo camera 3 is attached to the upper part of the windshield of the automobile MO and recognizes an object ahead.
  • the side sonar 4 is attached to the side of the automobile MO and recognizes the right side and the left side, respectively.
  • the millimeter wave radar 5 is attached to the front left and right of the automobile MO, and scans the front left and right respectively.
  • the sonar 6 is attached to the front left and right of the automobile MO, and scans the front left and right respectively.
  • the LIDAR 7 is attached to the center of the roof of the automobile MO and scans all around the automobile MO.
  • FIG. 4 is a schematic diagram showing an example of the peripheral software stack of CSMW 111 in the first to fourth embodiments.
  • description will be made assuming that the monocular camera 2, the stereo camera 3, the millimeter wave radar 5, the sonar 6, and the LIDAR 7 are connected to the F / E board 110.
  • Video data of the monocular camera 2 is input to the attribute determination unit 2a via the LVDS and the CSMW 111.
  • the video data of the stereo camera 3 is input to the stereo distance measuring unit 3a via LVDS.
  • Information from the stereo distance measurement unit 3a is input to the first object extraction unit 3b and the camera-based first road feature extraction unit 3c via the CSMW 111.
  • Information from the millimeter wave radar 5 is input to the first distance measuring unit 5 a via the CAN 101.
  • Information from the first distance measuring unit 5a is input to the second object extracting unit 5b via the CSMW 111.
  • Information from the sonar 6 is input to the second distance measuring unit 6 a via the CAN 101.
  • Information from the second distance measuring unit 6a is input to the third object extracting unit 6b via the CSMW 111.
  • Information from the LIDAR 7 is input to the third distance measuring unit 7 a via the Ethernet 102.
  • Information from the third distance measuring unit 7a is input to the fourth object extracting unit 7b and the laser-based second road feature extracting unit 7c via the CSMW 111.
  • the third object extraction unit 6b, the third distance measurement unit 7a, the fourth object extraction unit 7b, the second road feature extraction unit 7c, the same object composition unit 112a, and the cooperative sensing unit 112b are collectively referred to as function units.
  • the CSMW 111 When passing information from the monocular camera 2 to the attribute determination unit 2a via the CSMW 111, passing information from the stereo distance measurement unit 3a to the first object extraction unit 3b and the first road feature extraction unit 3c via the CSMW 111.
  • passing information from the first ranging unit 5a to the second object extracting unit 5b via the CSMW 111 passing information from the second ranging unit 6a to the third object extracting unit 6b via the CSMW 111, and third
  • the CSMW 111 gives a time stamp to each information.
  • the attribute determination unit 2a inputs object attribute information to the same object composition unit 112a in the sensor fusion 112 via the CSMW 111.
  • the first object extraction unit 3 b inputs relative position information, size information, and relative speed information to the same object synthesis unit 112 a in the sensor fusion 112 via the CSMW 111.
  • the first road feature extraction unit 3 c inputs the vehicle position information and the vehicle attitude information to the cooperative sensing unit 112 b in the sensor fusion 112 via the CSMW 111.
  • the second object extraction unit 5 b inputs relative position information, size information, and relative speed information to the same object composition unit 112 a in the sensor fusion 112 via the CSMW 111.
  • the third object extraction unit 6 b inputs relative position information, size information, and relative speed information to the same object composition unit 112 a in the sensor fusion 112 via the CSMW 111.
  • the fourth object extraction unit 7 b inputs relative position information, size information, and relative speed information to the same object synthesis unit 112 a in the sensor fusion 112 via the CSMW 111.
  • the second road feature extraction unit 7 c inputs the vehicle position information and the vehicle attitude information to the cooperative sensing unit 112 b in the sensor fusion 112 via the CSMW 111.
  • the same object composition unit 112 a in the sensor fusion 112 passes the relative position information, size information, relative speed information, and object attribute information collected from the lower function unit to the upper application 130 of the sensor fusion 112.
  • the higher-level application 130 corresponds to the map generation unit 116 in FIG.
  • the cooperative sensing unit 112b in the sensor fusion 112 passes the own vehicle position information and the own vehicle posture information collected from the lower function unit to the upper application 130 of the sensor fusion 112.
  • FIG. 5 is a diagram showing an example of a CFG file referred to by the CSMW 111 in the first to fourth embodiments.
  • One CFG file is required for one auxiliary device 1 connected to the F / E board 110.
  • a CFG file 170 shown in FIG. 5 is used when the millimeter wave radar 5 is connected.
  • the model name of the millimeter wave radar 5 to be connected is MW-Rader, and the corresponding CFG file name is “MW-Rader.ini”.
  • the CFG file 170 is divided into several blocks in a data area called a section.
  • a section is defined by a character string enclosed in [], and includes a function section whose name is defined in advance and a data content definition section having an arbitrary name.
  • the function section has a name used in common regardless of which auxiliary device 1 is connected.
  • [INTERFACE], [STRUCTURE], and [DATA_SPEC] are function sections.
  • the data content definition section needs to be coded for each connected auxiliary device 1, and indicates the name of a variable appearing on the code.
  • [Timestamp], [Velocity], and [Range Distance] are data content definition sections.
  • the interface information section [INTERFACE] is first described in the CFG file 170.
  • “SensorName” indicates the name of the auxiliary device 1 to be connected.
  • the name “MW-Rader” of the millimeter wave radar 5 is defined.
  • “UpIndMode” indicates a data notification method when the driver unit of the auxiliary device 1 passes data to the higher-level function unit.
  • the data notification method is defined by an integer of “0” to “2”. In the example of FIG. 5, it is shown that when “0” is selected and data is generated, the higher-order function unit is notified one by one.
  • the upper functional unit is, for example, the CSMW 111.
  • IFType indicates the type of interface when data is transferred from the auxiliary device 1 to the higher-level function unit.
  • the interface type is defined by an integer of “0” to “6”.
  • “0” is “IPC (InterProcess Communication)”
  • “1” is “memory”
  • “2” is “CAN”
  • “3” is “Ethernet”
  • “4” is “LVDS”.
  • "5" is “USB (Universal Serial Bus)”
  • “6” is “UART (Universal Asynchronous Receiver Transmitter)”.
  • “2” is selected, indicating that communication is performed using the CAN 101.
  • “CanMsgID” indicates “Can ID” used when the driver unit of the auxiliary device 1 filters data.
  • “CanMsgID” is defined because “CAN” is selected in “IFType”, and when another type is selected in “IFType”, a value is set in an item corresponding to the selected type. Defined.
  • “DnModPath” indicates the path name where the driver object body to be used is located. From the path indicated by this path name, the CSMW 111 reads the execution file of the auxiliary device 1.
  • “DnApiOpen” indicates the function name of the Open process of the transmission path used by the driver unit. “DnApiClose” indicates the function name of the Close process of the transmission line used by the driver unit. “DnApiRead” indicates the function name of the transmission path reading process used by the driver unit. “DnApiWrite” indicates the function name of the write processing of the transmission path used by the driver unit. “DnApioctrl” indicates the function name of the property setting process of the transmission path used by the driver unit. “DnApiSeek” indicates the function name of the Seek processing of the transmission path used by the driver unit.
  • function names (API names) on the driver code are defined.
  • the CSMW 111 recognizes the “function name on the driver code” that follows the “DnApiOpen”, “DnApiClose”, “DnApiRead”, “DnApiWrite”, “DnApiioctrl”, or “DnApiSeek” format. Thereafter, the CSMW 111 recognizes the function name and the address assigned to it from the symbol information in the filter setting. Thereby, the CSMW 111 can call a function in the driver unit.
  • the [STRUCTURE] section is an upper provision data structure definition section, and defines the structure of data to be passed from the auxiliary device 1 to the CSMW 111.
  • “Timestamp (time stamp)”, “Velocity (speed)”, “Range Distance (object distance)”, “RangeRate (object speed)” and “Angle ()” are members of data passed from the auxiliary device 1 to the CSMW 111.
  • Object angle) each of which consists of 32 bits.
  • the [DATA_SPEC] section shows details of the members defined in the [STRUCTURE] section.
  • “F” indicates the variable itself, and here, the value of the variable name “_TIMESTAMP_” indicates the time stamp value.
  • “IdF” indicates the type of interface from which data is acquired, and in the example of FIG. 5, data is acquired from the CAN 101.
  • “Id” indicates a CAN ID, and indicates that the data transmitted with the CAN ID “Ox730” stores the speed.
  • “F” indicates the variable itself as described above, and “# 2” indicates that the second byte of the data is the value of the variable.
  • the CFG file 170 describes information such as the path of the S / W execution file of the auxiliary device 1, the definition of the API group to be used, the declaration and definition of the member variables.
  • FIG. 6 is a schematic diagram for explaining delivery of the CFG file 170 in the first to fourth embodiments.
  • the driver unit 106 of the auxiliary device 1 provides the CFG file 170 to the CSMW 111 when the auxiliary device 1 is connected.
  • the CSMW 111 refers to the CFG file 170 so that the upper function unit 131 can control the auxiliary device 1.
  • a part or all of each of the F / E board 110, the B / E board 140, and the navigation board 150 described above includes, for example, a memory 180 and a memory 180 as shown in FIG. And a processor 181 such as a CPU (Central Processing Unit) that executes a program stored in the computer.
  • a program may be provided through a network, or may be provided by being recorded on a recording medium.
  • each of the F / E board 110, the B / E board 140, and the navigation board 150 may be a single circuit, a composite circuit, or a program as shown in FIG. Or a processor programmed in parallel, an ASIC (Application Specific Integrated Circuits), or an FPGA (Field Programmable Gate Array).
  • ASIC Application Specific Integrated Circuits
  • FPGA Field Programmable Gate Array
  • driver unit 106 shown in FIG. 6 can also be configured by the memory 180 and the processor 181 or the processing circuit 182.
  • FIG. 8 is a state chart diagram illustrating an example of a process of passing data from the lower function unit 133 to the upper function unit 131 via the CSMW 111 in the first embodiment.
  • the CSMW 111 inputs / outputs device data to / from the function unit or driver unit.
  • device data notification that provides data to the functional unit
  • device data reception that takes data from the device driver abstraction layer
  • the API both a synchronous method and an asynchronous method are provided.
  • the first embodiment an example in which device data is transferred from the lower function unit 133 to the higher function unit 131 in the synchronous method will be described.
  • the CSMW 111 When passing device data from the lower-level function unit 133 to the higher-level function unit 131 in a synchronous manner, the CSMW 111 first acquires device configuration information acquisition processing in order to grasp the configurations of the various auxiliary devices 1 connected to the F / E board 110. I do. At this time, a CFG file 170 is prepared for each connected auxiliary device 1, and the lower-level function unit 133 loads the corresponding CFG file 170 (S10).
  • the higher-level function unit 131 calls the device registration process in which the CSMW 111 provides the entity (S11), and the CSMW 111 receives the device registration message (registration command) (S12).
  • the lower-level function unit 133 calls the filter setting process in which the CSMW 111 presents the interface specifications (S13), and acquires symbol information in which member variables and API symbols necessary for device operation are described (S14).
  • the symbol information is information in which variables and API names are associated with their addresses.
  • the CSMW 111 acquires this symbol information (S15), compares the acquired symbol information with the loaded CFG file 170, and can grasp member variables and APIs necessary for device operation. For example, the CSMW 111 compares the variable and API name grasped in the CFG file 170 with the variable and API name included in the symbol information, and if they match, the variable and API are retrieved from the corresponding address. Will be able to call.
  • the higher function unit 131 calls the device start process in which the CSMW 111 provides the entity (S16), and the CSMW 111 receives the device start message (start command) (S17).
  • the lower-level function unit 133 calls a device reception start process in which the CSMW 111 presents the interface specifications (S18), and performs a process necessary for starting data reception from the auxiliary device 1 (S19).
  • the CSMW 111 performs a FIFO buffer generation process and generates an upstream FIFO buffer 134 (S20).
  • the lower functional unit that has performed the device reception start process receives the device data DD, performs the filtering process (S21), and pushes the device data DD into the buffer 135 (S22).
  • the CSMW 111 calls a device data read process (S23), PULLs and reads the device data DD that has been pushed into the buffer 135 of the lower-level function unit, and the CSMW 111 takes in the device data DD (S24).
  • the CSMW 111 that has captured the desired device data DD performs data conversion processing (S25), and pushes the device data DD into the upstream FIFO buffer 134 generated in step S20 (S26).
  • the host functional unit 131 performs polling of device data read processing provided by the CSMW 111 (S27), and pulls it from the upstream FIFO buffer 134 to acquire device data DD (S28).
  • the vehicle control system 100 operates various auxiliary devices 1 such as the monocular camera 2, the stereo camera 3, the millimeter wave radar 5, the sonar 6, or the LIDAR 7 mounted on the automobile MO, and these various auxiliary devices 1. And a CSMW 111 that transfers data from a lower function unit to a higher function unit.
  • the various auxiliary devices 1 are mounted on the automobile MO, they are not always replaced with the same device, and may be replaced with devices of different versions or devices of different companies with different specifications.
  • the millimeter wave radar 5 may be replaced with a millimeter wave radar manufactured by another company.
  • the CSMW 111 simply reads the CFG file at the time of activation, and the sensor fusion of the CSMW 111 and its upper level. Without changing 112, the upper function unit can acquire the device data from the lower function unit in a synchronous manner.
  • the auxiliary device 1 can be replaced simply by renovating only the lower-level functional unit corresponding to the driver unit of the auxiliary device 1, and the upper application of the CSMW 111 does not need to be changed. It is only necessary to develop a functional part corresponding to the part. For this reason, the vehicle control system 100 can be commercialized as an application support package.
  • the vehicle control system 100 according to the second embodiment includes an F / E board 110, various auxiliary devices 1 connected to the F / E board 110, a B / E board 140, and a navigation board 150. 1 is configured.
  • the vehicle control system 100 according to the second embodiment is different from the first embodiment in the processing.
  • FIG. 9 is a state chart diagram illustrating an example of processing for passing device control data (control information) from the higher-level function unit 131 to the lower-level function unit 133 via the CSMW 111 in the second embodiment.
  • the CSMW 111 inputs / outputs device control data between the functional unit and the device driver.
  • control data reception that receives device control data from the higher-level function unit 131 and passes it to the lower-level function unit 133, and device control data that has been converted into a common data format inside the CSMW 111 is transferred to the function unit or device driver abstraction layer.
  • the CSMW 111 provides an asynchronous method for the higher-level function unit 131 and provides both a synchronous method and an asynchronous method for the lower-level function unit 133.
  • An example of passing from 131 to the lower function unit 133 will be described.
  • the device control data is a small amount and a low frequency, so that the data delivery method is only the data guarantee method.
  • the CSMW 111 acquires device configuration information in order to grasp the configuration of the various auxiliary devices 1 connected to the F / E board 110. Process. At this time, the CFG file 170 is prepared for each connected auxiliary device 1, and the lower-level function unit 133 loads the corresponding CFG file 170 (S30).
  • the upper functional unit 131 calls the device registration process for which the CSMW 111 provides an entity (S31), and the CSMW 111 receives the device registration message (S32).
  • the lower-level function unit 133 calls the filter setting process in which the CSMW 111 presents the interface specifications (S33), and acquires symbol information in which member variables and API symbols necessary for device operation are described (S34).
  • the CSMW 111 acquires this symbol information (S35), compares the acquired symbol information with the loaded CFG file 170, and can grasp member variables and APIs necessary for device operation.
  • the higher function unit 131 calls the device start process in which the CSMW 111 provides an entity (S36), and the CSMW 111 receives the device start message (S37).
  • the lower-level function unit 133 calls the device reception start process in which the CSMW 111 presents the interface specifications (S38), and performs processing necessary to start data reception from the auxiliary device 1 (S39).
  • the host function unit 131 performs a device control data write process for which the CSMW 111 provides an entity, and the CSMW 111 receives a message (write command) for writing the device control data DCD (S40).
  • the CSMW 111 that has received such a message performs data conversion processing (S41), and pushes the device control data DCD into the downlink FIFO buffer 136 (S42).
  • the lower-level function unit 133 calls a device control data read process (S43), and the CSMW 111 pulls and reads the device control data DCD pushed into the downlink FIFO buffer 136 (S44), and lower-levels the device control data DCD.
  • the function unit 133 polls and takes in (S45).
  • the various auxiliary devices 1 are mounted on the automobile MO, but are not always replaced with the same device, and are replaced with different versions of devices or devices of other companies with different specifications.
  • the CSMW 111 simply reads the CFG file at the time of activation, and the CSMW 111 and its upper sensor fusion 112 are connected.
  • the lower function unit 133 can acquire the device control data from the upper function unit 131 in a synchronous manner without changing.
  • the auxiliary device 1 can be replaced only by renovating the lower function unit 133 corresponding to the driver unit of the auxiliary device 1, and the upper application of the CSMW 111 does not need to be changed. It is only necessary to develop a functional part corresponding to the part. For this reason, the vehicle control system 100 can be commercialized as an application support package.
  • the vehicle control system 100 in Embodiment 3 includes an F / E board 110, various auxiliary devices 1 connected to the F / E board 110, a B / E board 140, and a navigation board 150. 1 is configured.
  • the vehicle control system 100 according to the third embodiment is different from the first embodiment in the processing.
  • FIG. 10 is a state chart diagram illustrating an example of processing for passing device data from the lower-level function unit 133 to the higher-level function unit 131 via the CSMW 111 in the third embodiment.
  • the CSMW 111 inputs / outputs device data between the functional unit and the device driver. Specifically, there are two types, “device data notification” that provides data to the functional unit and “device data reception” that takes data from the device driver abstraction layer, but the functions are the same.
  • the CSMW 111 provides both an asynchronous method and an asynchronous method as an API. In the third embodiment, an example will be described in which device data is passed from the lower function unit 133 to the upper function unit 131 in an asynchronous method.
  • a sequential notification type for notifying each time data is acquired and a periodic type for periodically notifying data received at a plurality of timings are prepared.
  • a data guarantee type in which the data entity is copied to the memory prepared by the data provider and delivered
  • a speed priority type in which the address of the memory secured by the data provider is delivered.
  • the provided data lasts until the buffer in the CSMW 111 circulates upon reception of the device data.
  • the CSMW 111 In passing device data from the lower function unit 133 to the upper function unit 131 in an asynchronous manner, first, the CSMW 111 first acquires device configuration information acquisition processing in order to grasp the configurations of the various auxiliary devices 1 connected to the F / E board 110. I do. At this time, the CFG file 170 is prepared for each connected auxiliary device 1, and the lower-level function unit 133 loads the corresponding CFG file 170 (S50).
  • the upper functional unit 131 calls the device registration process for which the CSMW 111 provides an entity (S51), and the CSMW 111 receives the device registration message (S52).
  • the lower-level function unit 133 calls the filter setting process in which the CSMW 111 presents the interface specifications (S53), and acquires symbol information in which member variables and API symbols necessary for device operation are described (S54).
  • the CSMW 111 acquires the symbol information (S55), compares the acquired symbol information with the loaded CFG file 170, and can grasp member variables and APIs necessary for device operation.
  • the higher function unit 131 calls the device start process in which the CSMW 111 provides the entity (S56), and the CSMW 111 receives the device start message (S57).
  • the lower-level function unit 133 calls a device reception start process in which the CSMW 111 presents the interface specifications (S58), and performs a process necessary for starting data reception from the auxiliary device 1 (S59).
  • the CSMW 111 performs a FIFO buffer generation process and generates an upstream FIFO buffer 134 (S60).
  • the lower function unit 133 that has performed the device reception start process in step S59 receives the device data and performs a filtering process (S61).
  • the CSMW 111 calls a callback notification process for providing the entity, and the CSMW 111 acquires the device data DD from the lower-level function unit 133 (S62).
  • the CSMW 111 having acquired the desired device data DD performs data conversion processing (S63), and pushes the device data DD into the upstream FIFO buffer 134 generated in step S60 (S64).
  • the higher-level function unit 131 performs a callback notification process in which the CSMW 111 presents the interface specifications, and pulls from the upstream FIFO buffer 134 to acquire the device data DD (S65).
  • the following effect (3) can be obtained in addition to the effects (1) and (2).
  • the various auxiliary devices 1 are mounted on the automobile MO, they are not always replaced with the same device, and may be replaced with different versions of devices or devices of other companies with different specifications.
  • the structure and API for operating the auxiliary device 1 are defined in the CFG file 170 of the replaced auxiliary device 1, the CSMW 111 only reads the CFG file 170 at the time of activation, and the upper level of the CSMW 111 and its upper level.
  • the upper function unit 131 can acquire device data from the lower function unit 133 in an asynchronous manner.
  • the auxiliary device 1 can be replaced only by renovating only the lower function unit 133 corresponding to the driver unit of the auxiliary device 1, and the upper application of the CSMW 111 does not need to be changed. It is only necessary to develop a functional part corresponding to the part. For this reason, the vehicle control system 100 can be commercialized as an application support package.
  • Embodiment 4 the vehicle control system 100 according to the fourth embodiment will be described.
  • the vehicle control system 100 according to the fourth embodiment includes an F / E board 110, various auxiliary devices 1 connected to the F / E board 110, a B / E board 140, and a navigation board 150. 1 is configured.
  • the vehicle control system 100 according to the fourth embodiment is different from the first embodiment in the processing.
  • FIG. 11 is a state chart diagram illustrating an example of processing for passing device control data from the higher-order function unit 131 to the lower-order function unit 133 via the CSMW 111 in the fourth embodiment.
  • the CSMW 111 inputs / outputs device control data between the functional unit and the device driver. Specifically, the CSMW 111 receives device control data from the function unit and passes it to the function unit, and outputs the function control data converted into the common data format inside the CSMW 111 to the function unit and the device driver abstraction layer. There are two "control data output" functions, but the functions are the same.
  • the CSMW 111 provides an asynchronous method to the upper function unit 131 and provides both a synchronous method and an asynchronous method to the lower function unit 133.
  • the upper function unit 131 transmits device control data in an asynchronous method. Will be described.
  • device control data is assumed to be a small amount and a low frequency unlike the case of device data, the data delivery method is only the sequential method for the asynchronous method.
  • the CSMW 111 When passing device control data from the higher-level function unit 131 to the lower-level function unit 133 in an asynchronous manner, the CSMW 111 first acquires device configuration information in order to grasp the configurations of the various auxiliary devices 1 connected to the F / E board 110. Process. At this time, the CFG file 170 is prepared for each connected auxiliary device 1, and the lower-level function unit 133 loads the corresponding CFG file 170 (S70).
  • the upper functional unit 131 calls the device registration process for which the CSMW 111 provides an entity (S71), and the CSMW 111 receives the device registration message (S72).
  • the lower function unit 133 calls the filter setting process in which the CSMW 111 presents the interface specifications (S73), and acquires symbol information in which member variables and API symbols necessary for device operation are described (S74).
  • the CSMW 111 acquires the symbol information (S75), compares the acquired symbol information with the loaded CFG file 170, and can grasp member variables and APIs necessary for device operation.
  • the higher function unit 131 calls the device start process in which the CSMW 111 provides an entity (S76), and the CSMW 111 receives the device start message (S77).
  • the lower-level function unit 133 calls a device reception start process in which the CSMW 111 presents the interface specification (S78), and performs a process necessary for starting data reception from the auxiliary device 1 (S79).
  • the host function unit 131 performs a device control data write process in which the CSMW 111 provides an entity, and the CSMW 111 receives a message for writing the device control data DCD (S80).
  • the CSMW 111 Upon receiving such a message, the CSMW 111 performs a data conversion process (S81) and notifies the acquired device control data DCD in a sequential manner (S82).
  • the lower-level function unit 133 calls the device control data write process, and writes and acquires the notified device control data DCD (S83).
  • the following effect (4) can be obtained in addition to the effects (1) to (3).
  • the various auxiliary devices 1 are mounted on the automobile MO, they are not always replaced with the same device, and may be replaced with different versions of devices or devices of other companies with different specifications.
  • the CSMW 111 simply reads the CFG file 170 at the time of activation, and the CSMW 111 and its upper level Without changing the sensor fusion 112, the lower function unit 133 can acquire the device control data from the upper function unit 131 in an asynchronous manner.
  • the auxiliary device 1 can be replaced only by renovating only the lower function unit 133 corresponding to the driver unit of the auxiliary device 1, and the upper application of the CSMW 111 does not need to be changed. It is only necessary to develop functional parts corresponding to. For this reason, the vehicle control system 100 can be commercialized as an application support package.
  • auxiliary equipment 1 auxiliary equipment, 2 monocular camera, 3 stereo camera, 4 side sonar, 5 millimeter wave radar, 6 sonar, 7 LIDAR, 100 vehicle control system, 101 CAN, 102 Ethernet, 105 control device, 106 driver unit, 110 F / E board, 111 CSMW, 112 sensor fusion, 140 B / E board, 150 navigation board, 180 memory, 181 processor, 182 processing circuit.

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Traffic Control Systems (AREA)

Abstract

補助機器を動作させるための変数及びAPI名を示すコンフィギュレーションファイルを有するとともに、補助機器を動作させるために必要な変数及びAPIのシンボルが記載されたシンボル情報を生成するドライバ部(106)と、補助機器が接続された際に、ドライバ部(106)からコンフィギュレーションファイルを取得するとともに、ドライバ部(106)からのシンボル情報を参照して、コンフィギュレーションファイルとシンボル情報との整合性を確認し、コンフィギュレーションファイルとシンボル情報との整合性が確認できた場合に、シンボル情報に記載された変数及びAPIを使用して、補助機器を動作させるCSMW(111)と、を備える。

Description

制御装置及び制御方法
 本発明は、補助機器を接続し、その補助機器から得られる情報に基づいて制御を行う制御装置及び補助機器を制御する制御方法に関する。
 特許文献1には、車両LAN(Local Area Network)装置を介して車両データを送受信する車両データ通信部と、車両データ及び変換テーブルを記憶する記憶部と、変換テーブルに基づいて車両独自の形式である車両データをアプリケーションで利用可能な実用データ形式に変換するとともに、アプリケーションで算出された実用データ形式の車両データを変換テーブルに基づいて車両独自の形式の車両データに変換する車両データ変換部と、アプリケーションが車両データにアクセスする車両情報I/Fとを備える車載端末が記載されている。特許文献1に記載された車載端末は、センサ等の機器からの車両データを、変換テーブルを用いて、アプリケーションで利用可能な実用データに変換している。
特願2001-138079号公報
 ここで、従来例では、例えば、センサ等の補助機器を新たに設置した場合には、新たに設置された機器の車両データを実用データ形式のデータに変換するための変換テーブルを別に用意しなければならない。車両データを実用データ形式のデータに変換する変換テーブルの作成は、煩雑である。さらに、車両データ毎に、このような変換テーブルの作成を行わなければならない。
 このため、従来例では、新たにセンサ等の補助機器を設置する場合に、この補助機器を使用することができるようにするために、多くの労力が必要となる。
 そこで、本発明は、新たにセンサ等の補助機器を設置した場合に、新たな補助機器を容易に使用できるようにすることを目的とする。
 本発明の一態様に係る制御装置は、補助機器を接続し、当該補助機器から得られる情報に基づいて制御を行う制御装置であって、前記補助機器を動作させるための変数及びAPI名を示すコンフィギュレーションファイルを有するとともに、前記補助機器を動作させるために必要な変数及びAPIのシンボルが記載されたシンボル情報を生成するドライバ部と、前記補助機器が接続された際に、前記ドライバ部から前記コンフィギュレーションファイルを取得するとともに、前記ドライバ部からの前記シンボル情報を参照して、前記コンフィギュレーションファイルと前記シンボル情報との整合性を確認し、前記コンフィギュレーションファイルと前記シンボル情報との整合性が確認できた場合に、前記シンボル情報に記載された変数及びAPIを使用して、前記補助機器を動作させるミドルウェア部と、を備えることを特徴とする。
 本発明の一態様に係る制御方法は、接続された補助機器を制御する制御方法であって、前記補助機器が接続された際に、前記補助機器を動作させるための変数及びAPI名を示すコンフィギュレーションファイルを取得し、前記補助機器を動作させるために必要な変数及びAPIのシンボルが記載されたシンボル情報を生成し、前記コンフィギュレーションファイルと前記シンボル情報との整合性を確認し、前記コンフィギュレーションファイルと前記シンボル情報との整合性が確認できた場合に、前記シンボル情報に記載された変数及びAPIを使用して、前記補助機器を動作させることを特徴とする。
 本発明の一態様によれば、センサ等の補助機器が新たに設置された場合に、新たな補助機器からの入力を吸収する吸収層を設けることで、上位のアプリケーションを変更することなく、新たな補助機器を容易に使用することができる。
実施の形態1~4に係る車両制御システムの構成の一例を示すブロック図である。 実施の形態1~4における、F/Eボード、B/Eボード及びナビボードの構成の一例を示すブロック図である。 実施の形態1~4における補助機器を自動車に搭載した一例を示す概略図である。 実施の形態1~4におけるCSMWの周辺ソフトウェアスタックの一例を示す概略図である。 実施の形態1~4におけるCSMWにて参照するコンフィギュレーションファイルの一例を示す概略図である。 実施の形態1~4において、CFGファイルの受け渡しを説明するための概略図である。 (A)及び(B)は、F/Eボード、B/Eボード及びナビボードのそれぞれのハードウェア構成の一例を示す概略図である。 実施の形態1において、CSMWを介して、データを下位機能部から上位機能部に渡す処理の一例を示すステートチャート図である。 実施の形態2において、CSMWを介して、機器制御データを上位機能部から下位機能部に渡す処理の一例を示すステートチャート図である。 実施の形態3において、CSMWを介して、機器データを下位機能部から上位機能部に渡す処理の一例を示すステートチャート図である。 実施の形態4において、CSMWを介して、機器制御データを上位機能部から下位機能部に渡す処理の一例を示すステートチャート図である。
実施の形態1.
 図1は、実施の形態1~4に係る車両制御システム100の構成の一例を示すブロック図である。
 車両制御システム100は、補助機器1と、フロントエンドボード(以下、F/Eボードという)110と、車両の挙動判断等を行うバックエンドボード(以下、B/Eボードという)140と、GPS(Global Positioning System)13からの入力データに基づいて動作するナビボード150とを備える。
 そして、F/Eボード110及びB/Eボード140により、車両の制御を行う制御装置105が構成される。制御装置105は、補助機器1を接続し、補助機器1から得られる情報に基づいて制御を行う。
 F/Eボード110には、補助機器1として、単眼カメラ2と、ステレオカメラ3と、側方ソナー4と、ミリ波レーダ5と、ソナー6と、LIDAR(Laser Imaging Detection and Ranging)7とが接続されている。ここでは、補助機器1は、単眼カメラ2及びステレオカメラ3といったカメラと、側方ソナー4、ミリ波レーダ5、ソナー6及びLIDAR7といったセンサとを含む。
 単眼カメラ2及びステレオカメラ3は、撮像を行い、その映像データを取得する。
 側方ソナー4は、車体の側方から15m程度の遠距離までの間で、他車等の障害物が近づいて来るか否かを判断するため、アナログオーディオ(音波)を用いて計測する。なお、側方ソナー4とF/Eボード110との間には、データのやり取りを行うために必要なアナログデジタル変換器(以下、AD/DAという)8が設けられている。
 ミリ波レーダ5は、電波を自動車周囲に向けて発射し障害物からの反射波を測定することで障害物までの距離及び方向を測り、この障害物までの距離及び方向等の情報を取得する。なお、ミリ波レーダ5は、図示してはいないが、データを取得するミリ波レーダ本体と、そのデータをやり取りするミリ波レーダECUとを備える。
 ソナー6は、音波を用いて車両周辺の障害物を検知する。
 LIDAR7は、レーザー光を用いて車両周辺の障害物を検知する。
 また、F/Eボード110は、V2Pモジュール9と、V2Iモジュール10と、GPS受信機11と、INS(Inertial Navigation System:慣性航法装置)12と、データのやり取りを行う。
 V2Pは、Vehicle to Personの略で、V2Pモジュール9は、自車周辺の歩行者を検知して、その検知結果を示す歩行者動向情報を取得する。V2Iは、Vehicle to Infrastructureの略で、V2Iモジュール10は、自動車と、インフラとして設定してある路側器との通信結果を示す路側器情報を取得する。V2Pモジュール9及びV2Iモジュール10を合わせてV2Xモジュールともいう。
 GPS受信機11は、GPSの各種情報を受信する。
 INS12は、地上の航法援助施設からの電波又は地磁気等に頼らずに、移動する自動車の加速度から、移動方向、速度及び距離を求め、位置を特定するための搭載用航法装置である。
 B/Eボード140は、SPI(Serial Peripheral Interface)を介して、F/Eボード110とデータのやり取りを行う。
 図2は、実施の形態1~4における、F/Eボード110、B/Eボード140及びナビボード150の構成の一例を示すブロック図である。
 単眼カメラ2及びステレオカメラ3は、LVDS(Low Voltage Differentian Signaling)で映像データをF/Eボード110のカスタマイザブルミドルウェア(以下、CSMWという)111を介して、センサフュージョン112に伝送する。LVDSは、短距離用のデジタル有線伝送技術で、小振幅及び低消費電力で比較的高速な差動インタフェースである。LVDSは、グラフィックスカードからビデオモニタへの映像データ等のデータの伝送に使用される。
 側方ソナー4における計測結果は、AD/DA8でデジタル変調され、CSMW111を介してセンサフュージョン112に伝送される。
 なお、CSMW111をミドルウェア部ともいう。
 F/Eボード110には、補助機器1を動作させるためのドライバ部106が設けられている。例えば、ドライバ部106は、補助機器1を動作させるための変数及びAPI(Application Programming Interface)名を示すコンフィギュレーションファイル(CFGファイルという)を保持する。また、ドライバ部106は、CSMW111からの指示に応じて、補助機器1を動作させるために必要な変数及びAPIのシンボルが記載されたシンボル情報を生成し、生成されたシンボル情報をCSMW111に与える。なお、図2には、ドライバ部106は1つしか示されていないが、ドライバ部106は、補助機器1の各々に設けられているものとする。
 そして、CSMW111は、補助機器1が接続された際に、ドライバ部106からCFGファイルを取得するとともに、ドライバ部106からのシンボル情報を参照して、CFGファイルとシンボル情報との整合性を確認する。例えば、CFGファイルに記載されている変数及びAPI名に対応する全てのアドレスがシンボル情報に記載されているか否かを確認する。CFGファイルとシンボル情報との整合性が確認できた場合、言い換えると、CFGファイルに記載されている変数及びAPI名に対応する全てのアドレスがシンボル情報に記載されている場合に、CSMW111は、シンボル情報に記載された変数及びAPIを使用して、補助機器1を動作させる。
 CAN(Controller Area Network)101は、耐ノイズ性強化を考慮して設計された、接続機器相互間のデータ伝送に使用される通信経路である。CAN101は、機器の制御情報の伝送用として普及しており、自動車においてはセンサとの情報のやり取り、エンジン又はブレーキの状態及び故障診断情報等の情報の伝送に使用されている。
 ミリ波レーダ5は、障害物までの距離及び方向等の情報を、CAN101及びCSMW111を介して、センサフュージョン112に伝送する。
 ソナー6からの情報は、CAN101及びCSMW111を介して、センサフュージョン112に伝送される。
 V2Pモジュール9は、路側器情報を、CAN101及びCSMW111を介して、座標変換部113に伝送する。
 V2Iモジュール10は、歩行者動向情報を、CAN101及びCSMW111を介して、ダイナミックマップ部114に伝送する。
 イーサネット(登録商標)102は、コンピュータネットワーク規格の1つであるが、車載の場合、自動車の周辺監視用のセンサのデータを伝送する通信ネットワークとして採用される。
 LIDAR7からの情報は、イーサネット102及びCSMW111を介して、センサフュージョン112に伝送される。
 GPS受信機11及びINS12からの情報は、CSMW111を介して、ロケータ部115に伝送される。
 ナビボード150は、HMI(Human Machine Interface)151と、ナビゲーション部152とを備える。
 HMI151は、ユーザからの指示の入力を受け付ける入力部である。
 ナビゲーション部152は、GPS13からのシリアル信号と、HMI51からの情報に基づいて動作し、F/Eボード110とデータのやり取りを行っている。
 GPS13からの信号は、シリアル通信ケーブル104を介して、ナビボード150上のナビゲーション部152に伝送される。
 上述の通り、補助機器1からの種々のデータ、例えば、単眼カメラ2からの映像データ、ステレオカメラ3からの映像データ、ミリ波レーダ5からの電波情報、及び、ソナー6からの音波情報等は、CSMW111を介して、センサフュージョン112に伝送される。補助機器1からの種々のデータは、センサフュージョン112により、統合的に処理され互いに協調されたデータとなってシンクロナイズされる。シンクロナイズされたデータは、センサフュージョン112からその上位アプリであるマップ生成部116に伝送される。
 V2Pモジュール9からCSMW111を介して座標変換部113に伝送されたデータは、座標変換部113からマップ生成部116に伝送される。
 V2Iモジュール10からCSMW111を介してダイナミックマップ部114に伝送されたデータは、ダイナミックマップ部114から地図情報としてマップ生成部116及びレーンレベルルート生成部117に伝送される。
 単眼カメラ2の映像データは、LVDS及びCSMW111を介して、ロケータ部115にも入力され、また、GPS受信機11及びINS12からのデータもロケータ部115に入力される。さらに、マップ生成部116からの道路障害物情報が、ロケータ部115に入力される。これらロケータ部115に伝送されたデータは、自車位置情報として、マップ生成部116、レーンレベルルート生成部117及びナビゲーション部152に伝送される。
 ナビゲーション部152からの誘導情報は、イーサネット102経由でレーンレベルルート生成部117に入力される。その他のECU(Electronic Control Unit)160からは、自車速度情報、自車加速度情報、操舵角情報、アクセル/ブレーキ情報及びウィンカ操作情報が、CAN101経由で運転操作特性部118に入力される。この内、自車速度情報は、CAN101を介して、マップ生成部116にも入力される。
 マップ生成部116からは、3Dマップ情報が、リスクマップ生成部119の死角検出部119a、移動予測部120に伝送され、また、3Dマップ情報は、イーサネット102を介して、ナビボード150のHMI151に伝送される。
 運動モデルデータベース121は、データベース内の情報を運動モデル更新部122からの更新情報で更新し、運動モデル情報を移動予測部120に入力する。
 移動予測部120は、マップ生成部116からの3Dマップ情報と運動モデルデータベース121からの運動モデル情報とから移動予測情報を生成し、これをリスクマップ生成部119のリスク推定部119bに入力する。
 レーンレベルルート生成部117は、地図情報及びレーンレベルルート情報をパス生成部123に入力する。
 運転操作特性部118は、運転操作特性データベース124と運転操作特性情報をやり取りし、更新された運転操作特性情報をパス生成部123に入力する。
 パス生成部123は、パス情報を、イーサネット102を介して、ナビボード150のHMI151に入力する。また、パス生成部123は、パス情報をSPI通信経路103経由で、B/Eボード140の判断部141に入力する。
 HMI151は、CAN101からF/E故障情報及びB/E故障情報を取得すると共に、CAN101に運転モード及び緊急停止情報を送信する。
 B/Eボード140の判断部141は、自車位置情報、道路勾配情報、カーブ曲率情報をCAN経由で取得する。また、判断部141は、車両制御情報及びB/E故障情報をCAN101に送信すると共に、車両制御情報及びB/E故障情報を車両制御判断部142に入力する。
 車両制御判断部142は、CAN101から運転モード及びF/E故障情報を取得すると共に、CAN101からセンシング情報を取得した緊急制御部143から緊急制御情報を取得する。
 図3は、実施の形態1~4における補助機器1を自動車に搭載した一例を示す概略図である。
 自動車MOには、車両制御システム100が搭載されている。
 単眼カメラ2は、自動車MOの前方中央と後方中央に取り付けられており、夫々前方及び後方の物体を認識する。
 ステレオカメラ3は、自動車MOのフロントガラス上部に取り付けられ、前方の物体を認識する。
 側方ソナー4は、自動車MOの側方に取り付けられ、夫々右側方及び左側方を認識する。
 ミリ波レーダ5は、自動車MOの前方左右に取り付けられ、夫々前方の左右を走査する。
 ソナー6は、自動車MOの前方左右に取り付けられ、夫々前方の左右を走査する。
 LIDAR7は、自動車MOの屋根中央に取り付けられ、自動車MOの周囲全てを走査する。
 図4は、実施の形態1~4におけるCSMW111の周辺ソフトウェアスタックの一例を示す概略図である。
 図4では、単眼カメラ2、ステレオカメラ3、ミリ波レーダ5、ソナー6及びLIDAR7がF/Eボード110に接続されているものとして説明する。
 単眼カメラ2の映像データは、LVDS及びCSMW111を介して属性判別部2aに入力される。
 ステレオカメラ3の映像データは、LVDS経由でステレオ測距部3aに入力される。ステレオ測距部3aからの情報は、CSMW111を介して第1物体抽出部3bと、カメラベースでの第1道路特徴抽出部3cに入力される。
 ミリ波レーダ5からの情報は、CAN101経由で第1測距部5aに入力される。第1測距部5aからの情報は、CSMW111を介して、第2物体抽出部5bに入力される。
 ソナー6からの情報は、CAN101経由で第2測距部6aに入力される。第2測距部6aからの情報は、CSMW111を介して、第3物体抽出部6bに入力される。
 LIDAR7からの情報は、イーサネット102経由で第3測距部7aに入力される。第3測距部7aからの情報は、CSMW111を介して、第4物体抽出部7bとレーザーベースの第2道路特徴抽出部7cに入力される。
 ここで、属性判別部2a、ステレオ測距部3a、第1物体抽出部3b、第1道路特徴抽出部3c、第1測距部5a、第2物体抽出部5b、第2測距部6a、第3物体抽出部6b、第3測距部7a、第4物体抽出部7b、第2道路特徴抽出部7c、同一物体合成部112a及び協調センシング部112bを機能部と言う総称で呼ぶ。
 また、単眼カメラ2から属性判別部2aにCSMW111を介して情報を渡す場合、ステレオ測距部3aから第1物体抽出部3b及び第1道路特徴抽出部3cにCSMW111を介して情報を渡す場合、第1測距部5aから第2物体抽出部5bにCSMW111を介して情報を渡す場合、第2測距部6aから第3物体抽出部6bにCSMW111を介して情報を渡す場合、及び、第3測距部7aから第4物体抽出部7b及び第2道路特徴抽出部7cにCSMW111を介して情報を渡す場合、CSMW111は、各情報にタイムスタンプを付与する。
 次に各機能部からCSMW111を介してセンサフュージョン112にデータを入力する例を説明する。
 属性判別部2aは、CSMW111を介して、物体属性情報をセンサフュージョン112内の同一物体合成部112aに入力する。
 第1物体抽出部3bは、CSMW111を介して、相対位置情報、サイズ情報及び相対速度情報をセンサフュージョン112内の同一物体合成部112aに入力する。
 第1道路特徴抽出部3cは、CSMW111を介して、自車位置情報及び自車姿勢情報をセンサフュージョン112内の協調センシング部112bに入力する。
 第2物体抽出部5bは、CSMW111を介して、相対位置情報、サイズ情報及び相対速度情報をセンサフュージョン112内の同一物体合成部112aに入力する。
 第3物体抽出部6bは、CSMW111を介して、相対位置情報、サイズ情報及び相対速度情報をセンサフュージョン112内の同一物体合成部112aに入力する。
 第4物体抽出部7bは、CSMW111を介して、相対位置情報、サイズ情報及び相対速度情報をセンサフュージョン112内の同一物体合成部112aに入力する。
 第2道路特徴抽出部7cは、CSMW111を介して、自車位置情報及び自車姿勢情報をセンサフュージョン112内の協調センシング部112bに入力する。
 センサフュージョン112内の同一物体合成部112aは、下位の機能部から収集した相対位置情報、サイズ情報、相対速度情報及び物体属性情報をセンサフュージョン112の上位アプリ130に渡す。ここでの上位アプリ130は、図2のマップ生成部116に相当する。
 また、センサフュージョン112内の協調センシング部112bは、下位の機能部から収集した自車位置情報及び自車姿勢情報をセンサフュージョン112の上位アプリ130に渡す。
 ここで、属性判別部2aから同一物体合成部112aにCSMW111を介して情報を渡す場合、第1物体抽出部3bから同一物体合成部112aにCSMW111を介して情報を渡す場合、第1道路特徴抽出部3cから協調センシング部112bにCSMW111を介して情報を渡す場合、第2物体抽出部5bから同一物体合成部112aにCSMW111を介して情報を渡す場合、第3物体抽出部6bから同一物体合成部112aにCSMW111を介して情報を渡す場合、第4物体抽出部7bから同一物体合成部112aにCSMW111を介して情報を渡す場合、第2道路特徴抽出部7cから協調センシング部112bにCSMW111を介して情報を渡す場合には、CSMW111は、センサフュージョン112が受け取れる情報に成型し直してセンサフュージョン112にデータを渡す。
 図5は、実施の形態1~4におけるCSMW111にて参照するCFGファイルの一例を示す図である。
 F/Eボード110に接続する1つの補助機器1に対して1つのCFGファイルが必要である。図5に示されているCFGファイル170は、ミリ波レーダ5を接続する際のものである。
 接続するミリ波レーダ5の機種名はMW-Raderであり、それに対応するCFGファイル名は「MW-Rader.ini」である。
 CFGファイル170は、セクションと呼ばれるデータ領域で幾つかのブロックに区切られる。セクションは[]で括られた文字列で定義され、予め名称が規定された機能セクションと、任意の名称を持つデータ内容定義セクションがある。機能セクションは、どの補助機器1が接続されても共通して使用される名称を有する。例えば、図5に示された例では、[INTERFACE]、[STRUCTURE]及び[DATA_SPEC]が機能セクションである。データ内容定義セクションは、接続された補助機器1毎にコーディングする必要があり、そのコード上に表れる変数の名称を示す。例えば、図5に示された例では、[Timestamp]、[Velocity]及び[RangeDistance]がデータ内容定義セクションである。
 CFGファイル170にて最初に記載されているのは、インタフェース情報セクション[INTERFACE]である。
 「SensorName」は、接続される補助機器1の名称を示す。ここでは、ミリ波レーダ5の名称「MW-Rader」が定義されている。
 「UpIndMode」は、補助機器1のドライバ部が上位機能部にデータを渡す際のデータ通知方式を示す。例えば、データ通知方式は、「0」~「2」の整数で定義されている。図5の例では、「0」が選択され、データが生成されたら、逐一、上位機能部に通知することが示されている。上位機能部は、例えば、CSMW111である。
 「IFType」は、補助機器1から上位機能部にデータを渡す際のインタフェースの種別を示す。例えば、インタフェースの種別は、「0」~「6」の整数で定義されている。「0」は「IPC(InterProcess Communication)」であり、「1」は「メモリ」であり、「2」は「CAN」であり、「3」は「Ethernet」であり、「4」は「LVDS」であり、「5」は「USB(Universal Serial Bus)」であり、「6」は「UART(Universal Asynchronous Receiver Transmitter)」である。ここでは、「2」が選択され、CAN101を用いて通信することが示されている。
 「CanMsgID」は、補助機器1のドライバ部がデータをフィルタリングする際に使用する「Can ID」を示す。なお、「CanMsgID」は、「IFType」で「CAN」が選択されたために定義されており、「IFType」で別の種別が選択された場合には、選択された種別に応じた項目で値が定義される。
 「DnModPath」は、使用するドライバオブジェクト本体があるパス名を示す。このパス名で示されるパスから、CSMW111は、補助機器1の実行ファイルを読み込む。
 「DnApiOpen」は、ドライバ部が使用する伝送路のOpen処理の関数名を示す。
 「DnApiClose」は、ドライバ部が使用する伝送路のClose処理の関数名を示す。
 「DnApiRead」は、ドライバ部が使用する伝送路の読み込み処理の関数名を示す。
 「DnApiWrite」は、ドライバ部が使用する伝送路の書き込み処理の関数名を示す。
 「DnApiioctrl」は、ドライバ部が使用する伝送路のプロパティ設定処理の関数名を示す。
 「DnApiSeek」は、ドライバ部が使用する伝送路のSeek処理の関数名を示す。
 「DnApiOpen」、「DnApiClose」、「DnApiRead」、「DnApiWrite」、「DnApiioctrl」及び「DnApiSeek」では、ドライバコード上の関数名(API名)が定義されている。CSMW111は、「DnApiOpen」、「DnApiClose」、「DnApiRead」、「DnApiWrite」、「DnApiioctrl」又は「DnApiSeek」のフォーマットにより、その後に続く「ドライバコード上の関数名」を認識する。その後に、CSMW111は、フィルタ設定でシンボル情報からその関数名とそれに割り当てられているアドレスを認識する。これにより、CSMW111は、ドライバ部における関数をコールすることができる。
 次に、[STRUCTURE]セクションは、上位提供データ構造定義セクションであり、補助機器1からCSMW111に渡すデータの構造を定義する。
 図5では、補助機器1からCSMW111に渡すデータのメンバとして、「Timestamp(タイムスタンプ)」、「Velocity(速度)」、「RangeDistance(物体距離)」、「RangeRate(物体速度)」及び「Angle(物体角度)」が含まれており、それぞれ、32ビットで構成されている。
 次に、[DATA_SPEC]セクションは、[STRUCTURE]セクションで定義されたメンバの詳細を示す。
 例えば、図5の例では、[Timestamp]セクションでは、「F」は変数そのものを示し、ここでは、「_TIMESTAMP_」という変数名の値がタイムスタンプの値であることを示している。
 [Velocity]セクションでは、「IdF」は、データを取得するインタフェースの種別を示し、図5の例では、CAN101からデータを取得することが示されている。「Id」は、CAN IDを示し、「Ox730」のCAN IDで送られてきたデータが速度を格納していることを示している。「F」は、上述のように変数そのものを示し、「#2」は、データの2バイト目の1バイトが変数の値であることを示している。
 以上のように、CFGファイル170には、補助機器1のS/Wの実行ファイルのパス、使用するAPI群の定義、メンバ変数の宣言及び定義等の情報が記載される。
 図6は、実施の形態1~4におけるCFGファイル170の受け渡しを説明するための概略図である。
 補助機器1のドライバ部106は、補助機器1が接続された際に、CSMW111にCFGファイル170を与える。CSMW111は、CFGファイル170を参照することで、上位機能部131が補助機器1を制御できるようにする。
 以上に記載されたF/Eボード110、B/Eボード140及びナビボード150のそれぞれの一部又は全部は、例えば、図7(A)に示されているように、メモリ180と、メモリ180に格納されているプログラムを実行するCPU(Central Processing Unit)等のプロセッサ181とにより構成することができる。このようなプログラムは、ネットワークを通じて提供されてもよく、また、記録媒体に記録されて提供されてもよい。
 また、F/Eボード110、B/Eボード140及びナビボード150のそれぞれの一部又は全部は、例えば、図7(B)に示されているように、単一回路、複合回路、プログラム化したプロセッサ、並列プログラム化したプロセッサ、ASIC(Application Specific Integrated Circuits)又はFPGA(Field Programmable Gate Array)等の処理回路182で構成することもできる。
 なお、図6に示されているドライバ部106についても、メモリ180及びプロセッサ181、又は、処理回路182で構成することができる。
 図8は、実施の形態1において、CSMW111を介して、データを下位機能部133から上位機能部131に渡す処理の一例を示すステートチャート図である。CSMW111は、機能部又はドライバ部との間で機器データの入出力を行う。具体的には、機能部にデータを提供する「機器データ通知」と、デバイスドライバ抽象化層からデータを取り込む「機器データ受信」の2つがあるが機能は同じである。APIとしては同期方式と非同期方式の両方が提供されるが、実施の形態1では同期方式で機器データを下位機能部133から上位機能部131へ渡す例を説明する。また、同期方式については、CSMW111に機器データが蓄積されていない場合の挙動として機器データを受信するまで待つ「ブロック」、指定時間まで待つ「タイムアウト(T/O)付きブロック」、待たずに即座にデータなしを返す「ブロック無し」の3つの挙動がある。
 なお、ここでの下位機能部133は、図6に示したドライバ部106に相当する。
 同期方式で機器データを下位機能部133から上位機能部131へ渡すにあたって、まず、CSMW111は、F/Eボード110に接続されている各種補助機器1の構成を把握するため、機器構成情報取得処理を行う。この際、接続されている各種補助機器1毎にCFGファイル170が用意されており、下位機能部133は、対応するCFGファイル170をロードする(S10)。
 そしてCSMW111が実体を提供する機器登録処理を上位機能部131がコールし(S11)、機器登録メッセージ(登録命令)をCSMW111が受信する(S12)。
 下位機能部133は、CSMW111がインタフェース仕様を提示したフィルタ設定処理をコールし(S13)、機器動作に必要なメンバ変数及びAPIのシンボルが記載されたシンボル情報を取得する(S14)。シンボル情報は、変数及びAPI名とそのアドレスとを対応付けた情報である。
 CSMW111は、このシンボル情報を取得して(S15)、取得されたシンボル情報とロードされたCFGファイル170とを比較して、機器動作に必要なメンバ変数及びAPIを把握することが可能となる。例えば、CSMW111は、CFGファイル170で把握された変数及びAPI名と、シンボル情報に含まれている変数及びAPI名とを比較し、これらが一致した場合には、対応するアドレスから変数及びAPIを呼び出すことができるようになる。
 続いて、CSMW111が実体を提供する機器開始処理を上位機能部131がコールし(S16)、機器開始メッセージ(開始命令)をCSMW111が受信する(S17)。
 下位機能部133は、CSMW111がインタフェース仕様を提示した機器受信開始処理をコールし(S18)、補助機器1からのデータ受信を開始するのに必要な処理を行う(S19)。
 CSMW111は、FIFOバッファ生成処理を行い、上りFIFOバッファ134を生成する(S20)。
 そして、機器受信開始処理(S19)を行った下位機能部は、機器データDDを受信してフィルタリング処理を行い(S21)、バッファ135に機器データDDをPUSHする(S22)。
 さらに、CSMW111は、機器データリード処理をコールし(S23)、下位機能部のバッファ135にPUSHされた機器データDDをPULLして読み込み、機器データDDをCSMW111が取り込む(S24)。
 所望の機器データDDを取り込んだCSMW111は、データ変換処理を行い(S25)、ステップS20で生成された上りFIFOバッファ134に機器データDDをPUSHする(S26)。
 ここで上位機能部131は、CSMW111が実体を提供する機器データリード処理をポーリングで行い(S27)、上りFIFOバッファ134からPULLして機器データDDを取得する(S28)。
 以上説明した実施の形態1によれば、下記(1)の効果が得られる。
 (1)実施の形態では、車両制御システム100は、自動車MOに搭載された単眼カメラ2、ステレオカメラ3、ミリ波レーダ5、ソナー6又はLIDAR7といった各種補助機器1、これら各種補助機器1を動作させる機能部、及び、下位の機能部から上位の機能部へデータを受け渡すCSMW111から構成される。各種補助機器1は、自動車MOに搭載されているが、常に同じ機器に置換されるとは限らず、異なるバージョンの機器又は仕様の異なる他社の機器に置換されることもある。例えば、ミリ波レーダ5が他社製のミリ波レーダに置き換えられることもある。この場合、この補助機器1のCFGファイルに、この補助機器1を動作させるための構造体及びAPIを定義すれば、CSMW111は、起動時にそのCFGファイルを読み込むだけで、CSMW111及びその上位のセンサフュージョン112を変更することなく、上位機能部は下位機能部からの機器データを、同期方式で取得することができる。なお、この場合、この補助機器1のドライバ部に相当する下位機能部のみを改修するだけで、補助機器1の置換ができ、CSMW111の上位アプリケーションは変える必要がないため、様々な開発現場でドライバ部に相当する機能部のみを開発するだけで済む。このため、車両制御システム100は、アプリケーションサポートパッケージとして製品化することが可能である。
実施の形態2.
 以下、実施の形態2における車両制御システム100の説明を行う。実施の形態2における車両制御システム100は、F/Eボード110と、F/Eボード110に接続された各種補助機器1と、B/Eボード140と、ナビボード150とを備え、実施の形態1と同様に構成されている。
 但し、実施の形態2における車両制御システム100は、その処理において、実施の形態1と異なっている。
 図9は、実施の形態2において、CSMW111を介して、機器制御データ(制御情報)を上位機能部131から下位機能部133に渡す処理の一例を示すステートチャート図である。
 CSMW111は、機能部及びデバイスドライバとの間で機器制御データの入出力を行う。具体的には、上位機能部131から機器制御データを受け取って下位機能部133に渡す「制御データ受信」と、CSMW111内部で共通データフォーマット変換した機器制御データを機能部又はデバイスドライバ抽象化層に出力する「制御データ出力」の2つがあるが機能は同じである。APIとしては、CSMW111は、上位機能部131には非同期方式を、下位機能部133には同期方式及び非同期方式の両方を提供するが、実施の形態2では同期方式で機器制御データを上位機能部131から下位機能部133へ渡す例を説明する。また、機器制御データは機器データの場合と異なり少量かつ低頻度であることが想定されるため、データ受け渡し方式はデータ保証方式のみとなる。
 同期方式で機器制御データを上位機能部131から下位機能部133へ渡すにあたって、まず、CSMW111は、F/Eボード110に接続されている各種補助機器1の構成を把握するため、機器構成情報取得処理を行う。この際、接続されている各種補助機器1毎にCFGファイル170が用意されており、下位機能部133は、対応するCFGファイル170をロードする(S30)。
 そしてCSMW111が実体を提供する機器登録処理を上位機能部131がコールし(S31)、機器登録メッセージをCSMW111が受信する(S32)。
 下位機能部133は、CSMW111がインタフェース仕様を提示したフィルタ設定処理をコールし(S33)、機器動作に必要なメンバ変数及びAPIのシンボルが記載されたシンボル情報を取得する(S34)。
 CSMW111は、このシンボル情報を取得して(S35)、取得されたシンボル情報とロードされたCFGファイル170とを比較して、機器動作に必要なメンバ変数及びAPIを把握することが可能となる。
 続いて、CSMW111が実体を提供する機器開始処理を上位機能部131がコールし(S36)、機器開始メッセージをCSMW111が受信する(S37)。
 下位機能部133は、CSMW111がインタフェース仕様を提示した機器受信開始処理をコールし(S38)、補助機器1からのデータ受信を開始するのに必要な処理を行う(S39)。
 上位機能部131は、CSMW111が実体を提供する機器制御データライト処理を行い、CSMW111は機器制御データDCDを書き込むメッセージ(書き込み命令)を受信する(S40)。
 このようなメッセージを受信したCSMW111は、データ変換処理を行い(S41)、下りFIFOバッファ136に機器制御データDCDをPUSHする(S42)。
 さらに、下位機能部133は、機器制御データリード処理をコールし(S43)、CSMW111は、下りFIFOバッファ136にPUSHされた機器制御データDCDをPULLして読み込み(S44)、機器制御データDCDを下位機能部133がポーリングして取り込む(S45)。
 以上説明した実施の形態2によれば、上記(1)の効果の他に、下記(2)の効果が得られる。
 (2)実施の形態2では、各種補助機器1は、自動車MOに搭載されているが、常に同じ機器に置換されるとは限らず、異なるバージョンの機器又は仕様の異なる他社の機器に置換されることもある。この場合、置換された機器のCFGファイル170にその機器を制御させるための構造体及びAPIを定義すれば、CSMW111は、起動時にこのCFGファイルを読み込むだけで、CSMW111及びその上位のセンサフュージョン112を変更することなく、下位機能部133は、上位機能部131からの機器制御データを、同期方式で取得することができる。なお、この場合、補助機器1のドライバ部に相当する下位機能部133のみを改修するだけで、補助機器1の置換ができ、CSMW111の上位アプリケーションは変える必要がないため、様々な開発現場でドライバ部に相当する機能部のみを開発するだけで済む。このため、車両制御システム100は、アプリケーションサポートパッケージとして製品化することが可能である。
実施の形態3.
 以下、実施の形態3における車両制御システム100の説明を行う。実施の形態3における車両制御システム100は、F/Eボード110と、F/Eボード110に接続された各種補助機器1と、B/Eボード140と、ナビボード150とを備え、実施の形態1と同様に構成されている。
 但し、実施の形態3における車両制御システム100は、その処理において、実施の形態1と異なっている。
 図10は、実施の形態3において、CSMW111を介して、機器データを下位機能部133から上位機能部131に渡す処理の一例を示すステートチャート図である。CSMW111は、機能部及びデバイスドライバとの間で機器データの入出力を行う。具体的には、機能部にデータを提供する「機器データ通知」と、デバイスドライバ抽象化層からデータを取り込む「機器データ受信」の2つがあるが機能は同じである。CSMW111は、APIとしては同期方式と非同期方式の両方を提供するが、実施の形態3では非同期方式で機器データを下位機能部133から上位機能部131へ渡す例を説明する。また、非同期方式については、データ取得毎に通知を行う逐次通知型と、周期的に複数のタイミングで受信したデータを一括して通知する周期型とが用意される。更にデータの受け渡し方式として、データの実体をデータ提供先が用意したメモリにコピーして渡すデータ保証型と、データ提供元が確保したメモリのアドレスを渡す速度優先型との2つの方式がある。速度優先型の場合、機器データの受信によりCSMW111内部のバッファが周回するまでが提供データの存続期間となる。
 非同期方式で機器データを下位機能部133から上位機能部131へ渡すにあたって、まず、CSMW111は、F/Eボード110に接続されている各種補助機器1の構成を把握するため、機器構成情報取得処理を行う。この際、接続されている各種補助機器1毎にCFGファイル170が用意されており、下位機能部133は、対応するCFGファイル170をロードする(S50)。
 そしてCSMW111が実体を提供する機器登録処理を上位機能部131がコールし(S51)、機器登録メッセージをCSMW111が受信する(S52)。
 下位機能部133は、CSMW111がインタフェース仕様を提示したフィルタ設定処理をコールし(S53)、機器動作に必要なメンバ変数及びAPIのシンボルが記載されたシンボル情報を取得する(S54)。
 CSMW111は、このシンボル情報を取得して(S55)、取得されたシンボル情報とロードされたCFGファイル170とを比較して、機器動作に必要なメンバ変数及びAPIを把握することが可能となる。
 続いて、CSMW111が実体を提供する機器開始処理を上位機能部131がコールし(S56)、機器開始メッセージをCSMW111が受信する(S57)。
 下位機能部133は、CSMW111がインタフェース仕様を提示した機器受信開始処理をコールし(S58)、補助機器1からのデータ受信を開始するのに必要な処理を行う(S59)。
 CSMW111は、FIFOバッファ生成処理を行い、上りFIFOバッファ134を生成する(S60)。
 そして、ステップS59で機器受信開始処理を行った下位機能部133は、機器データを受信してフィルタリング処理を行う(S61)。
 さらに、CSMW111は、CSMW111が実体を提供するコールバック通知処理をコールし、下位機能部133から機器データDDをCSMW111が取得する(S62)。
 所望の機器データDDを取得したCSMW111は、データ変換処理を行い(S63)、ステップS60で生成された上りFIFOバッファ134に、機器データDDをPUSHする(S64)。
 ここで上位機能部131は、CSMW111がインタフェース仕様を提示するコールバック通知処理を行い、上りFIFOバッファ134からPULLして機器データDDを取得する(S65)。
 以上説明した実施の形態3によれば、上記(1)及び(2)の効果の他に、下記(3)の効果が得られる。
 (3)各種補助機器1は、自動車MOに搭載されているが、常に同じ機器に置換されるとは限らず、異なるバージョンの機器又は仕様の異なる他社の機器に置換されることもある。この場合、置換された補助機器1のCFGファイル170にこの補助機器1を動作させるための構造体及びAPIを定義すれば、CSMW111は、起動時にCFGファイル170を読み込むだけで、CSMW111及びその上位のセンサフュージョン112を変更することなく、上位機能部131は、下位機能部133からの機器データを、非同期方式で取得することが可能となる。なお、この場合、この補助機器1のドライバ部に相当する下位機能部133のみを改修するだけで補助機器1の置換ができ、CSMW111の上位アプリケーションは変える必要がないため、様々な開発現場でドライバ部に相当する機能部のみを開発するだけで済む。このため、車両制御システム100は、アプリケーションサポートパッケージとして製品化することが可能である。
実施の形態4.
 以下、実施の形態4における車両制御システム100の説明を行う。実施の形態4における車両制御システム100は、F/Eボード110と、F/Eボード110に接続された各種補助機器1と、B/Eボード140と、ナビボード150とを備え、実施の形態1と同様に構成されている。
 但し、実施の形態4における車両制御システム100は、その処理において、実施の形態1と異なっている。
 図11は、実施の形態4において、CSMW111を介して、機器制御データを上位機能部131から下位機能部133に渡す処理の一例を示すステートチャート図である。
 CSMW111は、機能部及びデバイスドライバとの間で機器制御データの入出力を行う。具体的には、CSMW111は、機能部から機器制御データを受け取って機能部に渡す「制御データ受信」と、CSMW111内部で共通データフォーマット変換した機能制御データを機能部やデバイスドライバ抽象化層に出力する「制御データ出力」の2つがあるが機能は同じである。CSMW111は、APIとしては上位機能部131には非同期方式を、下位機能部133には同期方式及び非同期方式の両方を提供するが、実施の形態4では非同期方式で機器制御データを上位機能部131から下位機能部133へ渡す例を説明する。また、機器制御データは、機器データの場合と異なり少量かつ低頻度であることが想定されるため、データ受け渡し方式は、非同期方式についても逐次型のみとなる。
 非同期方式で機器制御データを上位機能部131から下位機能部133へ渡すにあたって、まず、CSMW111は、F/Eボード110に接続されている各種補助機器1の構成を把握するため、機器構成情報取得処理を行う。この際、接続されている各種補助機器1毎にCFGファイル170が用意されており、下位機能部133は、対応するCFGファイル170をロードする(S70)。
 そしてCSMW111が実体を提供する機器登録処理を上位機能部131がコールし(S71)、機器登録メッセージをCSMW111が受信する(S72)。
 下位機能部133は、CSMW111がインタフェース仕様を提示したフィルタ設定処理をコールし(S73)、機器動作に必要なメンバ変数及びAPIのシンボルが記載されたシンボル情報を取得する(S74)。
 CSMW111は、このシンボル情報を取得して(S75)、取得されたシンボル情報とロードされたCFGファイル170とを比較して、機器動作に必要なメンバ変数及びAPIを把握することが可能となる。
 続いて、CSMW111が実体を提供する機器開始処理を上位機能部131がコールし(S76)、機器開始メッセージをCSMW111が受信する(S77)。
 下位機能部133は、CSMW111がインタフェース仕様を提示した機器受信開始処理をコールし(S78)、補助機器1からのデータ受信を開始するのに必要な処理を行う(S79)。
 上位機能部131は、CSMW111が実体を提供する機器制御データライト処理を行い、CSMW111は機器制御データDCDを書き込むメッセージを受信する(S80)。
 このようなメッセージを受信したCSMW111は、データ変換処理を行い(S81)取得した機器制御データDCDを逐次方式で通知する(S82)。
 さらに、下位機能部133は、機器制御データライト処理をコールし、通知された機器制御データDCDを自身に書き込んで取得する(S83)。
 以上説明した実施の形態4によれば、上記(1)~(3)の効果の他に、下記(4)の効果が得られる。
 (4)各種補助機器1は、自動車MOに搭載されているが、常に同じ機器に置換されるとは限らず、異なるバージョンの機器又は仕様の異なる他社の機器に置換されることもある。この場合、置換された補助機器1のCFGファイル170にこの補助機器1を制御させるための構造体及びAPIを定義すれば、CSMW111は、起動時にCFGファイル170を読み込むだけで、CSMW111及びその上位のセンサフュージョン112を変更することなく、下位機能部133は、上位機能部131からの機器制御データを、非同期方式で取得することが可能となる。なお、この場合、補助機器1のドライバ部に相当する下位機能部133のみを改修するだけで補助機器1の置換ができ、CSMW111の上位アプリケーションは変える必要がないため、様々な開発現場でドライバ部に相当する機能部のみを開発するだけで済む。このため、車両制御システム100は、アプリケーションサポートパッケージとして製品化することが可能である。
 なお、本発明は、上記実施の形態に限定されるものではなく、本発明の要旨を逸脱しない範囲内において種々の態様で実施することが出来る。
 1 補助機器、 2 単眼カメラ、 3 ステレオカメラ、 4 側方ソナー、 5 ミリ波レーダ、 6 ソナー、 7 LIDAR、 100 車両制御システム、 101 CAN、 102 イーサネット、 105 制御装置、 106 ドライバ部、 110 F/Eボード、 111 CSMW、 112 センサフュージョン、 140 B/Eボード、 150 ナビボード、 180 メモリ、 181 プロセッサ、 182 処理回路。

Claims (5)

  1.  補助機器を接続し、当該補助機器から得られる情報に基づいて制御を行う制御装置であって、
     前記補助機器を動作させるための変数及びAPI名を示すコンフィギュレーションファイルを有するとともに、前記補助機器を動作させるために必要な変数及びAPIのシンボルが記載されたシンボル情報を生成するドライバ部と、
     前記補助機器が接続された際に、前記ドライバ部から前記コンフィギュレーションファイルを取得するとともに、前記ドライバ部からの前記シンボル情報を参照して、前記コンフィギュレーションファイルと前記シンボル情報との整合性を確認し、前記コンフィギュレーションファイルと前記シンボル情報との整合性が確認できた場合に、前記シンボル情報に記載された変数及びAPIを使用して、前記補助機器を動作させるミドルウェア部と、を備えること
     を特徴とする制御装置。
  2.  前記補助機器から得られる情報を用いて処理を行う上位機能部をさらに備え、
     前記ミドルウェア部は、
     前記補助機器が接続された際に、前記ドライバ部から前記コンフィギュレーションファイルを取得し、
     前記上位機能部からの登録命令に応じて、前記ドライバ部から前記シンボル情報を参照して、前記コンフィギュレーションファイルと前記シンボル情報との整合性を確認し、
     前記コンフィギュレーションファイルと前記シンボル情報との整合性が確認できた場合に、前記上位機能部からの開始命令に応じて、前記シンボル情報に記載された変数及びAPIを使用して、前記補助機器を動作させて、前記補助機器から得られた情報を前記上位機能部に与えること
     を特徴とする請求項1に記載の制御装置。
  3.  前記ミドルウェア部は、前記上位機能部からの書き込み命令に応じて、前記上位機能部からの制御情報を前記ドライバ部に与えること
     を特徴とする請求項2に記載の制御装置。
  4.  前記コンフィギュレーションファイルには、前記補助機器の実行ファイルのパスが含まれており、
     前記ミドルウェア部は、前記コンフィギュレーションファイルに含まれているパスから前記実行ファイルを読み込むこと
     を特徴とする請求項1から3の何れか一項に記載の制御装置。
  5.  接続された補助機器を制御する制御方法であって、
     前記補助機器が接続された際に、前記補助機器を動作させるための変数及びAPI名を示すコンフィギュレーションファイルを取得し、
     前記補助機器を動作させるために必要な変数及びAPIのシンボルが記載されたシンボル情報を生成し、
     前記コンフィギュレーションファイルと前記シンボル情報との整合性を確認し、
     前記コンフィギュレーションファイルと前記シンボル情報との整合性が確認できた場合に、前記シンボル情報に記載された変数及びAPIを使用して、前記補助機器を動作させること
     を特徴とする制御方法。
PCT/JP2016/070249 2016-07-08 2016-07-08 制御装置及び制御方法 WO2018008145A1 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2018525910A JP6559350B2 (ja) 2016-07-08 2016-07-08 制御装置及び制御方法
PCT/JP2016/070249 WO2018008145A1 (ja) 2016-07-08 2016-07-08 制御装置及び制御方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2016/070249 WO2018008145A1 (ja) 2016-07-08 2016-07-08 制御装置及び制御方法

Publications (1)

Publication Number Publication Date
WO2018008145A1 true WO2018008145A1 (ja) 2018-01-11

Family

ID=60912488

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2016/070249 WO2018008145A1 (ja) 2016-07-08 2016-07-08 制御装置及び制御方法

Country Status (2)

Country Link
JP (1) JP6559350B2 (ja)
WO (1) WO2018008145A1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2018212083A1 (ja) * 2017-05-17 2018-11-22 三菱電機株式会社 制御装置及び制御方法

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002331882A (ja) * 2001-05-09 2002-11-19 Hitachi Ltd 車両データアクセス方法および車載端末
WO2016043040A1 (ja) * 2014-09-19 2016-03-24 株式会社aLab デバイスドライバ登録装置とこれを用いたデバイスドライバの登録方法

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001090405A (ja) * 1999-07-07 2001-04-03 Honda Motor Co Ltd 車両セキュリティシステム及びその方法

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002331882A (ja) * 2001-05-09 2002-11-19 Hitachi Ltd 車両データアクセス方法および車載端末
WO2016043040A1 (ja) * 2014-09-19 2016-03-24 株式会社aLab デバイスドライバ登録装置とこれを用いたデバイスドライバの登録方法

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2018212083A1 (ja) * 2017-05-17 2018-11-22 三菱電機株式会社 制御装置及び制御方法

Also Published As

Publication number Publication date
JPWO2018008145A1 (ja) 2019-03-07
JP6559350B2 (ja) 2019-08-14

Similar Documents

Publication Publication Date Title
EP3620959B1 (en) Image data acquisition logic of an autonomous driving vehicle for capturing image data using cameras
JP2022546397A (ja) 自律運転アプリケーションのためのマップ作成及びローカリゼーション
EP3757587B1 (en) Flexible test board to improve sensor i/o coverage for autonomous driving platform
JP6757442B2 (ja) 自動運転車における車線後処理
JP2018079916A (ja) 自律走行車(adv)用のビジュアルコミュニケーションシステム
CN111835496A (zh) 在自动驾驶系统的不同计算节点之间的定时同步方案
CN110148312B (zh) 一种基于v2x系统的碰撞预警方法、装置和存储介质
CN110979332B (zh) 智能汽车的控制方法、装置及存储介质
JP2009083815A (ja) ドライブレコーダ装置および事故解析シミュレーション装置
JP2019079397A (ja) 車載装置、情報処理システム、及び情報処理方法
US20210009145A1 (en) Automated factory testflow of processing unit with sensor integration for driving platform
Kessler et al. Bridging the gap between open source software and vehicle hardware for autonomous driving
KR20200062193A (ko) 정보 처리 장치, 이동 장치, 정보 처리 방법, 이동 장치 제어 방법, 및 프로그램
KR101703500B1 (ko) 차량 유닛
US11338823B2 (en) Multiple sensor data storage with compressed video stream in autonomous driving vehicles
JP6831474B2 (ja) センサ間でデータを伝送するためのデータ伝送ロジック並びに自動運転車の計画及び制御
KR20210056632A (ko) 메시지 기반의 영상 처리 방법 및 이를 구현하는 전자 장치
JP6559350B2 (ja) 制御装置及び制御方法
JP6632765B2 (ja) 制御装置及び制御方法
CN217435657U (zh) 自动驾驶车辆的电气系统和自动驾驶车辆
CN211809393U (zh) 车载显示系统和车辆
EP4297305A1 (en) Data transmission method, apparatus and system
JP2022544348A (ja) 対象を識別する方法とシステム
CN110001660A (zh) 一种分布式多核异构系统
US20220140963A1 (en) Communication method and apparatus

Legal Events

Date Code Title Description
ENP Entry into the national phase

Ref document number: 2018525910

Country of ref document: JP

Kind code of ref document: A

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

Ref document number: 16908189

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: 16908189

Country of ref document: EP

Kind code of ref document: A1