JP7048439B2 - 制御装置、制御ユニット、制御方法、およびプログラム - Google Patents

制御装置、制御ユニット、制御方法、およびプログラム Download PDF

Info

Publication number
JP7048439B2
JP7048439B2 JP2018127062A JP2018127062A JP7048439B2 JP 7048439 B2 JP7048439 B2 JP 7048439B2 JP 2018127062 A JP2018127062 A JP 2018127062A JP 2018127062 A JP2018127062 A JP 2018127062A JP 7048439 B2 JP7048439 B2 JP 7048439B2
Authority
JP
Japan
Prior art keywords
unit
software
function
priority
control device
Prior art date
Legal status (The legal status 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 status listed.)
Active
Application number
JP2018127062A
Other languages
English (en)
Other versions
JP2020008950A (ja
Inventor
睦 中塚
訓 大塚
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Honda Motor Co Ltd
Original Assignee
Honda Motor Co Ltd
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 Honda Motor Co Ltd filed Critical Honda Motor Co Ltd
Priority to JP2018127062A priority Critical patent/JP7048439B2/ja
Priority to US16/424,549 priority patent/US11527115B2/en
Priority to CN201910529269.1A priority patent/CN110667599A/zh
Publication of JP2020008950A publication Critical patent/JP2020008950A/ja
Application granted granted Critical
Publication of JP7048439B2 publication Critical patent/JP7048439B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
    • B60W50/00Details of control systems for road vehicle drive control not related to the control of a particular sub-unit, e.g. process diagnostic or vehicle driver interfaces
    • B60W50/02Ensuring safety in case of control system failures, e.g. by diagnosing, circumventing or fixing failures
    • B60W50/0205Diagnosing or detecting failures; Failure detection models
    • GPHYSICS
    • G07CHECKING-DEVICES
    • G07CTIME OR ATTENDANCE REGISTERS; REGISTERING OR INDICATING THE WORKING OF MACHINES; GENERATING RANDOM NUMBERS; VOTING OR LOTTERY APPARATUS; ARRANGEMENTS, SYSTEMS OR APPARATUS FOR CHECKING NOT PROVIDED FOR ELSEWHERE
    • G07C5/00Registering or indicating the working of vehicles
    • G07C5/08Registering or indicating performance data other than driving, working, idle, or waiting time, with or without registering driving, working, idle or waiting time
    • G07C5/0816Indicating performance data, e.g. occurrence of a malfunction
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
    • G05D1/0088Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots characterized by the autonomous decision making process, e.g. artificial intelligence, predefined behaviours
    • 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]
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
    • B60W50/00Details of control systems for road vehicle drive control not related to the control of a particular sub-unit, e.g. process diagnostic or vehicle driver interfaces
    • B60W2050/0001Details of the control system
    • B60W2050/0043Signal treatments, identification of variables or parameters, parameter estimation or state estimation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/10Geometric CAD
    • G06F30/15Vehicle, aircraft or watercraft design
    • GPHYSICS
    • G07CHECKING-DEVICES
    • G07CTIME OR ATTENDANCE REGISTERS; REGISTERING OR INDICATING THE WORKING OF MACHINES; GENERATING RANDOM NUMBERS; VOTING OR LOTTERY APPARATUS; ARRANGEMENTS, SYSTEMS OR APPARATUS FOR CHECKING NOT PROVIDED FOR ELSEWHERE
    • G07C5/00Registering or indicating the working of vehicles
    • G07C5/08Registering or indicating performance data other than driving, working, idle, or waiting time, with or without registering driving, working, idle or waiting time

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)
  • Geometry (AREA)
  • General Engineering & Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • Medical Informatics (AREA)
  • Remote Sensing (AREA)
  • Radar, Positioning & Navigation (AREA)
  • Health & Medical Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Game Theory and Decision Science (AREA)
  • Aviation & Aerospace Engineering (AREA)
  • Transportation (AREA)
  • Human Computer Interaction (AREA)
  • Mechanical Engineering (AREA)
  • Hardware Redundancy (AREA)
  • Debugging And Monitoring (AREA)
  • Logic Circuits (AREA)
  • Steering Control In Accordance With Driving Conditions (AREA)
  • Control Of Driving Devices And Active Controlling Of Vehicle (AREA)

Description

本発明は、制御装置、制御ユニット、制御方法、およびプログラムに関する。
従来、FPGA(Field Programmable Gate Array)に代表される、再構成可能なデバイス(演算器)に関する技術が開示されている(例えば、特許文献1)。特許文献1に記載の技術では、FPGA上に存在する故障情報と、論理回路データとに基づいて、故障回避の要否を判定し、故障回避が必要であれば、故障部分の機能をFPGAの空き部分で代用し、受け取った論理回路データに部分的な変更を加えて、故障を回避する論理回路データを生成する。
特開2001-136058号公報
しかしながら、従来の技術では、論理回路の空き領域が予め用意されていることを前提としており、リソースの空きが不十分である場合に好適な故障回避が行われない可能性があった。
本発明は、このような事情を考慮してなされたものであり、再構成可能な演算器の柔軟な構造を利用して故障発生時にのみ故障対応専用の機能を実現させる制御装置、制御ユニット、制御方法、およびプログラムを提供することを目的の一つとする。
この発明に係る制御装置、制御ユニット、制御方法、およびプログラムは、以下の構成を採用した。
(1):この発明の一態様に係る制御装置は、監視対象の状態に基づいて、前記監視対象に故障が生じたか否かを判定する判定部と、機能を再構成可能な演算器と、前記演算器に前記監視対象の動作に関連する機能を再構成させるためのソフトウェアを記憶した記憶部と、前記判定部により前記監視対象に故障が生じたと判定された場合、前記ソフトウェアを前記記憶部から読み出して前記演算器に反映させる処理部とを備えるものである。
(2):上記(1)の態様において、前記処理部は、前記判定部により前記監視対象に故障が生じたと判定された場合、前記判定部により前記監視対象に故障が生じたと判定されない場合に前記演算器が実行する他のソフトウェアが反映された前記演算器のメモリ領域に、前記監視対象の動作に関連する機能を再構成させるためのソフトウェアを上書きするものである。
(3):上記(2)の態様において、前記演算器は、前記判定部により前記監視対象に故障が生じたと判定されない場合、複数の前記他のソフトウェアに基づいて動作し、前記処理部は、前記演算器の他のソフトウェアが用いるメモリ領域に前記ソフトウェアを上書きする場合、前記他のソフトウェアに対して設定されている第1優先度情報を参照し、低い優先度が設定された前記他のソフトウェアを記憶するメモリ領域に、前記監視対象の動作に関連する機能を再構成させるためのソフトウェアを上書きするものである。
(4):上記(3)の態様において、前記監視対象の状態に基づいて、前記第1優先度情報を設定する第1優先度設定部を更に備えるものである。
(5):上記(1)から(4)のいずれかの態様において、前記記憶部には、前記判定部により前記監視対象に故障が生じたと判定された場合に読み出されて前記演算器に反映される複数の前記ソフトウェアが記憶されており、前記処理部は、前記判定部により前記監視対象に故障が生じたと判定された場合、複数の前記ソフトウェアに対して設定されている第2優先度情報を参照し、高い優先度が設定されたソフトウェアを優先して前記記憶部から読み出して前記演算器に反映させるものである。
(6):上記(5)の態様において、前記監視対象の状態に基づいて、前記第2優先度情報を設定する第2優先度設定部を更に備えるものである。
(7):この発明の一態様に係る制御ユニットは、2以上の請求項1から6のいずれか一項に記載の制御装置を含む制御ユニットであって、各制御装置が監視する前記監視対象は、自装置と異なる他の制御装置であるものである。
(8):上記(1)から(6)のいずれかの態様において、前記監視対象は、自動運転車両の車両制御を行う装置であり、前記監視対象の動作に関連する機能を再構成させるためのソフトウェアは、前記自動運転車両を限定的に走行させる縮退機能を実現するためのソフトウェアであるものである。
(9):上記(8)の態様において、前記演算器は、前記判定部により前記監視対象に故障が生じたと判定されない場合、複数の他のソフトウェアに基づいて動作し、前記処理部は、前記自動運転車両の周辺状況に応じて、前記記憶部の記憶する複数のソフトウェアの中から呼び出す前記ソフトウェアを選択するものである。
(10):上記(8)または(9)の態様において、前記処理部は、前記自動運転車両の周辺状況に応じて、前記監視対象の動作に関連する機能を再構成させるためのソフトウェアを段階的に前記記憶部から読み出して前記演算器に反映させるものである。
(11):上記(8)から(10)のいずれかの態様において、前記処理部は、前記演算器の既存機能が用いるメモリ領域に他のソフトウェアを上書きする場合、前記他のソフトウェアに対して設定されている第1優先度情報を参照し、低い優先度が設定された前記他のソフトウェアを記憶するメモリ領域に、前記監視対象の動作に関連する機能を再構成させるためのソフトウェアを上書きし、前記自動運転車両の運転制御に関する処理を実行する前記他のソフトウェアの第1優先度を高く設定する第1優先度設定部を更に備えるものである。
(12):上記(11)の態様において、前記第1優先度設定部は、前記自動運転車両を乗員が手動運転する際に動作する前記他のソフトウェアの第1優先度を高く設定するものである。
(13):上記(8)から(11)のいずれかの態様において、前記処理部は、前記演算器の他のソフトウェアが用いるメモリ領域に前記ソフトウェアを上書きする場合、前記ソフトウェアに対して設定されている第2優先度情報を参照し、前記自動運転車両の運転制御に関する処理を実施する前記ソフトウェアの第2優先度を高く設定する第2優先度設定部を更に備えるものである。
(14):上記(13)の態様において、前記第2優先度設定部は、前記縮退機能による車両の停止後に使用されるか否かに基づいて、前記ソフトウェアの第2優先度を変更するものである。
(15):上記(13)の態様において、前記第2優先度設定部は、前記自動運転車両を前記自動運転車両の乗員が手動運転する際に動作しない前記ソフトウェアの第2優先度を低く設定するものである。
(16):上記(7)の態様において、前記監視対象は、自動運転車両の車両制御を行う装置であり、前記監視対象の動作に関連する機能を再構成させるためのソフトウェアは、前記自動運転車両を限定的に走行させる縮退機能を実現するためのソフトウェアであるものである。
(17):この発明の一態様に係る制御方法は、コンピュータが、監視対象の状態に基づいて、前記監視対象に故障が生じたか否かを判定し、前記監視対象に故障が生じたと判定された場合、機能を再構成可能な演算器に前記監視対象の動作に関連する機能を再構成させるためのソフトウェアを記憶部から読み出して前記演算器に反映する制御方法である。
(18):上記(17)の態様において、前記コンピュータが、前記監視対象に故障が生じたと判定するまでの間、前記演算器に他のソフトウェアが反映された状態で前記演算器を動作させ、前記監視対象に故障が生じたと判定されると、前記演算器のメモリ領域に、前記監視対象の動作に関連する機能を再構成させるためのソフトウェアを上書きするものである。
(19):この発明の一態様に係るプログラムは、コンピュータに、監視対象の状態に基づいて、前記監視対象に故障が生じたか否かを判定させ、前記監視対象に故障が生じたと判定した場合、機能を再構成可能な演算器に前記監視対象の動作に関連する機能を再構成させるためのソフトウェアを記憶部から読み出して前記演算器に反映させる処理を行わせるプログラムである。
(1)~(18)によれば、再構成可能な演算器の柔軟な構造を利用して故障発生時にのみ故障対応専用の機能を実現させる。
また(2)によれば、利用条件が成立しない限り演算器に所定機能が書き込まれていないため、制御装置に搭載する最適な演算器を選択することができる。
また(3)~(4)によれば、第1優先度に基づいて所定機能の生成順序を最適化することができるため、生成時間を短縮し、早期に所定機能を実現できる。
また(5)~(6)によれば、第2優先度に基づいて所定機能の生成順序を最適化することができるため、生成時間を短縮し、早期に所定機能を実現できる。
また(8)および(15)によれば、自動運転の精度が低下した場合にのみ縮退機能を生成するため、演算器を小型化しつつ、縮退制御も実現することができる。
制御装置100-1および制御装置100-2からなる制御ユニット1の構成図である。 制御装置100-2が故障状態である場合の、制御ユニット1の構成図である。 従来の制御ユニット1Zの構成図である。 制御装置100-2が故障状態になる前の、制御装置100-1のメモリ利用状態の一例を示す図である。 制御装置100-2が故障状態になった後の、制御装置100-1のメモリ利用状態の一例を示す図である。 FOF生成部106による第1優先度に基づいてFOF部112を生成する処理の流れの一例を示すフローチャートである。 制御装置100-2が故障状態になる前の、制御装置100-1のメモリ利用状態の一例を示す図である。 制御装置100-2が故障状態になった後、且つ、FOF部112の生成が開始された後の制御装置100-1のメモリ利用状態の一例を示す図である。 FOF生成部106による2優先度に基づいてFOF部112を生成する処理の流れの一例を示すフローチャートである。 FOF生成部106による第2優先度に基づいてFOF部112を生成する処理の流れの一例を示すフローチャートである。 制御装置100-2が故障状態になる前の、制御装置100-1のメモリ利用状態の一例を示す図である。 制御装置100-2が故障状態になった後の、制御装置100-1のメモリ利用状態の一例を示す図である。 制御装置100-1が機能Aを停止させた後の、制御装置100-1のメモリ利用状態の一例を示す図である。 FOF生成部106によるFOF部112を生成する処理の流れの一例を示すフローチャートである。 実施形態の制御装置100のハードウェア構成の一例を示す図である。 車両制御装置5の構成図である。 自動運転制御装置ADAの構成図である。
以下、図面を参照し、本発明の制御装置、制御ユニット、制御方法、およびプログラムの実施形態について説明する。
<実施形態>
[制御装置の構成]
図1は、制御装置100-1および制御装置100-2を含む制御ユニット1の構成図である。図1に示す制御装置100-1および制御装置100-2は、例えば、それぞれが制御対象の対象装置TG-1および対象装置TG-2の制御に関する処理を行うものである。対象装置TG-1と対象装置TG-2は別体の装置であってもよいし、一体の装置であってもよい。後者の場合、対象装置TG-1と対象装置TG-2は、同一の装置における異なる機能についてそれぞれ制御を行う。なお、図1の説明において、符号におけるハイフンおよびこれに続く数字は、いずれの制御装置に対応する構成であるかを示すものとする。また、適宜、ハイフンおよびこれに続く数字を省略して説明を行う場合がある。
制御ユニット1は、2以上の制御装置100を含む。2以上の制御装置100は、他の制御装置100が安定稼働しているか否かを相互に監視し合う。2以上の制御装置100は、すべて同一の機能を有してもよいし、一部の機能が異なっていてもよい。2以上の制御装置100は、他の制御装置100と一部の機能が異なる場合であり、且つ、ある制御装置100が故障等により離脱した場合であっても、他の制御装置100によって、制御対象を安全に制御できるよう互いに補足し合う機能を有する。
制御ユニット1は、例えば、ホットスタンバイ形式の冗長構成を採用してもよいし、コールドスタンバイ形式の冗長構成を採用してもよいし、負荷分散機を介してロードバランスを行ってもよい。
また、以下の説明において制御装置100において、FPGA(Field Programmable Gate Array)(後述)のメモリ領域は、制御対象の制御に有効活用されており、十分な余剰(空き)は持たせないものとする。
制御装置100は、例えば、相互監視部102と、故障判定部104と、FOF(Fail Operational Function)生成部106と、第1優先度設定部108と、第2優先度設定部110と、FOF部112と、対象制御部114とを備える。
相互監視部102は、所定の間隔で他の制御装置100に対して、自らが正常に動作していることを知らせる情報(或いは相手が正常に動作していることを確認する情報)を含むハートビートメッセージを送受信することで、お互いの動作状態を監視する。ハートビートメッセージには、制御装置100の制御処理結果の一部又は全部を示すデータが含まれてもよく、この場合、相互監視部102は、制御処理結果のデータを相互に確認してもよい。相互監視部102は、ハートビートメッセージの送受信結果を、故障判定部104に出力する。
故障判定部104は、相互監視部102による他の制御装置100からのハートビートメッセージの受信結果に基づいて、他の制御装置100が故障しているか否かを判定する。故障判定部104は、例えば、他の制御装置100からのハートビートメッセージが所定の回数(例えば数回)以上連続して受信されていない場合に、他の制御装置100が故障状態であると判定する。故障判定部104は、他の制御装置100が故障状態であると判定した場合、FOF生成部106、第1優先度設定部108および第2優先度設定部110に、その旨を示す情報を出力する。
FOF生成部106は、故障判定部104により出力された信号に応じて、記憶部300からFOF機能を実現するプログラムを読み出し、制御装置100の備えるFPGAのメモリ領域に展開させることでFOF部112を生成する。FOFとは、制御装置100の不具合に関する対策を行う専用の機能のことであり、例えば、対象装置TGを一時停止させてフェールセーフを実現したり、対象装置TGの表示部に修理や交換を促す警告をさせたりといった機能のことである。FOFは、単一のソフトウェアで実現されてもよいし、機能毎のソフトウェアが用意され、複数の機能毎のソフトウェアによって実現されてもよい。FOFは、複数の機能毎のソフトウェアによって実現される場合、制御対象の周辺環境の状態に応じて、周辺環境の状況に適したソフトウェアが外部記憶装置から選択的に読み出される。
以下の説明において、FOFが実現する機能のことを「縮退機能」と称する場合がある。なお、FOF生成部106は「処理部」の一例であり、FOF部112は「監視対象の動作に関連する機能を再構成させるためのソフトウェア」によって実現される要素の一例である。
第1優先度設定部108は、FOF生成部106によってFOF部112を複数生成する際に、生成する優先度合いを設定する。第1優先度設定部108は、設定した優先度をFOF生成部106に出力する。なお、第1優先度設定部108は第1優先度を、あらかじめ設定してもよいし、FOF生成部106の処理が開始される直前に設定してもよい。第1優先度設定部108は、例えば、連続値で表される優先度、或いは「高、中、低」といった段階的な優先度を第1優先度として設定してもよいし、優先順位として設定してもよい。
第2優先度設定部110は、FOF生成部106によってFOF部112を生成する処理に要するメモリ容量の確保のため、制御装置100の備える既存機能から作業メモリ領域を回収したり、既存機能自体が確保しているメモリを回収したりする際に判断材料として用いる、既存機能の優先度を設定する。第2優先度設定部110は、設定した優先度をFOF生成部106に出力する。なお、第2優先度設定部110は第2優先度を、あらかじめ設定していてもよいし、FOF生成部106の処理が開始される直前に設定してもよい。第2優先度設定部110は、第1優先度設定部108と同様に、例えば、連続値で表される優先度、或いは「高、中、低」といった段階的な優先度を第2優先度として設定してもよいし、優先順位として設定してもよい。
なお、第1優先度設定部108と第2優先度設定部110は、制御装置100にどちらか一方のみが備えられてもよく、双方省略されてもよい。
対象制御部114は、制御装置100の対象装置TGに関する制御を行う。対象制御部114は、FOF生成部106によりFOF部112が生成される場合に、実現されなくなる可能性がある。
なお、FOF部112および対象制御部114は、制御装置100に含まれるFPGA(再構成可能な演算器の一例)上で実現される。FOF部112は、他の制御装置100に故障が発生した時に限り制御装置100に反映される機能であり、平常時は機能しない。FOF部112は、例えば、監視対象の他の制御装置100の故障を検知した場合に対象制御部114の展開されるメモリ領域の一部に上書きされることで生成され、他の制御装置100の修理または交換時まで機能する。
[FOF生成]
以下、FOF部112が生成される過程について説明する。なお、以下の説明において、FOF部112により使用するメモリ領域の一部または全部が回収される制御装置100上で実現する他の機能のことを、便宜上、対象制御部114-1Aを「機能A」、対象制御部114-1Bを「機能B」、対象制御部114-1Cを「機能C」、対象制御部114-1Dを「機能D」と称する。
図2は、制御装置100-1が制御装置100-2を故障状態と判定するタイミングの制御ユニット1の機能概要図である。FOF生成部106-1は、制御装置100-1の故障判定部104-1によって制御装置100-2が故障状態であると判定された場合、記憶部300からFOFを構成する元情報(例えば、ソフトウェアを圧縮格納したファイル)を呼び出し、制御装置100-1に格納する。記憶部300は、フラッシュメモリやHDD(Hard Disk Drive)などの記憶装置であってもよいし、制御装置100の制御対象と通信可能な外部サーバであってもよい。
FOF部112は、上述の通り、制御装置100-1にはメモリ容量の余剰がないことから、FOF生成部106によるメモリ領域の調整がなければ生成ができない。したがって、FOF生成部106-1は、他の機能(例えば、制御実行していない対象制御部114-1A~114-1C)の使用するメモリ領域の一部または全部を開放させることによってFOF部112-1を生成するメモリ容量を確保する。その際、FOF生成部106-1は、第1優先度設定部108-1によって設定された他の機能の第1優先度に基づいて、メモリを解放させる機能や解放させるメモリの割合を決定し、解放されたメモリ領域を用いてパーシャル・リコンフィグレーション(Partial Reconfiguration)を行うことによりFOF部112-1を生成する。パーシャル・リコンフィグレーションとは、FPGAの一部(例えば、解放されたメモリ領域)を、残りのFPGAの機能(例えば、制御実行中の対象制御部114-1D)を停止することなく引き続き処理実行させながら、動的に機能を再設定することである。また、FOF生成部106-1は、第2優先度設定部110-1によって設定された第2優先度に基づいて、FOF部112-1を生成してもよい。
[制御ユニットの比較例]
図3は、比較例の制御ユニット1Zの構成図を示す図である。比較例の制御ユニット1Zは、制御装置100Z-1および制御装置100Z-2からなる。また、制御装置100Zは、相互監視部102Zと、対象制御部114Zと、FOF部112Zとを備える。図3に示すように、FOF部112Zをあらかじめ制御装置100Zに設けておく場合、平常時であってもFOF部112Zを記憶するメモリ領域を確保しておく必要がある。
制御ユニット1Zが、対象装置TGを制御する高負荷の処理を行う場合、対象制御部114Zに割り当てる必要があるメモリ領域は大きくなることが想定される。その場合、対象制御部114Zが使用できるメモリ領域を可能な限り多く割り当てることで、対象制御部114Zの処理性能を上げることが望ましいが、FOF部112Zを記憶するメモリ領域が常に確保されなければならず、メモリ領域の利用状況は非効率的であるといえる。あるいは、制御装置100Zを使用する使用者は、制御装置100ZにFOF部112Zを記憶させ、且つ、対象制御部114Zの処理効率を高めるために、制御ユニット1Zの制御装置100Zに搭載する演算器を大型化する可能性がある。
制御装置100Zと比較して、本実施形態の制御装置100は、平常時には対象制御部114が使用できるメモリ領域を可能な限り多く割り当て、故障時のみFOF部112を生成するといった効率的な演算器利用ができる。また、制御装置100を使用する使用者は、制御装置100の平常時の処理量に応じて、制御装置100を搭載する最適なデバイスとして、より小型のデバイスを選択することができる。
[第1優先度を考慮したFOF生成]
以下、図4および図5を用いて、第1優先度設定部108による第1優先度の設定規則について説明する。なお、以下の説明において、図2に示した対象制御部(機能A)114-1A、対象制御部(機能B)114-1B、対象制御部(機能C)114-1C、対象制御部(機能D)114-1Dを用いる。以下の説明では、便宜上、対象制御部114-1Aを「機能A」、対象制御部114-1Bを「機能B」、対象制御部114-1Cを「機能C」、対象制御部114-1Dを「機能D」と称する。
図4は、制御装置100-2が故障状態になる前の、制御装置100-1のFPGAのメモリ領域の利用状況の一例を示す図である。図4は、制御装置100-2が故障状態であると判定される前の、機能A、機能B、機能C、および機能DによるFPGAのメモリ領域の利用状況と、第1優先度設定部108が各機能に設定した優先順位を機能別で示すものである。図4に示すタイミングでは、機能A、機能B、機能Cおよび機能Dによって、FPGAのすべてのメモリ領域が使用されているものとする。第1優先度設定部108は、例えば、各機能のメモリ領域の利用率の多い順に優先順位を設定し、機能Aに優先順位「1」、機能Bに優先順位「2」、機能Cに優先順位「3」、機能Dに優先順位「4」を設定する。
図5は、制御装置100-2が故障状態になった後の、制御装置100-1のFPGAのメモリ領域の利用状況の一例を示す図である。図5に示すように、FOF部112を構成するためにFPGAのメモリ領域の50[%]を要する場合において、FOF生成部106は、第1優先度設定部108によって設定された優先度に基づいて、メモリ領域の確保対象とする機能を選定する。図5の例においては、FOF生成部106は、すべての機能から少しずつメモリ領域を解放させることにより、FOF部112の要するメモリ領域を確保する。FOF生成部106は、図5に示すように、優先順位のより低い機能から、自機能に割り当てられたメモリ領域をより高い割合で解放させることでFOF部112に要するメモリ領域を確保する。例えば、FOF生成部106は、図4に示す状態において40[%]のメモリ領域使用率であった優先順位「1」の機能Aを、図5に示すように30[%]のメモリ領域使用率としており、元の4分の1のメモリ領域を解放させている。また、FOF生成部106は、図4に示す状態において10[%]のメモリ領域使用率であった優先順位「4」の機能Dを、図5に示すように1[%]のメモリ領域使用率としており、元の10分の9のメモリ領域を解放させる。このように、FOF生成部106は、優先順位に応じて各機能に解放させるメモリ領域を調整する。
以下、図6を用いて、FOF生成部106によるFOF部112を生成する処理の流れを説明する。図6は、FOF生成部106によるFOF部112を生成する処理の流れの一例を示すフローチャートである。なお、以下のフローチャートの説明は、図2に示す構成の制御装置100-1による処理として説明する。
まず、相互監視部102-1は、監視対象の制御装置100-2にハートビートメッセージを送信する(ステップS100)。次に、故障判定部104-1は、監視対象の制御装置100-2から応答があるか否かに基づいて、制御装置100-2が故障状態か否かを判定する(ステップS102)。故障判定部104-1は、制御装置100-2が故障状態であると判定しなかった場合、一定時間経過後に再度ステップS100に処理を戻す。故障判定部104-1は、制御装置100-2が故障状態であると判定した場合、第1優先度設定部108-1に対象制御部114-1の優先度を設定させる(ステップS104)。
次に、FOF生成部106-1は、第1優先度設定部108-1によって設定された優先度に基づいて、メモリ領域を確保し(ステップS106)、FOF部112-1を生成する(ステップS108)。FOF生成部106-1は、生成したFOF部112-1を起動し、処理を開始させる(ステップS110)。以上、本フローチャートの処理の説明を終了する。
[第1優先度設定の他の規則]
以下、図7および図8を用いて、第1優先度設定部108による優先度の他の設定規則について説明する。図7は、制御装置100-2が故障状態になる前の、制御装置100-1のFPGAのメモリ領域の利用状況の他の一例を示す図である。図7は、図4と比較して、機能の使用状況(ActiveまたはInactive)を示す状況欄が追加される。また、図7において、第1優先度設定部108は、各機能に優先度として「高」、「中」、「低」のいずれかを設定するものとする。第1優先度設定部108は、例えば、機能Aに優先度「高」を設定する。なお、図7の例においては、機能Bおよび機能Dは処理実行中(Active)であるが、機能Aおよび機能Cは処理を行っていない(Inactive)ものとする。
図8は、制御装置100-2が故障状態になった後の、制御装置100-1のFPGAのメモリ領域の利用状況の他の一例を示す図である。図8に示すように、FOF部112を構成するためにFPGAのメモリ領域の50[%]を要する場合において、FOF生成部106は、第1優先度設定部108によって設定された優先度および状況に基づいて、メモリ領域の確保対象とする機能を選定する。図8の例においては、FOF生成部106は、まず処理を行っていない機能Aおよび機能Cからメモリ領域を解放させる。このとき、FOF生成部106は、図8に示すように、機能Cのすべてのメモリ領域を解放させてもよいし、機能Cを実現するためのプログラムを記憶する領域も解放対象としてもよい。これは、FOF生成部106が、FOF部112が機能することにより制御装置100-2の修理が完了するまで、機能Cは機能することがないと判断したためである。一方、FOF生成部106は、機能Aのメモリ領域は、機能Cとは異なり、一部のメモリ領域は割り当てたままにする。これは、機能Aが優先度「高」であり、機能Cが優先度「中」であるための差異である。
また、FOF生成部106は、機能Aおよび機能Cに解放させたメモリ領域では、FOF部112の生成に要するメモリ領域に満たない場合に、処理実行中の機能Bおよび機能Dからもメモリ領域を解放させる。ただし、FOF生成部106は、FOF部112を生成する場合であっても、対象装置TGの制御に最低限必要な機能(例えば、手動操作時に必ず実現される機能)については、すべてのメモリ領域を解放させたり、機能自体を削除させないようにする。
図9は、FOF生成部106によるFOF部112を生成する処理の流れの他の一例を示すフローチャートである。なお、図9に示すステップS200およびS202は図6のステップS100およびS102と対応し、ステップS206は図6のステップS106と対応し、ステップS210およびS212は図6のステップS108およびS110と対応する。そのため、下記ではステップS204、S208およびS214を中心に説明する。
ステップS202において故障状態であると判定された場合、FOF生成部106は、対象制御部114の第1優先度を設定する(ステップS204)。
ステップS208の処理の後、FOF生成部106は、FOF部112の生成のためのメモリ領域がまだ不足した状態であるか否かを判定する(ステップS208)。FOF生成部106は、メモリ領域がまだ不足していると判定した場合、対象制御部114からさらにメモリ領域を解放させる(ステップS214)。FOF生成部106は、メモリ領域がまだ不足していると判定しなかった場合、ステップS212に処理を進める。以上、本フローチャートの処理の説明を終了する。
[第2優先度を考慮したFOF生成]
以下、第2優先度設定部110による第2優先度の設定規則、およびFOF生成部106が第2優先度を参照し、FOF部112を生成するタイミングを調整する場合の処理について説明する。なお、以下の例においては図2に示したように、制御ユニット1の制御装置100-2が故障状態になり、制御装置100-1がFOF部112を生成することにより対象装置TGの縮退機能により制御するものとして説明する。なお、以下の説明においても、図2の対象制御部(機能A)114-1A、対象制御部(機能B)114-1B、対象制御部(機能C)114-1C、対象制御部(機能D)114-1Dを用いて説明する。
図10は、第2優先度設定部110によって設定されたFOF部112の第2優先度と、FOF部112との対応関係を示す図である。第2優先度設定部110は、例えば、第2優先度を「高、中、低」のように段階的に設定する場合に、FOF部112の機能1には第2優先度「高」を、機能2には第2優先度「低」を設定したものとする。
図11は、制御装置100-2が故障状態になる前の、制御装置100-1のメモリ利用状態の一例を示す図である。図11に示す段階において、制御装置100-1では、対象装置TGに対する機能Aが緊急制御機能を実施しており、メモリ領域の70[%]を使用中である。緊急制御機能は、例えば、対象装置TGの一時停止や安全確認のための制御を行う機能であり、途中で停止させるべきでない制御である。また、図11に示す段階において、制御装置100-1では、対象装置TGに対する機能B、機能Cおよび機能Dが制御機能を実施しているが、途中で停止されても支障がないものとする。
図11に示したタイミングで、制御ユニット1の制御装置100-1は、制御装置100-2が故障状態であると判定し、制御装置100-1の残りのメモリ領域は、機能B、機能C、および機能Dが使用中である。第1優先度設定部108は、上述の使用状況において、機能Aに第1優先度「高」を設定し、機能B、機能C、および機能Dに第1優先度「低」を設定する。
このとき、FOF生成部106は、対象装置TGの使用状況に基づいて、FPGAのメモリ領域の70[%]を使用してFOF部112として2つの機能(機能1および機能2)を生成することを決定する。FOF生成部106は、第1優先度設定部108の設定した第1優先度を参照し、FOF部112を生成するために第1優先度の低い機能B、機能C、および機能Dからメモリ領域を解放させると選択する。また、FOF生成部106は、解放させるメモリ領域が最大で30[%]になることから、FOF部112の機能1を先に生成し、緊急制御機能が終了したらFOF部112の機能2を生成すると決定する。
図12は、制御装置100-2が故障状態になった後の、制御装置100-1のメモリ利用状態の一例を示す図である。FOF生成部106は、機能B、機能C、および機能Dから徐々にメモリ領域を解放させ、FOF部112の機能1の生成を開始し、機能B、機能C、および機能Dから解放させたメモリ領域を割り当てる。このタイミングで、機能Aは制御を終了したとする。
図13は、制御装置100-2が故障状態になった後、且つ、FOF部112の生成が開始された後の制御装置100-1のメモリ利用状態の一例を示す図である。FOF生成部106は、機能Aが使用していたメモリ領域を解放させ、FOF部112の機能1および機能2を生成し、その処理を開始させる。このとき、FOF生成部106は、メモリ領域に余剰があれば、図13に示すように対象制御部114(機能B、機能C、および機能D)に割り当ててもよいし、FOF部112に追加で割り当ててもよい。
また、FOF生成部106は、さらに生成するFOF部112がある場合であり、且つ、既に生成したFOF部112がその機能による処理を終了し、再度同様の処理を行うことがない場合、既に生成したFOF部112を削除して、新たなFOF部112を生成してもよい。
[フローチャート]
図14は、FOF生成部106が第1優先度を参照してFOF部112を生成する処理の流れの一例を示すフローチャートである。なお、図14に示すステップS300およびS302は図6のステップS100およびS102と対応する。そのため、下記ではステップS304以降を説明する。
故障判定部104は、ステップS302の処理において、故障状態であると判定した場合、第2優先度設定部110にFOF部112の各機能の第2優先度を設定させる(ステップS304)。次に、FOF生成部106は、第1優先度が高く、且つ、制御実行中の対象制御部114の実現する機能をメモリ領域の解放対象から除外する(ステップS306)。次に、FOF生成部106は、ステップS306で除外した機能以外からメモリ領域を確保し(ステップS308)、第2優先度の高いFOF部112から生成を開始する(ステップS310)。次に、先行して生成した第2優先度の高いFOF部112の機能を起動する(ステップS312)。
次に、FOF生成部106は、制御実行中の対象制御部114の実現する機能が処理を終了したか否かを判定する(ステップS314)。FOF生成部106は、処理を終了したと判定した場合、追加メモリ領域を確保し(ステップS316)、FOF部112の追加生成を開始する(ステップS318)。FOF生成部106は、追加生成が完成したFOF部112の機能を起動する(ステップS320)。以上、本フローチャートの処理の説明を終了する。
なお、FOF部112は、対象制御部114を適宜呼び出して機能を援用してもよい。その場合、FOF部112に援用される対象制御部114には高い第1優先度が設定される。FOF部112が対象制御部114を呼び出して機能を援用する場合、FOF部112は、援用する対象制御部114の機能に応じて、段階的に構成されてもよい。例えば、対象装置TGの温度制御生成に関する対象制御部114の機能を継続して援用する場合、FOF生成部106は生成するFOF部112に温度制御生成の機能を持たせなくてもよい。
[ハードウェア構成]
図15は、車両制御装置5が搭載する制御装置100のハードウェア構成の一例を示す図である。なお、図15の説明において、符号におけるハイフンおよびこれに続く数字は、制御装置100の構成要素を示すものである。図示するように、制御装置100は、通信コントローラ100-10、CPU100-20、ワーキングメモリとして使用されるRAM(Random Access Memory)100-30、ブートプログラムなどを格納するROM(Read Only Memory)100-40、フラッシュメモリやHDDなどの記憶装置100-50、ドライブ装置100-60、FPGA100-70などが、内部バスあるいは専用通信線によって相互に接続された構成となっている。通信コントローラ100-10は、制御装置100以外の構成要素との通信を行う。記憶装置100-50には、CPU100-2が実行するプログラム100-50aが格納されている。このプログラムは、DMA(Direct Memory Access)コントローラ(不図示)などによってFPGA100-70上のRAM100-30に展開されて、CPU100-20によって実行される。これによって、認識部130および行動計画生成部140が実現される。
上記説明した実施形態は、以下のように表現することができる。
プログラムを記憶した記憶装置と、
ハードウェアプロセッサと、を備え、
前記ハードウェアプロセッサは、前記記憶装置に記憶されたプログラムを実行することにより、
監視対象の状態に基づいて、前記監視対象に故障が生じたか否かを判定し、
前記監視対象に故障が生じたと判定された場合、機能を再構成可能な演算器に前記監視対象の動作に関連する機能を再構成させるためのソフトウェアを読み出して前記演算器に反映させる、
ように構成されている、制御装置。
以上説明した第1の実施形態によれば、監視対象の状態に基づいて、監視対象に故障が生じたか否かを判定する故障判定部104と、機能を再構成可能なFPGAにおいて監視対象の動作に関連する機能を再構成させるためのFOF部112を記憶した記憶部300と、故障判定部104により監視対象に故障が生じたと判定された場合、FOF部112を生成するFOF生成部106とを備えることにより、再構成可能なFPGAの柔軟な構造を利用して故障発生時にのみ故障対応専用のFOF部112を実現させることができる。
また、第1の実施形態の制御装置100によれば、平常時であればFPGAを対象制御部114の制御にのみ使用させることができることから、平常時には対象制御部114が使用できるメモリ領域を可能な限り多く割り当て、故障時のみFOF部112を生成するといった効率的な演算器利用ができ、制御装置100の平常時の処理量に応じて、制御装置100を搭載する最適なデバイスを選択することができる。
また、第1の実施形態の制御装置100によれば、第1優先度設定部108による第1優先度、および/または第2優先度設定部110による第2優先度に基づいてFOF部112の生成順序を最適化することができ、生成時間を短縮し、早期にFOF部112による制御を実現することができる。
<適用例>
以下、実施形態の適用例について説明する。本例では、制御ユニット(制御装置)の制御対象が自動運転車両Mに搭載された機器であるものとする。
[車両制御時の全体構成]
図16は、実施形態に係る制御ユニット(制御装置)を含む、車両制御装置5の構成図である。車両制御装置5が搭載される車両は、例えば、二輪や三輪、四輪等の車両であり、その駆動源は、ディーゼルエンジンやガソリンエンジンなどの内燃機関、電動機、或いはこれらの組み合わせである。電動機は、内燃機関に連結された発電機による発電電力、或いは二次電池や燃料電池の放電電力を使用して動作する。
車両制御装置5は、例えば、カメラ10と、レーダ装置12と、ファインダ14と、物体認識装置16と、通信装置20と、HMI(Human Machine Interface)30と、車両センサ40と、ナビゲーション装置50と、MPU(Map Positioning Unit)60と、運転操作子80と、自動運転制御装置ADAと、走行駆動力出力装置200と、ブレーキ装置210と、ステアリング装置220とを備える。これらの装置や機器は、CAN(Controller Area Network)通信線等の多重通信線やシリアル通信線、無線通信網等によって互いに接続される。なお、図16に示す構成はあくまで一例であり、構成の一部が省略されてもよいし、更に別の構成が追加されてもよい。
カメラ10は、例えば、CCD(Charge Coupled Device)やCMOS(Complementary Metal Oxide Semiconductor)等の固体撮像素子を利用したデジタルカメラである。カメラ10は、車両制御装置5が搭載される車両(以下、自動運転車両M)の任意の箇所に取り付けられる。前方を撮像する場合、カメラ10は、フロントウインドシールド上部やルームミラー裏面等に取り付けられる。カメラ10は、例えば、周期的に繰り返し自動運転車両Mの周辺を撮像する。カメラ10は、ステレオカメラであってもよい。
レーダ装置12は、自動運転車両Mの周辺にミリ波などの電波を放射すると共に、物体によって反射された電波(反射波)を検出して少なくとも物体の位置(距離および方位)を検出する。レーダ装置12は、自動運転車両Mの任意の箇所に取り付けられる。レーダ装置12は、FM-CW(Frequency Modulated Continuous Wave)方式によって物体の位置および速度を検出してもよい。
ファインダ14は、LIDAR(Light Detection and Ranging)である。ファインダ14は、自動運転車両Mの周辺に光を照射し、散乱光を測定する。ファインダ14は、発光から受光までの時間に基づいて、対象までの距離を検出する。照射される光は、例えば、パルス状のレーザー光である。ファインダ14は、自動運転車両Mの任意の箇所に取り付けられる。
物体認識装置16は、カメラ10、レーダ装置12、およびファインダ14のうち一部または全部による検出結果に対してセンサフュージョン処理を行って、物体の位置、種類、速度などを認識する。物体認識装置16は、認識結果を自動運転制御装置ADAに出力する。物体認識装置16は、カメラ10、レーダ装置12、およびファインダ14の検出結果をそのまま自動運転制御装置ADAに出力してよい。車両制御装置5から物体認識装置16が省略されてもよい。
通信装置20は、例えば、セルラー網やWi-Fi網、Bluetooth(登録商標)、DSRC(Dedicated Short Range Communication)などを利用して、自動運転車両Mの周辺に存在する他車両と通信し、或いは無線基地局を介して各種サーバ装置と通信する。
HMI30は、自動運転車両Mの乗員に対して各種情報を提示すると共に、乗員による入力操作を受け付ける。HMI30は、各種表示装置、スピーカ、ブザー、タッチパネル、スイッチ、キーなどを含む。
車両センサ40は、自動運転車両Mの速度を検出する車速センサ、加速度を検出する加速度センサ、鉛直軸回りの角速度を検出するヨーレートセンサ、自動運転車両Mの向きを検出する方位センサ等を含む。
ナビゲーション装置50は、例えば、GNSS(Global Navigation Satellite System)受信機51と、ナビHMI52と、経路決定部53とを備える。ナビゲーション装置50は、HDD(Hard Disk Drive)やフラッシュメモリなどの記憶装置に第1地図情報54を保持している。GNSS受信機51は、GNSS衛星から受信した信号に基づいて、自動運転車両Mの位置を特定する。自動運転車両Mの位置は、車両センサ40の出力を利用したINS(Inertial Navigation System)によって特定または補完されてもよい。ナビHMI52は、表示装置、スピーカ、タッチパネル、キーなどを含む。ナビHMI52は、前述したHMI30と一部または全部が共通化されてもよい。経路決定部53は、例えば、GNSS受信機51により特定された自動運転車両Mの位置(或いは入力された任意の位置)から、ナビHMI52を用いて乗員により入力された目的地までの経路(以下、地図上経路)を、第1地図情報54を参照して決定する。第1地図情報54は、例えば、道路を示すリンクと、リンクによって接続されたノードとによって道路形状が表現された情報である。第1地図情報54は、道路の曲率やPOI(Point Of Interest)情報などを含んでもよい。地図上経路は、MPU60に出力される。ナビゲーション装置50は、地図上経路に基づいて、ナビHMI52を用いた経路案内を行ってもよい。ナビゲーション装置50は、例えば、乗員の保有するスマートフォンやタブレット端末等の端末装置の機能によって実現されてもよい。ナビゲーション装置50は、通信装置20を介してナビゲーションサーバに現在位置と目的地を送信し、ナビゲーションサーバから地図上経路と同等の経路を取得してもよい。
MPU60は、例えば、推奨車線決定部61を含み、HDDやフラッシュメモリなどの記憶装置に第2地図情報62を保持している。推奨車線決定部61は、ナビゲーション装置50から提供された地図上経路を複数のブロックに分割し(例えば、車両進行方向に関して100[m]毎に分割し)、第2地図情報62を参照してブロックごとに推奨車線を決定する。推奨車線決定部61は、左から何番目の車線を走行するといった決定を行う。推奨車線決定部61は、地図上経路に分岐箇所が存在する場合、自動運転車両Mが、分岐先に進行するための合理的な経路を走行できるように、推奨車線を決定する。
第2地図情報62は、第1地図情報54よりも高精度な地図情報である。第2地図情報62は、例えば、車線の中央の情報あるいは車線の境界の情報等を含んでいる。また、第2地図情報62には、道路情報、交通規制情報、住所情報(住所・郵便番号)、施設情報、電話番号情報などが含まれてよい。第2地図情報62は、通信装置20が他装置と通信することにより、随時、アップデートされてよい。
運転操作子80は、例えば、アクセルペダル、ブレーキペダル、シフトレバー、ステアリングホイール、異形ステア、ジョイスティックその他の操作子を含む。運転操作子80には、操作量あるいは操作の有無を検出するセンサが取り付けられており、その検出結果は、自動運転制御装置ADA、もしくは、走行駆動力出力装置200、ブレーキ装置210、およびステアリング装置220のうち一部または全部に出力される。
自動運転制御装置ADAは、例えば、第1制御部120および第2制御部160を備える。自動運転制御装置ADAにおける第1制御部120が上記実施形態における制御装置100-1の適用例であり、第2制御部160が上記実施形態における制御装置100-2の適用例である。これに限らず、制御装置100-1の適用先は第1制御部120の中の認識部130、制御装置100-2の適用先は行動計画生成部140というように適用先が決定されてもよい。その他、図16または17に示す車両制御装置5の構成要素うち、任意の構成要素に制御装置100-1および制御装置100-2が適用されてもよい。適用された制御装置100-1と制御装置100-2の組み合わせが制御ユニット1である。
図17は、自動運転制御装置ADAの構成図である。第1制御部120は、例えば、認識部130と、行動計画生成部140とを備える。第1制御部120と第2制御部160は、それぞれ、例えば、CPU(Central Processing Unit)などのハードウェアプロセッサがプログラム(ソフトウェア)を実行することにより実現される。また、これらの構成要素のうち一部または全部は、LSI(Large Scale Integration)やASIC(Application Specific Integrated Circuit)、FPGA、GPU(Graphics Processing Unit)などのハードウェア(回路部;circuitryを含む)によって実現されてもよいし、ソフトウェアとハードウェアの協働によって実現されてもよい。プログラムは、予め自動運転制御装置ADAのHDDやフラッシュメモリなどの記憶装置に格納されていてもよいし、DVDやCD-ROMなどの着脱可能な記憶媒体に格納されており、記憶媒体がドライブ装置に装着されることで自動運転制御装置ADAのHDDやフラッシュメモリにインストールされてもよい。
第1制御部120は、例えば、AI(Artificial Intelligence;人工知能)による機能と、予め与えられたモデルによる機能とを並行して実現する。例えば、「交差点を認識する」機能は、ディープラーニング等による交差点の認識と、予め与えられた条件(パターンマッチング可能な信号、道路標示などがある)に基づく認識とが並行して実行され、双方に対してスコア付けして総合的に評価することで実現されてよい。これによって、自動運転の信頼性が担保される。
認識部130は、例えば、周辺状況認識部132と、オブジェクト認識部134と、交通シーン選択部136と、テキスト生成部138とを備える。周辺状況認識部132は、カメラ10、レーダ装置12、およびファインダ14から物体認識装置16を介して入力された情報に基づいて、自動運転車両Mの周辺にある物体の位置、および速度、加速度等の状態を認識する。物体の位置は、例えば、自動運転車両Mの代表点(重心や駆動軸中心など)を原点とした絶対座標上の位置として認識され、制御に使用される。物体の位置は、その物体の重心やコーナー等の代表点で表されてもよいし、表現された領域で表されてもよい。物体の「状態」とは、物体の加速度やジャーク、あるいは「行動状態」(例えば車線変更をしている、またはしようとしているか否か)を含んでもよい。
行動計画生成部140は、原則的には推奨車線決定部61により決定された推奨車線を走行し、更に、自動運転車両Mの周辺状況に対応できるように、自動運転車両Mが自動的に(運転者の操作に依らずに)将来走行する目標軌道を生成する。目標軌道は、例えば、速度要素を含んでいる。例えば、目標軌道は、自動運転車両Mの到達すべき地点(軌道点)を順に並べたものとして表現される。軌道点は、道なり距離で所定の走行距離(例えば数[m]程度)ごとの自動運転車両Mの到達すべき地点であり、それとは別に、所定のサンプリング時間(例えば0コンマ数[sec]程度)ごとの目標速度および目標加速度が、目標軌道の一部として生成される。また、軌道点は、所定のサンプリング時間ごとの、そのサンプリング時刻における自動運転車両Mの到達すべき位置であってもよい。この場合、目標速度や目標加速度の情報は軌道点の間隔で表現される。
行動計画生成部140は、目標軌道を生成するにあたり、自動運転のイベントを設定してよい。自動運転のイベントには、定速走行イベント、低速追従走行イベント、車線変更イベント、分岐イベント、合流イベント、テイクオーバーイベントなどがある。行動計画生成部140は、起動させたイベントに応じた目標軌道を生成する。
第2制御部160は、行動計画生成部140によって生成された目標軌道を、予定の時刻通りに自動運転車両Mが通過するように、走行駆動力出力装置200、ブレーキ装置210、およびステアリング装置220を制御する。
第2制御部160は、例えば、取得部162と、速度制御部164と、操舵制御部166とを備える。取得部162は、行動計画生成部140により生成された目標軌道(軌道点)の情報を取得し、メモリ(不図示)に記憶させる。速度制御部164は、メモリに記憶された目標軌道に付随する速度要素に基づいて、走行駆動力出力装置200またはブレーキ装置210を制御する。操舵制御部166は、メモリに記憶された目標軌道の曲がり具合に応じて、ステアリング装置220を制御する。速度制御部164および操舵制御部166の処理は、例えば、フィードフォワード制御とフィードバック制御との組み合わせにより実現される。一例として、操舵制御部166は、自動運転車両Mの前方の道路の曲率に応じたフィードフォワード制御と、目標軌道からの乖離に基づくフィードバック制御とを組み合わせて実行する。
走行駆動力出力装置200は、車両が走行するための走行駆動力(トルク)を駆動輪に出力する。走行駆動力出力装置200は、例えば、内燃機関、電動機、および変速機などの組み合わせと、これらを制御するECUとを備える。ECUは、第2制御部160から入力される情報、或いは運転操作子80から入力される情報に従って、上記の構成を制御する。
ブレーキ装置210は、例えば、ブレーキキャリパーと、ブレーキキャリパーに油圧を伝達するシリンダと、シリンダに油圧を発生させる電動モータと、ブレーキECUとを備える。ブレーキECUは、第2制御部160から入力される情報、或いは運転操作子80から入力される情報に従って電動モータを制御し、制動操作に応じたブレーキトルクが各車輪に出力されるようにする。ブレーキ装置210は、運転操作子80に含まれるブレーキペダルの操作によって発生させた油圧を、マスターシリンダを介してシリンダに伝達する機構をバックアップとして備えてよい。なお、ブレーキ装置210は、上記説明した構成に限らず、第2制御部160から入力される情報に従ってアクチュエータを制御して、マスターシリンダの油圧をシリンダに伝達する電子制御式油圧ブレーキ装置であってもよい。
ステアリング装置220は、例えば、ステアリングECUと、電動モータとを備える。電動モータは、例えば、ラックアンドピニオン機構に力を作用させて転舵輪の向きを変更する。ステアリングECUは、第2制御部160から入力される情報、或いは運転操作子80から入力される情報に従って、電動モータを駆動し、転舵輪の向きを変更させる。
[車両制御装置への適用例1]
前述したように、車両制御装置5において、例えば、第2制御部160が制御装置100-1により実現され、第1制御部120が制御装置100-2により実現される。制御装置100-2が故障した場合、例えば、制御装置100-1が自動運転車両Mを徐々に減速させ、停止させる。
以下、図7に戻り、車両制御装置5において第1優先度設定部108が第1優先度を設定する設定規則について説明する。なお、図7の例においては、機能Aは自動運転車両Mの追突軽減ブレーキを制御する機能であり、機能Bは自動運転車両Mの車線維持を支援する機能であり、機能Cは自動運転車両Mの車線変更を支援する機能であり、機能Dは自動運転車両Mの車室内を制御する機能であるものとする。図16、および図17では、これらの個別の機能を実現するための機能部についての図示を省略している。
FOF部112は、例えば、自動運転制御装置ADAの制御対象が自動運転車両Mである場合、ディーラや整備工場などに自動運転車両Mの故障連絡をすることに関する機能や、路側帯に一時停止することに関する機能、ディーラや整備工場などまで乗員を送り届けることに関する機能といった、自動運転車両Mを限定的に走行させる機能を実現する。FOF部112は、自動運転制御装置ADAによって実現されてもよいし、乗員による手動運転で作動する機能であってもよい。
FOF生成部106は、FOF部112を生成する場合であっても、自動運転車両Mの制御に最低限必要な機能や、自動運転車両Mの乗員によって手動運転される際に必要となる機能(例えば、機能Aの追突軽減ブレーキ)については、すべてのメモリ領域を解放させたり、機能のプログラム自体を削除させたりしないようにする。
FOF生成部106は、自動運転車両Mが無人走行中である場合や、自動運転車両Mの気温や天候等の周辺環境に基づいて、機能Dを機能させないようにしてもよいと決定し、その判定結果に基づいてメモリ領域の解放を行ってもよい。機能Dが自動運転車両Mの空調等の制御を行っている場合であり、且つ、自動運転車両Mが無人走行中である場合、FOF生成部106は、機能Dの機能削除を含むメモリ領域の解放を行ってもよいと決定する。一方、機能Dが自動運転車両Mの空調等の制御を行っている場合であり、且つ、自動運転車両Mの乗員に幼児や老人が含まれる場合、FOF生成部106は、機能Dの機能削除を含むメモリ領域の解放を行わないと決定する。
また、FOF生成部106は、自動運転車両Mが障害物迂回制御のような走行イベントに関連する制御を行っている場合、そのイベントに応じてFOF部112の生成タイミングを調整する。
例えば、自動運転車両Mの認識部130は、自動運転車両Mの走行方向前方に障害物を認識し、行動計画生成部140に障害物迂回イベントを設定させ、行動計画生成部140は、障害物を迂回するための走行軌道を生成する。上述の障害物迂回イベント発生直後に制御装置100によって他の制御装置100の故障が検知された場合、FOF生成部106は、FOF部112の生成タイミングを遅くしてもよい。FOF生成部106は、例えば、FOF部112の生成タイミングを、障害物迂回イベント終了後とする。
[車両制御装置への適用例2]
以下、図10に戻り、車両制御装置5において第2優先度設定部110が第2優先度を設定する設定規則について説明する。なお、図10の例においては、機能1は自動運転車両Mを路側等に一時停止する機能であり、機能Bは自動運転車両Mのディーラや修理工場に連絡して自動運転制御装置ADAの修理・交換を手配し、ディーラや修理工場まで自動運転車両Mを自動運転または手動運転で移動させる機能であるものとする。
第2優先度設定部110は、制御装置100が他の制御装置100の故障を検知した場合、まず自動運転車両Mを路側等に一時停止させた後、ディーラや修理工場に連絡して修理・交換を手配することから、FOF部112の機能1に対して、機能2よりも高い第2優先度を設定する。
また、第2優先度設定部110は、FOF部112の機能1による自動運転車両Mの一時停止を終了した場合、FOF部112の機能2によってディーラ等に連絡して修理・交換を手配した後、修理工場等まで自動運転車両Mを移動させる場合に、修理工場まで自動運転車両Mを移動させる際は手動運転が行われることが想定されるため、FOF部112の機能2の第2優先度を第1優先度よりも高く設定する。また、第2優先度設定部110は、FOF部112のうち手動運転時に作動する機能(例えば機能2)がある場合、その機能の第2優先度を高く設定し、手動運転時に作用しない機能(例えば機能1)の第2優先度を低く設定する。
以上説明したように、車両制御装置5によれば、監視対象である自動運転車両Mの車両制御を行い、自動運転車両Mを限定的に走行させる縮退機能を実現するためのソフトウェアであるFOF部112は、再構成可能なFPGAの柔軟な構造を利用して故障発生時にのみ故障対応専用の機能を実現させることができる。
また、車両制御装置5によれば、自動運転の精度が低下した場合にのみ縮退機能であるFOF部112を生成するため、制御装置100を小型化しつつ、縮退制御も実現することができる。
以上、本発明を実施するための形態について実施形態を用いて説明したが、本発明はこうした実施形態に何等限定されるものではなく、本発明の要旨を逸脱しない範囲内において種々の変形及び置換を加えることができる。
1…制御ユニット、5…車両制御装置、10…カメラ、12…レーダ装置、14…ファインダ、16…物体認識装置、20…通信装置、30…HMI、40…車両センサ、50…ナビゲーション装置、60…MPU、80…運転操作子、100…制御装置、104、104-1、104-2…故障判定部、106、106-1、106-2…FOF生成部、108、108-1、108-2…第1優先度設定部、110…第2優先度設定部、112…FOF部、114…対象制御部、120…第1制御部、130…認識部、140…行動計画生成部、160…第2制御部、200…走行駆動力出力装置、210…ブレーキ装置、220…ステアリング装置、300…記憶部、M…自動運転車両、ADA…自動運転制御装置

Claims (16)

  1. 監視対象の状態に基づいて、前記監視対象に故障が生じたか否かを判定する判定部と、
    機能を再構成可能な演算器と、
    前記演算器に前記監視対象の動作に関連する機能を再構成させるためのソフトウェアを記憶した記憶部と、
    前記判定部により前記監視対象に故障が生じたと判定された場合、前記判定部により前記監視対象に故障が生じたと判定されない場合に前記演算器が実行する他のソフトウェアが反映された前記演算器のメモリ領域に、前記監視対象の動作に関連する機能を再構成させるためのソフトウェアを上書きする処理部と、
    を備え
    前記演算器は、前記判定部により前記監視対象に故障が生じたと判定されない場合、複数の前記他のソフトウェアに基づいて動作し、
    前記処理部は、前記演算器の他のソフトウェアが用いるメモリ領域に前記ソフトウェアを上書きする場合、前記他のソフトウェアに対して設定されている第1優先度情報を参照し、低い優先度が設定された前記他のソフトウェアを記憶するメモリ領域に、前記監視対象の動作に関連する機能を再構成させるためのソフトウェアを上書きする、制御装置。
  2. 前記監視対象の状態に基づいて、前記第1優先度情報を設定する第1優先度設定部を更に備える、
    請求項1に記載の制御装置。
  3. 前記記憶部には、前記判定部により前記監視対象に故障が生じたと判定された場合に読み出されて前記演算器に反映される複数の前記ソフトウェアが記憶されており、
    前記処理部は、
    前記判定部により前記監視対象に故障が生じたと判定された場合、複数の前記ソフトウェアに対して設定されている第2優先度情報を参照し、高い優先度が設定されたソフトウェアを優先して前記記憶部から読み出して前記演算器に反映させる、
    請求項1または2に記載の制御装置。
  4. 前記監視対象の状態に基づいて、前記第2優先度情報を設定する第2優先度設定部を更に備える、
    請求項に記載の制御装置。
  5. 2以上の請求項1からのいずれか一項に記載の制御装置を含む制御ユニットであって、
    各制御装置が監視する前記監視対象は、自装置と異なる他の制御装置である、
    制御ユニット。
  6. 自動運転車両の車両制御を行う装置である監視対象の状態に基づいて、前記監視対象に故障が生じたか否かを判定する判定部と、
    機能を再構成可能な演算器と、
    前記演算器に前記監視対象の動作に関連する機能を再構成させるためのソフトウェアであって、前記自動運転車両を限定的に走行させる縮退機能を実現するためのソフトウェアを記憶した記憶部と、
    前記判定部により前記監視対象に故障が生じたと判定された場合、前記ソフトウェアを前記記憶部から読み出して前記演算器に反映させる処理部と、
    を備え
    前記演算器は、前記判定部により前記監視対象に故障が生じたと判定されない場合、複数の他のソフトウェアに基づいて動作し、
    前記処理部は、前記自動運転車両の周辺状況に応じて、前記記憶部の記憶する複数のソフトウェアの中から呼び出す前記ソフトウェアを選択する、制御装置。
  7. 前記処理部は、前記自動運転車両の周辺状況に応じて、前記監視対象の動作に関連する機能を再構成させるためのソフトウェアを段階的に前記記憶部から読み出して前記演算器に反映させる、
    請求項に記載の制御装置。
  8. 前記処理部は、前記演算器の既存機能が用いるメモリ領域に他のソフトウェアを上書きする場合、前記他のソフトウェアに対して設定されている第1優先度情報を参照し、低い優先度が設定された前記他のソフトウェアを記憶するメモリ領域に、前記監視対象の動作に関連する機能を再構成させるためのソフトウェアを上書きし、
    前記自動運転車両の運転制御に関する処理を実施する前記他のソフトウェアの第1優先度を高く設定する第1優先度設定部を更に備える、
    請求項6または7に記載の制御装置。
  9. 前記第1優先度設定部は、前記自動運転車両を乗員が手動運転する際に動作する前記他のソフトウェアの第1優先度を高く設定する、
    請求項に記載の制御装置。
  10. 前記処理部は、前記演算器の他のソフトウェアが用いるメモリ領域に前記ソフトウェアを上書きする場合、前記ソフトウェアに対して設定されている第2優先度情報を参照し、前記自動運転車両の運転制御に関する処理を実施する前記ソフトウェアの第2優先度を高く設定する第2優先度設定部を更に備える、
    請求項6または7に記載の制御装置。
  11. 前記第2優先度設定部は、
    前記第2優先度設定部は、前記縮退機能による車両の停止後に使用されるか否かに基づいて、前記ソフトウェアの第2優先度を変更する、
    請求項10に記載の制御装置。
  12. 前記第2優先度設定部は、
    前記自動運転車両を前記自動運転車両の乗員が手動運転する際に動作しない前記ソフトウェアの第2優先度を低く設定する、
    請求項10に記載の制御装置。
  13. 前記監視対象は、自動運転車両の車両制御を行う装置であり、
    前記監視対象の動作に関連する機能を再構成させるためのソフトウェアは、前記自動運転車両を限定的に走行させる縮退機能を実現するためのソフトウェアである、
    請求項に記載の制御ユニット。
  14. コンピュータが、
    監視対象の状態に基づいて、前記監視対象に故障が生じたか否かを判定し、
    前記監視対象に故障が生じたと判定した場合、前記監視対象に故障が生じたと判定されない場合に、機能を再構成可能な演算器が実行する他のソフトウェアが反映された前記演算器のメモリ領域に、前記監視対象の動作に関連する機能を再構成させるためのソフトウェアを上書きし、
    前記演算器の他のソフトウェアが用いるメモリ領域に前記ソフトウェアを上書きする場合、前記他のソフトウェアに対して設定されている第1優先度情報を参照し、低い優先度が設定された前記他のソフトウェアを記憶するメモリ領域に、前記監視対象の動作に関連する機能を再構成させるためのソフトウェアを上書きする、 制御方法。
  15. 前記コンピュータが、
    前記監視対象に故障が生じたと判定するまでの間、前記演算器に他のソフトウェアが反映された状態で前記演算器を動作させ、
    前記監視対象に故障が生じたと判定されると、前記演算器のメモリ領域に、前記監視対象の動作に関連する機能を再構成させるためのソフトウェアを上書きする、
    請求項14に記載の制御方法。
  16. コンピュータに、
    監視対象の状態に基づいて、前記監視対象に故障が生じたか否かを判定させ、
    前記監視対象に故障が生じたと判定した場合、前記監視対象に故障が生じたと判定されない場合に、機能を再構成可能な演算器が実行する他のソフトウェアが反映された前記演算器のメモリ領域に、前記監視対象の動作に関連する機能を再構成させるためのソフトウェアを上書きし、
    前記演算器の他のソフトウェアが用いるメモリ領域に前記ソフトウェアを上書きする場合、前記他のソフトウェアに対して設定されている第1優先度情報を参照し、低い優先度が設定された前記他のソフトウェアを記憶するメモリ領域に、前記監視対象の動作に関連する機能を再構成させるためのソフトウェアを上書きする処理を行わせる、
    プログラム。
JP2018127062A 2018-07-03 2018-07-03 制御装置、制御ユニット、制御方法、およびプログラム Active JP7048439B2 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2018127062A JP7048439B2 (ja) 2018-07-03 2018-07-03 制御装置、制御ユニット、制御方法、およびプログラム
US16/424,549 US11527115B2 (en) 2018-07-03 2019-05-29 Control device, control unit, control method, and storage medium
CN201910529269.1A CN110667599A (zh) 2018-07-03 2019-06-18 控制装置、控制单元、控制方法及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2018127062A JP7048439B2 (ja) 2018-07-03 2018-07-03 制御装置、制御ユニット、制御方法、およびプログラム

Publications (2)

Publication Number Publication Date
JP2020008950A JP2020008950A (ja) 2020-01-16
JP7048439B2 true JP7048439B2 (ja) 2022-04-05

Family

ID=69068762

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2018127062A Active JP7048439B2 (ja) 2018-07-03 2018-07-03 制御装置、制御ユニット、制御方法、およびプログラム

Country Status (3)

Country Link
US (1) US11527115B2 (ja)
JP (1) JP7048439B2 (ja)
CN (1) CN110667599A (ja)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113495547A (zh) * 2020-03-20 2021-10-12 北京智行者科技有限公司 一种实时安全的无人驾驶故障诊断与保护方法及系统
US20230249698A1 (en) * 2020-11-19 2023-08-10 Mitsubishi Electric Corporation Control apparatus

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006107532A (ja) 2006-01-05 2006-04-20 Fuji Xerox Co Ltd 情報処理システムおよび情報処理方法

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US1348269A (en) * 1917-03-17 1920-08-03 Charles A Costigan Dispensing apparatus
US10361802B1 (en) * 1999-02-01 2019-07-23 Blanding Hovenweep, Llc Adaptive pattern recognition based control system and method
JP4113934B2 (ja) * 1998-07-09 2008-07-09 株式会社豊田中央研究所 フェールセーフ機能付き情報処理装置
JP3491579B2 (ja) 1999-11-04 2004-01-26 日本電信電話株式会社 論理回路データ生成方法及び装置及び論理回路データ生成プログラムを格納した記憶媒体
JP4281808B2 (ja) 2007-02-09 2009-06-17 トヨタ自動車株式会社 車両の制御装置およびその制御方法
EP2407365B1 (en) 2009-03-09 2014-01-08 Honda Motor Co., Ltd. Vehicle motion control system
US10429203B1 (en) * 2014-01-17 2019-10-01 Allstate Insurance Company Driving analysis based on movement data
CN105892934B (zh) 2014-12-19 2020-11-03 伊姆西Ip控股有限责任公司 用于存储设备管理的方法和装置
US10114374B2 (en) 2016-11-16 2018-10-30 Baidu Usa Llc Emergency handling system for an autonomous driving vehicle (ADV)
KR102715376B1 (ko) * 2016-12-30 2024-10-11 인텔 코포레이션 라디오 통신을 위한 방법 및 디바이스
WO2018138775A1 (ja) 2017-01-24 2018-08-02 三菱電機株式会社 共用バックアップユニットおよび制御システム
US20200389469A1 (en) * 2017-12-24 2020-12-10 Arilou Information Security Technologies Ltd. System and method for tunnel-based malware detection
US20220180003A1 (en) * 2020-12-08 2022-06-09 University Of Florida Research Foundation, Incorporated Security property-driven vulnerability assessments of ics against fault-injection attacks

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006107532A (ja) 2006-01-05 2006-04-20 Fuji Xerox Co Ltd 情報処理システムおよび情報処理方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
酒田輝昭ほか,高位合成で実装したハードウェア・ソフトウェアの動的再構成による障害発生時の処理継続技術,電子情報通信学会技術研究報告 [online],日本,一般社団法人電子情報通信学会,2018年05月24日,第118巻 第63号,13~18ページ

Also Published As

Publication number Publication date
US20200013245A1 (en) 2020-01-09
JP2020008950A (ja) 2020-01-16
CN110667599A (zh) 2020-01-10
US11527115B2 (en) 2022-12-13

Similar Documents

Publication Publication Date Title
WO2018096644A1 (ja) 車両用表示制御装置、車両用表示制御方法、および車両用表示制御プログラム
JP6961791B2 (ja) 車両制御システム、車両制御方法、およびプログラム
WO2018138768A1 (ja) 車両制御システム、車両制御方法、および車両制御プログラム
JP7085371B2 (ja) 車両制御装置、車両制御方法、およびプログラム
JP7199150B2 (ja) 車両制御装置、車両制御方法、及びプログラム
JP2019128612A (ja) 車両制御装置、車両制御方法、およびプログラム
JP7000202B2 (ja) 車両制御システム、車両制御方法、およびプログラム
JP7112374B2 (ja) 車両制御装置、車両制御方法、およびプログラム
JP2021049872A (ja) 車両制御装置、車両制御方法、およびプログラム
JP6942236B1 (ja) 車両制御装置、車両制御方法、およびプログラム
US20200298874A1 (en) Vehicle control device, vehicle control method, and storage medium
JP2021024423A (ja) 車両制御装置、車両制御方法、およびプログラム
JP7048439B2 (ja) 制御装置、制御ユニット、制御方法、およびプログラム
JP7161458B2 (ja) 車両制御装置、車両制御方法、およびプログラム
JP7092955B1 (ja) 車両制御装置、車両制御方法、およびプログラム
WO2018179626A1 (ja) 車両制御システム、車両制御方法、車両制御装置、および車両制御プログラム
JP7048833B1 (ja) 車両制御装置、車両制御方法、およびプログラム
WO2022144963A1 (ja) 車両制御装置、車両制御システム、車両制御方法、およびプログラム
CN114261405A (zh) 车辆控制装置、车辆控制方法以及存储介质
JP7458459B2 (ja) 車両制御装置、車両制御方法、およびプログラム
JP2022142941A (ja) 運転支援装置、運転支援方法及びプログラム
JP2018118532A (ja) 車両用シート制御装置、車両用シート制御方法、および車両用シート制御プログラム
JP2021160399A (ja) 車両制御装置、車両制御方法、およびプログラム
CN110446644B (zh) 车辆控制系统、车辆控制方法、车辆控制装置及存储介质
JP2022104040A (ja) 車両制御装置、車両制御方法、およびプログラム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20201130

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20210908

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20211012

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20211126

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20220315

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20220324

R150 Certificate of patent or registration of utility model

Ref document number: 7048439

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150