Communication device, communication system, and data storage method

JP2023169051A5Active Publication Date: 2025-03-05DENSO TEN LTD
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
JP2022080503
Authority / Receiving Office
JP · JP
Patent Type
Applications
Current Assignee / Owner
Filing Date
2022-05-16
Publication Date
2025-03-05
Estimated Expiration
2042-05-16

AI Technical Summary

Technical Problem

Conventional methods struggle to appropriately determine which data to use from multiple nodes with the same type of sensors, leading to inefficiencies in data utilization.

Method used

A communication device with a controller that captures data from connected nodes, stores it in a bulletin board with added characteristic information, and selects data based on specified conditions for applications, ensuring appropriate data usage.

Benefits of technology

Enables the appropriate selection of data from multiple nodes, enhancing data utilization and enabling advanced functionality through optimized data processing.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 00000000_0000_ABST
    Figure 00000000_0000_ABST
Patent Text Reader

Abstract

To provide a communication device, a communication system, and a data storage method that can appropriately determine data to be used from data acquired from a plurality of nodes.SOLUTION: A communication device according to an embodiment is a communication device to which a plurality of nodes can be connected, and includes a controller. The controller captures data from the connected nodes, stores the captured data in a bulletin board which is a storage unit that can be used by a plurality of applications, estimates feature information indicating characteristics of the data to store it in association with the data, and selects data to be used in processing of an application from the data stored in the bulletin board during execution of the application, based on a correspondence between designation information designated as conditions of data used by the application and the feature information.SELECTED DRAWING: Figure 1
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to a communication device, a communication system, and a data storage method.

Background Art

[0002] Conventionally, a method has been known that enables access to vehicle data in a manner independent of vehicle type, manufacturer, and manufacturing year via a vehicle network. Also, in this type of technology, there is a technique for sharing and using stored data among a plurality of devices (see, for example, Patent Document 1).

Prior Art Documents

Patent Documents

[0003]

Patent Document 1

Summary of the Invention

Problems to be Solved by the Invention

[0004] Here, a plurality of nodes connected to a network may each be equipped with the same type of sensor. However, in conventional technology, for example, when acquiring the same type of sensor data from different nodes, it may be difficult to appropriately determine which sensor data to use. Note that such problems are not limited to sensor data and can occur with various types of data.

[0005] The present invention has been made in view of the above, and an object thereof is to provide a communication device, a communication system, and a data storage method capable of appropriately determining data to be used from data acquired from a plurality of nodes.

Means for Solving the Problems

[0006] To solve the above-mentioned problems and achieve the objective, the communication device according to the present invention is a communication device to which a plurality of nodes can be connected, and has a controller. The controller takes in data from the connected nodes, stores the taken-in data in a bulletin board which is a storage unit usable by multiple applications, estimates characteristic information that indicates the characteristics of the data, stores it in association with the data, and when an application is executed, selects the data to be used in the processing of the application from the data stored in the bulletin board based on the correspondence between the specified information which specifies the conditions for the data to be used by the application and the characteristic information. [Effects of the Invention]

[0007] According to the present invention, it is possible to appropriately determine which data to use from among the data acquired from multiple nodes. [Brief explanation of the drawing]

[0008] [Figure 1] Figure 1 is a diagram showing an overview of the communication method according to this embodiment. [Figure 2] Figure 2 is a block diagram showing the functional configuration of a communication device according to this embodiment. [Figure 3] Figure 3 shows a method for selecting data using feature information. [Figure 4] Figure 4 shows a method for selecting data using feature information. [Figure 5] Figure 5 shows a method for selecting data using feature information. [Figure 6] Figure 6 is a flowchart showing the processing procedure of the communication device according to the embodiment. [Figure 7] Figure 7 is a flowchart showing the processing procedure of the communication device according to the embodiment. [Modes for carrying out the invention]

[0009] Hereinafter, embodiments of the communication device, communication system, and data storage method disclosed in this application will be described in detail with reference to the attached drawings. However, the present invention is not limited to the embodiments described below.

[0010] First, an overview of the communication system according to the embodiment will be described using Figure 1. Figure 1 is a conceptual diagram showing an overview of the communication system according to the embodiment. In Figure 1, constituent elements (constitutive representation) and functional elements (functional representation) are used in a mixed manner as appropriate in order to make the overall operation of the communication system easy to understand.

[0011] As shown in Figure 1, the communication system S includes a communication device 1, a plurality of nodes 10, and a server device 50. The communication device 1 and the plurality of nodes 10 are connected to a network such as a vehicle communication network CAN (Controller Area Network) or Wi-Fi (registered trademark) to send and receive various information. The communication device 1 and the server device 50 are connected to a network such as the Internet to send and receive various information.

[0012] Node 10 is connected to the communication device 1 and transmits or receives various types of data. It consists of various devices that independently perform certain functions (such as using data from or providing data to the communication device 1), various sensors that provide measurement data to the communication device 1, output devices such as display devices and speaker devices that notify (display, etc.) data from the communication device 1, and input devices such as touch panels that provide data indicating the user's operations to the communication device 1.

[0013] Node 10 can take various forms, including devices brought into the vehicle by passengers or placed in close proximity to the vehicle (located around the vehicle) and connected to communication device 1, devices incorporated during vehicle manufacturing, and devices newly installed by users after vehicle manufacturing and sales. The size of each node 10 varies depending on the vehicle's structure, but examples of devices (node ​​10) incorporated during vehicle manufacturing include engine control devices, steering devices, braking devices, and air conditioning devices.

[0014] Furthermore, devices (node ​​10) that may be newly installed by users, etc., include, for example, navigation systems, drive recorders, and audio-visual equipment. In addition, devices (node ​​10) that may be brought into (or brought into close proximity to) the vehicle by passengers include smartphones, mobile phones, smartwatches, game consoles (with communication functions), desktop PCs, notebook PCs, and tablet PCs.

[0015] Furthermore, various sensors (other than those built into the various devices) include, for example, humidity sensors (for checking the in-vehicle environment). Output devices include, for example, a centralized control panel and a rear-seat display.

[0016] The examples of devices are categorized into those incorporated during vehicle manufacturing, those added later, and those brought into the vehicle. However, the devices exemplified are not limited to these categories and may belong to other categories. For example, navigation systems may be incorporated during vehicle manufacturing. Furthermore, various devices in other vehicles, as well as infrastructure equipment such as traffic lights, can also become nodes 10, to the extent that they can communicate with communication device 1.

[0017] In addition, a specific node 10 includes various sensors as components necessary to implement various functions of the node 10. The various sensors included in the node 10 are, for example, a vehicle speed sensor, a vital sensor, a temperature sensor for detecting the temperature of the passenger compartment, a CO2 sensor for detecting the CO2 concentration in the passenger compartment, a GPS (Global Positioning System) position sensor for detecting the position of the vehicle, and the like. The vital sensor is a sensor for acquiring biological information, such as an electroencephalogram sensor for detecting an electroencephalogram and a pulse sensor for detecting a pulse.

[0018] Moreover, the node 10 that realizes an independent function includes an ECU (Electronic Control Unit), a so-called controller, as a component. The ECU controls the operation of the node 10 (device) in which the ECU is installed. The ECU is, for example, a power train ECU, a driving support system ECU, a multimedia system ECU, or an air conditioner ECU.

[0019] The server device 50 stores various applications (hereinafter referred to as apps), which are programs for realizing various functions, and provides an appropriate app to the communication device 1. These apps are apps that utilize data output from various nodes 10, for example, data from sensors incorporated in the node 10. Each app is associated with the data type necessary for using the app and the data type of the data output by the app (control data, command data (so-called commands), etc.), and is stored in the server device 50 as an app DB 52.

[0020] In addition, in the server device 50, a database in which the type (identification information) of the node 10, the type of the sensors (measurement data) of the node 10, and the type of external data (control data, command data (so-called commands), etc.) that the node 10 can use are associated is stored as a node information DB 54. That is, based on the combination of the nodes 10, the server device 50 can select an appropriate app for the combination of the nodes 10 by using the node information DB 54 and the app DB 52.

[0021] The communication device 1 is mounted on the vehicle and performs various data transmission and reception with node 10 and server device 50, as well as data processing. The communication device 1 includes a communication unit 2, a container 421, a bulletin board 41, and a control unit 3.

[0022] The communication unit 2 then handles data communication between the communication device 1 and the server device 50, and between the communication device 1 and each node 10. The container 421 stores applications and consists of writable and erasable memory. Each container 421 is configured by appropriately dividing the memory area, and each container 421 stores one application.

[0023] The bulletin board 41 stores sensor measurement values ​​and processing data from each node 10, and is composed of memory. The bulletin board 41 is accessible from the nodes 10, allowing nodes 10 to write sensor measurement values ​​to the bulletin board 41, and to read and use data stored on the bulletin board 41.

[0024] Furthermore, the container 421 and the bulletin board 41 are configured with non-volatile memory (flash memory, or with a backup power supply, etc.) so that stored data is retained even when the communication device 1 is turned off.

[0025] The control unit 3 is a so-called controller that performs various controls on the communication device 1, such as the operation of the communication unit 2, container 421, bulletin board 41, data processing, data transmission and reception, and writing / erasing, and is composed of a microcomputer or the like. The control unit 3 also functions as a container engine that executes applications stored in container 421.

[0026] Communication device 1 distributes data to node 10 and the container engine running the application (described later) using MQTT (Message Queuing Telemetry Transport) based on the Publish / Subscribe method (node ​​10 and the container engine access the bulletin board and retrieve the data). Specifically, in communication system S, communication device 1, which is the provider, retrieves data from node 10, which is the publisher, and distributes the data to the container engine running the application and node 10, which are the subscribers.

[0027] The application uses data obtained from node 10 to perform various control-related processes on node 10 installed in a vehicle, for example. In other words, the application processes data posted on the bulletin board and controls node 10 based on the processing results.

[0028] Such applications enable node 10 to implement more advanced or other functions by utilizing measurement values ​​from sensors possessed by other nodes 10 (sensors that node 10 does not possess). For example, an air conditioner, which is node 10, can perform optimal air conditioning control by using not only the cabin temperature measured by its own cabin temperature sensor, but also the cabin humidity measured by a cabin humidity sensor from another node 10. This control is executed by a corresponding application stored in container 421, which controls node 10 (the air conditioner in this example). Furthermore, if the air conditioner has the necessary functionality, it can also perform this control by reading data from bulletin board 41.

[0029] Furthermore, applications are appropriately selected and retrieved from the server device 50 according to the nodes 10 connected to the communication device 1. Specifically, identification information of each node 10 connected to the communication device 1 is sent to the server device 50. The server device 50 uses the received identification information of each node 10 to perform a matching process with the node information DB 54 and determines the types of data (contents) that the communication device 1 can obtain from each node 10. Then, the server device 50 uses these determined data types (contents) to perform a matching process with the application DB, selects an appropriate application that the communication device 1 can use, and provides (sends) it to the communication device 1. The communication device 1 then stores the provided (received) application in the container 421 and uses it (the container engine executes the application).

[0030] The above is an overview of the basic configuration and functions of the communication system S (communication device 1). Next, we will explain the distinctive functions of the control unit 3 and the bulletin board 41 in the communication device 1. The detailed configuration of the communication device 1 will be explained later using Figure 2 and other references.

[0031] The authentication function (implemented by the processing of the control unit 3) authenticates node 10. Specifically, the authentication function obtains authentication information from node 10 to authenticate node 10, determines the type of node 10 (identification number, etc.) based on the authentication information, determines whether communication connection is possible (determining whether it is a target device or a legitimate device, etc.), and also performs various settings for communication.

[0032] The communication adjustment function (implemented by the processing of the control unit 3) adjusts the communication method with each node 10 based on the communication load of the communication device 1. For example, the communication adjustment function is a function that controls communication such as waiting for low-priority data to be communicated or reducing the communication frequency when the communication load of the communication device 1 is high. Low-priority data is, for example, data not requested by the running application.

[0033] The container engine (implemented by the processing of the control unit 3) executes the application stored in the container of the communication device 1. Specifically, when the container engine receives an application execution request from node 10, it executes the application corresponding to node 10. Then, along with the execution of the application, the container engine retrieves data from the bulletin board that is necessary for the processing performed by the application and satisfies the specified conditions for the characteristic information described later. Finally, the container engine outputs the execution result of the application to node 10.

[0034] The bulletin board 41 consists of a storage area allocated to the storage unit 4 of the communication device 1, and stores data acquired from each node 10. Specifically, the communication device 1 posts (stores) the data acquired from each node 10 on the bulletin board 41 either as is, or converted into a format that can be used by other nodes 10 (nodes 10 that need the data). More specifically, the communication device 1 standardizes the data acquired from the nodes 10 so that each node 10 can use it, and then posts (stores) it on the bulletin board 41.

[0035] The data stored on bulletin board 41 is classified according to the TOPIC corresponding to the type of data. In the example shown in Figure 1, the three location data (GPS) are classified into the location TOPIC, and the one heart rate data is classified into the heart rate TOPIC.

[0036] As mentioned above, when a request to run an application is made from node 10, the data stored in bulletin board 41 is distributed to the container engine (accessed by the container engine) and used when the application is executed by the container engine. In addition, when node 10 runs its own application, the data stored in bulletin board 41 is distributed to node 10 (accessed by node 10) and used.

[0037] The information addition function (implemented by the processing of the control unit 3) adds feature information that indicates the characteristics of the data posted on the bulletin board. Figure 1 shows an example in which the name of the sensor owned by node 10, the detection accuracy of the sensor, and the detection frequency of the sensor are added to the data as feature information.

[0038] For example, in "[GPS_4_0.5]34.1234,135.1234", "[GPS_4_0.5]" corresponds to feature information, and "34.1234,135.1234" corresponds to the data detected by the actual sensor, i.e., location information.

[0039] Specifically, the feature information "[GPS_4_0.5]" indicates that the sensor name is GPS (Global Positioning System), the detection accuracy is to the last four digits, and the detection frequency is at 0.5-second intervals.

[0040] In other words, the feature information added by the information addition function is metadata of the data obtained from node 10. The feature information added by the information addition function may be obtained from node 10, the source of the data, from an external server (which holds a database containing metadata of data corresponding to the type of node 10), or it may be estimated by the communication device 1.

[0041] For example, the information addition function estimates the detection accuracy and detection frequency of the sensor based on the results of acquiring data from node 10 a predetermined number of times in a time series. Details of the method for estimating feature information will be described later.

[0042] Then, as the application runs, node 10 or the container engine retrieves data from bulletin board 41 (with feature information added) whose feature information meets the conditions required by the application and uses it for processing.

[0043] For example, regarding GPS location data, suppose the bulletin board 41 stores data for features [GPS_4_0.5], [GPS_5_0.8], and [GPS_6_1.0].

[0044] In this case, for example, if the application executed by node 10 requires that the GPS detection accuracy be at least six decimal places and the detection frequency be within 1.0 second, the application will select and acquire the data with the feature information "[GPS_6_1.0]" attached to it, as it satisfies the application's requirements, and use it for processing.

[0045] Furthermore, in this case, for example, if the application executed by the container engine requires that the GPS detection accuracy be at least four decimal places and the detection frequency be within 0.5 seconds, the application will select and acquire the data with the feature information "[GPS_4_0.5]" attached to it, as it satisfies the application's requirements, and use it for processing.

[0046] Thus, according to the communication method in the in-vehicle system of this embodiment, by adding characteristic information to the data and storing it on a bulletin board, it is possible to select data suitable for the application to be executed from among data of the same type by referring to the characteristic information of the data.

[0047] Next, an example of the configuration of the communication device 1 according to the embodiment will be described using Figure 2. Figure 2 is a block diagram showing the functional configuration of the communication device 1 according to the embodiment. As shown in Figure 2, the communication device 1 comprises a communication unit 2, a control unit 3, and a storage unit 4. The control unit 3 comprises an acquisition unit 31, a conversion unit 32, an addition unit 33, a container engine 34, a communication adjustment unit 35, and an authentication unit 36. The storage unit 4 comprises a bulletin board 41, a container unit 42, and a designated information storage unit 43.

[0048] The communication unit 2 has the communication functions described above and is connected to each node 10 so as to be able to communicate with it. The communication unit 2 is implemented using, for example, wired methods such as CAN, Ethernet (registered trademark), LIN (Local Interconnect Network), USB (Universal Serial Bus), etc., or wireless methods such as Wi-Fi, LTE (Long Term Evolution), BLE (Bluetooth (registered trademark) Low Energy), Zigbee (registered trademark), UWB (Ultra-Wide Band), etc., and communicates with each node 10 by wire or wireless.

[0049] The control unit 3 is a so-called controller, and is composed of a computer having a CPU (Central Processing Unit), ROM (Read Only Memory), RAM (Random Access Memory), flash memory, input / output ports, and various circuits.

[0050] The computer's CPU functions as the acquisition unit 31, conversion unit 32, addition unit 33, container engine 34, communication adjustment unit 35, and authentication unit 36 ​​of the control unit 3 by reading and executing programs stored in ROM.

[0051] Furthermore, at least one or all of the acquisition unit 31, conversion unit 32, addition unit 33, container engine 34, communication adjustment unit 35, and authentication unit 36 ​​of the control unit 3 can be configured with hardware such as an ASIC (Application Specific Integrated Circuit) or FPGA (Field Programmable Gate Array). In addition, multiple CPUs, ASICs, etc., can be configured to share functions (for example, the container engine 34 can be configured with a different CPU).

[0052] Furthermore, the storage unit 4 is composed of RAM and flash memory. The storage unit 4 is configured with appropriate storage area settings to form a bulletin board 41, a container unit 42, a designated information storage unit 43, and storage units for various programs, and can store various information such as measurement data from various sensors of each node 10, various programs such as applications, etc. The communication device 1 may acquire the above-mentioned programs and various information via other computers, servers, or portable recording media connected by wired or wireless networks.

[0053] The bulletin board 41 posts (stores) data obtained from node 10, adding characteristic information of the source node 10. Furthermore, the bulletin board 41 implements appropriate access control to allow each node 10 and container engine 34 to register, update, and read data.

[0054] The container unit 42 consists of a storage area allocated to the storage unit 4 and includes multiple containers 421 on which applications can be installed (stored). Each container 421 stores one application. In other words, as many applications as there are configured containers 421 can be installed. Applications are obtained from an external device (not shown) (such as an external server for providing applications (server device 50 shown in Figure 1)) and set (stored) in an empty container 421 (empty container). Applications that are no longer needed are deleted from the container 421, and that container 421 becomes an empty container. Applications may be deleted from the container 421 whenever they become unnecessary, or if there is space available in the container 421 (if there are other empty containers), applications that are no longer needed may be deleted when an empty container is needed for the installation of a new application.

[0055] The designated information storage unit 43 stores the designation conditions for characteristic information regarding data requested by the application installed in the container 421. The designation information is obtained from the external device that installed the application when the application is installed in the container 421 and stored in the designated information storage unit 43. In other words, the designation information is provided by the external device that installed the application along with the application program, the application (program) is stored in the container 421, and the designation information is stored in the designated information storage unit 43. It is also possible to apply a configuration in which the designated information storage unit 43 is provided within the container 421, that is, a configuration in which the application program and the designation information of the application are stored separately within the container 421. Further details of the designation information will be described in detail in Figures 3 to 5.

[0056] Next, the control unit 3 (acquisition unit 31, conversion unit 32, addition unit 33, container engine 34, communication adjustment unit 35, and authentication unit 36) will be described in detail.

[0057] The acquisition unit 31 acquires various information from various external devices via the communication unit 2. Specifically, the acquisition unit 31 acquires data from nodes 10 connected to the communication device 1 via various networks, via the communication unit 2. Specifically, the acquisition unit 31 acquires sensor data detected by sensors on the node 10.

[0058] Furthermore, the acquisition unit 31 acquires an installation instruction from the terminal device to install the application into the container 421 based on the user's application installation operation input to the terminal device (the input device (touch panel, etc.) of the communication device 1, or a node 10 that has an operation input function to the communication device 1 (for example, the user's mobile terminal (smartphone, etc.) connected to the communication device 1)). The acquisition unit 31 also acquires an update instruction from the user's terminal device to update the application stored in the container 421. In addition, when a new node 10 is connected to the communication device 1, the acquisition unit 31 acquires information about the node 10 from the node 10, such as the type of node 10, communication connection information for establishing a communication connection with the node 10, and sensor information regarding the sensors of the node 10.

[0059] The acquisition unit 31 acquires the application to be installed from the external device (server device 50) and stores it in the container 421. Specifically, when the acquisition unit 31 receives an installation instruction or when a new node 10 is connected, it transmits information about the node 10 connected to the external device that provides the application. The acquisition unit 31 then acquires the application provided from the external device according to the connected node 10 and stores it in the container 421. The acquisition unit 31 may also be configured to allow the user to select the application to be installed (stored in the container 421) from the applications acquired by the acquisition unit 31. Alternatively, the acquisition unit 31 may select the application to be installed based on the user's selection operation from a suitable application list transmitted from the external device before the application is provided, transmit information about the selected application to the external device, and have the external device provide the application to be installed.

[0060] Furthermore, the acquisition unit 31 acquires the application to be updated based on user input or application version update information from an external device, and performs an update (renewal process) on the application stored in the container 421.

[0061] Furthermore, when installing an application from an external device, the acquisition unit 31 acquires specification information regarding the data specification conditions used by the application from the external device and stores it as specification information in the storage unit 4. Also, when updating the application, the acquisition unit 31 acquires update information for the specification information from the external device and updates the specification information stored in the storage unit 4. The acquisition unit 31 may also acquire the specification information directly from the node 10.

[0062] Furthermore, the acquisition unit 31 acquires authentication information for authenticating the node 10 from the connected (communication-capable) node 10, such as information about the type of equipment of node 10, identification number, communication method, and code required for communication. The acquisition unit 31 acquires authentication information from each node 10 connected to the communication device 1 when authentication is required, for example, when the power of the communication device 1 is turned on or when a new node 10 is connected to the communication device 1.

[0063] The conversion unit 32 converts the data acquired by the acquisition unit 31 from the node 10 into a format usable by each node 10 other than the source node 10. Specifically, the conversion unit 32 converts the data to unify the specifications (data identification name, format, etc.) of the acquired data.

[0064] The addition unit 33 adds characteristic information of the node 10, which is the data source, to the data converted by the conversion unit 32. The characteristic information includes, for example, the name of the node 10, the name of the sensor that the node 10 has, the detection accuracy of the sensor, the detection frequency of the sensor, the type of device of the node 10, and the installation method of the node 10. Basically, this is information estimated by the acquisition unit 31 from the identification information and authentication information related to the node 10 that it has acquired from the node 10 (including cases where the characteristic information itself is included in the identification information and authentication information and that information is extracted). In other words, when the communication device 1 is powered on, or when a new node 10 is connected to the communication device 1, the characteristic information of the node 10 (or related information related to the characteristic information) is acquired from the node 10, and the addition unit 33 uses this acquired characteristic information (or characteristic information obtained by estimation processing based on related information). Alternatively, the characteristic information of the node 10 may be acquired from the server device 50 (which owns a database of characteristic information associated with node types) based on the type of node 10 (identification information).

[0065] If feature information for node 10 cannot be obtained, the addition unit 33 can estimate the feature information using data acquired from node 10. For example, the addition unit 33 estimates feature information such as the detection accuracy and detection frequency of the sensor at node 10 based on the results of acquiring data from node 10 a predetermined number of times in a time series. This eliminates the need to design a new function on the node 10 side to generate and transmit feature information, thus reducing the burden on the node 10 manufacturer. Details of the feature information added by the addition unit 33 and the estimation method will be described later in Figures 3 to 5.

[0066] The container engine 34 executes applications stored in the container 421, retrieving various data stored in the bulletin board 41 as needed, and performs processing to realize various functions. Specifically, first, the container engine 34 reads the specified information corresponding to the application to be executed from the specified information storage unit 43. Then, the container engine 34 selects and imports data of characteristic information that satisfies the specified conditions of the imported specified information from the data posted on the bulletin board 41. Then, the container engine 34 performs various processing of the application using the imported data and controls the node 10 by sending instruction commands and control data based on the processing results to the node 10.

[0067] As a concrete example, let's explain using an air conditioning application that controls the air conditioning system installed in a vehicle. This application generates an optimal temperature setting using data on room temperature, heart rate, and pulse rate, and controls the in-vehicle air conditioning system, which is node 10, with this optimal temperature setting. The communication device 1 is connected to the in-vehicle air conditioning system, a driver health monitoring device, and a drowsy driving prevention device as nodes 10, and the air conditioning application is stored in container 421 in conjunction with the connection of these nodes 10. The in-vehicle air conditioning system has a built-in room temperature sensor A that measures the temperature inside the vehicle, the driver health monitoring device has a built-in heart rate sensor B and a body temperature sensor C that measure the driver's heart rate and body temperature, and the drowsy driving prevention device has a built-in heart rate sensor D that measures the driver's heart rate. Furthermore, the specified information for the air conditioning application stored in the specified information storage unit 43 is that the measurement data of room temperature sensor A, body temperature sensor C, and heart rate sensor D meet the conditions, but heart rate sensor B does not.

[0068] In such cases, the acquisition unit 31 of the communication device 1 acquires measurement data from the sensors of the in-vehicle air conditioning system, the driver health monitoring system, and the drowsy driving prevention system: room temperature sensor A, heart rate sensor B, body temperature sensor C, and heart rate sensor D. The conversion unit 32 then converts the measurement data from each sensor acquired by the acquisition unit 31 into a format that can be posted on the bulletin board 41. The addition unit 33 adds characteristic information (measurement accuracy, frequency, etc. of each sensor) corresponding to the measurement data converted by the conversion unit 32, based on the characteristic information of each node 10 acquired by the authentication unit 36 ​​when each node 10 is connected, and posts it on the bulletin board 41. The data posted on the bulletin board 41 is updated as needed according to the measurement operation of each sensor and the data acquisition operation of the acquisition unit 31, at the data measurement (update) frequency indicated by the characteristic information.

[0069] The container engine 34 retrieves data used by the air conditioner application from the bulletin board 41 upon execution of the air conditioner application. At this time, the container engine 34 reads the specified information about the air conditioner application from the specified information storage unit 43 and retrieves data that has characteristic information that satisfies the conditions of the specified information. In this example, since the data from room temperature sensor A, body temperature sensor C, and heart rate sensor D satisfy the conditions of the specified information about the air conditioner application, the container engine 34 retrieves the data from these sensors from the bulletin board 41.

[0070] The container engine 34 then calculates the optimal temperature based on the room temperature data, body temperature data, and heart rate data acquired from the room temperature sensor A, body temperature sensor C, and heart rate sensor D. The container engine 34 then outputs the calculated optimal temperature data as the set temperature (control target temperature) to the air conditioner, which is node 10. As a result, the air conditioner ECU, which is the control unit of the air conditioner, controls the air conditioner using the set temperature as the optimal temperature calculated by the air conditioner application.

[0071] Furthermore, if the system is configured to post this optimal temperature data on the bulletin board 41, the acquisition unit 31 acquires this optimal temperature data. The conversion unit 32 then converts the optimal temperature data into a format suitable for posting on the bulletin board 41. Finally, the addition unit 33 adds characteristic information (generated based on the characteristic information of the data from the sensor used) and posts it on the bulletin board 41, making it available for use by each node 10 and each application.

[0072] This allows the air conditioner, which is node 10, to perform more advanced temperature control than normal temperature control, such as bringing the room temperature closer to the set temperature set by the driver. This control takes into account the vehicle's room temperature and the driver's physical condition (body temperature data, heart rate data).

[0073] Furthermore, if the air conditioner, which is node 10, does not have a temperature sensor (inside the vehicle), or if the accuracy of the temperature sensor is low, the air conditioner application may simply output the measurement data from the temperature sensor of another node 10 to the air conditioner. In other words, the container engine 34 (operated by the application) may select data (e.g., room temperature data) that satisfies the conditions of the specified information (e.g., temperature error of 0.5 degrees) corresponding to the application (e.g., air conditioner application) stored in the specified information storage unit 43 from the data posted on the bulletin board 41, and provide that data directly to the node 10 to be controlled.

[0074] Furthermore, if no data with characteristic information that satisfies the conditions of the specified information stored in the specified information storage unit 43 exists on the bulletin board 41, the container engine 34 (app content) may select the data with the highest proportion of characteristic information that satisfies the conditions (the data with characteristic information that is closest to the conditions).

[0075] Furthermore, if the container engine 34 (app content) does not have data on the bulletin board 41 that has characteristic information that satisfies the conditions of the specified information stored in the specified information storage unit 43, or if there is no data on the bulletin board 41 that has characteristic information closest to those conditions, it may notify the user via a terminal device or the like of a request to connect an additional node 10 (sensor) that can output data that satisfies those conditions.

[0076] Furthermore, the container engine 34 performs a process to remove unnecessary applications from the container 421. Unnecessary applications include, for example, applications whose node 10 that outputs processing results no longer exists (becoming disconnected from the communication device 1), and applications whose node 10 that provides data necessary for processing no longer exists (becoming disconnected from the communication device 1).

[0077] The communication coordination unit 35 coordinates communication with each node 10 connected to the network. Specifically, the communication coordination unit 35 adjusts the communication timing with each node 10 based on the communication load on the communication device 1. For example, when the communication load on the communication device 1 is high (when the number of nodes 10 communicating is greater than a predetermined number, when the amount of data being communicated is greater than a predetermined amount, or when the amount of data being communicated is greater than a predetermined amount), the communication coordination unit 35 waits for the communication of low-priority data. Low-priority data includes, for example, data not requested by the application, data with low sensor detection accuracy, data with low sensor detection frequency, data related to functions of low importance or urgency, etc.

[0078] The authentication unit 36 ​​authenticates the nodes 10 connected to the communication device 1. Specifically, the authentication unit 36 ​​authenticates each node 10 based on the authentication information acquired by the acquisition unit 31, and performs various tasks such as storing data related to the node, setting up communication and communication connections.

[0079] Next, we will explain the method of selecting data using the feature information of node 10 (sensor data) using Figures 3 to 5. Figures 3 to 5 are diagrams illustrating the method of selecting data using feature information.

[0080] Figure 3 shows an example where the sensor name, detection accuracy, and detection frequency are added to the sensor's measurement data as characteristic information for node 10, and the sensor name, detection accuracy, and detection frequency are specified as conditions in the specification information for the target application.

[0081] As shown in Figure 3, the control unit 3 selects data from the bulletin board 41 that has characteristic information that satisfies the specified conditions of the sensor name, detection accuracy, and detection frequency in the specified information about the application to be executed stored in the specified information storage unit 43.

[0082] In the example shown in Figure 3, the data characteristics of "[GPS_6_0.5]34.123456,135.123456" (sensor name: GPS sensor, detection accuracy: 6 decimal places, detection frequency (interval): 0.5 seconds) satisfy the data conditions of the target application (sensor name: GPS sensor, detection accuracy: 6 or more decimal places, detection frequency (interval): within 0.5 seconds), so this data is selected. Also in the example shown in Figure 3, the data characteristics of "[HeartRate_1_10]65" (sensor name: heart rate sensor, detection accuracy: 1 decimal place, detection frequency (interval): 10 seconds) satisfy the data conditions of the target application (sensor name: heart rate sensor, detection accuracy: 0 decimal places, detection frequency (interval): within 30 seconds), so this data is selected.

[0083] If the data for "[GPS_6_0.5]34.123456,135.123456" does not exist, that is, if there is no data on the bulletin board 41 that has characteristic information that satisfies the sensor name, detection accuracy, and detection frequency specified in the specified information about the target application stored in the specified information storage unit 43, the control unit 3 will select data with characteristic information that is close to the conditions specified in the specified information, for example, "[GPS_6_1.0]34.123450,135.123450" (detection frequency (interval) is 1.0 seconds, which slightly does not meet the condition of being within 0.5 seconds, but satisfies the other conditions), or "[GPS_4_0.5]34.1234,135.1234" (detection accuracy is 4 decimal places, which slightly does not meet the condition of 6 decimal places, but satisfies the other conditions).

[0084] In such cases, each condition item (detection accuracy and detection frequency) in the specified information is assigned a priority, and the data of the feature information that is closest to the condition of the item with the highest priority is selected. For example, if the priority of detection accuracy is set higher than that of detection frequency, the control unit 3 selects the data "[GPS_6_1.0]34.123450,135.123450" which has the detection accuracy closest to the condition of the specified information (in this example, there are two data, so it will be the closer one).

[0085] As a result, when the container engine 34 runs the application, even if there is no data on the bulletin board 41 that satisfies the conditions required by the application, it can retrieve data that satisfies those conditions in a favorable manner and run the application, thus enabling relatively favorable control.

[0086] Next, Figure 4 shows an example where the sensor name and device name are specified as conditions in the specification information for the application to be executed (no conditions are specified for detection accuracy and detection frequency).

[0087] As shown in Figure 4, the control unit 3 selects data from the bulletin board 41 that has characteristic information that satisfies the sensor name and device name specified in the specified information about the application to be executed stored in the specified information storage unit 43.

[0088] In the example shown in Figure 4, the data "[GPS_Car Navigation]34.1234,135.1234" is selected because its characteristics (sensor name: GPS sensor, device name: car navigation) satisfy the data conditions of the target application (sensor name: GPS sensor, device name: car navigation). Also in the example shown in Figure 4, the data "[HeartRate_Smartwatch]65" is selected because its characteristics (sensor name: HeartRate (heart rate sensor), device name: smartwatch) satisfy the data conditions of the target application (sensor name: heart rate sensor, device name: smartwatch).

[0089] As a result, the container engine 34 can acquire and process sensor data from specific devices that meet the specified information conditions for the application when the application is executed, enabling optimal control by the application. It is also useful to inform the user if a specific device that meets the specified information conditions is not connected as node 10 (for example, that advanced functions can be realized by connecting the specific device), which can be expected to promote sales of that specific device.

[0090] Next, Figure 5 shows an example where the sensor name (sensor name) and installation method (fixed / free) are specified as conditions in the specification information for the application to be executed (no conditions are specified for detection accuracy and detection frequency, etc.). Note that the feature data regarding the sensor installation method (fixed / free) at node 10 may be obtained from node 10, but in the case of a G sensor (accelerometer), the control unit 3 can also estimate it using the following method.

[0091] The control unit 3 estimates the installation method of the G-sensor based on the detected values ​​of the G-sensor. Specifically, the control unit 3 estimates that the G-sensor is fixed to the vehicle ("fixed") if the detected values ​​of the G-sensor have many high-frequency, small-amplitude vibration components, and estimates that the G-sensor is not fixed to the vehicle ("free"), for example, attached to a user, if the detected values ​​of the G-sensor have many low-frequency, large-amplitude vibration components. This is because if the G-sensor is fixed inside the vehicle, it is susceptible to the effects of driving vibrations with many high-frequency, small-amplitude vibration components, while if it is attached to the arm of an occupant and moves freely, the driving vibrations are absorbed by the person's body, and instead, it is susceptible to the effects of the person's movements with many low-frequency, large-amplitude vibration components.

[0092] The control unit 3 selects data from the bulletin board 41 that has characteristic information that satisfies the conditions specified in the designated information storage unit 43 regarding the application to be executed, name and installation method of the sensor.

[0093] Note that the example shown in Figure 5 is an example where the application requires data from two types of sensors that satisfy two conditions (sensor name: G-sensor, installation method (fixed / free): fixed).

[0094] The data characteristics of "[G_Fixed]0.1,0.1,0" (sensor name: G sensor, installation method (fixed / flexible): fixed) satisfy the data conditions of the target application (sensor name: G sensor, installation method (fixed / flexible): fixed), so the container engine 34 selects and retrieves this data from the bulletin board 41.

[0095] Furthermore, since the data characteristics of "[G_free]-0.2,0.2,0.1" (sensor name: G sensor, installation method (fixed / free): free) satisfy the data conditions of the target application (sensor name: G sensor, installation method (fixed / free): free), the container engine 34 also selects and acquires this data from the bulletin board 41.

[0096] The container engine 34 then uses the data from these two selected sensors to execute the target application and outputs the results of the application execution to the corresponding node 10.

[0097] For example, one application that uses this type of data is one that detects motion sickness in occupants based on the G-sensor readings. In such applications, motion sickness is analyzed from the movement of the vehicle (fixed G-sensor) and the movement of the person (free G-sensor). Therefore, the container engine 34 needs to process the data of the vehicle's movement and the person's movement separately. For this reason, the control unit 3 operates to provide data to the container engine 34 (application) in a way that allows it to distinguish between data from a G-sensor fixed to the vehicle and data from a G-sensor that is not fixed to the vehicle (but fixed to the person).

[0098] Next, the processing procedure of the communication device 1 (control unit 3) according to the embodiment will be described using Figures 6 and 7. Figures 6 and 7 are flowcharts showing the processing procedure of the communication device 1 according to the embodiment. Figure 6 shows the data posting process from acquiring data from node 10 to posting it on bulletin board 41, and Figure 7 shows the processing related to the application that takes in the data posted on bulletin board 41 and processes it.

[0099] The data entry process shown in Figure 6 is repeatedly executed when the communication device 1 is operational (powered on). First, in step S101, the control unit 3 determines whether there has been a change in the connected node 10. If there is a change (Yes), it proceeds to step S102; otherwise, it proceeds to step S103 (No). Note that when the power is turned on, all connected nodes 10 are determined to have had a change in connection (new connection). In step S102, the control unit 3 performs device authentication for the node 10 with the connection change and proceeds to step S103.

[0100] In step S103, the control unit 3 acquires data from each authenticated node 10 and moves to step S104. In step S104, the control unit 3 converts the data acquired from each node 10 into a format that can be used by each application and node 10, for example, into a standardized format, and moves to step S105. In step S105, the control unit 3 estimates the characteristic information of each node 10 (and its sensors) based on the information of each node 10 (and its sensors) obtained during the authentication process in step S102, or estimates the characteristic information of each node 10 (and its sensors) based on past sensor measurement data acquired from each node 10 (and its sensors), and moves to step S106.

[0101] Next, in step S106, the control unit 3 adds the feature information estimated in step S105 to the data converted in step S104, and then proceeds to step S107. Then, in step S107, the control unit 3 posts the data with the added feature information to the bulletin board 41 and terminates the process.

[0102] Next, the processing related to the application will be explained using Figure 7. This processing related to the application includes application installation and processing based on the application, and is repeatedly executed when the communication device 1 is running (powered on).

[0103] In step S201, the control unit 3 first determines whether a new application is in the installation state (as described above, there has been a change in the connection state of node 10, and communication device 1 has decided which application to install through communication and processing with server device 50 (automatic determination based on various conditions, or determination based on the operation of node 10 user)). If the application to be installed has been decided (Yes), the unit proceeds to step S202; otherwise, it proceeds to step S204. In step S202, the control unit 3 retrieves the application to be installed from server device 50 and stores (installs) it in container 421, then proceeds to step S203. In step S203, the control unit 3 retrieves the application specification information stored in container 421 from server device 50 and stores it in specification information storage unit 43, then proceeds to step S204.

[0104] Next, in step S204, the control unit 3 executes the application installed in the container 421 that is in an execution request state (based on the user's application execution request operation, application execution requests from each node 10, etc.), and proceeds to step S205. In step S205, the control unit 3 determines whether there is any data on the bulletin board 41 that is used by the application to be executed and has characteristic information that satisfies the conditions indicated by the designated information corresponding to the application. If there is data with characteristic information that satisfies the conditions (Yes), the control unit 3 determines that the data will be used by the application and proceeds to step S206; otherwise, it proceeds to step S208.

[0105] In step S208, the control unit 3 determines whether there is any data on the bulletin board 41 that satisfies the conditions indicated by the specified information corresponding to the application to be executed at a rate higher than a predetermined rate. If there is (Yes), it determines that the data will be used by the application and proceeds to step S206; otherwise (No), it proceeds to step S209.

[0106] Then, in step S206, the control unit 3 retrieves the data determined to be used from the bulletin board 41 and proceeds to step S207. In step S207, the control unit 3 uses the retrieved data to process the application and terminates the process by outputting the processing result to the corresponding node 10.

[0107] Furthermore, in step S209, the control unit 3 notifies the user (by displaying, etc.) of a request to connect an additional node 10 that has a sensor capable of outputting data that satisfies the conditions indicated by the specified information, and terminates the process. In addition, in step S209, the user may be notified that there is no data that satisfies the conditions (that no node capable of providing data that satisfies the conditions is connected), and the execution of the application may be stopped.

[0108] As described above, the communication device 1 according to the embodiment is a communication device 1 to which a plurality of nodes 10 can be connected, and has a controller (control unit 3). The controller takes in data from the connected nodes 10, stores the taken-in data in a bulletin board 41 which is a storage unit 4 that can be used by multiple applications, estimates feature information that indicates the characteristics of the data, stores it in association with the data, and when an application is executed, selects the data to be used in the processing of the application from the data stored in the bulletin board 41 based on the correspondence between the specified information and the feature information that is specified as the conditions for the data to be used by the application.

[0109] This allows for the selection of data to be used during the execution of each application by comparing the data request content of that application with the characteristic information of node 10, which is the data source. Therefore, it is possible to appropriately determine the data to be used in the application's processing.

[0110] Further effects and modifications can be readily derived by those skilled in the art. Therefore, broader aspects of the present invention are not limited to the specific details and representative embodiments expressed and described above. Accordingly, various modifications are possible without departing from the spirit or scope of the overall concept of the invention as defined by the appended claims and their equivalents. [Explanation of Symbols]

[0111] 1. Communication device 2 Communications Department 3. Control Unit 4 Storage section 10 nodes 31 Acquisition Department 32 Conversion section 33 Addition part 34 Container Engines 35 Communications Coordination Department 36. Authentication Department 41 Bulletin Board 42 Container Section 43 Specified information storage section 421 containers S Communication System

Claims

1. A communication device mounted on a vehicle, comprising: a controller; The controller: acquiring sensor data from a plurality of vehicle-mounted devices, and storing reference data to which characteristic information of the vehicle-mounted device from which each sensor data was acquired has been added in a storage unit; Selecting data from the reference data that matches a data designation condition set in an application for controlling an operation of the target vehicle-mounted device in response to a request from any one of the plurality of vehicle-mounted devices or a user, and executing the application; Transmitting the control data generated by the application to the target vehicle-mounted device; Communications equipment.

2. The characteristic information is information regarding the name of a sensor possessed by the vehicle-mounted device, the detection accuracy of the sensor, and the detection frequency of the sensor. The communication device according to claim 1 .

3. The characteristic information is information regarding a name of the vehicle-mounted device and a name of a sensor possessed by the vehicle-mounted device. The communication device according to claim 1 .

4. The characteristic information is information regarding the names of sensors possessed by the vehicle-mounted equipment and information regarding a method of arranging the sensors. The communication device according to claim 1 .

5. The data designation condition is information related to a name of the vehicle-mounted device, a name of a sensor possessed by the vehicle-mounted device, a detection accuracy of the sensor, a detection frequency of the sensor, or a method of arranging the sensor. The communication device according to claim 1 .

6. The controller, converting the sensor data acquired from the plurality of vehicle-mounted devices into a standardized format that can be used by the application; The communication device according to claim 1 .

7. The controller: acquiring the application and the data designation condition set in the application from an external server; The communication device according to claim 1 .

8. The controller, if there is no data satisfying the data designation condition in the storage unit, data satisfying any one of the items of the characteristic information is selected from the reference data. A communication device according to any one of claims 1 to 7.

9. The controller, if there is no data satisfying the data designation condition in the storage unit, data matching a preset high priority item in the characteristic information is selected from the reference data. A communication device according to any one of claims 1 to 7.

10. A communication device mounted on a vehicle, comprising: a controller; The controller: adding index data including a data type and characteristic information of the vehicle-mounted device from which the sensor data was acquired to each of the plurality of vehicle-mounted devices and storing the data; When executing an application in response to a request from any of the vehicle-mounted devices or a user, by referring to the characteristic information, the sensor data that matches the request is selected from the plurality of stored sensor data of the same data type, and control data is generated and transmitted to the target vehicle-mounted device. Communications equipment.