IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ キム、ドクウの特許一覧 ▶ ウリィ、テクノロジーズ、コーポレイションの特許一覧

特表2024-518005孤立したユーザコンピューティング部を有する制御システムおよびその制御方法
<>
  • 特表-孤立したユーザコンピューティング部を有する制御システムおよびその制御方法 図1
  • 特表-孤立したユーザコンピューティング部を有する制御システムおよびその制御方法 図2
  • 特表-孤立したユーザコンピューティング部を有する制御システムおよびその制御方法 図3
  • 特表-孤立したユーザコンピューティング部を有する制御システムおよびその制御方法 図4
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公表特許公報(A)
(11)【公表番号】
(43)【公表日】2024-04-24
(54)【発明の名称】孤立したユーザコンピューティング部を有する制御システムおよびその制御方法
(51)【国際特許分類】
   G08G 1/16 20060101AFI20240417BHJP
   G05B 19/042 20060101ALI20240417BHJP
   G08G 5/04 20060101ALI20240417BHJP
   G06F 11/30 20060101ALI20240417BHJP
   G06F 11/07 20060101ALI20240417BHJP
【FI】
G08G1/16 C
G05B19/042
G08G5/04 A
G06F11/30 140D
G06F11/07 196
【審査請求】有
【予備審査請求】未請求
(21)【出願番号】P 2023524516
(86)(22)【出願日】2021-03-24
(85)【翻訳文提出日】2023-04-14
(86)【国際出願番号】 KR2021003672
(87)【国際公開番号】W WO2022203098
(87)【国際公開日】2022-09-29
(81)【指定国・地域】
(71)【出願人】
【識別番号】519400612
【氏名又は名称】キム、ドクウ
【氏名又は名称原語表記】KIM, DEOK WOO
(71)【出願人】
【識別番号】523141552
【氏名又は名称】ウリィ、テクノロジーズ、コーポレイション
【氏名又は名称原語表記】WOORI TECHNOLOGIES CORPORATION
(74)【代理人】
【識別番号】110001519
【氏名又は名称】弁理士法人太陽国際特許事務所
(72)【発明者】
【氏名】キム、ドクウ
(72)【発明者】
【氏名】パク、ジョンウ
【テーマコード(参考)】
5B042
5H181
5H220
【Fターム(参考)】
5B042GB06
5B042GB07
5B042GB08
5B042JJ17
5B042JJ25
5H181AA01
5H181AA26
5H181BB17
5H181BB20
5H181CC04
5H181CC12
5H181CC14
5H181FF05
5H181LL06
5H181LL09
5H181MB06
5H181MB07
5H220AA04
5H220AA08
5H220BB09
5H220CC06
5H220CX01
5H220HH01
5H220HH08
5H220JJ12
5H220JJ28
(57)【要約】
多様な分野の制御システムで、セキュリティ、異常状況、異常動作などを監視および措置するための制御システムに関する発明である。本制御システムはユーザコンピューティング部とセキュリティコンピューティング部を含む。ユーザコンピューティング部は自身のCPUを含み、ユーザプログラムを実行して制御情報を生成する。セキュリティコンピューティング部は自身のCPUを含み、被制御装置から入力される入力情報と前記ユーザコンピューティング部で生成された制御情報を再び点検してシステム点検情報を作る。このシステム点検情報をユーザが予め設定したシステム状態決定基準情報と比較して、システムの状態が正常範囲である場合には前記制御情報をそのまま出力し、正常範囲ではない場合にはユーザが予め設定したセキュリティ措置を遂行する。
【特許請求の範囲】
【請求項1】
第1CPUおよび周辺回路で構成され、被制御装置から伝達された入力情報を利用して被制御装置を制御する制御プログラムを実行して制御情報を生成するユーザコンピューティング部;
第2CPUおよび周辺回路で構成され、被制御装置から伝達された前記入力情報と、制御プログラム、システム状態情報、およびユーザコンピューティング部から提供された前記制御情報を利用してシステム点検情報を作り、このシステム点検情報をシステム状態決定のための基準情報と比較し、被制御装置の動作状態が正常範囲以内であると決定された場合には前記制御情報を被制御装置に出力し、正常範囲外であると決定された場合にはセキュリティ措置を遂行するセキュリティコンピューティング部;および
被制御装置と連結される制御入出力部を含むものの、
前記制御入出力部は前記セキュリティコンピューティング部にのみ連結され、前記入力情報は前記制御入出力部から前記セキュリティコンピューティング部が読み込んで前記ユーザコンピューティング部に提供することを特徴とする、孤立したユーザコンピューティング部を有する制御システム。
【請求項2】
前記入力情報は被制御装置の状態信号およびセンサ感知信号のうち少なくとも一つを含み;
前記制御情報は被制御装置を制御するための制御信号を含む、請求項1に記載の孤立したユーザコンピューティング部を有する制御システム。
【請求項3】
前記システム点検情報は
前記ユーザコンピューティング部が生成して提供した制御情報と前記セキュリティコンピューティング部が生成した制御情報を比較して結果を検証した後、前記システム点検情報を導出することを特徴とする、請求項1に記載の孤立したユーザコンピューティング部を有する制御システム。
【請求項4】
前記システム点検情報は
前記セキュリティコンピューティング部が、前記ユーザコンピューティング部から提供される制御情報が不要な演算手続きを並列で進行し、前記ユーザコンピューティング部が制御情報を提供した後に残りの演算手続きを遂行して導出されることを特徴とする、請求項1に記載の孤立したユーザコンピューティング部を有する制御システム。
【請求項5】
前記セキュリティ措置は前記ユーザコンピューティング部の運営体制または応用プログラムを初期状態に復元またはリセットすることを特徴とする、請求項1に記載の孤立したユーザコンピューティング部を有する制御システム。
【請求項6】
前記セキュリティ措置の遂行時にアラームが出力されることを特徴とする、請求項1に記載の孤立したユーザコンピューティング部を有する制御システム。
【請求項7】
前記制御システムの状態を外部に報告したり、前記セキュリティコンピューティング部が遂行する命令やコンピュータプログラムを外部から受信するセキュリティ入出力部を追加で含む、請求項1に記載の孤立したユーザコンピューティング部を有する制御システム。
【請求項8】
請求項1に記載された孤立したユーザコンピューティング部を有する制御システムで遂行される制御方法であって、
入力情報をセキュリティコンピューティング部を通じてユーザコンピューティング部に提供する入力情報提供段階;
ユーザコンピューティング部からセキュリティコンピューティング部が制御情報の伝達を受ける制御情報受信段階;
前記制御情報と前記入力情報を利用してセキュリティコンピューティング部がシステム点検情報を作るシステム点検情報導出段階;
前記導出されたシステム点検情報と事前に設定されたシステム状態判断情報を比較するシステム状態決定段階;
前記システム状態決定段階でシステムの状態が正常範囲であると判断する場合、前記制御情報を出力する最終制御情報提供段階;および
前記システム状態決定段階でシステムの状態が正常範囲ではないと判断される場合にセキュリティ制御プログラムを実行するセキュリティ措置実行段階を含む、孤立したユーザコンピューティング部を有する制御システムでの制御方法。
【請求項9】
前記入力情報は被制御装置の状態信号およびセンサ感知信号のうち少なくとも一つを含み、
前記制御情報は被制御装置を制御するための制御信号を含む、請求項8に記載の孤立したユーザコンピューティング部を有する制御システムでの制御方法。
【請求項10】
前記システム点検情報導出段階で
前記ユーザコンピューティング部が生成して提供した制御情報と前記セキュリティコンピューティング部が生成した制御情報を比較して結果を検証した後、前記システム点検情報を導出することを特徴とする、請求項8に記載の孤立したユーザコンピューティング部を有する制御システムでの制御方法。
【請求項11】
前記システム点検情報導出段階で
前記セキュリティコンピューティング部が、前記ユーザコンピューティング部が提供した制御情報が不要な演算手続きを並列で進行し、前記ユーザコンピューティング部が制御情報を提供した後に残りの演算手続きを遂行して導出されることを特徴とする、請求項8に記載の孤立したユーザコンピューティング部を有する制御システムでの制御方法。
【請求項12】
前記セキュリティ措置実行段階は
外部にシステム点検情報、システム状態情報、入力情報、および制御情報のうち少なくとも一つを提供するセキュリティ情報提供段階;および
外部から提供された情報に基づいて前記セキュリティコンピューティング部にセキュリティ命令を下すセキュリティ命令印加段階を含む、請求項8に記載の孤立したユーザコンピューティング部を有する制御システムでの制御方法。
【請求項13】
前記入力情報提供段階で入力情報が前記セキュリティコンピューティング部を通じてユーザコンピューティング部に提供されるたびに、前記制御情報受信段階、システム点検情報導出段階、システム状態決定段階、最終制御情報提供段階、およびセキュリティ措置実行段階が遂行される、請求項8に記載の孤立したユーザコンピューティング部を有する制御システムでの制御方法。
【請求項14】
前記入力情報提供段階で入力情報が事前に設定された回収だけ前記セキュリティコンピューティング部を通じてユーザコンピューティング部に提供された後に、前記制御情報受信段階、システム点検情報導出段階、システム状態決定段階、最終制御情報提供段階、およびセキュリティ措置実行段階が遂行される、請求項8に記載の孤立したユーザコンピューティング部を有する制御システムでの制御方法。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は自動車、ロボット、鉄道、宇宙航空およびプラン卜などの分野で使われる制御システムの安定性と強靭性(robustness)を向上させるコンピュータハードウェアおよびソフトウェア技術に関する。
【背景技術】
【0002】
自動車、ロボット、鉄道、宇宙航空、プラン卜などの多様な分野で使われる制御システムにおいて、制御プログラムは一般的にCPUとメモリおよびI/O装置で構成される制御用コンピュータで実行され、被制御装置やシステム、プラン卜の全体を制御し監視する。したがって、制御プログラムが誤った動作をすると被制御装置やシステム、プラン卜が停止または異常動作をして人命の損失や莫大な金銭的損害が発生し得る。
【0003】
一方、一般的に制御装置のコンピュータは分散制御や連続運転のために通信網に連結された複数の他の制御装置と連結され得るが、構造的には汎用コンピュータと非常に類似している。これらの装置では一般的にOSと基盤プログラムが制御プログラムを実行させる構造となる。
【0004】
ところが、最近AI(artificial intelligence)を適用した自律走行技術や自動運転技術が自動車やドローンなどに適用されるにつれて、制御装置やシステムの安定性に対する問題が露呈され始めた。また、制御装置やシステムがハッキングされたりまたはその他の理由で制御権限が悪意を有する者に渡る場合も発生することになった。
【0005】
例えば、911テロやマレーシア航空機失踪事件のような事故を見てみよう。一般的に航空機制御システムは操縦士の善良な意図を仮定して設計されたものである。しかし、両事件とも操縦士が悪意を有して航空機をビルディングにわざと衝突させたりレーダーに探知されないように操縦して墜落させた事例である。ところが、911テロ当時、航空機制御システムはこの状態で航空機が継続して飛行をすれば建物に衝突することが分かる十分な情報を有していたし、これを操縦士に多様な方法で警告したであろう。また、マレーシア航空機失踪事件時にも、航空機制御システムは航空機が経路を離脱したことを判断できる十分な情報を有していたし、これを操縦士に多様な方法で知らせたであろう。しかし、すでに悪意を有した操縦士は制御システムの警告を無視したであろうし、結局飛行機は墜落したり失踪したのである。
【0006】
さらに他の例として、AIが制御する自律走行自動車の場合、ハッキングされたりAIアルゴリズムの予想できない異常動作で経路から逸脱して走行したり、その他意図していない動作が実行されたり状況に適していない動作が実行されたりして問題が発生する可能性がある。すなわち、AIアルゴリズムの異常またはハッキングで自律運転制御装置が完全に停止したり誤動作して運転者の命令に反応しない場合、該当自動車は事故が発生して最悪の場合、搭乗者が死亡することもあるであろう。
【0007】
ところで、一般的に制御装置や制御システムでは入力と出力の相関関係を把握してインターロッキング(inter-locking)のような方法で誤動作を部分的に補完する。例えば装置の動作を設計する時、バルブAとバルブBが同時に開放されてはならない場合、バルブAとバルブBのアクチュエータ信号をインターロッキングして同時に両方が開放されることを防止するように設計される。また、制御装置や制御システムの場合、二重化(redundancy)またはボーティング(voting)技術を使ってハードウェア異常時の誤動作を防止する。二重化はメインシステムの故障時に待機中であるサブシステムがすぐに動作して、中断なく動作を継続するようにする方式であり、一つのシステムに発生した故障によるシステム全体の誤動作を防止するためのものである。ボーティングは多様な経路で一つの入出力信号や情報を管理する方式であり、例えば一つの入力信号を3つの異なる経路で読み込んで多数決で「表決」して(例えば3:0、2:1等)入力値を決定する方式である。
【0008】
しかし、このような誤動作防止構造は運転者の善良な意志や正常に動作するAI自律走行制御装置を仮定したものであるので、運転者やAI自律走行制御装置が正常な機能を誤用して異常な実行結果(出力信号)を作り出す異常動作を防ぐことはできない。
【発明の概要】
【発明が解決しようとする課題】
【0009】
前述した問題を克服するために本発明を通じて、多様な分野に適用が可能な安定的で強靭な制御装置と制御システムの新しい構造(architecture)を提案する。本発明で提案する制御構造は、AIや制御システム運転者が正常な機能を誤用して異常な実行結果(出力信号)を作り出す異常動作を防ぐことができ、即刻対応が可能であるため、全体装置やシステムの安定性が大幅に向上する。
【課題を解決するための手段】
【0010】
本発明に係る孤立したユーザコンピューティング部を有する制御システム(Control system having an isolated user computing part)は、ユーザコンピューティング部とセキュリティコンピューティング部、通信インターフェース、制御入出力部を含む。ユーザコンピューティング部はCPUおよびメモリ、周辺回路などで構成され、ユーザプログラム(すなわち、制御プログラム)を実行して制御アルゴリズムと入力情報、その他システム状態情報を利用して予備制御情報(被制御装置制御信号)を生成する。この時、入力情報はセキュリティコンピューティング部が制御入出力部から読み込んだ情報であり、通信インターフェースを通じてユーザコンピューティング部に提供される。そして、システム状態情報は自主的に生成してもよく、セキュリティコンピューティング部が提供してもよい。
【0011】
セキュリティコンピューティング部はさらに他のCPUおよびメモリ、周辺回路などで構成され、制御入出力部を通じて被制御装置から入力される入力情報を通信インターフェースを通じてユーザコンピューティング部に提供する。また、セキュリティプログラムを駆動してユーザコンピューティング部で生成した予備制御情報が通信インターフェースを通じて伝達されて、入力情報、システム状態情報、制御アルゴリズムなどの情報とユーザの設定情報を共に分析してシステム点検情報を生成する。このシステム点検情報をユーザが予め設定したシステム状態決定基準情報と比較して、システムの状態が正常範囲である場合には前記予備制御情報を変更なしにそのまま制御情報として制御入出力部に出力し、正常範囲ではない場合にはユーザが予め設定したセキュリティ措置を遂行する。ユーザコンピューティング部とセキュリティコンピューティング部は通信インターフェースを通じて通信し、制御入出力部はただセキュリティコンピューティング部にのみ連結される。制御入出力部は物理的な入出力信号を処理するように構成することができる。この場合、制御入出力部はPLC(Programmable Logic Controller)のデジタル入出力モジュールやアナログ入出力モジュールのような機能をするように構成することができる。また、制御入出力部はデータ通信装置で構成して被制御装置の通信ポートに連結してもよい。この時、入出力情報は通信プロトコルにしたがって伝送されるか受信されるであろう。一方、通信インターフェースはCPUとCPUを高速通信で直接連結する回路やそれぞれのシステムバスに連結されるDPRAM(Dual Port RAM)やデータレジスタ、インタラプト信号で相互を連結するロジック回路などを組み合わせて具現することができる。
【0012】
本発明に係る制御システムのセキュリティコンピューティング部はセキュリティ入出力部を含んで構成することができる。セキュリティ入出力部は物理的な入出力信号を処理するように構成してもよいが、この場合、PLCのデジタル入出力モジュールやアナログ入出力モジュールのような機能をするように構成することができる。また、セキュリティ入出力部はデータ通信装置で構成してセキュリティ制御装置の通信ポートに連結してもよい。この場合、非常状況で制御権限の委任を受けた第三者や機関にセキュリティ入出力部を利用して全体システムの状況を報告したり、または前記第三者や機関がセキュリティ制御装置を利用してセキュリティコンピューティング部に命令を下し、非常対応のためのプログラムをダウンロードするなどで全体システムを制御することが可能である。
【0013】
このように、セキュリティコンピューティング部はセキュリティプログラムを遂行させてユーザコンピューティング部に入出力されるデータおよび信号を記録し、持続的に監視および分析することによって、ユーザコンピューティング部が正常範囲を逸脱する動作をして全体システムの安定性を毀損することを防止することができる。より具体的には、セキュリティコンピューティング部はユーザコンピューティング部の制御演算結果を追跡しながらシステムの安定性が毀損される恐れがある場合、これを統制して適切なセキュリティ措置を取ったりシステムを正常状態に復元する役割をする。
【0014】
一方、本発明の制御システムで遂行される動作を段階別に説明すると、次の通りである。
【0015】
-制御入出力部で読み込んだ入力情報をセキュリティコンピューティング部が通信インターフェースを通じてユーザコンピューティング部に提供する入力情報提供段階;
-ユーザコンピューティング部が制御プログラムを利用して制御アルゴリズム、入力情報、システム状態情報を利用して制御演算を遂行し、予備制御情報を作る制御演算段階;
-ユーザコンピューティング部からセキュリティコンピューティング部が通信インターフェースを利用して予備制御情報の伝達を受ける予備制御情報受信段階;
-前記ユーザコンピューティング部の予備制御情報、制御アルゴリズム、入力情報、システム状態情報、ユーザの設定情報を利用してセキュリティコンピューティング部のセキュリティプログラムがシステム点検情報を作るシステム点検情報導出段階;
-セキュリティコンピューティング部が前記システム点検情報とユーザが設定したシステム状態決定基準情報と比較するシステム状態決定段階;
-セキュリティコンピューティング部が前記システム状態決定段階でシステムの状態が正常範囲であると判断する場合、前記予備制御情報を最終制御情報として前記制御入出力部に出力する最終制御情報提供段階;および
-セキュリティコンピューティング部が前記システム状態決定段階でシステムの状態が正常範囲ではないと判断する場合に、ユーザが予め設定したセキュリティ制御プログラムを実行させるセキュリティ措置実行段階。
【0016】
追加的に前記セキュリティ措置実行段階は、セキュリティ入出力部を通じてセキュリティ制御装置にユーザ設定情報、システム点検情報、システム状態情報、入力情報、制御情報などを選択的に提供するセキュリティ情報提供段階と、セキュリティ制御装置が提供された情報に基づいてセキュリティ入出力部を通じてセキュリティコンピューティング部にセキュリティ命令を下すセキュリティ命令印加段階で構成される。
【0017】
一方、前記では概念的理解を助けるために前記のように段階を分けて説明したが、一般的にアクチュエータやセンサの反応速度はコンピュータの演算速度より非常に遅いので、制御入出力があるたびに(すなわち、前記入力情報提供段階で入力情報が前記セキュリティコンピューティング部を通じてユーザコンピューティング部に提供されるたびに)後続段階を踏む代わりに、制御入出力が何回も行われる間一度のみ前記段階を遂行(すなわち、前記入力情報提供段階で入力情報が事前に設定された回数だけ前記セキュリティコンピューティング部を通じてユーザコンピューティング部に提供された後に、後続段階を遂行)してもセキュリティ措置を取るのに大きな問題はない。すなわち、セキュリティコンピューティング部がユーザコンピューティング部から伝達された予備制御情報を受けたとたんにそのまま制御情報として出力し、周期的に前記段階を遂行する方式でも適用が可能である。この場合、前記段階を遂行することになると、問題がない場合、結果として同じ制御情報が二回連続出力されるが、前述した通り、被制御装置の反応速度がコンピュータより非常に遅く、制御情報の過去値/現在値は相互関連性があるので全く問題がない。
【0018】
そして、前記システム点検情報導出段階で遂行される演算作業は、他の方式で進行して演算結果の正確性を高めたり並列で進行して演算時間を短縮してもよい。すなわち、ユーザコンピューティング部が遂行する制御演算段階と同じ方式で、セキュリティコンピューティング部が直接生成した予備制御情報をユーザコンピューティング部が生成して提供した予備制御情報と比較する方式で結果を検証した後、これを制御アルゴリズム、入力情報、システム状態情報、ユーザの設定情報を利用してセキュリティコンピューティング部のセキュリティプログラムがシステム点検情報を作る方式に変形することができる。または、ユーザコンピューティング部が提供する予備制御情報が不要な演算手続きをセキュリティコンピューティング部が並列で進行し、ユーザコンピューティング部が制御予備情報を提供した後に残りの演算手続きを遂行する方式で演算時間を短縮してもよい。また、前記システム状態情報にはシステムの状態を示す情報の過去値が含まれてもよい。
【0019】
以上で紹介した本発明の構成および作用は、図面と共に後述される具体的な実施例を通じてさらに明確になるであろう。
【発明の効果】
【0020】
自動車、ロボット、鉄道、宇宙航空およびプラン卜などの多様な分野で使われる制御装置や制御システムにおいて、制御プログラムは一般的にCPUとメモリおよびI/O装置で構成される制御用コンピュータで実行されて制御対象者装置やシステム/プラン卜の全体を制御し監視する。したがって、制御プログラムが誤った動作をすれば制御対象者全体装置やシステムが停止または異常動作をして人命の損失や莫大な金銭的損害が発生し得る。本発明で提案する制御構造は、AIや制御システム運転者が正常な機能を誤用して異常な実行結果(出力信号)を作り出す異常動作を防ぐことができ、即刻的な対応が可能であるため、全体装置やシステムの安定性が大幅に向上する。
【0021】
すなわち、本発明のような構造の孤立したユーザコンピューティング部を有することになると、孤立したユーザコンピューティング部で実行される制御プログラムの誤った判断によりシステムの機能が停止したり異常動作する場合、これをセキュリティコンピューティング部が常時点検して異常動作時に入出力装置を直接制御して安定的にシステムを運転することができる。
【図面の簡単な説明】
【0022】
図1】本発明に係る制御システムの概念的構成図である。
図2】本発明に係る制御システムの具体的な構成図である。
図3図2に示した制御システムの動作説明のための処理フローチャートである。
図4図2に示された制御システムの変形実施形態の構成図である。
【発明を実施するための形態】
【0023】
以下では、前記で紹介した本発明の思想を具体的に具現した実施例を説明する。しかし、本発明の技術的範囲は以下で説明する実施例および図面に限定されるものではない。特許請求の範囲の合理的解釈によって定められるものである。
【0024】
本発明は基本的に本発明者(キム・ドクウ)の先行公開特許10-2018-0123815号(名称:孤立したユーザコンピューティング部を有するコンピュータ)で提案されたコンピュータ構造を制御システムに適用するために新しく拡張した技術である。先行公開特許はユーザコンピューティング部が入出力装置から孤立しており、セキュリティ管理コンピューティング部(本発明のセキュリティコンピューティング部と類似する概念)を通じて入出力を遂行するようになっている。
【0025】
本発明は、前記先行公開特許を制御システムの安定性と強靭性を向上させるために制御システムに拡大適用するための具体的かつ新しい方法と構造を提示している。
【0026】
図1は、本発明に係る孤立したユーザコンピューティング部を有する制御システムの概念的構成図である。
【0027】
本発明の制御システムは、それぞれ専用CPUを有するユーザコンピューティング部100とセキュリティコンピューティング部200を含む。ここで、被制御装置400は制御システムを構成する細部装置を包括するものであって、制御システムの適用対象によりそれぞれ異なるように具現されるであろうが、基本的には電気的または電子的な信号またはこれを含むデータを直接入出力したり、所定の通信装置を利用して制御入出力部300と連結される。この時、複数の被制御装置400が制御入出力部300に連結されることも可能である。例えば、自律走行自動車の場合、駆動装置、操向装置、運転補助装置などが制御入出力部300に連結され、自律走行を担当するAIプログラムとデータはユーザコンピューティング部100で管理され実行される。本発明によると、ユーザコンピューティング部100は被制御装置400および制御入出力部300から孤立している。従来の技術と同様にユーザコンピューティング部100はCPUを有し、被制御装置400を制御するユーザプログラム(すなわち、制御プログラム)を実行する。すなわち被制御装置400の状態信号、センサ感知信号などの情報(後述する入力情報)を処理して被制御装置400を制御するための信号を出力するが、自動車の場合、加速信号、減速信号、姿勢制御信号、制動信号などの制御信号(すなわち、制御情報)を生成する。
【0028】
セキュリティコンピューティング部200は独自のCPUを有してセキュリティプログラムを実行する。すなわち被制御装置400とユーザコンピューティング部100の間でデータの入出力を中継したり被制御装置400に対してユーザが予め設定したセキュリティ措置を遂行する。具体的には、セキュリティコンピューティング部200はユーザコンピューティング部100に入出力されるデータおよび信号を記録し持続的に監視および分析することによって、ユーザコンピューティング部100が正常範囲を逸脱する動作をして全体システムの安定性を毀損することを防止する。すなわち、セキュリティコンピューティング部200はユーザコンピューティング部100の制御演算結果を追跡しながら、システムの安定性が毀損される恐れがある場合、これを統制して適切なセキュリティ措置を取ったりシステムを正常状態に復元する役割をする。
【0029】
図2は、図1に示した制御システムの概念を実施するための具体的な構成図を示す。
【0030】
ユーザコンピューティング部100はCPU110、メモリ120、その他周辺回路130で構成され、ユーザプログラム(すなわち、制御プログラム)140を実行して制御アルゴリズムにより入力情報およびその他システム状態情報から制御情報(制御信号)を生成する。この時、入力情報はセキュリティコンピューティング部200が通信インターフェース500を通じて提供し、システム状態情報はユーザコンピューティング部100が自主的に生成してもよく、セキュリティコンピューティング部200が提供してもよい。前記にて言及したように、入力情報は被制御装置400から受信した被制御装置400の状態信号、センサ感知信号などの情報であり、制御情報は被制御装置400を制御するための出力信号であって、自動車の場合、加速信号、減速信号、姿勢制御信号、制動信号などの制御信号である。ただし、ユーザコンピューティング部100が作った制御情報は、まだ被制御装置400に伝達されて被制御装置400を制御するように最終決定されたものではないので、「予備制御情報」と呼ぶことにする。
【0031】
ここで、通信インターフェース500はユーザコンピューティング部100とセキュリティコンピューティング部200の相互通信を担当し、ユーザコンピューティング部100のCPU110とセキュリティコンピューティング部200のCPU210を高速通信で直接連結する回路で具現することができる。またはそれぞれのシステムバスに連結されるDPRAM(dual port RAM)やデータレジスタ、インタラプト信号で相互連結するロジック回路などを組み合わせて具現することができる。
【0032】
セキュリティコンピューティング部200は独自の他のCPU210と、メモリ220、周辺回路230で構成される。CPU210はセキュリティプログラム240を実行して、被制御装置400から制御入出力部300を通じて入力される入力情報を通信インターフェース500を通じてユーザコンピューティング部100に提供する。またCPU210はユーザコンピューティング部100で生成した予備制御情報を通信インターフェース500を通じて伝達を受けて、前記入力情報、システム状態情報、制御アルゴリズム情報とユーザ設定情報を共に分析してシステム点検情報を生成する。CPU210はこのシステム点検情報をユーザが予め設定したシステム状態決定基準情報と比較して、制御システムの状態が正常範囲である場合には前記予備制御情報を変更なしにそのまま制御情報として制御入出力部300に出力し、正常範囲ではない場合にはユーザが予め設定したセキュリティ措置を遂行する。
【0033】
制御入出力部300は、ユーザコンピューティング部100には連結されずにセキュリティコンピューティング部200にのみ連結される。制御入出力部300は物理的な入出力信号を処理するように構成することができる。この場合、制御入出力部300はPLC(programmable logic controller)のデジタル入出力モジュールやアナログ入出力モジュールのような機能をするように構成することができる。また、制御入出力部300はデータ通信装置で構成して被制御装置400の通信ポートに連結してもよい。この時、入出力情報は通信プロトコルにより伝送されるか受信されるであろう。
【0034】
図3は、図2に示した孤立したユーザコンピューティング部を有する制御システムの具体的なタスク処理フローチャートである。
【0035】
S10:まず、セキュリティコンピューティング部200ではユーザ設定情報を生成しておく。ユーザ設定情報は追ってシステム点検情報を導出するのに使われるもので、ユーザによって設定される。ユーザ設定情報にはシステム状態決定基準情報に使われる各種情報が含まれ得る。また、基本的な情報として入出力限界値、通信データの量(時間当りトラフィック)、通信データパケットの構成および種類、通信対象(peer、destination)の範囲、出力値の時間当り変移範囲、インターロッキング制限(constraints)、CPU温度などが含まれ得る。
【0036】
自律走行自動車の場合、走行経路が設定される場合目的地までの走行経路情報がユーザ設定情報となり得、走行経路を離脱する場合の許容誤差、最高走行速度、加速比率、減速比率、車間距離などもユーザ設定情報となり得る。また、自動車が走行経路を外れてセキュリティ状況が発生すると、自動車を安全に道端に駐車させて停止するセキュリティ制御プログラムも設定情報となり得る。
【0037】
同じ概念であって、旅客機の場合には目的地までの飛行経路と飛行経路を離脱する場合の許容誤差、前後方障害物との安全距離などがユーザ設定情報となり得る。また、公共施設で使われる案内ロボットの場合、動作領域、移動速度、障害物や人間から安全距離などがユーザ設定情報となり得る。
【0038】
S20:また、セキュリティコンピューティング部200では被制御装置400のシステム状態決定のための基準情報(以下、「システム状態決定基準情報」)を設定する。このシステム状態決定基準情報は後ほどシステム状態を決定するためにシステム点検情報と比較する時の基準となる情報であり、ユーザによって設定される。このシステム状態決定基準情報はユーザ設定情報の一部または全体となり得る。
【0039】
S30:また、セキュリティコンピューティング部200では被制御装置400のシステム状態が正常範囲外と決定された場合に遂行するセキュリティ措置を設定する。このセキュリティ措置もユーザによって設定され、一般的にセキュリティ措置プログラムの形態で設定可能である。例えば、セキュリティ措置は飛行機の経路離脱時に操縦士に警告し、後述したセキュリティ入出力部600を通じて地上の管制センターに報告することになってもよい。また、飛行機が前方障害物と最小安全距離以内に接近した場合、セキュリティ状況の発生を操縦士に警告し、ユーザコンピューティング部が提供した予備制御情報を無視した後、ユーザが設定したセキュリティ制御プログラムにより生成された制御情報を最終出力情報として飛行機を自動制御して障害物から抜け出した後、高度を維持しながら地上の管制センターにこれを報告して今後の命令を待機するものであってもよい。
【0040】
S40:被制御装置400では、前記にて言及したように状態信号、センサで感知された信号などの情報を出力するが、この情報は制御入出力部300を通じて入力情報としてセキュリティコンピューティング部200に伝達される(S50)。
【0041】
S60:セキュリティコンピューティング部200は前記受信した入力情報をユーザコンピューティング部100に提供する。入力情報は図2で説明したように、通信インターフェース500を通じてセキュリティコンピューティング部200からユーザコンピューティング部100に伝達される。
【0042】
S70:ユーザコンピューティング部100は受信した入力情報を利用して、被制御装置400を制御するユーザプログラム(制御プログラム)を実行して予備制御情報を生成する。ここで、予備制御情報は被制御装置400を制御するための制御情報であって、まだ確定していない情報であることを前記にて言及したことがある。制御情報には出力信号、通信データがすべて含まれ得る。
【0043】
S80:ユーザコンピューティング部100で生成された予備制御情報はセキュリティコンピューティング部200に伝達される。この時にも、予備制御情報は図2で説明した通信インターフェース500を通じてユーザコンピューティング部100からセキュリティコンピューティング部200に伝達される。(以下では、ユーザコンピューティング部100とセキュリティコンピューティング部200間のデータの交換が通信インターフェース500を通じて遂行されるという説明を省略する。)
【0044】
S90:セキュリティコンピューティング部200はセキュリティプログラム240を実行して、前記ユーザ設定情報と、制御入出力部300を通じて受信した入力情報と、制御アルゴリズムおよびユーザコンピューティング部100から受けた予備制御情報を利用してシステム点検情報を導出する。
【0045】
ここで、システム点検情報にはユーザ設定情報に関連する各種情報が含まれ得る。例えば、自律走行自動車の場合には、自動車の現在位置、自動車の現在速度、車間距離が最小安全距離以内であった場合があったかを報告する履歴情報、加速/減速履歴情報などが含まれ得る。これとは別途に、システムの入力値、出力値、通信データ、ユーザコンピューティング部100の運営体系の完全性情報、ユーザコンピューティング部100の制御プログラムの完全性情報、ユーザコンピューティング部100のメモリ状態(チェックサムエラーの有無、使用量情報など)、ユーザコンピューティング部100のCPU温度、CPU使用量、ユーザコンピューティング部100で実行されるプログラムの個数などが含まれ得る。システム点検情報には現在状態だけでなく、時間により変化する状態の変化も含まれ得る。
【0046】
本システム点検情報導出段階で遂行される演算作業は、他の方式で進行して演算結果の正確性を高めたり、並列で進行して演算時間を短縮してもよい。すなわちユーザコンピューティング部100が遂行する制御演算段階と同一の方式でセキュリティコンピューティング部200が直接生成した予備制御情報をユーザコンピューティング部100が生成して提供した予備制御情報と比較する方式で結果を検証した後、これを制御アルゴリズム、入力情報、システム状態情報、ユーザの設定情報を利用してセキュリティコンピューティング部200のセキュリティプログラムがシステム点検情報を作る方式に変形することができる。または、ユーザコンピューティング部100が提供する予備制御情報が不要な演算手続きをセキュリティコンピューティング部200が並列で進行してユーザコンピューティング部100が予備制御情報を提供した後、残りの演算手続きを遂行する方式で演算時間を短縮してもよい。
【0047】
S100:セキュリティコンピューティング部200は、前記導出したシステム点検情報を前記ユーザによって設定されたシステム状態決定基準情報と比較して被制御装置400の動作状態(すなわちシステム状態)を決定する。システム状態決定基準情報としてはユーザ設定情報全体または一部が使われ得る。例えば自律走行自動車の場合、目的地までの走行経路情報、走行経路を離脱する場合の最大許容誤差、最高走行速度、加速比率、減速比率、車間距離などがユーザ設定情報となり得るが、この中で走行経路情報と最大許容誤差のみをシステム状態決定基準情報を使うことが可能である。この場合、システム状態情報に含まれた現在位置と走行経路情報を比較して、もし車両の現在位置が最大許容誤差以内であって走行経路上にあるのであれば車両の状態は正常範囲以内と判断され、許容誤差から外れた場合であれば正常範囲外と判断される。
【0048】
S110:前記システム状態決定段階(S100)でシステムの状態が正常範囲であるとセキュリティコンピューティング部200が判断すれば、ユーザコンピューティング部100が生成した前記予備制御情報を制御入出力部300に最終制御情報として伝達する。
【0049】
S120:これにより、被制御装置400はこの最終制御情報を受信して、これに相応する動作を遂行する。
【0050】
S130:一方、前記システム状態決定段階(S100)でセキュリティコンピューティング部200がシステム状態が正常範囲外であると決定した場合にはユーザが事前に設定した(S30)セキュリティ措置(例えば、セキュリティ措置プログラム)を遂行する。
【0051】
ユーザによって予め設定されたセキュリティ措置は、一連の制御プログラムであってもよく、単一の制御情報の組み合わせであってもよい。セキュリティ措置は自動または手動で開始(initiate)され得る。
【0052】
セキュリティ措置は、ユーザコンピューティング部100の復元のために一定時間の間ユーザコンピューティング部100に復元を試みるように命令することや、状態情報の深刻性によりユーザコンピューティング部100の運営体制および応用プログラムを初期状態に復元(restore)およびリセット(再起動)するものであり得る。これは、ユーザコンピューティング部100にハードウェア的なリセット信号やNMI(non-maskable interrupt)信号を印加する方式で具現が可能である。
【0053】
セキュリティ措置によってユーザコンピューティング部100の演算結果が実際の出力に反映されないように制限され、ユーザコンピューティング部100が正常状態に復元される場合、再びユーザコンピューティング部100が出力を出すように許容するかどうかはユーザ設定によって決定され得る。
【0054】
また、セキュリティ措置は通信網で連結された第3の制御システムまたは統制者(委員会)が提供する情報を反映して自動または手動で段階的に遂行され得る。
【0055】
セキュリティ措置が実行されると、システムのユーザ(operator)または管理者(supervisor)に視覚的、聴覚的、またはハプティック(haptic)アラームを提供してこれらにセキュリティ措置の自動開始を知らせるか、これらが手動でセキュリティ措置を実行できるようにセキュリティ措置プログラムを駆動することができる。この時、セキュリティコンピューティング部に新しいセキュリティ措置プログラムをダウンロードしてセキュリティ措置が遂行され得るように各種手段を提供してもよい。
【0056】
図4は、図2に示した制御システムの変形実施例の構成図である。
【0057】
セキュリティコンピューティング部200にセキュリティ入出力部600が含まれたり連結されて構成される。セキュリティ入出力部600は物理的な入出力信号を処理するように構成できるが、この場合、PLC(programmable logic controller)のデジタル入出力モジュールやアナログ入出力モジュールのような機能をするように構成することができる。また、セキュリティ入出力部600をデータ通信装置で構成してセキュリティ制御装置650の通信ポートに連結してもよい。この場合、非常状況で制御権限の委任を受けた第三者や機関にセキュリティ入出力部600を利用して全体システムの状況を報告したり、または前記第三者や機関がセキュリティ制御装置650を利用してセキュリティコンピューティング部200に命令を下し、非常対応のためのプログラムをダウンロードするなどによって、全体システムを制御することが可能である。
【0058】
セキュリティ入出力部600はユーザコンピューティング部100が使うことができない。例えば自律走行自動車の場合、経路を離脱してセキュリティ状況が発生した場合、セキュリティコンピューティング部200はこれに相応するセキュリティ措置プログラムを駆動させて車両を安全に道端に移動して駐車させた後、セキュリティ入出力部600を利用して警察やその他関連者に通知することができる。
【0059】
以上のような構成および機能を有する本発明の制御システムを911テロ飛行機の操縦システムに適用したと仮定すれば、本発明のセキュリティコンピューティング部200は飛行情報(高度、方向、翼の状態、風速、レーダ情報など)と操縦士の意図を把握できる各種情報(エンジン出力、翼の状態、操縦桿の位置など)を総合してこの飛行機が速く下降中であることを計算することができる。そして、操縦桿の位置をはじめとする入出力情報を分析して、まもなく前方の建物に衝突することを計算することができる。また、現在状態から操縦桿をはじめとする制御入力を変えないと飛行機が建物に衝突せずに飛行することが不可能であることを認知することができる。この場合、セキュリティコンピューティング部200はユーザコンピューティング部100または操縦士に問題があることを直ちに把握して、操縦士の操縦入力を無視して予め設定されたセキュリティ措置プログラムにより地上の統制を受けて飛行状態を維持するか、自動非常着陸を実行することができる。以上の内容は操縦士に事故がある(不在)時にも応用可能である。
【0060】
また、マレーシア航空機失踪事件を振り返ってみると、航空機が予め設定された経路を離脱したことは航空機の運航中にある程度発生し得るようなことであるので、経路の離脱だけで操縦士の意図を把握することは難しい。しかし、本発明を適用することになると、セキュリティコンピューティング部200が経路離脱時間や離脱程度などを検討してこれを管制センターに報告し、管制センターの統制により操縦士を排除して飛行機を経路内に復帰させて次の命令を待機したり、自動非常着陸をするようにすることができる。すなわち、ユーザコンピューティング部100に該当する操縦士のリアルタイム運航データをセキュリティコンピューティング部200が分析することによって、異常状況を感知し統制することができる。
【0061】
また、自動車の場合、ハッキングまたは人工知能(自律走行機能)の異常動作で自動車が搭乗者の意図と異なって運行され得る。CPUが一つである従来のコンピューティング構造では人工知能(AI)自体が善意の統制者であったので、事実上これを正すことが難しかった。このような問題は、ARM系列のCPUに採択されたトラストゾーン(Trust Zone)セキュリティ技術においても同一に問題視される。Trust Zoneセキュリティ技術はノントラストゾーン(Non-trust Zone)のプロセスがトラストゾーンに位置したリソースをアクセスできないようにするものであるが、(本発明のように入出力を統制する別途の部分がない限り)トラストゾーンのリソースを保護することだけではシステム設計者が意図していない異常動作を防ぐことができない。しかし、本発明を活用すれば、ユーザコンピューティング部100が孤立した構造であるので、ユーザコンピューティング部100の動作(実行結果および出力)の異常をセキュリティコンピューティング部200が搭乗者、運営者、または管制センターに知らせて、搭乗者や管制センターの統制により停車したり運行を継続するようにすることが可能である。例えば、AIで自律走行中の車両の制御システムがハッキングされたと仮定してみると、ハッキング後に制御システムは、ハッカーの意のままに車両内の対話をハッカーに送出したり経路を変えて走行したり、さらには経路を完全に離脱させて車両を橋の下に墜落させることもできる。
【0062】
しかし、本発明の孤立したユーザコンピューティング部100を有する制御システムを適用すれば、ハッキングによって対話内容を送出しようとしても、入力および出力装置をセキュリティコンピューティング部200が掌握するので送出の試みを搭乗者に通知して制止することができる。
【0063】
そして、経路を離脱させて他車両または施設と衝突させたり橋の下へ墜落させようとする場合にも、セキュリティコンピューティング部200は車両の走行情報(速度、車輪の整列状態、道路状態、エンジン出力状態、ハンドル位置など)とユーザが設定した最小安全距離などを考慮して急激な方向転換を制止できるので、ハッカーの攻撃から車両と搭乗者を保護することができる。
【0064】
さらに、ハッカーの攻撃やAIの誤動作でユーザコンピューティング部100が異常となって航空機や車両などが停止しても、本システムはセキュリティコンピューティング部200がユーザコンピューティング部100をリセットさせる方式でユーザコンピューティング部100を正常に初期化または復元可能である。
【0065】
以下、本発明を適用した具体的な実施例を紹介する。
【0066】
実施例1:自律走行自動車
自律走行自動車は一般的に、操向装置、駆動装置(エンジン/モータおよび制動装置を含む)、自律走行コンピュータ(ECUを含む)、GPS、映像装置、レーダー、運転者インターフェース等で構成される。また、一般的に自律走行コンピュータの入力装置と出力装置に操向装置、駆動装置、GPS、映像装置、レーダー、運転者インターフェースがすべて直接連結されているであろう。したがって、自律走行コンピュータは映像装置に入力される自動車の前後方などの映像を分析した情報とGPS、レーダーなどが提供する情報(入力情報)を利用して、操向装置と駆動装置に適切な制御信号(制御情報)を出力してユーザが設定した経路を走行することになる。
【0067】
本実施例によると、自律走行コンピュータは本発明に係る制御システムのうち、制御入出力部300、セキュリティコンピューティング部200、通信インターフェース500とユーザコンピューティング部100で構成され、操向装置、駆動装置、GPS、映像装置、レーダー、運転者インターフェースなどが被制御装置400となる。一方、選択的にセキュリティ入出力部600とセキュリティ制御装置650が連結可能である。したがって、自律走行を担当する人工知能プログラムはユーザプログラムであって、ユーザコンピューティング部100で実行され、セキュリティコンピューティング部200ではセキュリティプログラムが実行され、制御入出力部300には前記操向装置、駆動装置、GPS、映像装置、レーダー、運転者インターフェースが連結される。すなわちユーザコンピューティング部100は制御入出力部300とセキュリティコンピューティング部200を通じて連結されている。場合によっては制御入出力部300のうち一部をセキュリティコンピューティング部200が専用で使ってもよい。
【0068】
運転者が運転者インターフェースを通じて目的地を決定し、経路を設定したと仮定しよう。また、運転者がセキュリティコンピューティング部200のセキュリティ制御モジュールに「経路から100m以上離脱する場合、道端に直ちに停止」するようにセキュリティ制御のための情報とセキュリティ措置(セキュリティプログラム)を設定したと仮定しよう。
【0069】
車両が出発して目的地に到達するまでユーザコンピューティング部100で実行される自律走行AIプログラムは、入力および出力手段を利用して車両の各種装置から情報(入力情報)を読み込んで自律走行アルゴリズムを実行して被制御装置を操作する信号(制御情報)を生成して出力することによって車両を操縦することになる。
【0070】
一方、自律走行コンピュータのセキュリティコンピューティング部200はユーザコンピューティング部100の要請により、制御入出力部300から情報を読み込んで制御入出力部300に情報を出力する。大概、前記読み込んだ情報はユーザコンピューティング部100に提供し、ユーザコンピューティング部100が出力する情報(予備制御情報)はセキュリティプログラムで点検された後に制御入出力部300に伝達される。このために、まずセキュリティコンピューティング部200は、車両の各種装置と連結された入力装置の入力情報をユーザコンピューティング部100に提供する入力情報提供段階(S60)を遂行する。この時、車両操向装置と駆動装置の現在状態情報、GPS位置情報、前後方映像または映像分析の結果として提供される車線および車両/障害物情報、レーダーから提供される前方障害物の距離および位置情報、運転者インターフェースから受信された運転者入力情報などがユーザコンピューティング部100で実行中である自律走行AIプログラムに伝達される。
【0071】
次に、ユーザコンピューティング部100からセキュリティコンピューティング部200が予備制御情報の伝達を受ける予備制御情報受信段階(S80)が進行される。この時、予備制御情報はユーザコンピューティング部100の自律走行AIプログラムが入力された情報に基づいて自律走行アルゴリズムを遂行させて生成されるが、これは操向装置と駆動装置制御情報、GPS制御情報、映像装置制御情報、レーダー制御情報、ユーザインターフェース制御情報などを含む。
【0072】
次に、前記予備制御情報、前記入力情報、ユーザ設定情報を利用してセキュリティコンピューティング部200はシステム点検情報を作るシステム点検情報導出段階(S90)を遂行する。この段階でユーザ設定情報は目的地までの経路情報である。そして、車両が経路通りに走行中であるかを把握するためにはGPSから読み込んだ車両の現在位置情報が必要であるので、システム点検情報は経路情報と現在位置情報に基づく。
【0073】
引き続き、前記システム点検情報とユーザが設定したシステム状態決定基準情報と比較するシステム状態決定段階(S100)が遂行される。この段階でユーザが設定したシステム状態決定基準は「経路から100m以上外れる」となるので、経路情報と現在位置情報を比較して100m以上差があるかを確認する。
【0074】
最後に、前記システム状態決定段階でシステムの状態が正常範囲であると判断されると最終制御情報を制御入出力部300に出力し(S110)、システムの状態が正常範囲ではないと判断されるとユーザが予め設定したセキュリティ措置を実行するセキュリティ制御段階(S130)が遂行される。本実施例では、車両の現在位置が経路内100m以内である場合には車両の状態が正常範囲であると判断することになり、ユーザコンピューティング部100が生成した予備制御情報が最終制御情報として車両の各種被制御装置に伝達される。
【0075】
しかし、車両の現在位置が経路と100m以上差が発生することになると、セキュリティ措置のためのセキュリティ措置プログラムが実行される。セキュリティ措置は「直ちに車両を道端に停止させること」であるので、セキュリティコンピューティング部200は運転者インターフェースに「経路を離脱して停止する」を表示し、車両操向装置と駆動装置の現在状態情報、GPS位置情報、前後方映像または映像分析の結果として提供される車線および車両/障害物情報、レーダーから提供される前方障害物の距離および位置情報などを参照してセキュリティ措置実行段階を実行する。この過程でセキュリティ措置プログラムが実行されると、操向装置と駆動装置制御情報、GPS制御情報、映像装置制御情報、レーダー制御情報、ユーザインターフェース制御情報が生成されるので、セキュリティコンピューティング部200はこのような情報を制御入出力部300に提供して車両を制御することになる。
【0076】
一度セキュリティ措置が実行されると、セキュリティコンピューティング部200はユーザコンピューティング部100の動作にかかわらずセキュリティ措置が完了するまで車両を制御することになる。本実施例ではリアルタイムで周辺車両と障害物を分析し、車両を道端に移動させて停車させる措置が完了するまで車両を制御する。この時、場合により運転者は運転者インターフェースを利用してセキュリティコンピューティング部200にセキュリティ措置を中断させるy命令を下すこともできる。
【0077】
本実施例は「経路と現在車両位置が100m以上差があれば直ちに車両を道端に停止させるセキュリティ措置」を遂行するものであるが、他の例として「経路と現在車両位置が100m以上差があれば運転者インターフェースを通じて運転者の指示を受けること」をセキュリティ措置として遂行させてもよい。このような場合、セキュリティコンピューティング部200はユーザコンピューティング部100が生成した制御情報(すなわち、予備制御情報)を車両の各種装置に出力して車両の操縦をユーザコンピューティング部100に任せた状態で、ユーザインターフェースを通じて車両が経路から100m以上外れたことを知らせ、運転者の指示を受けることができる。
【0078】
一般的な単一のCPUを有する自律走行コンピュータにおいても前記言及された自律走行アルゴリズムプログラムとセキュリティ制御プログラムが同時に実行され得るが、単一のCPUを有する自律走行コンピュータでは自律走行アルゴリズムが暴走する場合、セキュリティ制御プログラムが実行されないかゆっくり実行されて事故を誘発する可能性が常に存在する。それに比べ、本発明に係る制御システムは、ユーザコンピューティング部100の誤動作や自律走行アルゴリズム異常のような暴走現象で車両が経路を外れることになると、セキュリティコンピューティング部200が介入して確実で安定した方式で車両を運転者の統制下で管理するので、事故可能性を大幅に低下させることができる。
【0079】
実施例2:旅客機
旅客機は一般的に、操向装置(翼および車輪などを含む)、駆動装置(エンジンおよび制動装置などを含む)、飛行コンピュータ、GPS、映像装置、測定装置(各種センサ)、レーダー、衛星通信装置、操縦士インターフェース等で構成される飛行システムを有する。この時、飛行コンピュータの入力および出力部に前記各種装置が連結され、エンジンや翼を制御する油圧装置も通信網で連結されて電子的に駆動されるものと仮定しよう。したがって、飛行コンピュータは操縦士インターフェースから伝達される操縦士の操縦信号と各種装置が提供する情報(入力情報)を利用して、操向装置と駆動装置に適切な制御信号(制御情報)を出力して翼とエンジンを制御して旅客機が設定された経路を飛行するようにするであろう。
【0080】
この時、飛行コンピュータは本発明により構成される制御システムであり、制御入出力部300から孤立したユーザコンピューティング部100、そして、ユーザコンピューティング部100と連結される通信インターフェースとセキュリティ制御モジュール(プログラム)を有するセキュリティコンピューティング部200からなる。したがって、飛行を担当する飛行制御プログラムはユーザプログラムであってユーザコンピューティング部100で実行され、セキュリティコンピューティング部200ではセキュリティ制御モジュールプログラムが実行され、制御入出力部300には被制御装置400として前記各種装置が連結される。また、ユーザコンピューティング部100は通信インターフェースを通じてセキュリティコンピューティング部200に連結され、セキュリティコンピューティング部200に制御入出力部300が連結されている。場合によっては、制御入出力部300中の一部をセキュリティコンピューティング部200が専用で使ってもよい。
【0081】
操縦士や航法士が操縦士インターフェースを通じて目的地に対する情報を入力して経路を設定したと仮定しよう。また、航空運航を総括する政府機関、例えば交通安全委員会(NTSB)がセキュリティ制御モジュールに「計画された飛行経路から100km以上離脱する場合、直ちに自動航法飛行に切り替えて衛星通信装置でNTSBに報告」するようにセキュリティ制御のための情報とセキュリティ措置(セキュリティ措置プログラム)を設定したと仮定しよう。
【0082】
旅客機が出発すると、目的地に到達するまでユーザコンピューティング部100で実行される飛行制御プログラムは、制御入出力部300を利用して航空機の各種装置から情報を読み込み、操縦士の入力を操縦士インターフェースで伝達を受けて飛行制御アルゴリズムを遂行させて各種装置を制御する信号を生成して出力することによって、実質的に旅客機を操縦することになる。
【0083】
一方、飛行コンピュータのセキュリティコンピューティング部200はユーザコンピューティング部100の要請により、入力装置から読み込んだ情報を提供したり出力装置に情報を出力する。セキュリティコンピューティング部200は読み込んだ情報をユーザコンピューティング部100に入力情報として提供し、ユーザコンピューティング部100が出力する情報はセキュリティプログラムで点検された後に制御入出力部300に伝達される.このために、まずセキュリティコンピューティング部200は飛行機の各種装置と連結された入力装置の入力情報をユーザコンピューティング部100に提供する入力情報提供段階(S60)を遂行する。この時、飛行機の各翼の状態をはじめとする操向装置現在状態情報とエンジンのような駆動装置の現在状態情報、測定装置から入力される高度、気圧、風向、風速、温度などの状態情報、GPS位置情報、レーダーから提供される前方障害物の距離および位置情報、操縦士インターフェースから受信された操縦士の入力情報などがユーザコンピューティング部100で実行中である飛行制御プログラムに伝達される。
【0084】
次に、ユーザコンピューティング部100からセキュリティコンピューティング部200が予備制御情報の伝達を受ける予備制御情報受信段階(S80)が進行される。この時、予備制御情報はユーザコンピューティング部100の飛行制御プログラムが入力された情報に基づいて飛行アルゴリズムを遂行させて生成(S70)される。予備制御情報は、翼などの操向装置とエンジンなどの駆動装置制御情報、測定装置制御情報、GPS制御情報、映像装置制御情報、レーダー制御情報、操縦士インターフェース制御情報などで構成される。
【0085】
次に、前記予備制御情報、前記入力情報、ユーザ設定情報を利用してセキュリティコンピューティング部200のセキュリティ制御モジュールプログラムがシステム点検情報を作るシステム点検情報導出段階(S90)が遂行される。この段階でセキュリティコンピューティング部200のユーザはNTSBであり、設定情報は目的地までの経路情報である。そして、飛行機が報告された経路通りに飛行中であるかを把握するためにGPSから読み込んだ飛行機の現在位置情報が必要であるので、システム点検情報は経路情報と現在位置情報に基づいて構成される。
【0086】
次に、前記システム点検情報とユーザが設定したシステム状態決定基準情報と比較するシステム状態決定段階(S100)が遂行される。この段階でセキュリティコンピューティング部200でユーザが設定したシステム状態決定基準情報は「飛行経路から離脱できる最大誤差100km」であるので、経路情報および現在位置情報に基づいて飛行経路が100km以上差があるかを確認する。
【0087】
最後に、前記システム状態決定段階でシステムの状態が正常範囲であると判断する場合、最終制御情報を制御入出力部300に出力する。前記システムの状態が正常範囲ではないと判断されるとユーザが予め設定したセキュリティ措置を実行するセキュリティ措置実行段階(S130)が遂行される。
【0088】
本実施例では、飛行機の現在位置が経路と100km以内である場合には、飛行機の状態が正常範囲であると判断してユーザコンピューティング部100が生成した予備制御情報が最終制御情報として飛行機の各種装置に出力される。しかし、飛行機の現在位置が経路と100km以上差があることになるとセキュリティ措置が実行される。セキュリティ措置は「直ちに自動航法飛行に切り替えてNTSBに報告すること」であるので、セキュリティコンピューティング部200は操縦士インターフェースに「経路を離脱してNTSBに状況を報告する」と表示し、旅客機が自動航法飛行モードで飛行するように設定し、衛星通信装置を利用してNTSBに飛行機の各種装置の現在状態情報とGPS位置情報、操縦室の映像、レーダーから提供される前方障害物の距離および位置情報などを報告する。実質的には、NTSBの安全管理コンピュータに衛星通信で連結されて飛行機の現在状況をリアルタイムで伝達して、NTSBの後続措置の伝達を受ける方式で具現されることが好ましい。
【0089】
NTSBは安全管理コンピュータが提供する旅客機の状態を把握して操縦士と交信することができる。しかし、マレーシア旅客機失踪事故のように、操縦士が飛行機の位置を送信する装置と通信装置をすべてオフにしておいた状態であれば、交信が不可能なこともある。しかし、このような失踪事故とは異なって、本発明が適用された制御システムを具備した旅客機は、操縦士が飛行機の位置を送信する装置をオフにしておいてもセキュリティコンピューティング部200が飛行機の位置情報を含んだすべての状態情報を有しているので、航空安全当局に飛行機の位置を報告し、操縦士の意図を完全に排除して失踪事故を防ぐことができる。さらに、NTSBが安全管理コンピュータを利用して無人ドローンのように飛行機を制御して近い空港に強制的に着陸させることもできる。
【0090】
以上で詳察した通り、本発明に係る制御システムはユーザコンピューティング部100のユーザ(本実施例では、操縦士)の悪意の操作をセキュリティコンピューティング部200のユーザ(本実施例では、NTSB)が直ちに認知して対処できるので、確実で安定した方式で飛行機を航空安全管理者の統制下に置くことができるようになる。
【0091】
これまで実施例を通じて本発明を詳細に説明したが、本発明が属する技術分野で通常の知識を有する者は、本発明がその技術的思想や必須の特徴を変更することなく本明細書に開示された内容とは異なる具体的な形態で実施され得るということが理解できるであろう。以上で記述した実施例はすべての面で例示的なものであり限定的ではないものと理解されるべきである。また、本発明の保護範囲は前記詳細な説明よりは後述した特許請求の範囲によって定められ、特許請求の範囲そして、その均等概念から導出されるすべての変更または変形された形態は本発明の技術的範囲に含まれるものと解釈されるべきである。
図1
図2
図3
図4
【国際調査報告】