WO2021124432A1 - 自動制御基板 - Google Patents

自動制御基板 Download PDF

Info

Publication number
WO2021124432A1
WO2021124432A1 PCT/JP2019/049329 JP2019049329W WO2021124432A1 WO 2021124432 A1 WO2021124432 A1 WO 2021124432A1 JP 2019049329 W JP2019049329 W JP 2019049329W WO 2021124432 A1 WO2021124432 A1 WO 2021124432A1
Authority
WO
WIPO (PCT)
Prior art keywords
fpga
external environment
control board
automatic
control signal
Prior art date
Application number
PCT/JP2019/049329
Other languages
English (en)
French (fr)
Inventor
裕二 平松
悠 木下
浩史 野々口
Original Assignee
ヤマハ発動機株式会社
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by ヤマハ発動機株式会社 filed Critical ヤマハ発動機株式会社
Priority to PCT/JP2019/049329 priority Critical patent/WO2021124432A1/ja
Priority to PCT/JP2020/047153 priority patent/WO2021125262A1/ja
Publication of WO2021124432A1 publication Critical patent/WO2021124432A1/ja
Priority to US17/842,685 priority patent/US20220318471A1/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/30Circuit design
    • G06F30/34Circuit design for reconfigurable circuits, e.g. field programmable gate arrays [FPGA] or programmable logic devices [PLD]
    • G06F30/343Logical level
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/04Programme control other than numerical control, i.e. in sequence controllers or logic controllers
    • G05B19/042Programme control other than numerical control, i.e. in sequence controllers or logic controllers using digital processors
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J13/00Controls for manipulators
    • B25J13/08Controls for manipulators by means of sensing devices, e.g. viewing or touching devices
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B13/00Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion
    • G05B13/02Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric
    • G05B13/0205Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric not using a model or a simulator of the controlled system
    • G05B13/026Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric not using a model or a simulator of the controlled system using a predictor
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/10Plc systems
    • G05B2219/15Plc structure of the system
    • G05B2219/15057FPGA field programmable gate array

Definitions

  • the present invention relates to an automatic control board used in an automatic operation device.
  • Patent Document 1 discloses a control device for an autonomous driving vehicle.
  • the self-driving vehicle in Patent Document 1 is an electric vehicle or a hybrid vehicle.
  • the controller as a control device is mainly composed of a microcomputer.
  • the controller is configured to perform an operation using the input data, the data stored in advance, and the program, and output the operation result as a control command signal.
  • the vehicle can be driven by so-called automatic driving by automatically controlling each motor, braking device, or steering device without a human driving operation.
  • Each motor, steering device, braking device, and the like during such automatic driving are also controlled by the controller.
  • an automatic control board used for controlling an automatic operation device not limited to an automobile as shown in Patent Document 1 has high scalability and high versatility.
  • An object of the present invention is to provide an automatic control board used for an automatic operation device, which has high scalability and high versatility.
  • the present inventor examined the hardware configuration of the automatic control board.
  • a control device as shown in Patent Document 1 is required to have a hardware configuration capable of executing a program for automatically driving an automobile. Therefore, the hardware configuration of Patent Document 1 is suitable for controlling an automobile.
  • the automatic operation device includes, for example, a low-speed traveling vehicle or a transport robot.
  • different types of control targets have different types of operating mechanisms, required response speeds, and the external environment to be recognized. For these controls, the hardware configuration of the control device shown in Patent Document 1 may be complicated and redundant.
  • the present inventor has studied the configuration of an automatic control board that can be used for an automatic operation device having a simple configuration and also for an automatic operation device having a complicated configuration.
  • a simple configuration a device such as a robot arm that operates based on an image of an external environment sensing unit such as one camera can be considered.
  • a complex configuration a device such as an automobile that operates based on a large number of external environment sensing units such as a large number of cameras can be considered.
  • the automatic control board corresponding to these automatic operation devices is required to have scalability regarding the scale of control processing and a highly versatile hardware configuration corresponding to the difference in the amount or type of input data.
  • the present inventor has examined the following configurations of an automatic control board used in an automatic operation device.
  • the automatic control board includes an operation control signal generation circuit that outputs an operation control signal.
  • the operation control signal generation circuit includes a first FPGA device having a programmable first logic circuit and a processor, and one or a plurality of second FPGA devices each having a programmable second logic circuit.
  • the operation control signal generation circuit includes an external environment data line for transmitting the external environment data from the external environment data acquisition unit to the first FPGA device, and an operation control for transmitting the operation control signal from the first FPGA device to the output unit. It has a signal line.
  • the number of external environment sensing units may increase or decrease depending on the application of the automatically operating device to be controlled.
  • the connection with the external environment data acquisition unit is established. It is possible to deal with this by increasing or decreasing the number of second FPGA devices connected to a plurality of FPGA connection terminals without changing the data.
  • the processor provided in the first FPGA device executes software. Therefore, the first FPGA device can flexibly deal with the distribution to the second FPGA device and the like according to the increase / decrease in the amount of external environment data output from the external environment sensing unit. Therefore, the scalability for various uses of the automatic operation device is high.
  • the type of external environment sensing unit differs depending on the type of automatic operation device, and the amount of external environment data output from the external environment sensing unit may differ.
  • the connection with the external environment data acquisition unit is established. It is possible to deal with this by increasing or decreasing the number of second FPGA devices connected to a plurality of FPGA connection terminals without changing the data. Since the logic circuits of the first FPGA device and the second FPGA device are programmable, it is possible to easily change the logic circuits constructed by both FPGA devices when the usage of the automatic control board changes.
  • the first FPGA device that executes the software even when the input of data other than the external environment data is added can flexibly handle the processing and data distribution to the second FPGA devices. Therefore, according to the above configuration, the versatility is high for the type of automatically operating device to be controlled.
  • the automatic control board according to each viewpoint of the present invention completed based on the above findings has the following configurations.
  • the automatic control board used for automatic operation equipment.
  • the automatic control board is An external environment data acquisition unit that is communicably connected to an external environment sensing unit that acquires external environment information of the automatic operation device and acquires external environment data output from the external environment sensing unit.
  • a control signal output unit that is communicably connected to a control target provided in the automatic operation device and outputs an operation control signal for controlling the control target to the control target.
  • An operation control signal generation circuit that generates the operation control signal based on the external environment data, Features:
  • the operation control signal generation circuit includes a first FPGA device having a programmable first logic circuit and a processor, and one or a plurality of second FPGA devices each having a programmable second logic circuit.
  • the operation control signal generation circuit transmits the external environment data line for transmitting the external environment data from the external environment data acquisition unit to the first FPGA device, and the operation control signal from the first FPGA device to the control signal output unit. Equipped with an operation control signal line
  • the first FPGA device is connected to a plurality of FPGA connection terminals for communicably connecting to the one or a plurality of second FPGA devices, and is connected to the external environment data line to acquire data for receiving the external environment data.
  • the one or more second FPGA devices are connected one-to-one with any one of the plurality of FPGA connection terminals.
  • the first FPGA device in the above configuration receives external environment data from the external environment data acquisition unit via the external environment data line connected to the data acquisition terminal.
  • Each of the one or more second FPGA devices is connected one-to-one with any one of the plurality of FPGA connection terminals provided in the first FPGA device. Therefore, the one or more second FPGA devices can share at least a part of the processing based on the external environment data input to the first FPGA device. Therefore, the automatic control board in the above configuration can control the control target provided in the automatic operation device based on the external environment data output from the external environment sensing unit that acquires the external information of the automatic operation device.
  • the number of external environment sensing units may increase or decrease depending on the application of the automatically operating device to be controlled. Further, for example, even if the number of external environment sensing units does not change, the processing content or processing process of the external environment data may increase or decrease. For example, when the number of external environment sensing units, the number of processing of external environment data, and the content of processing are changed depending on the application of the automatically operating device to be controlled, the second FPGA connected to the FPGA connection terminals and the like. This can be done by increasing or decreasing the number of devices.
  • the processor provided in the first FPGA device executes software.
  • the first FPGA device can flexibly deal with the distribution to the second FPGA device and the like according to the increase / decrease in the amount of external environment data output from the external environment sensing unit. Therefore, the scalability for various uses of the automatic operation device is high. Further, for example, the type of the external environment sensing unit differs depending on the type of the automatically operating device, and the amount of external environment data output from the external environment sensing unit may differ. In such a case, one or more second FPGA devices are not connected to the external environment data acquisition unit, and the first FPGA device is connected to the external environment data acquisition unit. Therefore, it is possible to deal with this by increasing or decreasing the number of second FPGA devices connected to the plurality of FPGA connection terminals without changing the connection with the external environment data acquisition unit.
  • the logic circuits of the first FPGA device and the second FPGA device are programmable, the logic circuits constructed by both FPGA devices can be easily changed when the usage of the automatic control board changes. Further, for example, the first FPGA device that executes the software even when the input of data other than the external environment data is added can flexibly handle the processing and the distribution of the data to the second FPGA device and the like. Therefore, according to the above configuration, the versatility for the type of the automatically operating device to be controlled is high. As described above, the automatic control board having the above configuration can have high scalability and high versatility.
  • the automatic control board of (1) The external environment sensing unit is a camera that photographs the outside of the automatic operation device and outputs image data as the external environment data.
  • the external environment data acquisition unit acquires image data output from the camera.
  • the image data output by the camera generally has a large amount of data.
  • the automatic control board in the above configuration can control the control target provided in the automatic operation device based on the image data as the external environment data output from the camera. Since the automatic control board in the above configuration has high scalability, it is easy to process a large amount of data such as image data.
  • Each of the one or more second FPGA devices is connected to one of the plurality of FPGA connection terminals on a one-to-one basis without being connected to the external environment data acquisition unit.
  • the processing capacity can be changed depending on the number of second FPGA devices.
  • the processing capacity can be changed while suppressing the change of the circuit that supplies the external environment data to the first FPGA device. Therefore, the automatic control board has higher scalability.
  • the automatic control board further A second non-volatile memory in which second configuration data representing at least a part of the circuit constructed by the second logic circuit of the second FPGA device is stored and electrically connected to the second FPGA device, and The first configuration data representing the circuit constructed by the first logic circuit of the first FPGA device is stored, and the capacity equal to or more than the capacity of any of the second memories electrically connected to the first FPGA device is stored. It is provided with a non-volatile first memory having.
  • the first memory connected to the first FPGA device can store configuration data larger than the second memory connected to the second FPGA device.
  • the configuration data of the circuit that processes the data in the second FPGA device is stored in the first memory
  • the minimum configuration data for constructing the circuit in the second FPGA device is stored in the second memory.
  • the second memory stores the configuration data for constructing the initialization circuit in the second FPGA device.
  • the initialization circuit constructed by the second FPGA device transfers the configuration data of the circuit that processes the data related to the image from the first memory through the first FPGA device. Then, the initialization circuit constructs a circuit that processes data related to the image in the second FPGA device based on the transferred configuration data.
  • the configuration data of the initialization circuit may be stored in the second memory. Therefore, for example, when the number of the second FPGA devices is increased according to the use and scale of the automatic control board, it is easy to standardize the contents of the second memory connected to each second FPGA device. Therefore, the number of second FPGA devices can be easily increased or decreased. Therefore, higher scalability and higher versatility can be realized.
  • Each of the plurality of FPGA connection terminals included in the first FPGA device is a high-speed transfer terminal having a maximum data transfer rate higher than the maximum data transfer rate of the data acquisition terminal.
  • the first FPGA device can transfer data to each of the second FPGA devices at a speed higher than the maximum data transfer speed of the data acquisition terminal. Therefore, for example, it is possible to transmit external environment data to each of the second FPGA devices and have each of the second FPGA devices perform a process for generating an operation control signal.
  • the automatic control board of any one of (1) to (5) includes a printed circuit board on which the external environment data acquisition unit, the control signal output unit, and the operation control signal generation circuit are attached.
  • the size of the automatic operation device may be limited depending on the application and operation.
  • the automatic operation device having the above configuration the external environment data acquisition unit, the control signal output unit, and the operation control signal generation circuit are unitized by being mounted on the substrate. Therefore, according to the above configuration, higher scalability and higher versatility can be realized.
  • the substrate may be composed of one substrate, or may be a multi-layer substrate (multi-story structure substrate) such as a so-called two-layer substrate (two-story structure substrate).
  • the multi-layer substrate has a structure in which the substrate of each layer is fixed so that the relative position of the substrate of each layer does not change, whereby unitization is realized.
  • the structure is plural. Not applicable to layered substrates.
  • Each of the one or more second FPGA devices has a processor.
  • the second FPGA device Since the second FPGA device has a processor, the processing flexibility of the second FPGA device is increased, so that the types of processing that can be handled by using the second FPGA device are expanded. Therefore, according to the above configuration, the versatility for the type of the automatically operating device to be controlled is higher.
  • the automatic control board of any one of (1) to (7) is a terminal for performing serial communication.
  • the number of FPGA connection terminals used for connecting the first FPGA device and the second FPGA device is smaller than that in the case other than serial communication, for example. Therefore, more second FPGA devices can be connected to the first FPGA device. Therefore, it is easier to increase or decrease the number of second FPGA devices. Therefore, higher scalability can be realized.
  • a communication device can be attached (connected) to the debug connector.
  • the first FPGA device can output a signal via a relay. Further, for example, when power is not supplied to the first FPGA device, a signal can be output via the relay because the relay does not conduct conduction operation.
  • the FPGAs are field programmable gate arrays.
  • the first FPGA device is a semiconductor device.
  • the first FPGA device includes a semiconductor chip and a semiconductor chip package.
  • the second FPGA device is a semiconductor device.
  • the second FPGA device includes a semiconductor chip and a semiconductor chip package. Therefore, the first FPGA device and the second FPGA device are semiconductor devices that are independent of each other.
  • the control target may have its own control unit.
  • the control target may be, for example, an actuator.
  • the control target may be, for example, a driver that supplies electric power to the actuator.
  • Electrically connected means to be connected so that an electric signal is transmitted.
  • being connected via passive elements such as resistors and inductors for transmitting signals, wiring, and sockets corresponds to being electrically connected.
  • being communicably connected via radio is not a direct electrical connection.
  • Communicationable connection is, for example, electrically connected, but is not particularly limited, and includes, for example, a configuration in which wireless communication is possible.
  • the processor provided in the first FPGA device may output a part of the processing result of the received external environment data to the second FPGA device. Further, the processor provided in the first FPGA device may output the entire processing result of the external environment data to the second FPGA device.
  • the processing of the external environment data includes, for example, a processing of storing the data in an external memory and a processing of transferring the data stored in the memory.
  • the external environment data acquisition unit is, for example, a connector.
  • the external environment data acquisition unit is not limited to this, and may be a wireless communication unit.
  • the processor executes the program sequentially.
  • the processor may have a plurality of processor cores that execute programs sequentially. That is, the processor may execute a plurality of programs at the same time.
  • the external environment sensing unit acquires the external environment information of the automatically operating device.
  • the external environment information is information about the external environment of the automatic operation device.
  • the outside of the automatic operation device referred to here includes, for example, at least a range that can be affected by the operation of the automatic operation device.
  • the range is not limited to the range in which the operation of the automatic operation device itself can be directly affected, but also includes the range in which the operation of the automatic operation device can indirectly affect the operation.
  • the change in the external environment of the automatic operation device is not limited to the change in the external environment itself, but the change in the external environment that occurs in the relative relationship with the automatic operation device due to the operation of the automatic operation device is mentioned. Be done. Also, the external environment can change over time.
  • the external environment sensing unit continuously acquires, as external environment information, at least information on changes within a range that can be affected by the operation of the automatically operating device.
  • the external environment sensing unit can acquire information on changes over time within the range.
  • the external environment sensing unit outputs the acquired external environment information as external environment data.
  • the external environment data is continuously output from, for example, the external environment sensing unit.
  • the external environment data is, for example, data relating to a range that can be affected by the operation of the automatically operating device.
  • the external environment sensing unit is, for example, a camera that captures an external image. The camera outputs image data representing the image.
  • the external environment sensing unit is not particularly limited, and may be, for example, a lidar (Laser Imaging Detection and Ringing) sensor.
  • the external environment sensing unit is not, for example, a single point measurement type.
  • the external environment sensing unit may be, for example, a multi-point measurement type or a region measurement type.
  • a region measurement type external environment sensing unit can be preferably used.
  • the above-mentioned camera and LIDAR are examples of a region measurement type external environment sensing unit that operates continuously.
  • Such an external environment sensing unit for example, outputs a large amount of external environment data per unit. Therefore, when the number of external environment sensing units changes, the amount of data processed by the automatic control board changes significantly.
  • the automatic control board can exhibit excellent scalability that can suitably respond to such a change in the amount of data.
  • the automatic operation device is, for example, an automatic traveling vehicle.
  • the automatic operation device is not particularly limited, and may be, for example, an autonomous operation robot.
  • the automatic operation device is configured so that, for example, the operation of the automatic operation device itself can cause a physical change outside the automatic operation device.
  • the automatic operation device may be configured so that the automatic operation device itself can be moved as a whole, for example.
  • the automatic operation device may be configured so that at least a part of the automatic operation device can be moved, for example.
  • the automatic operation device may be configured so that a part thereof is fixed, for example.
  • a device for discharging or inhaling powder or fluid can be mentioned.
  • the automatic operation device itself does not cause any physical change to the outside, but neither the released powder or fluid, nor the inhalation of the fluid or powder is physically external to the automatic operation device. This is because it causes change.
  • the fluid is a liquid or a gas.
  • the powder is solid and has fluid properties.
  • a device that automatically performs arithmetic processing and outputs the arithmetic result as data or a command does not cause a physical change outside the automatically operating device.
  • a device that causes a physical change only inside the automatic operation device does not cause a physical change outside the automatic operation device.
  • the printed circuit board is, for example, a rigid board having a relatively small flexibility.
  • the rigid substrate is, for example, a substrate made of glass epoxy or a phenol material.
  • the printed circuit board may be a flexible board.
  • the printed circuit board may be equipped with an external environment data acquisition unit, a control signal output unit, an operation control signal generation circuit, and other components and circuits other than the circuits described in the present specification.
  • an automatic control board used for an automatic operation device which has high scalability and high versatility.
  • FIG. 1 is a block diagram showing a configuration of an automatic control board according to the first embodiment of the present invention.
  • the automatic control board 10 shown in FIG. 1 is a board used for the automatic operation device 1.
  • the automatic operation device 1 is an operator, that is, a device that can automatically operate regardless of the operation of a person.
  • the automatic control board 10 includes an external environment data acquisition unit 110, a control signal output unit 130, and an operation control signal generation circuit 160. Further, the automatic control board 10 includes a printed circuit board 101.
  • the printed circuit board 101 is a printed wiring board on which electronic components are mounted.
  • the external environment data acquisition unit 110, the control signal output unit 130, and the operation control signal generation circuit 160 are configured on the printed circuit board 101.
  • the external environment data acquisition unit 110 is communicably connected to the external environment sensing unit 11.
  • the external environment sensing unit 11 acquires the external environment information of the automatic operation device 1.
  • the external environment data acquisition unit 110 acquires the external environment data output from the external environment sensing unit 11.
  • the external environment sensing unit 11 is, for example, a camera that photographs the outside of the automatic operation device 1. In this case, the external environment data is image data.
  • the external environment data acquisition unit 110 is, for example, a connector connected to a cable extending from the external environment sensing unit 11.
  • the control signal output unit 130 is communicably connected to the control target 121 provided in the automatic operation device 1.
  • the control signal output unit 130 outputs an operation control signal for controlling the control target 121 toward the control target 121.
  • the controlled object 121 is, for example, an operating device having an actuator and mechanically operated by electric control.
  • the control target 121 is a traveling device having a motor as an actuator.
  • the control target 121 may include, for example, a control device different from the automatic control board 10 that controls the actuator.
  • the control target 121 is not limited to this, and may be, for example, an actuator without a control device.
  • the operation control signal generation circuit 160 generates an operation control signal based on the external environment data.
  • the operation control signal generation circuit 160 includes a first FPGA device 170 and second FPGA devices 180A and 180B. In the example shown in FIG. 1, one first FPGA device 170 and two second FPGA devices 180A and 180B are provided. Further, the operation control signal generation circuit 160 includes an external environment data line 111 and an operation control signal line 131. Further, the operation control signal generation circuit 160 includes a non-volatile first memory 175 and second memories 185A and 185B.
  • the first FPGA device 170 includes a first logic circuit 171, a processor 172, FPGA connection terminals 176, 177, 178, 179, and a data acquisition terminal 173.
  • the first logic circuit 171 is a programmable circuit. That is, the first logic circuit 171 is a reprogrammable logic circuit.
  • the first FPGA device 170 loads the connection information from the outside in the initialization process after the power is turned on or after the reset, and constructs the processing function of the first logic circuit 171 based on the connection information.
  • the first FPGA device 170 starts processing after the processing function of the first logic circuit 171 is constructed.
  • the processor 172 executes the program stored in the memory while sequentially reading the program by accessing the external memory after the initialization process after the power is turned on or after the reset.
  • the processing function is basically constructed based on the connection information from the outside before the execution of the circuit, that is, at the time of initialization. That is, the reading of the external memory is completed before the execution of the process is started.
  • the data acquisition terminal 173 is connected to the external environment data line 111 and receives the external environment data.
  • the FPGA connection terminals 176, 177, 178, and 179 are terminals for communicably connecting the second FPGA devices 180A and 180B.
  • the external environment data line 111 transmits external environment data from the external environment data acquisition unit 110 to the first FPGA device 170.
  • the operation control signal line 131 transmits an operation control signal from the first FPGA device 170 to the control signal output unit 130.
  • the second FPGA device 180A includes a second logic circuit 181A.
  • Another second FPGA device 180B also includes a second logic circuit 181B.
  • the plurality of second FPGA devices 180A and 180B are connected one-to-one with any of the plurality of FPGA connection terminals 176, 177, 178, and 179 of the first FPGA device 170.
  • the second FPGA device 180A is connected to the FPGA connection terminal 176 on a one-to-one basis.
  • the other second FPGA device 180B is connected to the FPGA connection terminal 177 on a one-to-one basis.
  • the remaining FPGA connection terminals 178 and 179 are spare terminals.
  • the second FPGA device 180A includes FPGA connection terminals 186A, 187A, 188A, and 189A.
  • the FPGA connection terminal 186A of the second FPGA device 180A and the FPGA connection terminal 176 of the first FPGA device 170 are connected.
  • the other second FPGA device 180B includes FPGA connection terminals 186B, 187B, 188B, and 189B.
  • the FPGA connection terminal 187B of the second FPGA device 180B and the FPGA connection terminal 177 of the first FPGA device 170 are connected.
  • the first FPGA device 170 in the present embodiment receives external environment data from the external environment data acquisition unit 110 via the external environment data line 111 connected to the data acquisition terminal 173.
  • the two second FPGA devices 180A and 180B are connected one-to-one with any of the FPGA connection terminals 176, 177, 178, and 179 provided in the first FPGA device 170, respectively. Therefore, the two second FPGA devices 180A and 180B can share at least a part of the processing based on the external environment data input to the first FPGA device 170. Therefore, the automatic control board 10 can control the control target 121 provided in the automatic operation device 1 based on the external environment data output from the external environment sensing unit 11 that acquires the external information of the automatic operation device 1. it can.
  • the number of external environment sensing units 11 may increase or decrease depending on the application of the automatic operation device 1. Further, for example, even if the number of external environment sensing units 11 does not change, the processing content or processing process of the external environment data may increase or decrease.
  • the FPGA connection is made when the number of external environment sensing units 11, the number of processes of external environment data, and the contents of processes are changed depending on the application of the automatic operation device 1.
  • This can be done by increasing or decreasing the number of second FPGA devices 180A, 180B, 180C, ... Connected to the terminals 176, 177, 178, 179.
  • the second FPGA device 180C is mounted in the area indicated by the broken line on the printed circuit board 101, and the FPGA is used. Connect to the connection terminal 178.
  • the three second FPGA devices 180A, 180B, and 180C can handle the processing.
  • the processor 172 provided in the first FPGA device 170 executes software. Therefore, the first FPGA device should flexibly deal with the allocation to the second FPGA devices 180A, 180B, 180C, ... According to the increase / decrease in the amount of external environment data output from the external environment sensing unit 11. Can be done. Therefore, the scalability of the automatic operation device 1 for various uses is high. Further, for example, depending on the type of the automatic operation device 1, the type of the external environment sensing unit 11 is different from the above-mentioned type, and the amount of data of the external environment data 110 output from the external environment sensing unit 11 may be different.
  • one or more second FPGA devices 180A and 180B are not connected to the external environment data acquisition unit 110, and the first FPGA device 170 is connected to the external environment data acquisition unit 110. Therefore, the number of the second FPGA devices 180A, 180B, 180C, ... Connected to the plurality of FPGA connection terminals 176, 177, 178, 179 can be increased or decreased without changing the connection with the external environment data acquisition unit 110. It is possible to correspond with. Since the logic circuits of the first FPGA device 170 and the second FPGA devices 180A and 180B are programmable, it is easy to change the logic circuits constructed by both FPGA devices 170, 180A and 180B when the usage of the automatic control board 10 changes. Can be done.
  • the first FPGA device 170 that executes software for the addition of data input other than the external environment data can flexibly support the processing and data distribution to the second FPGA devices 180A, 180B, 180C, .... Can be done. Therefore, it is highly versatile for the type of automatic operation device 1 to be controlled.
  • the automatic control board 10 of the present embodiment can have high scalability and high versatility.
  • FIG. 2 is a block diagram showing a first application example of the automatic control board shown in FIG.
  • examples of elements corresponding to FIG. 1 are designated by the same reference numerals as those in the first embodiment, and a part of the common description will be omitted.
  • the automatic control board 10 of the application example shown in FIG. 2 is mounted on the automatically operating automatic operation device 1'.
  • the automatic operation device 1' self detects the external environment of the automatic operation device 1'. Then, the automatic operation device 1'recognizes the content of the detection result, and controls the operation of the automatic operation device 1'based on the recognition result.
  • the automatic operation device 1'as an application example on which the automatic control board 10 is mounted is an automatic traveling vehicle.
  • a camera 11' is used as an external environment sensing unit.
  • a traveling device 121'having an actuator is used. That is, the automatic operation device 1'includes a camera 11', an automatic control board 10, and a traveling device 121'.
  • the automatic operation device 1'on which the automatic control board 10 is mounted determines its own traveling path based on the image taken by the camera 11'and travels.
  • the automatic control board 10 determines the traveling path of the automatic operation device 1'based on the image data of the image output from the camera 11'.
  • the automatic control board 10 controls the traveling device 121'based on the determined traveling path.
  • the traveling device 121' travels the automatically traveling vehicle as the automatic operation device 1'based on the control of the automatic control board 10.
  • the automatic control board 10 includes an external environment data acquisition unit 110, a control signal output unit 130, and an operation control signal generation circuit 160.
  • the external environment data acquisition unit 110 is communicably connected to the camera 11'.
  • the camera 11' takes a picture of the outside of the automatic operation device 1'.
  • the external environment data acquisition unit 110 is connected to, for example, a cable extending from the camera 11'.
  • the external environment data acquisition unit 110 acquires image data output from the camera 11'.
  • the control signal output unit 130 is communicably connected to the traveling device 121'.
  • the control signal output unit 130 outputs an operation control signal for controlling the traveling device 121'to the traveling device 121'.
  • the traveling device 121' is an operating device that has, for example, an actuator and is mechanically operated by electric control.
  • the traveling device 121' also includes, for example, a control device different from the automatic control board 10 for controlling the actuator.
  • the operation control signal generation circuit 160 generates an operation control signal based on the image data.
  • the operation control signal generation circuit 160 includes a first FPGA device 170 and two second FPGA devices 180A and 180B.
  • the first FPGA device 170 includes a first logic circuit 171, a processor 172, FPGA connection terminals 176, 177, 178, 179, and a data acquisition terminal 173.
  • the first logic circuit 171 is a programmable circuit. That is, the first logic circuit 171 is a reprogrammable logic circuit.
  • the first FPGA device 170 loads the connection information from the outside in the initialization process after the power is turned on or after the reset, and constructs the processing function of the first logic circuit 171 based on the connection information.
  • the first FPGA device 170 starts processing after the processing function of the first logic circuit 171 is constructed.
  • the processor 172 executes the program stored in the memory while sequentially reading the program by accessing the external memory after the initialization process after the power is turned on or after the reset.
  • the processing function is basically constructed based on the connection information from the outside before the execution of the circuit, that is, at the time of initialization. That is, the reading of the external memory is completed before the execution of the process is started.
  • the data acquisition terminal 173 is connected to the external environment data line 111 to receive image data.
  • the external environment data line 111 transmits image data from the external environment data acquisition unit 110 to the first FPGA device 170.
  • the operation control signal line 131 transmits an operation control signal from the first FPGA device 170 to the control signal output unit 130.
  • Each of the FPGA connection terminals 176, 177, 178, and 179 is a dedicated terminal for communicating with an FPGA device other than the first FPGA device 170.
  • Each of the FPGA connection terminals 176, 177, 178, and 179 is a high-speed transfer terminal having a maximum data transfer rate higher than that of the data acquisition terminal 173.
  • FPGA connection terminals 176, 177, 178, 179 are terminals capable of performing serial communication.
  • the second FPGA device 180A includes a second logic circuit 181A and a processor 182A.
  • Another second FPGA device 180B also includes a second logic circuit 181B and a processor 182B.
  • the second FPGA device 180A is connected to the FPGA connection terminal 176 on a one-to-one basis.
  • the other second FPGA device 180B is connected to the FPGA connection terminal 177 on a one-to-one basis.
  • FPGA connection terminals 178 and 179 are spare terminals.
  • the second FPGA device 180A includes FPGA connection terminals 186A, 187A, 188A, and 189A.
  • the FPGA connection terminal 186A of the second FPGA device 180A and the FPGA connection terminal 176 of the first FPGA device 170 are connected.
  • the other second FPGA device 180B includes FPGA connection terminals 186B, 187B, 188B, 189B.
  • the FPGA connection terminal 187B of the second FPGA device 180B and the FPGA connection terminal 177 of the first FPGA device 170 are connected.
  • the automatic control board 10 comprises a non-volatile first memory 175 electrically connected to the first FPGA device 170 and a non-volatile second memory 185A, 185B electrically connected to the second FPGA devices 180A, 180B. Be prepared. Further, the automatic control board 10 includes volatile memories 17RA, 18RA, 18RB electrically connected to the first FPGA device 170 and the second FPGA devices 180A, 180B, respectively.
  • the first memory 175 stores the configuration data (first configuration data) of the logic circuit constructed by the first FPGA device 170.
  • the second memories 185A and 185B store the configuration data (second configuration data) of the logic circuit constructed by the second FPGA devices 180A and 180B.
  • the first memory 175 has a capacity equal to or greater than the capacity of either the second memory 185A or 185B.
  • the first memory 175 stores the configuration data of the logic circuit secondarily constructed by the second FPGA devices 180A and 180B.
  • the logic circuit constructed secondarily is different from the logic circuit constructed by the second configuration data of the second memories 185A and 185B.
  • the logic circuit constructed secondarily is a circuit that processes image data in the second FPGA devices 180A and 180B.
  • the second memories 185A and 185B store the configuration data of the initialization circuit for constructing the circuits of the second FPGA devices 180A and 180B by the configuration data stored in the first memory 175. After resetting, the second FPGA devices 180A and 180B construct an initialization circuit based on the second configuration data stored in the second memories 185A and 185B.
  • the initialization circuit constructed by the second FPGA devices 180A and 180B reconstructs the logic circuit based on the first configuration data stored in the first memory 175.
  • the second configuration data representing the initialization circuit is stored in the second memories 185A and 185B regardless of the content of the data processing function. Since the first memory 175 has a capacity equal to or larger than the capacity of either of the second memories 185A and 185B, it is possible to store the configuration data of the circuit that processes the image data, which is reconstructed by the second FPGA devices 180A and 180B. it can.
  • the automatic control board 10 includes a debug connector DC connected to each of the second FPGA devices 180A and 180B.
  • a communication device (not shown) capable of communicating with the second FPGA devices 180A and 180B is detachably connected to the debug connector DC.
  • the communication device is, for example, a debugger device. For example, when debugging the circuit and the execution program constructed in the second FPGA devices 180A and 180B during the maintenance period of the automatic control board 10, the communication device can be connected to the debug connector DC.
  • the first FPGA device 170 receives the image data output from the camera 11'.
  • the first FPGA device 170 outputs data based on the received image data to the second FPGA devices 180A and 180B.
  • the data output by the first FPGA device 170 to the second FPGA devices 180A and 180B is, for example, image data.
  • the data output by the first FPGA device 170 may be, for example, data as a result of processing image data.
  • the second FPGA devices 180A and 180B function as, for example, accelerators that assist in processing the image data received by the first FPGA device 170.
  • the second FPGA devices 180A and 180B share the processing of image data.
  • the second FPGA devices 180A and 180B output the processing result data to the first FPGA device 170.
  • the first FPGA device 170 generates an operation control signal based on the processing results output from the second FPGA devices 180A and 180B.
  • the first FPGA device 170 outputs an operation control signal toward the traveling device 121'.
  • the second FPGA device 180A and the second FPGA device 180B perform different processing on, for example, common image data.
  • the second FPGA device 180A and the second FPGA device 180B process image data different from each other.
  • the second FPGA device 180A receives a part of the image data received by the first FPGA device 170.
  • the second FPGA device 180B receives a part of data different from the part of the data received by the second FPGA device 180A.
  • the processing on the automatic control board 10 of the application example shown in FIG. 2 is not specified above.
  • the first FPGA device 170 may be responsible for processing image data
  • the second FPGA devices 180A and 180B may be configured to be responsible for processing other than image data processing.
  • the automatic control board 10 includes a relay 120.
  • the relay 120 is connected to a power supply device (not shown) of the automatic operation device 1'.
  • the relay 120 is controlled by the first FPGA device 170.
  • the relay 120 is electrically operated by the output of the first FPGA device 170.
  • the relay 120 controls the state of power supply to the automatic operation device 1'including the automatic control board 10. For example, when the relay 120 operates under the control of the first FPGA device 170, a power supply device (not shown) cuts off the power supply.
  • the output signal of the relay 120 can be connected in series with a relay provided on a board (not shown) other than the automatic control board 10. Thereby, for example, when an abnormal operation of the automatic control board 10 and the peripheral device is detected, the conduction operation of the automatic operation device 1'can be forcibly stopped. Forced stop can be realized with a simple and highly reliable configuration using relays.
  • the second FPGA devices 180A, 180B, 180C when the number of cameras 11'and the processing of image data are changed depending on the use of the vehicle as the automatic operation device 1, the second FPGA devices 180A, 180B, 180C, It is possible to deal with this by increasing or decreasing the number of ... In this case, the number of second FPGA devices 180A, 180B, 180C, ... Connected to the FPGA connection terminals 176, 177, 178, 179 can be increased or decreased without changing the connection with the external environment data acquisition unit 110. Is possible. Therefore, it is possible to flexibly cope with an increase or decrease in the amount of image data output from the camera 11', which is used for the automatic operation device 1.
  • the first FPGA device 170 that executes software even when the input of data other than the external environment data is added can flexibly handle the processing and data distribution to the second FPGA devices 180A, 180B, 180C, ... .. Therefore, it is highly versatile for the type of automatic operation device 1 to be controlled.
  • the automatic control board 10 can have high scalability and high versatility.
  • the second FPGA devices 180A and 180B are connected to the FPGA connection terminals 176 and 177 on a one-to-one basis without being connected to the external environment data acquisition unit 110, respectively. Therefore, it is possible to change the processing capacity of the automatic control board 10 while suppressing the change of the circuit that supplies the image data to the first FPGA device 170. Therefore, the automatic control board 10 has higher scalability.
  • the first memory 175 has a capacity equal to or greater than the capacity of either the second memory 185A or 185B. Therefore, the first memory 175 can store the configuration data of the data processing function reconstructed by the second FPGA devices 180A and 180B.
  • the second memories 185A and 185B can store the configuration data (second configuration data) of the initialization circuit constructed by the second FPGA devices 180A and 180B regardless of the processing content of the image data. it can. Therefore, it is easy to add a second FPGA device (for example, 180C) including the second memory. Therefore, the automatic control board 10 can have higher scalability and versatility.
  • Each of the FPGA connection terminals 176, 177, 178, and 179 has a maximum data transfer rate higher than that of the data acquisition terminal 173. Therefore, it is possible to transmit image data to each of the second FPGA devices 180A and 180B and have each of the second FPGA devices 180A and 180B perform a process for generating an operation control signal.
  • FPGA connection terminals 176, 177, 178, 179 perform serial communication.
  • the number of each of the FPGA connection terminals 176, 177, 178, and 179 is smaller than that in the case of parallel communication, for example. Therefore, more second FPGA devices 180A, 180B, 180C ... Can be connected to the first FPGA device 170 having a limited number of terminals. Higher scalability can be achieved.
  • FIG. 3 is a block diagram showing a first application example of the automatic control board shown in FIG.
  • An application example shown in FIG. 3 is an autonomous vehicle 1A.
  • the automatic traveling vehicle 1A includes a camera 11', an automatic control board 10, a traveling device 121A, a remote communication device 13, and a power supply unit 14.
  • the traveling device 121A is a device for traveling the automatic traveling vehicle 1A.
  • the remote communication device 13 communicates with a remote control device (not shown) at a remote location.
  • FIG. 4 is a block diagram showing a second application example of the automatic control board shown in FIG.
  • An application example shown in FIG. 4 is a robot arm 1B.
  • the robot arm 1B includes a camera 11', an automatic control board 10, and an arm operating device 121B.
  • the automatic control board 10 shown in FIG. 2 suppresses deformation of the basic structure of the automatic control board 10 while changing, for example, the number of the second FPGA devices 180A, 180B, 180C ... And the contents of the first configuration data. It can be applied to an automatic traveling vehicle 1A or a robot arm 1B.

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Evolutionary Computation (AREA)
  • Automation & Control Theory (AREA)
  • Artificial Intelligence (AREA)
  • General Engineering & Computer Science (AREA)
  • Health & Medical Sciences (AREA)
  • Geometry (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Medical Informatics (AREA)
  • Software Systems (AREA)
  • Human Computer Interaction (AREA)
  • Robotics (AREA)
  • Mechanical Engineering (AREA)
  • Stored Programmes (AREA)
  • Logic Circuits (AREA)
  • Manipulator (AREA)

Abstract

本発明の目的は、高いスケーラビリティと高い汎用性を有する、自動動作機器に用いられる自動制御基板を提供することである。自動制御基板は、外部環境データ取得部と、制御信号出力部と、動作制御信号生成回路と、を備える。動作制御信号生成回路は、プログラマブルな第1論理回路とプロセッサを有する第1FPGAデバイスと、各々がプログラマブルな第2論理回路を有する1又は複数の第2FPGAデバイスらと、外部環境データ線と、第1FPGAデバイスから制御信号出力部に動作制御信号を伝送する動作制御信号線とを備える。第1FPGAデバイスは、前記1又は複数の第2FPGAデバイスらと通信可能に接続するための複数のFPGA接続端子らと、前記外部環境データ線と接続され前記外部環境データを受信するためのデータ取得端子とを備え、前記1又は複数の第2FPGAデバイスらは、前記複数のFPGA接続端子のいずれかと1対1で接続される。

Description

自動制御基板
 本発明は、自動動作機器に用いられる自動制御基板に関する。
 例えば、特許文献1には、自動運転車両の制御装置が示されている。特許文献1における自動運転車両は、電気自動車あるいはハイブリッド車両である。
 制御装置としてのコントローラは、マイクロコンピュータを主体にして構成される。コントローラは、入力されたデータ、予め記憶しているデータ、ならびにプログラムを使用して演算を行い、その演算結果を制御指令信号として出力するように構成されている。車両は、人が運転操作することなく、各モータや制動装置あるいは操舵装置を自動的に制御することにより走行する、いわゆる自動運転走行をすることができる。そのような自動運転走行をする際における各モータ、操舵装置、制動装置なども上記コントローラにより制御される。
特開2019-187130号公報
 特許文献1に示すような自動車に限られない自動動作機器の制御用途に用いられる自動制御基板は、高いスケーラビリティと高い汎用性を有することが望まれている。
 本発明の目的は、高いスケーラビリティと高い汎用性を有する、自動動作機器に用いられる自動制御基板を提供することである。
 本発明者は、自動制御基板のハードウェア構成について検討した。
 例えば特許文献1に示すような制御装置には、自動車を自動運転走行させるためのプログラムを実行できるようなハード構成が求められる。従って、特許文献1のハード構成は、自動車の制御には適している。
 しかし、自動動作機器における処理の種類や規模のバリエーションは、一般的に、自動車よりも多い。そのため、制御対象を自動車から自動動作機器に拡大する場合、制御対象に応じて処理の種類や規模を変更できることが望ましい。自動動作機器は、例えば低速走行車両又は搬送ロボットを含む。また、制御対象の種類が異なると、動作機構の種類、要求される応答の速度、認知すべき外部環境が異なる。これらの制御に対し、特許文献1に示す制御装置のハード構成は、複雑及び冗長になる場合がある。
 本発明者は、シンプルな構成の自動動作機器にも対応でき、複雑な構成の自動動作機器にも対応できるような自動制御基板の構成について検討した。
 シンプルな構成として、例えば1台のカメラといった外部環境センシングユニットの画像に基づいて動作するロボットアームのような装置が考えられる。複雑な構成として、例えば多数のカメラといった多数の外部環境センシングユニットに基づいて動作する自動車のような装置が考えられる。
 これらの自動動作機器に対応する自動制御基板には、制御処理の規模についてのスケーラビリティと、入力データの量又は種類の違いに対応する汎用性の高いハード構成が求められる。
 本発明者は、自動動作機器に用いられる自動制御基板について、次のような構成を検討した。
 自動制御基板が、動作制御信号を出力する動作制御信号生成回路を備える。前記動作制御信号生成回路は、プログラマブルな第1論理回路とプロセッサを有する第1FPGAデバイス、及び各々がプログラマブルな第2論理回路を有する1又は複数の第2FPGAデバイスらを備える。
 動作制御信号生成回路は、前記外部環境データ取得部から前記第1FPGAデバイスに前記外部環境データを伝送する外部環境データ線と、前記第1FPGAデバイスから前記出力部に前記動作制御信号を伝送する動作制御信号線とを備える。
 第1FPGAデバイスは、1又は複数の第2FPGAデバイスらと通信可能に接続するための複数のFPGA接続端子らと、外部環境データ線と接続され外部環境データを受信するためのデータ取得端子と、を備える。1又は複数の第2FPGAデバイスらは、それぞれ、外部環境データ取得部に接続されることなく、複数のFPGA接続端子らのいずれかと1対1で接続される。
 例えば、制御対象となる自動動作機器の用途によって、外部環境センシングユニットの数が増減する場合がある。このような場合に、1又は複数の第2FPGAデバイスらが外部環境データ取得部に接続されず、第1FPGAデバイスが外部環境データ取得部に接続されているので、外部環境データ取得部との接続を変更することなく、複数のFPGA接続端子らに接続される第2FPGAデバイスの数を増減することで対応が可能である。第1FPGAデバイスに設けられたプロセッサはソフトウェアを実行する。このため、第1FPGAデバイスが、外部環境センシングユニットから出力される外部環境データのデータ量の増減に応じて、第2FPGAデバイスらへの配分について柔軟な対応を行なわせることができる。従って、自動動作機器の様々な用途に対するスケーラビリティが高い。
 また、自動動作機器の種類によっては外部環境センシングユニットの種類が異なり、外部環境センシングユニットから出力される外部環境データのデータ量が異なる場合がある。このような場合に、1又は複数の第2FPGAデバイスらが外部環境データ取得部に接続されず、第1FPGAデバイスが外部環境データ取得部に接続されているので、外部環境データ取得部との接続を変更することなく、複数のFPGA接続端子らに接続される第2FPGAデバイスの数を増減することで対応が可能である。第1FPGAデバイス及び第2FPGAデバイスの論理回路はプログラマブルなので、自動制御基板の用途が変わった場合に、両方のFPGAデバイスで構築される論理回路の変更を容易におこなうことができる。また、例えば外部環境データ以外のデータの入力の追加に対してもソフトウェアを実行する第1FPGAデバイスによって、第2FPGAデバイスらへの処理およびデータの配分が柔軟に対応できる。 従って、上記構成によれば、制御対象となる自動動作機器の種類に対する汎用性が高い。
 以上の知見に基づいて完成した本発明の各観点による自動制御基板は、次の構成を備える。
 (1) 自動動作機器に用いられる自動制御基板であって、
 前記自動制御基板は、
 前記自動動作機器の外部環境情報を取得する外部環境センシングユニットと通信可能に接続され、前記外部環境センシングユニットから出力される外部環境データを取得する外部環境データ取得部と、
 前記自動動作機器に設けられる制御対象と通信可能に接続され、前記制御対象を制御するための動作制御信号を前記制御対象へ向け出力する制御信号出力部と、
 前記外部環境データに基づいて前記動作制御信号を生成する動作制御信号生成回路と、
 を備え、次を特徴とする:
 前記動作制御信号生成回路は、プログラマブルな第1論理回路とプロセッサを有する第1FPGAデバイスと、各々がプログラマブルな第2論理回路を有する1又は複数の第2FPGAデバイスらと、を備え、
 前記動作制御信号生成回路は、前記外部環境データ取得部から前記第1FPGAデバイスに前記外部環境データを伝送する外部環境データ線と、前記第1FPGAデバイスから前記制御信号出力部に前記動作制御信号を伝送する動作制御信号線とを備え、
 前記第1FPGAデバイスは、前記1又は複数の第2FPGAデバイスらと通信可能に接続するための複数のFPGA接続端子らと、前記外部環境データ線と接続され前記外部環境データを受信するためのデータ取得端子と、を備え、
 前記1又は複数の第2FPGAデバイスらは、前記複数のFPGA接続端子のいずれかと1対1で接続される。
 上記構成における第1FPGAデバイスは、データ取得端子に接続された外部環境データ線を介して、外部環境データ取得部から外部環境データを受信する。1又は複数の第2FPGAデバイスらは、それぞれ、第1FPGAデバイスに備えられた複数のFPGA接続端子らのいずれかと1対1で接続される。このため、1又は複数の第2FPGAデバイスらは、第1FPGAデバイスに入力される外部環境データに基づく処理の少なくとも一部を分担することができる。このため、上記構成における自動制御基板は、自動動作機器の外部情報を取得する外部環境センシングユニットから出力される外部環境データに基づいて、自動動作機器に設けられる制御対象を制御することができる。
 例えば、制御対象となる自動動作機器の用途によって、外部環境センシングユニットの数が増減する場合がある。また、例えば、外部環境センシングユニットの数が変わらない場合でも外部環境データの処理の内容又は処理工程が増減する場合がある。
 例えば、制御対象となる自動動作機器の用途によって、外部環境センシングユニットの数や、外部環境データの処理の数や処理の内容が変更される場合に対し、FPGA接続端子らに接続される第2FPGAデバイスの数を増減することで対応が可能である。第1FPGAデバイスに設けられたプロセッサはソフトウェアを実行する。このため、第1FPGAデバイスが、外部環境センシングユニットから出力される外部環境データのデータ量の増減に応じて、第2FPGAデバイスらへの配分について柔軟な対応を行なわせることができる。従って、自動動作機器の様々な用途に対するスケーラビリティが高い。
 また、例えば、自動動作機器の種類によっては外部環境センシングユニットの種類が異なり、外部環境センシングユニットから出力される外部環境データのデータ量が異なる場合がある。このような場合に、1又は複数の第2FPGAデバイスらが外部環境データ取得部に接続されず、第1FPGAデバイスが外部環境データ取得部に接続されている。このため、外部環境データ取得部との接続を変更することなく、複数のFPGA接続端子らに接続される第2FPGAデバイスの数を増減することで対応が可能である。第1FPGAデバイス及び第2FPGAデバイスの論理回路はプログラマブルなので、自動制御基板の用途が変わった場合に、両方のFPGAデバイスで構築される論理回路の変更を容易に行なうことができる。また、例えば外部環境データ以外のデータの入力の追加に対してもソフトウェアを実行する第1FPGAデバイスによって、第2FPGAデバイスらへの処理およびデータの配分を柔軟に対応することができる。従って、上記構成によれば、制御対象となる自動動作機器の種類に対する汎用性が高い。
 このように、上記構成の自動制御基板は、高いスケーラビリティと高い汎用性を有することができる。
 (2) (1)の自動制御基板であって、
 前記外部環境センシングユニットは、前記自動動作機器の外部を撮影し前記外部環境データとして画像データを出力するカメラであり、
 前記外部環境データ取得部は、前記カメラから出力される画像データを取得する。
 カメラが出力する画像データは、一般的に大量のデータを有する。上記構成における自動制御基板は、カメラから出力される外部環境データとしての画像データに基づいて自動動作機器に設けられる制御対象を制御することができる。上記構成における自動制御基板は、高いスケーラビリティを有しているため、画像データのような大きなデータ量を処理しやすい。
 (3) (1)又は(2)の自動制御基板であって、
 前記1又は複数の第2FPGAデバイスらは、それぞれ、前記外部環境データ取得部に接続されることなく、前記複数のFPGA接続端子のいずれかと1対1で接続される。
 例えば、制御対象の変更に伴い、外部環境センシングユニットから出力される外部環境データの量が増大するような場合に、第2FPGAデバイスの数によって処理能力を変更することができる。この場合に、第1FPGAデバイスに外部環境データを供給する回路の変更を抑制しつつ、処理能力を変更することができる。従って、自動制御基板は、より高いスケーラビリティを有する。
 (4) (1)から(3)いずれか1の自動制御基板であって、
 前記自動制御基板は、さらに、
 前記第2FPGAデバイスの前記第2論理回路で構築される回路の少なくとも一部を表す第2コンフィギュレーションデータが記憶され、前記第2FPGAデバイスと電気的に接続された不揮発性の第2メモリと、
 前記第1FPGAデバイスの前記第1論理回路で構築される回路を表す第1コンフィギュレーションデータが記憶され、前記第1FPGAデバイスと電気的に接続された、前記第2メモリのいずれの容量以上の容量を有する不揮発性の第1メモリと、を備える。
 上記構成によれば、第1FPGAデバイスと接続された第1メモリは、第2FPGAデバイスと接続された第2メモリよりも大きなコンフィギュレーションデータを記憶することが可能である。この場合、第2FPGAデバイスでデータを処理する回路のコンフィギュレーションデータを第1メモリに記憶させるとともに、第2メモリには、第2FPGAデバイスにおいて回路を構築するための最小限のコンフィギュレーションデータを記憶させることができる。例えば、第2メモリには、第2FPGAデバイスで初期化回路を構築するコンフィギュレーションデータが記憶される。第2FPGAデバイスで構築される初期化回路は、画像に関するデータの処理を行なう回路のコンフィギュレーションデータを第1メモリから第1FPGAデバイスを通じて転送する。そして、初期化回路は、転送したコンフィギュレーションデータに基づいて、第2FPGAデバイスに画像に関するデータの処理を行なう回路を構築する。
 この場合、第2メモリには、初期化回路のコンフィギュレーションデータが記憶されればよい。従って、例えば自動制御基板の用途や規模に応じて第2FPGAデバイスの数を増加する場合に、各第2FPGAデバイスに接続される第2メモリの内容を共通化しやすい。従って、第2FPGAデバイスの数を容易に増減しやすい。このため、より高いスケーラビリティとより高い汎用性を実現することができる。
 (5) (1)から(4)いずれか1の自動制御基板であって、
 前記第1FPGAデバイスが備える前記複数のFPGA接続端子のそれぞれは、前記データ取得端子の最大データ転送速度よりも高い最大データ転送速度を有する高速転送端子である。
 上記構成によれば、第1FPGAデバイスは、第2FPGAデバイスのそれぞれに、データ取得端子の最大データ転送速度よりも高い速度でデータを転送することができる。このため、例えば、第2FPGAデバイスのそれぞれに外部環境データを送信し、第2FPGAデバイスのそれぞれに動作制御信号を生成するための処理を実施させることが可能である。
 (6) (1)から(5)いずれか1の自動制御基板であって、
 前記自動制御基板は、前記外部環境データ取得部と前記制御信号出力部と前記動作制御信号生成回路とが取り付けられたプリント回路基板を備える。
 一般的に、自動動作機器の用途や動作のバリエーションは多く、用途や動作に応じて自動動作機器のサイズに制限が課せられる場合もある。このような場合に、
上記構成の自動動作機器によれば、外部環境データ取得部と制御信号出力部と動作制御信号生成回路とが基板に取り付けられることによりユニット化されている。そのため、上記構成によれば、より高いスケーラビリティと、より高い汎用性とを実現できる。
 基板は、1枚の基板から構成されていてもよく、例えば所謂2層基板(2階建て構造の基板)のように、複数層基板(複数階建て構造の基板)であってもよい。複数層基板は、各層の基板の相対位置が変化しないように各層の基板が固定される構造を有しており、これにより、ユニット化が実現される。各基板に設けられた構成が互いに配線によって接続されているが、各基板が、各基板の相対位置が変化しないように固定される構造によりユニット化されていない場合には、当該構造は、複数層基板に該当しない。
 (7) (1)から(6)いずれか1の自動制御基板であって、
 前記1又は複数の第2FPGAデバイスのそれぞれは、プロセッサを有する。
 第2FPGAデバイスがプロセッサを有することにより、第2FPGAデバイスにおける処理の柔軟性が増大するため、第2FPGAデバイスを利用して対応できる処理の種類が拡大する。従って、上記構成によれば、制御対象となる自動動作機器の種類に対する汎用性がより高い。
 (8) (1)から(7)いずれか1の自動制御基板であって、
 前記FPGA接続端子は、シリアル通信を行なう端子である。
 上記構成によれば、第1FPGAデバイスと第2FPGAデバイスとを接続するために用いられるFPGA接続端子の数が、例えばシリアル通信以外の場合と比べ少ない。従って、第1FPGAデバイスに、より多くの第2FPGAデバイスを接続することができる。このため、第2FPGAデバイスの数をより増減しやすい。従って、より高いスケーラビリティを実現することができる。
 (9) (1)から(8)いずれか1の自動制御基板であって、
 前記1又は複数の第2FPGAデバイスのそれぞれと接続され、第2FPGAデバイスと通信可能な通信装置が着脱可能なデバッグコネクタを更に備える。
 上記構成によれば、例えば自動制御基板の保守の期間に、第2FPGAデバイス内で構築された回路及び実行プログラムをデバッグする場合に、デバッグコネクタに通信装置を装着(接続)することができる。
 (10) (1)から(9)いずれか1の自動制御基板であって、
 前記第1FPGAデバイスの出力によって導通動作するリレーを更に備える。
 上記構成によれば、例えば第1FPGAデバイスは、リレーを介して信号を出力することができる。また、例えば、第1FPGAデバイスに電力が供給されない場合には、リレーが導通動作しないことによってリレーを介して信号を出力できる。
 FPGAは、フィールドプログラマブルゲートアレイである。
 第1FPGAデバイスは、半導体デバイスである。第1FPGAデバイスは、半導体チップと、半導体チップのパッケージとからなる。第2FPGAデバイスは、半導体デバイスである。第2FPGAデバイスは、半導体チップと、半導体チップのパッケージとからなる。従って、第1FPGAデバイス及び第2FPGAデバイスは、互いに独立した半導体デバイスである。
 制御対象は、独自の制御部を有していてもよい。制御対象は、例えばアクチュエータでもよい。制御対象は、例えばアクチュエータに電力を供給するドライバでもよい。
 「電気的に接続」とは、電気信号が伝達されるように接続されることである。例えば、信号を伝達するための抵抗器及びインダクタといった受動素子、配線、ソケット、を介して接続されることは、電気的に接続されることに該当する。例えば、無線を介して通信可能に接続されることは、直接電気的に接続されることではない。
 「通信可能に接続」とは、例えば、電気的に接続されることだが、特に限定されず、例えば無線によって通信可能とする構成も含まれる。
 第1FPGAデバイスに備えられたプロセッサは、受信した外部環境データの処理結果の一部を第2FPGAデバイスに出力してもよい。また、第1FPGAデバイスに備えられたプロセッサは、外部環境データの処理結果の全部を第2FPGAデバイスに出力してもよい。外部環境データの処理は、例えば、データを外部のメモリに記憶する処理、及び、メモリに記憶されたデータを転送する処理を含む。
 外部環境データ取得部は、例えばコネクタである。ただし、外部環境データ取得部はこれに限られず無線通信部であってもよい。
 プロセッサは、プログラムを逐次実行する。プロセッサは、プログラムを逐次実行するプロセッサコアを複数有していてもよい。つまり、プロセッサでは、複数のプログラムが同時に実行されてもよい。
 外部環境センシングユニットは、自動動作機器の外部環境情報を取得する。外部環境情報は、自動動作機器の外部の環境に関する情報である。ここでいう自動動作機器の外部は、例えば、少なくとも自動動作機器の動作の影響が及び得る範囲を含む。当該範囲は、自動動作機器の動作自体が直接的に及び得る範囲だけに限定されず、自動動作機器の動作によって間接的に影響が及び得る範囲を含む。また、自動動作機器の外部の環境の変化は、外部の環境自体の変化に限定されず、自動動作機器の動作に伴って自動動作機器との相対的な関係において生じる外部の環境の変化が挙げられる。また、外部の環境は、経時的に変化し得る。従って、外部環境センシングユニットは、外部環境情報として、少なくとも自動動作機器の動作の影響が及び得る範囲内における変化に関する情報を継続的に取得する。これにより、外部環境センシングユニットは、当該範囲内における経時的な変化に関する情報を取得し得る。外部環境センシングユニットは、取得された外部環境情報を外部環境データとして出力する。外部環境データは、例えば、外部環境センシングユニットから継続的に出力される。また、外部環境データは、例えば、自動動作機器の動作の影響が及び得る範囲に関するデータである。外部環境センシングユニットは、例えば外部の画像を撮影するカメラである。カメラは、画像を表す画像データを出力する。ただし、外部環境センシングユニットは、特に限定されず、例えば、LIDAR(Laser Imaging Detection and Ranging)のセンサでもよい。外部環境センシングユニットは、例えば、単点計測型ではない。外部環境センシングユニットは、例えば、多点計測型又は領域計測型であってもよい。本発明においては、領域計測型の外部環境センシングユニットが好適に用いられ得る。上述したカメラやLIDARは、継続的に動作する領域計測型の外部環境センシングユニットの一例である。このような外部環境センシングユニットは、例えば、一台あたり、多くの外部環境データを出力する。そのため、外部環境センシングユニットの台数が変化すると、自動制御基板が処理するデータ量が大きく変化する。自動制御基板は、このようなデータ量の変化に好適に対応できる、優れたスケーラビリティを発揮できる。
 自動動作機器は、例えば、自動走行車両である。自動動作機器は、特に限定されず、例えば自律動作ロボットでもよい。自動動作機器は、例えば、自動動作機器自体の動作により自動動作機器の外部に物理的な変化を生じさせることができるように構成されている。自動動作機器は、例えば、自動動作機器自体が全体として移動可能に構成されていてもよい。自動動作機器は、例えば、自動動作機器の少なくとも一部が移動可能に構成されていてもよい。自動動作機器は、例えば、その一部が固定されるように構成されていてもよい。また、自動動作機器の一例として、例えば、粉体若しくは流体の放出又は吸入を行う装置が挙げられる。このような装置は、自動動作機器自体は外部に物理的な変化を生じさせないが、放出された粉体若しくは流体、又は流体若しくは粉体の吸入のいずれも、自動動作機器の外部に物理的な変化を生じさせるからである。流体は、液体又は気体である。粉体は、固体であり且つ流体としての性質を有する。自動的に演算処理を行って演算結果をデータ乃至指令として出力するだけの装置は、自動動作機器の外部に物理的な変化を生じさせない。自動動作機器の内部においてのみ物理的な変化を生じさせる装置は、自動動作機器の外部に物理的な変化を生じさせない。
 プリント回路基板は、例えば、比較的小さい可撓性を有するリジット基板である。リジット基板としては、例えば、ガラスエポキシ、又はフェノール材料からなる基板である。但し、プリント回路基板は、フレキシブル基板でもよい。
 プリント回路基板には、外部環境データ取得部と、制御信号出力部と、動作制御信号生成回路といった、本明細書で説明する部品及び回路以外の回路や部品が搭載されていてもよい。
 本発明によれば、高いスケーラビリティと高い汎用性を有する、自動動作機器に用いられる自動制御基板を実現することができる。
本発明の第一実施形態に係る自動制御基板の構成を示すブロック図である。 図1に示す自動制御基板の第1の適用例を示すブロック図である。 図2に示す自動制御基板の第1の応用例を示すブロック図である。 図2に示す自動制御基板の第1の応用例を示すブロック図である。
 以下、本発明の実施形態について、図面を参照しながら説明する。
[第一実施形態]
 図1は、本発明の第一実施形態に係る自動制御基板の構成を示すブロック図である。
 図1に示す自動制御基板10は、自動動作機器1に用いられる基板である。自動動作機器1は、操作者、即ち人の操作によらず自動動作できる機器である。
 自動制御基板10は、外部環境データ取得部110と、制御信号出力部130と、動作制御信号生成回路160と、を備える。また、自動制御基板10は、プリント回路基板101を備える。プリント回路基板101は、電子部品が実装されたプリント配線板である。外部環境データ取得部110と、制御信号出力部130と、動作制御信号生成回路160は、プリント回路基板101の上に構成される。
 外部環境データ取得部110は、外部環境センシングユニット11と通信可能に接続されている。外部環境センシングユニット11は、自動動作機器1の外部環境情報を取得する。外部環境データ取得部110は、外部環境センシングユニット11から出力される外部環境データを取得する。
 外部環境センシングユニット11は、例えば自動動作機器1の外部を撮影するカメラである。この場合、外部環境データは、画像データである。外部環境データ取得部110は、例えば、外部環境センシングユニット11から延びるケーブルと接続されるコネクタである。
 制御信号出力部130は、自動動作機器1に設けられる制御対象121と通信可能に接続される。制御信号出力部130は、制御対象121を制御するための動作制御信号を前記制御対象121へ向け出力する。
 制御対象121は、例えばアクチュエータを有し、電気制御によって機械的に動作する動作装置である。例えば自動動作機器1が車両の場合、制御対象121は、アクチュエータとしてのモータを有する走行装置である。制御対象121は、例えばアクチュエータを制御する、自動制御基板10とは異なる制御装置を備えていてもよい。ただし、制御対象121は、これに限られず、例えば、制御装置なしのアクチュエータであってもよい。
 動作制御信号生成回路160は、外部環境データに基づいて動作制御信号を生成する。動作制御信号生成回路160は、第1FPGAデバイス170と、第2FPGAデバイス180A,180Bとを備える。図1に示す例では、1つの第1FPGAデバイス170と、2つの第2FPGAデバイス180A,180Bとが備えられる。また、動作制御信号生成回路160は、外部環境データ線111と、動作制御信号線131とを備える。また、動作制御信号生成回路160は、不揮発性の第1メモリ175と、第2メモリ185A,185Bとを備える。
 第1FPGAデバイス170は、第1論理回路171と、プロセッサ172と、FPGA接続端子176,177,178,179と、データ取得端子173とを備える。第1論理回路171は、プログラマブルな回路である。すなわち、第1論理回路171は、再プログラミング可能な論理回路である。第1FPGAデバイス170は、電源投入後又はリセット後の初期化処理で、外部から接続情報をロードし、この接続情報に基づく第1論理回路171の処理機能を構築する。第1FPGAデバイス170は、第1論理回路171の処理機能が構築された後、処理を開始する。
 プロセッサ172は、電源投入後又はリセット後の初期化処理の後で、外部のメモリにアクセスすることによって、メモリに記憶されたプログラムを逐次読み出しながら実行する。これに対し、第1論理回路171では、基本的に回路の実行前、即ち初期化時に外部からの接続情報に基づき処理機能が構築される。即ち、処理の実行開始前に、外部のメモリの読み出しが完了する。
 データ取得端子173は、外部環境データ線111と接続され外部環境データを受信する。
 FPGA接続端子176,177,178,179は、第2FPGAデバイス180A,180Bを通信可能に接続するための端子である。
 外部環境データ線111は、外部環境データ取得部110から第1FPGAデバイス170に外部環境データを伝送する。
 動作制御信号線131は、第1FPGAデバイス170から制御信号出力部130に動作制御信号を伝送する。
 第2FPGAデバイス180Aは、第2論理回路181Aを備える。もう一つの第2FPGAデバイス180Bも、第2論理回路181Bを備える。
 複数の第2FPGAデバイス180A,180Bは、第1FPGAデバイス170の複数のFPGA接続端子176,177,178,179のいずれかと1対1で接続される。図1に示す例では、第2FPGAデバイス180Aは、FPGA接続端子176と1対1で接続される。もう一つの第2FPGAデバイス180Bは、FPGA接続端子177と1対1で接続される。図1に示す自動制御基板10の例で、残りのFPGA接続端子178,179は予備の端子である。
 第2FPGAデバイス180Aは、FPGA接続端子186A,187A,188A,189Aとを備える。第2FPGAデバイス180AのFPGA接続端子186Aと第1FPGAデバイス170のFPGA接続端子176が接続される。
 もう一つの第2FPGAデバイス180Bは、FPGA接続端子186B,187B,188B,189Bとを備える。この第2FPGAデバイス180BのFPGA接続端子187Bと第1FPGAデバイス170のFPGA接続端子177が接続される。
 本実施形態における第1FPGAデバイス170は、データ取得端子173に接続された外部環境データ線111を介して、外部環境データ取得部110から外部環境データを受信する。2つの第2FPGAデバイス180A,180Bは、それぞれ、第1FPGAデバイス170に備えられたFPGA接続端子176,177,178,179のいずれかと1対1で接続される。このため、2つの第2FPGAデバイス180A,180Bは、第1FPGAデバイス170に入力される外部環境データに基づく処理の少なくとも一部を分担することができる。このため、自動制御基板10は、自動動作機器1の外部情報を取得する外部環境センシングユニット11から出力される外部環境データに基づいて、自動動作機器1に設けられる制御対象121を制御することができる。
 自動動作機器1の用途によって、外部環境センシングユニット11の数が増減する場合がある。また、例えば、外部環境センシングユニット11の数が変わらない場合でも外部環境データの処理の内容又は処理工程が増減する場合がある。
 本実施形態の自動制御基板10によれば、自動動作機器1の用途によって、外部環境センシングユニット11の数や、外部環境データの処理の数や処理の内容が変更される場合に対し、FPGA接続端子176,177,178,179に接続される第2FPGAデバイス180A,180B,180C,…の数を増減することで対応が可能である。例えば、外部環境データの処理の数が増大したり、外部環境データそのものが増大したりする場合には、プリント回路基板101上の破線で示されている領域に第2FPGAデバイス180Cを実装し、FPGA接続端子178に接続する。これによって、3個の第2FPGAデバイス180A,180B,180Cが、処理に対応できる。第1FPGAデバイス170に設けられたプロセッサ172はソフトウェアを実行する。このため、第1FPGAデバイスが、外部環境センシングユニット11から出力される外部環境データのデータ量の増減に応じて、第2FPGAデバイス180A,180B,180C,…への配分について柔軟な対応を行なわせることができる。従って、自動動作機器1の様々な用途に対するスケーラビリティが高い。
 また、例えば、自動動作機器1の種類によっては外部環境センシングユニット11の種類が上述した種類とは異なり、外部環境センシングユニット11から出力される外部環境データ110のデータ量が異なる場合がある。このような場合に、1又は複数の第2FPGAデバイス180A,180Bが外部環境データ取得部110に接続されず、第1FPGAデバイス170が外部環境データ取得部に接続されている。このため、外部環境データ取得部110との接続を変更することなく、複数のFPGA接続端子176,177,178,179に接続される第2FPGAデバイス180A,180B,180C,…の数を増減することで対応が可能である。第1FPGAデバイス170及び第2FPGAデバイス180A,180Bの論理回路はプログラマブルなので、自動制御基板10の用途が変わった場合に、両方のFPGAデバイス170,180A,180Bで構築される論理回路の変更を容易に行なうことができる。また、例えば外部環境データ以外のデータの入力の追加に対してもソフトウェアを実行する第1FPGAデバイス170によって、第2FPGAデバイス180A,180B,180C,…への処理およびデータの配分を柔軟に対応することができる。従って、制御対象となる自動動作機器1の種類に対する汎用性が高い。
 このように、本実施形態の自動制御基板10は、高いスケーラビリティと高い汎用性を有することができる。
 [第1の適用例]
 図2は、図1に示す自動制御基板の第1の適用例を示すブロック図である。
 図2において図1と対応する要素の例には第一実施形態と同じ符号を付し、共通する説明の一部を省略する。
 図2に示す適用例の自動制御基板10は、自動動作する自動動作機器1'に搭載される。自動動作機器1'は、自ら自動動作機器1'の外部環境を検出する。そして、自動動作機器1'は、検出結果の内容を認知し、そして認知結果に基づき自動動作機器1'の動作を制御する。
 自動制御基板10が搭載される適用例としての自動動作機器1'は、自動走行車両である。外部環境センシングユニットとしてカメラ11’が用いられる。また、制御対象として、アクチュエータを有する走行装置121’が用いられる。つまり、自動動作機器1'は、カメラ11’と 、自動制御基板10と、走行装置121’とを備える。
 自動制御基板10が搭載される自動動作機器1'は、カメラ11’で撮影された画像に基づいて自らの走行路を決定し、走行する。自動制御基板10は、カメラ11’から出力される画像の画像データに基づいて自動動作機器1'の走行路を決定する。自動制御基板10は、決定した走行路に基づき走行装置121’を制御する。走行装置121’は、自動制御基板10の制御に基づき、自動動作機器1'としての自動走行車両を走行させる。
 自動制御基板10は、外部環境データ取得部110と、制御信号出力部130と、動作制御信号生成回路160とを備える。
 外部環境データ取得部110は、カメラ11’と通信可能に接続されている。
 カメラ11’は、自動動作機器1'の外部を撮影する。カメラ11’は、撮影した画像を表す画像データを外部環境データとして出力する。外部環境データ取得部110は、例えば、カメラ11’から延びるケーブルと接続される。外部環境データ取得部110は、カメラ11’から出力される画像データを取得する。
 制御信号出力部130は、走行装置121’と通信可能に接続される。制御信号出力部130は、走行装置121’を制御するための動作制御信号を前記走行装置121’へ向け出力する。
 走行装置121’は、例えばアクチュエータを有し、電気制御によって機械的に動作する動作装置である。走行装置121’は、例えばアクチュエータを制御するための、自動制御基板10とは異なる制御装置も備えている。
 動作制御信号生成回路160は、画像データに基づいて動作制御信号を生成する。動作制御信号生成回路160は、第1FPGAデバイス170と、2つの第2FPGAデバイス180A,180Bとを備える。
 第1FPGAデバイス170は、第1論理回路171と、プロセッサ172と、FPGA接続端子176,177,178,179と、データ取得端子173とを備える。第1論理回路171は、プログラマブルな回路である。すなわち、第1論理回路171は、再プログラミング可能な論理回路である。第1FPGAデバイス170は、電源投入後又はリセット後の初期化処理で、外部から接続情報をロードし、この接続情報に基づく第1論理回路171の処理機能を構築する。第1FPGAデバイス170は、第1論理回路171の処理機能が構築された後、処理を開始する。
 プロセッサ172は、電源投入後又はリセット後の初期化処理の後で、外部のメモリにアクセスすることによって、メモリに記憶されたプログラムを逐次読み出しながら実行する。これに対し、第1論理回路171では、基本的に回路の実行前、即ち初期化時に外部からの接続情報に基づき処理機能が構築される。即ち、処理の実行開始前に、外部のメモリの読み出しが完了する。
 データ取得端子173は、外部環境データ線111と接続され画像データを受信する。
 外部環境データ線111は、外部環境データ取得部110から第1FPGAデバイス170に画像データを伝送する。
 動作制御信号線131は、第1FPGAデバイス170から制御信号出力部130に動作制御信号を伝送する。
 FPGA接続端子176,177,178,179のそれぞれは、第1FPGAデバイス170以外のFPGAデバイスと通信するための専用の端子である。FPGA接続端子176,177,178,179のそれぞれは、データ取得端子173よりも高い最大データ転送速度を有する高速転送端子である。FPGA接続端子176,177,178,179は、シリアル通信を行なうことができる端子である。
 第2FPGAデバイス180Aは、第2論理回路181Aとプロセッサ182Aとを備える。もう一つの第2FPGAデバイス180Bも、第2論理回路181Bとプロセッサ182Bとを備える。第2FPGAデバイス180A,180Bがプロセッサを備えることによって、第2FPGAデバイス180A,180Bを利用して対応できる処理の種類が拡大する。
 第2FPGAデバイス180Aは、FPGA接続端子176と1対1で接続される。もう一つの第2FPGAデバイス180Bは、FPGA接続端子177と1対1で接続される。FPGA接続端子178,179は予備の端子である。
 第2FPGAデバイス180Aは、FPGA接続端子186A,187A,188A,189Aとを備える。第2FPGAデバイス180AのFPGA接続端子186Aと第1FPGAデバイス170のFPGA接続端子176が接続される。
 もう一つの第2FPGAデバイス180Bは、FPGA接続端子186B,187B,188B,189Bと、を備える。この第2FPGAデバイス180BのFPGA接続端子187Bと第1FPGAデバイス170のFPGA接続端子177が接続される。
 自動制御基板10は、第1FPGAデバイス170と電気的に接続された不揮発性の第1メモリ175と、第2FPGAデバイス180A,180Bと電気的に接続された不揮発性の第2メモリ185A,185Bとを備える。また、自動制御基板10は、第1FPGAデバイス170及び第2FPGAデバイス180A,180Bのそれぞれと電気的に接続された揮発性のメモリ17RA,18RA,18RBとを備える。
 第1メモリ175は、第1FPGAデバイス170で構築される論理回路のコンフィギュレーションデータ(第1コンフィギュレーションデータ)を記憶している。第2メモリ185A,185Bは、第2FPGAデバイス180A,180Bで構築される論理回路のコンフィギュレーションデータ(第2コンフィギュレーションデータ)を記憶している。
 第1メモリ175は、第2メモリ185A,185Bのいずれの容量以上の容量を有する。
 より詳細には、第1メモリ175は、第2FPGAデバイス180A,180Bで二次的に構築される論理回路のコンフィギュレーションデータを記憶する。二次的に構築される論理回路は、第2メモリ185A,185Bの第2コンフィギュレーションデータにより構築される論理回路とは異なる。二次的に構築される論理回路は、第2FPGAデバイス180A,180Bにおいて画像データを処理する回路である。
 第2メモリ185A,185Bには、第1メモリ175に記憶されたコンフィギュレーションデータによって、第2FPGAデバイス180A,180Bの回路を構築する初期化回路のコンフィギュレーションデータが記憶されている。
 第2FPGAデバイス180A,180Bは、リセット後に、第2メモリ185A,185Bに記憶された第2コンフィギュレーションデータによって初期化回路を構築する。第2FPGAデバイス180A,180Bで構築された初期化回路は、第1メモリ175に記憶された第1コンフィギュレーションデータに基づいて論理回路を再構築する。この場合、第2メモリ185A,185Bには、データの処理機能の内容にかかわらず、初期化回路を表す第2コンフィギュレーションデータのみが記憶される。第1メモリ175は、第2メモリ185A,185Bのいずれの容量以上の容量を有するので、第2FPGAデバイス180A,180Bで再構築される、画像データを処理する回路のコンフィギュレーションデータを記憶することができる。
 自動制御基板10は、第2FPGAデバイス180A,180Bのそれぞれと接続された、デバッグコネクタDCを備えている。デバッグコネクタDCには、第2FPGAデバイス180A,180Bと通信可能な図示しない通信装置が着脱可能に接続される。通信装置は、例えばデバッガ装置である。
 例えば自動制御基板10の保守の期間に、第2FPGAデバイス180A,180B内で構築された回路及び実行プログラムをデバッグする場合に、デバッグコネクタDCに通信装置を接続することができる。
 図2に示す適用例の自動制御基板10における処理として、例えば次の処理がある。
 第1FPGAデバイス170は、カメラ11’から出力される画像データを受け付ける。第1FPGAデバイス170は、受け付けた画像データに基づくデータを第2FPGAデバイス180A,180Bに出力する。第1FPGAデバイス170が第2FPGAデバイス180A,180Bに出力するデータは、例えば画像データである。但し、第1FPGAデバイス170が出力するデータは、例えば画像データを処理した結果のデータでもよい。
 第2FPGAデバイス180A,180Bは、例えば、第1FPGAデバイス170が受け付けた画像データの処理を補助するアクセラレータとして機能する。第2FPGAデバイス180A,180Bは、画像データの処理を分担する。図2に示す適用例では、第2FPGAデバイス180A,180Bが、処理結果のデータを第1FPGAデバイス170に出力する。第1FPGAデバイス170は、第2FPGAデバイス180A,180Bから出力された処理結果に基づいて、動作制御信号を生成する。第1FPGAデバイス170は、動作制御信号を走行装置121’へ向け出力する。第2FPGAデバイス180Aと、第2FPGAデバイス180Bは、例えば共通の画像データに対し、異なる処理を行なう。但し、第2FPGAデバイス180Aと、第2FPGAデバイス180Bが互いに異なる画像データを処理する構成も可能である。例えば、第2FPGAデバイス180Aは、第1FPGAデバイス170が受け付けた画像データの一部を受け付ける。第2FPGAデバイス180Bは、第2FPGAデバイス180Aが受け付けたデータの一部とは異なるデータの一部を受け付ける。
 以上、処理の例を説明したが、図2に示す適用例の自動制御基板10における処理は、上記に特定されない。例えば、第1FPGAデバイス170が画像データの処理を担い、第2FPGAデバイス180A,180Bは、画像データの処理以外の処理を担う構成も可能である。例えば、第2FPGAデバイス180A,180Bが走路の選択の処理を担う構成も可能である。
 自動制御基板10は、リレー120を備えている。リレー120は、自動動作機器1'の図示しない電源装置に接続されている。リレー120は、第1FPGAデバイス170により制御される。リレー120は、第1FPGAデバイス170の出力によって、導通動作する。リレー120は、自動制御基板10を含む自動動作機器1'への電力供給の状態を制御する。例えば、第1FPGAデバイス170の制御によりリレー120が動作すると、図示しない電源装置に電力供給を遮断させる。リレー120の出力信号は、自動制御基板10以外の図示しない基板に設けられるリレーと直列に接続することができる。これにより、例えば、自動制御基板10及び周辺装置の異常動作が検出された場合には、自動動作機器1'の導通動作を強制的に停止することができる。強制的な停止を、リレーを用いた単純且つ信頼性の高い構成で実現できる。
 本適用例の自動制御基板10によれば、自動動作機器1としての車両の用途によって、カメラ11’の数や、画像データの処理が変更される場合に、第2FPGAデバイス180A,180B,180C,…の数を増減することで対応が可能である。この場合、外部環境データ取得部110との接続を変更することなく、FPGA接続端子176,177,178,179に接続される第2FPGAデバイス180A,180B,180C,…の数を増減することで対応が可能である。このため、自動動作機器1の用途を伴うカメラ11’から出力される画像データのデータ量の増減に柔軟に対応することができる。
 例えば外部環境データ以外のデータの入力の追加に対してもソフトウェアを実行する第1FPGAデバイス170によって、第2FPGAデバイス180A,180B,180C,…への処理およびデータの配分を柔軟に対応することができる。従って、制御対象となる自動動作機器1の種類に対する汎用性が高い。
 このように、自動制御基板10は、高いスケーラビリティと高い汎用性を有することができる。
 また、第2FPGAデバイス180A,180Bは、それぞれ、外部環境データ取得部110に接続されることなく、FPGA接続端子176,177と1対1で接続される。このため、第1FPGAデバイス170に画像データを供給する回路の変更を抑制しつつ、自動制御基板10の処理能力を変更することができる。従って、自動制御基板10は、より高いスケーラビリティを有する。
 また、第1メモリ175は、第2メモリ185A,185Bのいずれの容量以上の容量を有する。このため、第1メモリ175は、第2FPGAデバイス180A,180Bで再構築される、データの処理機能のコンフィギュレーションデータを記憶することができる。これに対し、第2メモリ185A,185Bは、画像データの処理内容にかかわらず、第2FPGAデバイス180A,180Bで構築される初期化回路のコンフィギュレーションデータ(第2コンフィギュレーションデータ)を記憶することができる。従って、第2メモリを含む第2FPGAデバイス(例えば180C)の追加を行ないやすい。従って、自動制御基板10は、より高いスケーラビリティと汎用性を有することができる。
 FPGA接続端子176,177,178,179のそれぞれは、データ取得端子173よりも高い最大データ転送速度を有する。このため、第2FPGAデバイス180A,180Bのそれぞれに画像データを送信し、第2FPGAデバイス180A,180Bのそれぞれに動作制御信号を生成するための処理を実施させることが可能である。
 FPGA接続端子176,177,178,179は、シリアル通信を行なう。FPGA接続端子176,177,178,179のそれぞれの端子の数が、例えばパラレル通信の場合と比べ少ない。このため、限られた数の端子を有する第1FPGAデバイス170に、より多くの第2FPGAデバイス180A,180B,180C…を接続することができる。より高いスケーラビリティを実現することができる。
 図3は、図2に示す自動制御基板の第1の応用例を示すブロック図である。
 図3に示す応用例は、自動走行車両1Aである。自動走行車両1Aは、カメラ11’と、自動制御基板10と、走行装置121Aと、遠隔通信装置13と、電源ユニット14とを備えている。走行装置121Aは、自動走行車両1Aを走行させる装置である。遠隔通信装置13は、遠隔地の図示しない遠隔操作装置と通信する。
 図4は、図2に示す自動制御基板の第2の応用例を示すブロック図である。
 図4に示す応用例は、ロボットアーム1Bである。ロボットアーム1Bは、カメラ11’と、自動制御基板10と、アーム動作装置121Bとを備えている。
 図2に示す自動制御基板10は、例えば、第2FPGAデバイス180A,180B,180C…の数、及び、第1コンフィギュレーションデータの内容を変えつつ、自動制御基板10の基本構造の変形を抑えて、自動走行車両1A又はロボットアーム1Bに応用可能である。
 1  自動動作機器
 10  自動制御基板
 11  外部環境センシングユニット
 101       プリント回路基板
 110       外部環境データ取得部
 111       外部環境データ線
 120  リレー
 121  制御対象
 130  制御信号出力部
 131  動作制御信号線
 160  動作制御信号生成回路
 170  第1FPGAデバイス
 171  第1論理回路
 172  プロセッサ
 173  データ取得端子
 175  第1メモリ
 176,177,178,179  FPGA接続端子
 180A,180B 第2FPGAデバイス
 181A,181B 第2論理回路
 182A,182B プロセッサ
 DC デバッグコネクタ

Claims (10)

  1. 自動動作機器に用いられる自動制御基板であって、
     前記自動制御基板は、
     前記自動動作機器の外部環境情報を取得する外部環境センシングユニットと通信可能に接続され、前記外部環境センシングユニットから出力される外部環境データを取得する外部環境データ取得部と、
     前記自動動作機器に設けられる制御対象と通信可能に接続され、前記制御対象を制御するための動作制御信号を前記制御対象へ向け出力する制御信号出力部と、
     前記外部環境データに基づいて前記動作制御信号を生成する動作制御信号生成回路と、
     を備え、次を特徴とする:
     前記動作制御信号生成回路は、プログラマブルな第1論理回路とプロセッサを有する第1FPGAデバイスと、各々がプログラマブルな第2論理回路を有する1又は複数の第2FPGAデバイスらと、を備え、
     前記動作制御信号生成回路は、前記外部環境データ取得部から前記第1FPGAデバイスに前記外部環境データを伝送する外部環境データ線と、前記第1FPGAデバイスから前記制御信号出力部に前記動作制御信号を伝送する動作制御信号線とを備え、
     前記第1FPGAデバイスは、前記1又は複数の第2FPGAデバイスらと通信可能に接続するための複数のFPGA接続端子らと、前記外部環境データ線と接続され前記外部環境データを受信するためのデータ取得端子と、を備え、
     前記1又は複数の第2FPGAデバイスらは、前記複数のFPGA接続端子のいずれかと1対1で接続される。
  2.  請求項1記載の自動制御基板であって、
     前記外部環境センシングユニットは、前記自動動作機器の外部を撮影し前記外部環境データとして画像データを出力するカメラであり、
     前記外部環境データ取得部は、前記カメラから出力される画像データを取得する。
  3.  請求項1又は2記載の自動制御基板であって、
     前記1又は複数の第2FPGAデバイスらは、それぞれ、前記外部環境データ取得部に接続されることなく、前記複数のFPGA接続端子のいずれかと1対1で接続される。
  4.  請求項1から3いずれか1項に記載の自動制御基板であって、
     前記自動制御基板は、さらに、
     前記第2FPGAデバイスの前記第2論理回路で構築される回路の少なくとも一部を表す第2コンフィギュレーションデータが記憶され、前記第2FPGAデバイスと電気的に接続された不揮発性の第2メモリと、
     前記第1FPGAデバイスの前記第1論理回路で構築される回路を表す第1コンフィギュレーションデータが記憶され、前記第1FPGAデバイスと電気的に接続された、前記第2メモリのいずれの容量以上の容量を有する不揮発性の第1メモリと、を備える。
  5.  請求項1から4いずれか1項に記載の自動制御基板であって、
     前記第1FPGAデバイスが備える前記複数のFPGA接続端子のそれぞれは、前記データ取得端子の最大データ転送速度よりも高い最大データ転送速度を有する高速転送端子である。
  6.  請求項1から5いずれか1項に記載の自動制御基板であって、
     前記自動制御基板は、前記外部環境データ取得部と前記制御信号出力部と前記動作制御信号生成回路とが取り付けられたプリント回路基板を備える。
  7.  請求項1から6いずれか1項に記載の自動制御基板であって、
     前記1又は複数の第2FPGAデバイスのそれぞれは、プロセッサを有する。
  8.  請求項1から7いずれか1項に記載の自動制御基板であって、
     前記FPGA接続端子は、シリアル通信を行なう端子である。
  9.  請求項1から8いずれか1項に記載の自動制御基板であって、
     前記1又は複数の第2FPGAデバイスのそれぞれと接続され、第2FPGAデバイスと通信可能な通信装置が着脱可能なデバッグコネクタを更に備える。
  10.  請求項1から8いずれか1項に記載の自動制御基板であって、
     前記第1FPGAデバイスの出力によって導通動作するリレーを更に備える。
PCT/JP2019/049329 2019-12-17 2019-12-17 自動制御基板 WO2021124432A1 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
PCT/JP2019/049329 WO2021124432A1 (ja) 2019-12-17 2019-12-17 自動制御基板
PCT/JP2020/047153 WO2021125262A1 (ja) 2019-12-17 2020-12-17 自動制御基板
US17/842,685 US20220318471A1 (en) 2019-12-17 2022-06-16 Autonomous control board

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2019/049329 WO2021124432A1 (ja) 2019-12-17 2019-12-17 自動制御基板

Publications (1)

Publication Number Publication Date
WO2021124432A1 true WO2021124432A1 (ja) 2021-06-24

Family

ID=76477270

Family Applications (2)

Application Number Title Priority Date Filing Date
PCT/JP2019/049329 WO2021124432A1 (ja) 2019-12-17 2019-12-17 自動制御基板
PCT/JP2020/047153 WO2021125262A1 (ja) 2019-12-17 2020-12-17 自動制御基板

Family Applications After (1)

Application Number Title Priority Date Filing Date
PCT/JP2020/047153 WO2021125262A1 (ja) 2019-12-17 2020-12-17 自動制御基板

Country Status (2)

Country Link
US (1) US20220318471A1 (ja)
WO (2) WO2021124432A1 (ja)

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001322078A (ja) * 2000-05-15 2001-11-20 Sanyo Electric Co Ltd ロボットの制御装置
JP2005025599A (ja) * 2003-07-04 2005-01-27 Hitachi High-Technologies Corp 画像処理装置
JP2009193321A (ja) * 2008-02-14 2009-08-27 Denso Wave Inc ロボットの制御装置
JP2012190413A (ja) * 2011-03-14 2012-10-04 Denso Wave Inc ロボットのコントローラ
JP2014052781A (ja) * 2012-09-06 2014-03-20 Fujitsu Telecom Networks Ltd Fpga監視制御回路
JP2018194548A (ja) * 2017-05-05 2018-12-06 ディスペース デジタル シグナル プロセッシング アンド コントロール エンジニアリング ゲゼルシャフト ミット ベシュレンクテル ハフツングdspace digital signal processing and control engineering GmbH 配線トポロジの識別方法
JP2019041324A (ja) * 2017-08-28 2019-03-14 日立オートモティブシステムズ株式会社 電子制御装置、回路の再構成方法

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103885919B (zh) * 2014-03-20 2017-01-04 北京航空航天大学 一种多dsp和fpga并行处理系统及实现方法
CN107038134A (zh) * 2016-11-11 2017-08-11 济南浪潮高新科技投资发展有限公司 一种基于fpga的srio接口固态硬盘系统及其实现方法

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001322078A (ja) * 2000-05-15 2001-11-20 Sanyo Electric Co Ltd ロボットの制御装置
JP2005025599A (ja) * 2003-07-04 2005-01-27 Hitachi High-Technologies Corp 画像処理装置
JP2009193321A (ja) * 2008-02-14 2009-08-27 Denso Wave Inc ロボットの制御装置
JP2012190413A (ja) * 2011-03-14 2012-10-04 Denso Wave Inc ロボットのコントローラ
JP2014052781A (ja) * 2012-09-06 2014-03-20 Fujitsu Telecom Networks Ltd Fpga監視制御回路
JP2018194548A (ja) * 2017-05-05 2018-12-06 ディスペース デジタル シグナル プロセッシング アンド コントロール エンジニアリング ゲゼルシャフト ミット ベシュレンクテル ハフツングdspace digital signal processing and control engineering GmbH 配線トポロジの識別方法
JP2019041324A (ja) * 2017-08-28 2019-03-14 日立オートモティブシステムズ株式会社 電子制御装置、回路の再構成方法

Also Published As

Publication number Publication date
WO2021125262A1 (ja) 2021-06-24
US20220318471A1 (en) 2022-10-06

Similar Documents

Publication Publication Date Title
US10942497B2 (en) Method and arrangement for providing redundancy in a vehicle electrical control system
US11966223B2 (en) Autopilot control system for unmanned vehicles
KR102111295B1 (ko) 리던던트 구조 기반의 차량 제어 장치 및 방법
CN101687447A (zh) 通用轮胎压力监测传感器
US20180143633A1 (en) Multi-processor soc system
US20110235527A1 (en) Multichannel controller module
US9733842B2 (en) Detection device, sensor, electronic apparatus, and moving object
CN110447015B (zh) 用于冗余执行运行功能的车载控制装置及相应的机动车
CN113169926B (zh) 用于机动车的模块化电子控制设备以及具有这种控制设备的机动车和用于控制设备的计算模块单元
US11700297B2 (en) Device for loading data into computer processing units from a data source
JP2016060413A (ja) 車両用電子制御装置及び制御方法
WO2021124432A1 (ja) 自動制御基板
US10588254B2 (en) Method of operating an agricultural system having a tractor and an implement, an agricultural system, and a computer program product
CN111869197B (zh) 带有原始图像信号接口的汽车摄像机
JP2010266279A (ja) 車両用通信制御装置
JPH06222810A (ja) プロセス制御システム用中央処理ユニット
US8935020B2 (en) Back-up and redundancy of modules in locomotive distributed control systems
US20150343636A1 (en) Robot controller integrally formed with amplifier
CN110337619B (zh) 云台的保护方法、云台的保护装置、云台和无人机
JP3631133B2 (ja) 自動車用電装品の制御システム
CN115427908A (zh) 用于车辆的处理系统
JP2023094578A (ja) データ配信装置、データ配信方法及び関連の計算システム
JP2785094B2 (ja) コンソール共用機能を持つプリンタ装置
KR20240081247A (ko) 드론 fc 메인보드 업그레이드 시스템
JPH05158893A (ja) 制御装置

Legal Events

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

Ref document number: 19956487

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 19956487

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: JP