COMMUNICATION DEVICE, COMMUNICATION SYSTEM, AND DATA STORAGE METHOD

The communication device effectively selects and processes data from multiple nodes by associating feature information with application conditions, enhancing data utilization and functionality.

JP7809005B2Active Publication Date: 2026-01-30DENSO TEN LTD
View PDF 7 Cites 0 Cited by

Patent Information

Application Number
JP2022080503
Authority / Receiving Office
JP · JP
Patent Type
Patents
Current Assignee / Owner
Filing Date
2022-05-16
Publication Date
2026-01-30
Estimated Expiration
2042-05-16

AI Technical Summary

Technical Problem

Conventional methods struggle to appropriately determine which data to use from multiple nodes connected to a network, particularly when the same type of sensor data is acquired from different nodes.

Method used

A communication device that includes a controller to acquire data from nodes, store it in a bulletin board with associated feature information, and select data for processing based on designated conditions using a correspondence between feature information and application requirements.

Benefits of technology

Enables appropriate determination of data to use from multiple nodes, allowing for advanced functionality by leveraging data from various sensors and devices.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 0007809005000001
    Figure 0007809005000001
  • Figure 0007809005000002
    Figure 0007809005000002
  • Figure 0007809005000003
    Figure 0007809005000003
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 technology]

[0002] Conventionally, there are known methods for making vehicle data accessible via a vehicle network in a manner that is independent of the vehicle model, manufacturer, or year of manufacture. This type of technology also includes a technique for sharing stored data among multiple devices (see, for example, Patent Document 1). [Prior art documents] [Patent documents]

[0003] [Patent Document 1] Japanese Patent Application Laid-Open No. 2017-170267 Summary of the Invention [Problem to be solved by the invention]

[0004] Here, multiple nodes connected to a network may each be equipped with the same type of sensor. However, with conventional technology, for example, when the same type of sensor data is acquired from different nodes, it may be difficult to appropriately determine which sensor data to use. Note that this problem is not limited to sensor data, but can occur with various types of data.

[0005] The present invention has been made in consideration of the above, and aims to provide a communication device, a communication system, and a data storage method that can appropriately determine the data to be used from data obtained from multiple nodes. [Means for solving the problem]

[0006] In order to solve the above-mentioned problems and achieve the object, a communication device according to the present invention is a communication device to which a plurality of nodes can be connected, and includes a controller, which acquires data from the connected nodes, stores the acquired data in a bulletin board that is a storage unit usable by a plurality of applications, estimates feature information indicating characteristics of the data, stores the estimated feature information in association with the data, and, when an application is executed, selects data to be used in processing the application from the data stored in the bulletin board based on a correspondence between the feature information and designation information designated as a condition for data to be used by the application. [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 a plurality of nodes. [Brief explanation of the drawings]

[0008] [Figure 1] FIG. 1 is a diagram showing an overview of a communication method according to an embodiment. [Figure 2] FIG. 2 is a block diagram illustrating a functional configuration of the communication device according to the embodiment. [Figure 3] FIG. 3 is a diagram showing a method for selecting data using feature information. [Figure 4] FIG. 4 is a diagram showing a method for selecting data using feature information. [Figure 5] FIG. 5 is a diagram showing a method for selecting data using feature information. [Figure 6] FIG. 6 is a flowchart illustrating a processing procedure executed by the communication device according to the embodiment. [Figure 7] FIG. 7 is a flowchart illustrating a processing procedure of a process executed by the communication device according to the embodiment. DETAILED DESCRIPTION OF THE INVENTION

[0009] Hereinafter, embodiments of a communication device, a communication system, and a data storage method disclosed in the present application will be described in detail with reference to the accompanying drawings. Note that the present invention is not limited to the following embodiments.

[0010] First, an overview of a communication system according to an embodiment will be described with reference to Fig. 1. Fig. 1 is a conceptual diagram showing an overview of a communication system according to an embodiment. In Fig. 1, components (compositional expressions) and functional elements (functional expressions) are appropriately mixed together to make the overall operation of the communication system easier to understand.

[0011] 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 CAN (Controller Area Network) for vehicle communication or Wi-Fi (registered trademark), and transmit and receive various information. The communication device 1 and the server device 50 are connected to a network such as the Internet, and transmit and receive various information.

[0012] The node 10 is connected to the communication device 1 to send or receive various data, and includes various devices that independently perform certain functions (using data from the communication device 1 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] The node 10 may be a device that is brought into the vehicle by a passenger or placed in close proximity to the vehicle (located around the vehicle) and communicatively connected to the communication device 1, a device that is installed during vehicle manufacture, or a device that is newly added and installed by a user or the like after the vehicle is manufactured or sold. Note that the size of each node 10 differs depending on the structure of the vehicle, but examples of the various devices (nodes 10) that are installed during vehicle manufacture include an engine control device, a steering device, a braking device, and an air conditioning device.

[0014] Furthermore, devices (nodes 10) newly installed by users or the like include, for example, navigation devices, drive recorder devices, audio-visual devices, etc. Furthermore, devices (nodes 10) brought into (or brought into proximity with) a vehicle by a passenger include smartphones, mobile phones, smartwatches, game consoles (with communication functions), desktop PCs, notebook PCs, tablet PCs, etc.

[0015] The various sensors (other than those built into the various devices) include, for example, a humidity sensor (for checking the environment inside the vehicle), etc. The output devices include, for example, a centralized operation panel and a rear seat display.

[0016] Although the examples of devices are categorized into those installed during vehicle manufacture, those installed additionally, and those brought into the vehicle, the illustrated devices are not limited to these categories and may belong to other categories. For example, a navigation device may be installed during vehicle manufacture. Furthermore, various devices of other vehicles and infrastructure equipment such as traffic lights may also be nodes 10 within a range where communication with the communication device 1 is possible.

[0017] Furthermore, a specific node 10 includes, as components, various sensors necessary for realizing various functions of the node 10. The various sensors included in the node 10 include, for example, a vehicle speed sensor, a vital sensor, a temperature sensor for detecting the temperature of the vehicle cabin, a CO2 sensor for detecting the CO2 concentration in the vehicle cabin, a GPS (Global Positioning System) position sensor for detecting the location of the vehicle, etc. The vital sensor is a sensor for acquiring biological information, such as an electroencephalogram sensor for detecting electroencephalograms, a pulse sensor for detecting pulse, etc.

[0018] Furthermore, the node 10 that independently realizes a certain 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. Examples of ECUs include a powertrain ECU, a driving assistance ECU, a multimedia ECU, and an air conditioning ECU.

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

[0020] The server device 50 also stores a database as a node information DB 54, which associates the types of nodes 10 (identification information), the types of sensors (measurement data) possessed by the nodes 10, and the types of external data (control data, instruction data (so-called commands), etc.) that can be used by the nodes 10. That is, the server device 50 can select an appropriate application for a combination of nodes 10 based on the combination of nodes 10 using the node information DB 54 and the application DB 52.

[0021] The communication device 1 is mounted on a vehicle and performs transmission and reception of various data with the node 10 and the server device 50, processing of data, etc. 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 performs data communication between the communication device 1 and the server device 50, and data communication between the communication device 1 and each node 10. The container 421 stores an application and is configured as a writable and erasable memory. Each container 421 is configured by appropriately dividing the memory area, and each container 421 stores one application.

[0023] Bulletin board 41 is configured with memory and stores sensor measurement values ​​and processed data from each node 10. In addition, bulletin board 41 can be accessed by node 10, allowing node 10 to write the measurement values ​​of its own sensors and read and use the data stored in bulletin board 41.

[0024] 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 of the communication device 1, such as the operation of the communication unit 2, the container 421, the bulletin board 41, etc., data processing, data transmission / reception, and writing / erasing, and is configured by a microcomputer, etc. The control unit 3 also has the function of a container engine that executes the application stored in the container 421.

[0026] The communication device 1 distributes data to the node 10 and a container engine (described later) that executes an application, for example, using MQTT (Message Queuing Telemetry Transport) based on the Publish / Subscribe method (the node 10 or the container engine accesses a bulletin board to obtain the data). Specifically, in the communication system S, the communication device 1, which is a provider, obtains data from the node 10, which is a publisher, and distributes the data to the container engine that executes the application and the node 10, which are subscribers.

[0027] The application uses the data acquired from the node 10 to perform processing related to various controls in the node 10 mounted on a vehicle, for example. In other words, the application performs processing by importing and using data posted on a bulletin board, and controls the node 10 based on the processing results.

[0028] Such an application allows a node 10 to realize more advanced or other functions using the measurements of sensors possessed by other nodes 10 (sensors that the node 10 does not have). For example, an air conditioner, which is a node 10, can optimally control the air conditioner by using not only the interior temperature measured by its own interior temperature sensor, but also the interior humidity measured by an interior humidity sensor of the other node 10. Such control is executed by a corresponding application stored in the container 421 to control the node 10 (the air conditioner in this example). If the air conditioner has a corresponding function, the air conditioner can also read the data on the bulletin board 41 and perform the control.

[0029] Furthermore, the application is appropriately selected and acquired from the server device 50 according to the node 10 connected to the communication device 1. Specifically, identification information of each node 10 connected to the communication device 1 is transmitted to the server device 50. The server device 50 performs a matching process with the node information DB 54 using the received identification information of each node 10, and ascertains the data type (content) that the communication device 1 can acquire from each node 10. The server device 50 then performs a matching process with the application DB using the ascertained data type (content), selects an appropriate application that the communication device 1 can use, and provides (transmits) 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 characteristic 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 FIG. 2, etc.

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

[0032] The communication adjustment function (realized by the processing of the control unit 3) adjusts the communication method 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, the communication adjustment function performs control such as putting communication of low-priority data on hold or reducing the frequency of communication. Note that low-priority data is, for example, data that is not requested by a running application.

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

[0034] The bulletin board 41 is configured with 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 after converting the data into a format that can be used by each node 10 other than the acquisition source (node ​​10 that requires the data). More specifically, the communication device 1 unifies the data standard so that the data acquired from the nodes 10 can be used by each node 10, and posts (stores) the data on the bulletin board 41.

[0035] The data stored on the bulletin board 41 is classified into each TOPIC corresponding to the type of data. In the example shown in Fig. 1, three pieces of location information (GPS) data are classified into a TOPIC for location information, and one piece of heart rate (Heart Rate) data is classified into a TOPIC for heart rate.

[0036] As described above, when an application execution request is made from node 10, the data stored in bulletin board 41 is delivered to (accessed by) the container engine and used in conjunction with the execution of the application by the container engine. Also, the data stored in bulletin board 41 is delivered to (accessed by) node 10 and used in conjunction with the execution of the application held by node 10.

[0037] The information addition function (realized by the processing of the control unit 3) adds characteristic information indicating the characteristics of the data posted on the bulletin board. Fig. 1 shows an example in which the name of the sensor possessed by the node 10, the detection accuracy of the sensor, and the detection frequency of the sensor are added to the data as characteristic 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 data detected by an actual sensor, that is, location information.

[0039] Specifically, the characteristic information "[GPS_4_0.5]" indicates that the name of the sensor is GPS (Global Positioning System), the detection accuracy is up to the last four digits, and the detection frequency is every 0.5 seconds.

[0040] In other words, the characteristic information added by the information addition function is metadata of the data acquired from the node 10. Note that the characteristic information added by the information addition function may be acquired from the node 10 as the acquisition source, or may be acquired from an external server (having a database in which metadata of data corresponding to the type of node 10 is stored), or 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 continuously in time series a predetermined number of times from the node 10. Details of the method for estimating the feature information will be described later.

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

[0043] For example, it is assumed that the bulletin board 41 stores the following data regarding GPS position: feature [GPS_4_0.5], feature [GPS_5_0.8], and feature [GPS_6_1.0].

[0044] In this case, for example, if an application executed by node 10 requires data conditions for GPS such that the detection accuracy is at least six digits and the detection frequency is within 1.0 seconds, the data with the characteristic information "[GPS_6_1.0]" added satisfies the conditions required by the application, and therefore the application selects and acquires the data as the data to be used for processing, and uses it for processing.

[0045] Also, in this case, for example, if an application executed by a container engine requires data conditions for GPS such that the detection accuracy is at least four digits in the last place and the detection frequency is within 0.5 seconds, the data with the characteristic information "[GPS_4_0.5]" added satisfies the conditions required by the application, and therefore the application selects and acquires such data as the data to be used for processing, and uses it for processing.

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

[0047] Next, an example of the configuration of the communication device 1 according to the embodiment will be described with reference to Fig. 2. Fig. 2 is a block diagram showing the functional configuration of the communication device 1 according to the embodiment. As shown in Fig. 2, the communication device 1 includes a communication unit 2, a control unit 3, and a storage unit 4. The control unit 3 includes 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 includes a bulletin board 41, a container unit 42, and a specified information storage unit 43.

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

[0049] The control unit 3 is a so-called controller, and is configured by, for example, 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 reads and executes the programs stored in the ROM, thereby functioning 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.

[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 using hardware such as an ASIC (Application Specific Integrated Circuit) or FPGA (Field Programmable Gate Array), and further, multiple CPUs, ASICs, etc. can be configured to share functions (for example, the container engine 34 can be configured using a separate CPU).

[0052] The storage unit 4 is configured with RAM and flash memory. By setting appropriate storage areas, the storage unit 4 is formed with a bulletin board 41, a container unit 42, a specified 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 apps, etc. The communication device 1 may also acquire the above-mentioned programs and various information via other computers, servers, or portable recording media connected via a wired or wireless network.

[0053] The bulletin board 41 posts (stores) data acquired from the node 10, adding characteristic information of the node 10 from which the data was acquired. In addition, the bulletin board 41 performs appropriate access control so that each node 10 and the container engine 34 can register, update, and read data.

[0054] The container unit 42 is configured as a storage area allocated to the storage unit 4, and includes a plurality of containers 421 in which apps can be installed (stored). Each container 421 stores one app. That is, the number of apps that can be installed is equal to the number of configured containers 421. The apps are acquired from an external device (not shown) (such as an external server for providing apps (server device 50 shown in FIG. 1)) and set (stored) in empty containers 421 (empty containers). An app that is no longer needed is deleted from the container 421, and the container 421 becomes an empty container. An app may be deleted from the container 421 whenever it becomes unnecessary, or, if there is room in the container 421 (if another empty container exists), the unnecessary app may be deleted when an empty container is needed to install a new app.

[0055] The designation information storage unit 43 stores designation conditions for characteristic information related to data requested by an application installed in the container 421. When the application is installed in the container 421, the designation information is acquired from the external device that is the installation source and stored in the designation information storage unit 43. In other words, the designation information is provided together with the application program from the external device that is the installation source, the application (program) is stored in the container 421, and the designation information is stored in the designation information storage unit 43. It is also possible to employ a configuration in which the designation information storage unit 43 is provided within the container 421, that is, a configuration in which the application program and the designation information for the application are stored separably within the container 421. The designation information will be described in detail later with reference to FIGS. 3 to 5.

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

[0057] The acquisition unit 31 acquires various pieces of 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 included in the nodes 10.

[0058] Furthermore, the acquisition unit 31 acquires an installation instruction to install an application into the container 421 from a terminal device (an input operation device (such as a touch panel) of the communication device 1, or a node 10 having an operation input function to the communication device 1) by a user to install an application. The acquisition unit 31 also acquires an update instruction to update an application stored in the container 421 from the user's terminal device. Furthermore, 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 type information about the node 10, communication connection information for communication connection with the node 10, and sensor information about sensors of the node 10.

[0059] The acquisition unit 31 acquires an application to be installed from an external device (server device 50) and stores the application in the container 421. Specifically, when an installation instruction is acquired or when a new node 10 is connected, the acquisition unit 31 transmits information about the node 10 connected to the external device that provides the application. Then, the acquisition unit 31 acquires the application provided from the external device according to the connected node 10 and stores the application in the container 421. Note that the acquisition unit 31 may select an application to be installed (stored in the container 421) from the applications acquired by the acquisition unit 31 in response to a selection operation by the user. Alternatively, a method is also applicable in which the acquisition unit 31 selects an application to be installed based on a selection operation by the user from an appropriate application list transmitted from the external device before the application is provided, transmits information about the selected application to the external device, and has the external device provide the application to be installed.

[0060] Furthermore, the acquisition unit 31 acquires an application to be upgraded based on an input operation by the user or upgrade information for the application from an external device or the like, and updates the application stored in the container 421 (update processing).

[0061] Furthermore, when installing an application from an external device, the acquisition unit 31 acquires, from the external device, designation information relating to designation conditions for data used by the application, and stores the designation information in the storage unit 4. Furthermore, when updating the application, the acquisition unit 31 acquires update information for the designation information from the external device, and updates the designation information stored in the storage unit 4. Note that the acquisition unit 31 may acquire the designation information directly from the node 10.

[0062] The acquiring unit 31 also acquires authentication information for authenticating the node 10 from the node 10 that is connected for communication (capable of communication), such as information on the device type of the node 10, its identification number, its communication method, and a code required for communication. When authentication is required, for example, when the communication device 1 is powered on or when a new node 10 is connected to the communication device 1, the acquiring unit 31 acquires authentication information from each node 10 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 that can be used by each node 10 other than the node 10 from which the data was acquired. Specifically, the conversion unit 32 converts the acquired data so that the standards (data identification name, format, etc.) are unified.

[0064] The adding unit 33 adds characteristic information of the node 10 from which the data was acquired to the data converted by the converting unit 32. The characteristic information may be, for example, the name of the node 10, the name of the sensor included in the node 10, the detection accuracy of the sensor, the detection frequency of the sensor, the device type of the node 10, the installation method of the node 10, etc., and is basically information estimated from information included in the identification information, authentication information, etc. related to the node 10 acquired from the node 10 by the acquiring unit 31 (including cases where the characteristic information itself is included in the identification information, authentication information, etc., and the 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 adding unit 33 uses the acquired characteristic information (or characteristic information obtained by an estimation process based on the related information). Note that the characteristic information of the node 10 may be acquired from the server device 50 (which has a database of characteristic information associated with node types) based on the type (identification information) of the node 10.

[0065] If the feature information of the node 10 cannot be obtained, the adding unit 33 may estimate the feature information using data acquired from the node 10. For example, the adding unit 33 estimates feature information such as the detection accuracy and detection frequency of the sensor in the node 10 based on the results of acquiring data from the node 10 a predetermined number of times in a continuous time series. This eliminates the need to make changes such as designing a new function to generate and transmit feature information on the node 10 side, thereby reducing the burden on the manufacturer of the node 10. Details of the feature information added by the adding unit 33 and the estimation method will be described later with reference to FIGS. 3 to 5.

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

[0067] As a specific example, an air conditioning application that controls an air conditioner installed in a vehicle will be described. This application generates an optimal set temperature using data on room temperature, heart rate, and pulse rate, and controls the in-vehicle air conditioning device, which is node 10, using the optimal set temperature. Note that the in-vehicle air conditioning device, a driver's physical condition monitoring device, and a drowsy driving prevention device are connected to communication device 1 as nodes 10, and the air conditioning application is stored in container 421 in connection with these nodes 10. Also, the in-vehicle air conditioning device has a built-in room temperature sensor A that measures the temperature inside the vehicle cabin, the driver's physical condition monitoring device has a built-in heart rate sensor B and a built-in 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. Also, the designation information for the air conditioning application stored in designation information storage unit 43 is an air conditioning application condition that the measurement data of room temperature sensor A, body temperature sensor C, and heart rate sensor D satisfy the condition, but the heart rate sensor B does not satisfy the condition.

[0068] In this case, the acquisition unit 31 of the communication device 1 acquires measurement data from each of the sensors, namely, room temperature sensor A, heart rate sensor B, body temperature sensor C, and heart rate sensor D, of the in-vehicle air conditioning device, the driver's physical condition monitoring device, and the drowsy driving prevention device. Then, the conversion unit 32 converts the measurement data from each sensor acquired by the acquisition unit 31 into a format to be posted on the bulletin board 41. Furthermore, the addition unit 33 adds characteristic information (such as the measurement accuracy and frequency of each sensor) corresponding to the measurement data converted by the conversion unit 32 based on characteristic information of each node 10, such as that acquired by the authentication unit 36 ​​when each node 10 connects, and posts the data on the bulletin board 41. Note that the data posted on the bulletin board 41 is updated as needed at the data measurement (update) frequency indicated by the characteristic information, in accordance with the measurement operation of each sensor and the data acquisition operation of the acquisition unit 31.

[0069] By executing the air conditioner app, the container engine 34 retrieves data used in processing by the air conditioner app from the bulletin board 41. At this time, the container engine 34 reads the specification information related to the air conditioner app from the specification information storage unit 43 and retrieves data having characteristic information that satisfies the conditions of the specification information. In other words, in this example, the data from the room temperature sensor A, body temperature sensor C, and heart rate sensor D satisfy the conditions of the specification information related to the air conditioner app, so the container engine 34 retrieves the data from these sensors from the bulletin board 41.

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

[0071] Furthermore, if a setting has been made to post this optimum temperature data on the bulletin board 41, the acquisition unit 31 acquires this optimum temperature data. Furthermore, the conversion unit 32 converts the optimum temperature data into a format suitable for posting on the bulletin board 41. Then, the addition unit 33 adds characteristic information (generated based on characteristic information of the data from the sensor used) and posts the data on the bulletin board 41, making it available to 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, which simply brings the room temperature closer to the set temperature set by the driver, by taking into account the room temperature and the driver's physical condition (body temperature data, heart rate data).

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

[0074] In addition, if there is no 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, the container engine 34 (application content) may select data that has characteristic information that has the highest rate of satisfying the conditions (data that has characteristic information that is closest to the conditions).

[0075] In addition, if there is no 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 that is closest to the conditions, the container engine 34 (application content) may notify the user using a terminal device or the like of a request to add and connect a node 10 (sensor) that can output data that satisfies the conditions.

[0076] Furthermore, the container engine 34 performs a process of deleting unnecessary applications from the container 421. Note that unnecessary applications include, for example, an application for which the node 10 that outputs the processing result no longer exists (becomes disconnected from the communication device 1), an application for which the node 10 that provides data necessary for processing no longer exists (becomes disconnected from the communication device 1), etc.

[0077] The communication adjustment unit 35 adjusts communication with each node 10 connected to the network. Specifically, the communication adjustment unit 35 adjusts the timing of communication 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 currently communicating is equal to or greater than a predetermined number, when the amount of data currently being communicated is equal to or greater than a predetermined amount, or when the amount of data currently being communicated is equal to or greater than a predetermined amount), the communication adjustment unit 35 puts low-priority data on hold. Examples of low-priority data include data not requested by the application, data with low sensor detection accuracy, data with low sensor detection frequency, and data related to functions with low importance, 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 stores various data related to the node, sets up communication settings, sets up communication connections, and so on.

[0079] Next, a method for selecting data using characteristic information of the node 10 (sensor data) will be described with reference to Figures 3 to 5. Figures 3 to 5 are diagrams showing a method for selecting data using characteristic information.

[0080] FIG. 3 shows an example in which the sensor name (sensor name), detection accuracy, and detection frequency are added to the sensor measurement data as characteristic information of node 10, and the sensor name (sensor name), detection accuracy, and detection frequency are specified as conditions in the specification information regarding the application to be executed.

[0081] As shown in Figure 3, the control unit 3 selects data from the bulletin board 41 that has characteristic information that satisfies the sensor name, detection accuracy, and detection frequency specified by the specification information regarding the application to be executed stored in the specification 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 application to be executed (sensor name: GPS sensor, detection accuracy: 6 or more decimal places, detection frequency (interval): 0.5 seconds or less), 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 application to be executed (sensor name: heart rate sensor, detection accuracy: 0 decimal places, detection frequency (interval): 30 seconds or less), so this data is selected.

[0083] If the data "[GPS_6_0.5]34.123456,135.123456" does not exist, that is, if the bulletin board 41 does not contain data with characteristic information that satisfies the sensor name, detection accuracy, and detection frequency conditions specified in the specification information for the application to be executed stored in the specification information storage unit 43, the control unit 3 will select data with characteristic information that is close to the conditions specified in the specification information, such as "[GPS_6_1.0]34.123450,135.123450" (detection frequency (interval) is 1.0 second, which slightly does not meet the condition of within 0.5 seconds but meets other conditions), or "[GPS_4_0.5]34.1234,135.1234" (detection accuracy is four decimal places, which slightly does not meet the condition of six decimal places but meets other conditions).

[0084] In such a case, a priority is assigned to each condition item (detection accuracy and detection frequency) in the specified information, and the data of the characteristic information that most closely matches 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" whose detection accuracy is closest to the condition of the specified information (in this example, there are two pieces of data, so the closer one is selected).

[0085] As a result, when executing an app, even if there is no data on the bulletin board 41 that meets the conditions required by the app, the container engine 34 can import data with favorable conditions that have a high probability of meeting the conditions and execute the app, thereby allowing for relatively favorable control.

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

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

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

[0089] As a result, when executing an application, the container engine 34 can retrieve and process sensor data of a specific device that meets the conditions of the specification information according to the application, thereby enabling the application to perform suitable control. Also, if a specific device that meets the conditions of the specification information is not connected as a node 10, it is useful to notify the user of this (for example, that advanced functions can be realized by connecting the specific device), which can be expected to have the effect of promoting sales of the specific device.

[0090] Next, Fig. 5 shows an example in which the name of the sensor (sensor name) and the installation method (fixed / free) are specified as conditions in the specification information for the application to be executed (conditions for detection accuracy and detection frequency, etc., are not specified). Note that, although feature data regarding the installation method (fixed / free) of the sensor in node 10 may be acquired from node 10, in the case of a G sensor (acceleration sensor), it is also possible for the control unit 3 to estimate it using the following method.

[0091] The control unit 3 estimates the installation method of the sensor based on the detected value of the G sensor. Specifically, if the detected value of the G sensor contains a large number of high-frequency, small-amplitude vibration components, the control unit 3 estimates that the G sensor is fixed to the vehicle ("fixed"), and if the detected value contains a large number of low-frequency, large-amplitude vibration components, the control unit 3 estimates that the G sensor is not fixed to the vehicle ("free"), for example, that the G sensor is attached to the user. This is because if the G sensor is fixed inside the vehicle, it is susceptible to the influence of driving vibrations, which contain a large number of high-frequency, small-amplitude vibration components. On the other hand, if the G sensor is attached to the arm or the like of a passenger and moves freely, the driving vibrations are absorbed by the person's body and instead it is susceptible to the influence of the person's movement, which contains a large number of low-frequency, large-amplitude vibration components.

[0092] The control unit 3 selects from the bulletin board 41 data having characteristic information that satisfies the sensor name and installation method conditions specified by the specification information related to the application to be executed stored in the specification information storage unit 43.

[0093] In the example shown in FIG. 5, data from two types of sensors that satisfy two conditions (sensor name: G sensor, installation method (fixed / free): fixed) are required to execute the application.

[0094] Since the data characteristics of "[G_fixed] 0.1,0.1,0" (sensor name: G sensor, installation method (fixed / free): fixed) satisfy the data conditions of the application to be executed (sensor name: G sensor, installation method (fixed / free): fixed), the container engine 34 selects and acquires 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 application to be executed (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] Then, the container engine 34 executes the target application using the data of these two types of sensors that have been selected and acquired, and outputs to the corresponding node 10 based on the execution result of the application.

[0097] An example of an application that uses such data is an application that detects occupant sickness based on the detection value of a G sensor. In such an application, occupant sickness is analyzed based on the vehicle's movement (fixed G sensor) and the person's movement (free G sensor). For this reason, the container engine 34 needs to process the data on 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) so that it can distinguish between data from a G sensor fixed to the vehicle and data from a G sensor not fixed to the vehicle (fixed to the person), as described above.

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

[0099] The data publishing process shown in Fig. 6 is repeatedly executed when the communication device 1 is operating (when the power is on). First, in step S101, the control unit 3 determines whether there has been a change in the connected nodes 10, and if there has been a change (Yes), proceeds to step S102, and if there has not been a change (No), proceeds to step S103. Note that when the power is turned on, it is determined that there has been a change in connection (new connection) for all connected nodes 10. In step S102, the control unit 3 performs device authentication for the nodes 10 whose connection has changed, and proceeds to step S103.

[0100] In step S103, the control unit 3 acquires data from each authenticated node 10, and proceeds 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 or node 10, for example, into a standardized format, and proceeds to step S105. In step S105, the control unit 3 estimates characteristic information of each node 10 (sensor) based on the (sensor) information of each node 10 obtained during the authentication process in step S102, or estimates characteristic information of each node 10 (sensor) based on sensor measurement data acquired from each node 10 (sensor) in the past, and proceeds 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 proceeds to step S107. Then, in step S107, the control unit 3 posts the data with the feature information added on the bulletin board 41, and ends the process.

[0102] Next, the process related to the application will be described with reference to Fig. 7. The process related to the application includes installation of the application and processing based on the application, and is repeatedly executed when the communication device 1 is in operation (when the power is on).

[0103] First, in step S201, the control unit 3 determines whether a new application is being installed (as described above, there has been a change in the connection state to the node 10, and the communication device 1 has decided the application to be installed through communication and processing with the server device 50 (automatic decision based on various conditions, or decision based on operation by the user of the node 10)). If the application to be installed has been decided (Yes), the process proceeds to step S202. If the application has not been decided (No), the process proceeds to step S204. In step S202, the control unit 3 acquires the application decided to be installed from the server device 50 and stores (installs) it in the container 421, and then proceeds to step S203. In step S203, the control unit 3 acquires specification information for the application stored in the container 421 from the server device 50 and stores it in the specification information storage unit 43, and 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 a user's operation to request application execution, an application execution request from each node 10, etc.), and proceeds to step S205. In step S205, the control unit 3 determines whether or not there is 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 specification information corresponding to the application, and if there is data with characteristic information that satisfies the conditions (Yes), the control unit 3 determines that data as data to be used by the application, and proceeds to step S206, and if there is not (No), the control unit 3 proceeds to step S208.

[0105] In step S208, the control unit 3 determines whether there is data on the bulletin board 41 that contains characteristic information whose rate of satisfying the conditions indicated by the specified information corresponding to the application to be executed is higher than a predetermined rate, and if there is (Yes), it determines that data as the data to be used by the application and proceeds to step S206, and if there is not (No), it proceeds to step S209.

[0106] Then, in step S206, the control unit 3 retrieves the data determined as the data to be used from the bulletin board 41, and proceeds to step S207. In step S207, the control unit 3 executes the processing of the application using the retrieved data, outputs the processing result to the corresponding node 10, and ends the processing.

[0107] In step S209, the control unit 3 notifies the user (by displaying, etc.) of a request to add a node 10 having a sensor that can output data that satisfies the condition indicated by the specified information, and ends the process. Note that in step S209, the control unit 3 may notify the user that there is no data that satisfies the condition (that there is no connected node that can provide data that satisfies the condition), and stop the execution of the application.

[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 includes a controller (control unit 3). The controller acquires data from the connected node 10, stores the acquired data in a bulletin board 41, which is a storage unit 4 that can be used by a plurality of applications, estimates feature information indicating the features of the data, associates the feature information with the data, and stores the data, and when an application is executed, selects data to be used in processing the application from the data stored in the bulletin board 41 based on the correspondence between the feature information and designation information designated as a condition for the data to be used by the application.

[0109] This allows each application to be executed by comparing the data request content of the application with the characteristic information of the node 10 from which the data is obtained, and selecting the data to be used when executing the application, thereby making it possible to appropriately determine the selection of data to be used for processing the application.

[0110] Further advantages and modifications will readily occur to those skilled in the art. Therefore, the invention in its broader aspects is not limited to the specific details and representative embodiments shown and described above. Accordingly, various modifications may be made without departing from the spirit or scope of the general inventive concept as defined by the appended claims and their equivalents. [Explanation of symbols]

[0111] 1. Communications equipment 2. Communications Department 3. Control Unit 4 Storage section 10 nodes 31 Acquisition Department 32 Conversion unit 33 Additional section 34 Container Engine 35 Communications Coordination Department 36 Authentication Section 41 Bulletin Board 42 Container Section 43 Specified information storage section 421 Container 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 added in a storage unit; In response to a request from any one of the plurality of on-vehicle devices or a user, data that matches a data specification condition set in an application that controls the operation of the target on-vehicle device is selected from the reference data, and the application is executed; transmitting the control data generated by the application to the target vehicle-mounted device; Communication 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 the name of the vehicle-mounted device and the 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 the arrangement method of the sensors. The communication device according to claim 1 .

5. The data specification condition is information relating to the name of the vehicle-mounted device, the name of a sensor possessed by the vehicle-mounted device, the detection accuracy of the sensor, the 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 specification 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 item of the characteristic information is selected from the reference data. The communication device according to any one of claims 1 to 7.

9. The controller If there is no data that satisfies the data designation condition in the storage unit, data that matches a preset high priority item in the characteristic information is selected from the reference data. The 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 sensor data acquired from 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, the control device selects data that matches the request from the stored plurality of sensor data of the same data type by referring to the characteristic information, generates control data, and transmits the control data to the target vehicle-mounted device. Communication equipment.

Citation Information

Patent Citations

  • Fault detector for synchronous machine exciter

    JP1979045722A

  • Integrating method / Device for distributed information

    JP1998269252A

  • Sensor data providing system, gateway, and abstracted sensor data generation method

    JP2012164369A

  • Game machine

    JP2017170267A

  • Vehicle, vehicle control system, and vehicle control method

    JP2021097569A