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

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

▶ 日産自動車株式会社の特許一覧

特開2024-134796遠隔操作システム、サーバ、車載コントローラ、及び、遠隔操作方法
<>
  • 特開-遠隔操作システム、サーバ、車載コントローラ、及び、遠隔操作方法 図1
  • 特開-遠隔操作システム、サーバ、車載コントローラ、及び、遠隔操作方法 図2
  • 特開-遠隔操作システム、サーバ、車載コントローラ、及び、遠隔操作方法 図3
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2024134796
(43)【公開日】2024-10-04
(54)【発明の名称】遠隔操作システム、サーバ、車載コントローラ、及び、遠隔操作方法
(51)【国際特許分類】
   H04Q 9/00 20060101AFI20240927BHJP
【FI】
H04Q9/00 301B
【審査請求】未請求
【請求項の数】9
【出願形態】OL
(21)【出願番号】P 2023045164
(22)【出願日】2023-03-22
(71)【出願人】
【識別番号】000003997
【氏名又は名称】日産自動車株式会社
(74)【代理人】
【識別番号】100083806
【弁理士】
【氏名又は名称】三好 秀和
(74)【代理人】
【識別番号】100111235
【弁理士】
【氏名又は名称】原 裕子
(74)【代理人】
【識別番号】100170575
【弁理士】
【氏名又は名称】森 太士
(72)【発明者】
【氏名】渡辺 修治
【テーマコード(参考)】
5K048
【Fターム(参考)】
5K048AA15
5K048BA42
5K048EB02
5K048FC02
5K048FC05
5K048HA01
5K048HA02
5K048HA03
(57)【要約】
【課題】車両において複数の連続する処理を実行する際に、車両との通信の秘匿性を高めてセキュリティを向上させることができる、遠隔操作システム、サーバ、車載コントローラ、及び、遠隔操作方法を提供する。
【解決手段】遠隔操作システム、サーバ、車載コントローラ、及び、遠隔操作方法では、サーバが、端末から受け付けた、機器に対するコマンドを識別する識別子に基づいて、コマンドに紐づけられる、機器に係る複数の処理を特定し、処理を識別する符号及び処理に対する入力データのうち少なくとも一方を処理ごとに含む、複数の処理に係る一のデータパッケージを生成して車載コントローラに送信し、車載コントローラが、データパッケージに基づいて、複数の処理を実行する。
【選択図】図1
【特許請求の範囲】
【請求項1】
車両に搭載された機器を管理する車載コントローラと、
端末と、
前記車載コントローラ及び前記端末と通信可能に接続されたサーバと、
を備える遠隔操作システムであって、
前記端末は、
前記機器に対するコマンドを識別する識別子を送信し、
前記サーバは、
前記識別子に基づいて、前記コマンドに紐づけられる、前記機器に係る複数の処理を特定し、
前記処理を識別する符号及び前記処理に対する入力データのうち少なくとも一方を前記処理ごとに含む、複数の前記処理に係る一のデータパッケージを生成し、
前記データパッケージを前記車載コントローラに送信し、
前記車載コントローラは、
前記データパッケージに基づいて、複数の前記処理を実行すること
を特徴とする遠隔操作システム。
【請求項2】
前記識別子及び前記符号の対応関係を記憶するデータベースを更に備え、
前記サーバは、
前記対応関係に基づいて、前記処理を特定すること
を特徴とする、請求項1に記載の遠隔操作システム。
【請求項3】
前記識別子は、予めランダムに生成された文字列であること
を特徴とする、請求項1に記載の遠隔操作システム。
【請求項4】
前記データパッケージは、前記識別子とは異なるデータであること
を特徴とする、請求項1に記載の遠隔操作システム。
【請求項5】
前記サーバは、
複数の前記処理の実行順序を示す順序データを生成し、
前記データパッケージは、順序データを含むこと
を特徴とする、請求項1に記載の遠隔操作システム。
【請求項6】
前記サーバは、前記データパッケージを暗号化して前記車載コントローラに送信すること
を特徴とする、請求項1~5のいずれか一項に記載の遠隔操作システム。
【請求項7】
車両に搭載された機器を管理する車載コントローラ、及び、端末と、通信可能に接続されたサーバであって、
前記端末から送信された、前記機器に対するコマンドを識別する識別子を受信し、
前記識別子に基づいて、前記コマンドに紐づけられる、前記機器に係る複数の処理を特定し、
前記処理を識別する符号及び前記処理に対する入力データのうち少なくとも一方を前記処理ごとに含む、複数の前記処理に係る一のデータパッケージを生成し、
前記データパッケージを前記車載コントローラに送信すること
を特徴とするサーバ。
【請求項8】
サーバと通信可能に接続され、車両に搭載された機器を管理する車載コントローラであって、
前記サーバは、
前記機器に対するコマンドを識別する識別子に基づいて、前記コマンドに紐づけられる、前記機器に係る複数の処理を特定し、
前記処理を識別する符号及び前記処理に対する入力データのうち少なくとも一方を前記処理ごとに含む、複数の前記処理に係る一のデータパッケージを生成し、
前記データパッケージを前記車載コントローラに送信し、
前記車載コントローラは、
前記データパッケージに基づいて、複数の前記処理を実行すること
を特徴とする車載コントローラ。
【請求項9】
車両に搭載された機器を管理する車載コントローラと、
端末と、
前記車載コントローラ及び前記端末と通信可能に接続されたサーバと、
を備える遠隔操作システムに係る遠隔操作方法であって、
前記端末は、
前記機器に対するコマンドを識別する識別子を送信し、
前記サーバは、
前記識別子に基づいて、前記コマンドに紐づけられる、前記機器に係る複数の処理を特定し、
前記処理を識別する符号及び前記処理に対する入力データのうち少なくとも一方を前記処理ごとに含む、複数の前記処理に係る一のデータパッケージを生成し、
前記データパッケージを前記車載コントローラに送信し、
前記車載コントローラは、
前記データパッケージに基づいて、複数の前記処理を実行すること
を特徴とする遠隔操作方法。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、遠隔操作システム、サーバ、車載コントローラ、及び、遠隔操作方法に関する。
【背景技術】
【0002】
特許文献1には、携帯端末からのリモート信号によって車載機器を遠隔操作するシステムにおいて、リモート信号の遅延が起きたとしても、セキュリティや安全性を確保できる車両の遠隔操作システムの技術が開示されている。特許文献1に開示された技術によれば、車載機器を直接的に操作するローカル操作と遠隔操作が競合した場合に、リモート信号を受信したリモート受付時刻がローカル操作を受け付けたローカル操作受付時刻よりも早いと判断された場合に、リモート信号が無効化される。
【先行技術文献】
【特許文献】
【0003】
【特許文献1】特開2006-63650号公報
【発明の概要】
【発明が解決しようとする課題】
【0004】
しかしながら、特許文献1に記載された技術によれば、遠隔操作(処理)におけるセキュリティを担保するためのアルゴリズムが考慮されていない。そのため、複数の処理が連続する場合に、処理ごとに行われる通信の内容が推測されやすくなり、セキュリティが低下するという問題がある。
【0005】
本開示は、上記問題に鑑みてなされたものである。その目的とするところは、車両において複数の連続する処理を実行する際に、車両との通信の秘匿性を高めてセキュリティを向上させることができる、遠隔操作システム、サーバ、車載コントローラ、及び、遠隔操作方法を提供することにある。
【課題を解決するための手段】
【0006】
上述した課題を解決するために、本開示の一態様に係る遠隔操作システム、サーバ、車載コントローラ、及び、遠隔操作方法では、サーバが、端末から受け付けた、機器に対するコマンドを識別する識別子に基づいて、コマンドに紐づけられる、機器に係る複数の処理を特定し、処理を識別する符号及び処理に対する入力データのうち少なくとも一方を処理ごとに含む、複数の処理に係る一のデータパッケージを生成して車載コントローラに送信し、車載コントローラが、データパッケージに基づいて、複数の処理を実行する。
【発明の効果】
【0007】
本開示によれば、車両において複数の連続する処理を実行する際に、車両との通信の秘匿性を高めてセキュリティを向上させることができる。
【図面の簡単な説明】
【0008】
図1図1は、本開示の一実施形態に係る遠隔操作システムの構成を示すブロック図である。
図2図2は、本開示の一実施形態に係る遠隔操作システムの処理を示すフローチャートである。
図3図3は、本開示の一実施形態に係る遠隔操作システムの動作を説明するシーケンスチャートである。
【発明を実施するための形態】
【0009】
次に、図面を参照して、本開示の実施の形態を詳細に説明する。説明において、同一のものには同一符号を付して重複説明を省略する。
【0010】
[遠隔操作システムの構成]
図1は、本開示の一実施形態に係る遠隔操作システムの構成を示すブロック図である。図1に示すように、遠隔操作システムは、端末100と、サーバ200と、車両300と、に係る。サーバ200は、無線又は有線のネットワーク400によって、端末100及び車両300と通信可能に接続されている。
【0011】
ネットワーク400は、例えば、インターネットが挙げられる。ネットワーク400は、4G/LTEや、5Gなどのモバイル通信機能を利用するものであってもよい。
【0012】
端末100は、ユーザの操作を受け付け、受け付けた操作に基づく信号(識別子)をサーバ200に送信する。端末100としては、例えば、ユーザが日常的に利用する携帯端末(スマートフォン、タブレットなど)が挙げられる。
【0013】
サーバ200は、端末100から受信した信号(識別子)に基づいて、車両300に対する信号(データパッケージ)を生成する。そして、サーバ200は、生成した信号(データパッケージ)を車両300に送信する。
【0014】
車両300は、サーバ200から受信した信号(データパッケージ)に基づいて、車両300に搭載される機器350に係る複数の処理を実行する。
【0015】
[端末の構成]
次に、端末100について説明する。図1に示すように、端末100は、通信部110と、コントローラ130と、表示部160と、操作部170と、を備える。
【0016】
表示部160は、車両300に搭載される機器350に対するコマンドの候補を表示する。その他、表示部160は、車両300の情報や、車両300の走行ルートに関する情報を表示するものであってもよい。表示部160によって表示する各種の情報は、後述する通信部110により、ネットワーク400を介してサーバ200から取得するものであってもよい。
【0017】
なお、表示部160は、各種の情報を視覚情報によって情報を提示するものに限定されない。表示部160は、聴覚情報によってユーザに情報を提示するものであってもよいし、振動を発生させて、振動による刺激によってユーザに情報を提示するものであってもよい。
【0018】
なお、機器350に対するコマンドとして、例えば、「ドアロックを施錠する」、「ドアロックを開錠する」、「ホーンを鳴らす」、「エアコンをオンにする」、「エアコンをオフにする」、「シートヒータをオンにする」、「シートヒータをオフにする」など、種々のコマンドが挙げられる。機器350に対するコマンドは、ここに挙げた例に限定されない。
【0019】
操作部170は、表示部160に表示されたコマンドの候補の中からユーザが選択したコマンドを受け付ける。例えば、操作部170は、複数のボタンを備えた入力インターフェイスであってもよいし、タッチインターフェイスを備えたタッチパネルであってもよい。
【0020】
より具体的には、絵や記号で表現したアイコンをユーザが操作可能なように表示部160が表示し、表示されたアイコンをユーザがタッチ、ドラッグなどすることで、操作部170は、ユーザが選択したコマンドを受け付けるものであってもよい。その他、操作部170は、ユーザが発した音声によるコマンドを認識し、ユーザが選択したコマンドを受け付けるものであってもよい。
【0021】
通信部110は、ネットワーク400との間で情報を送受信する。通信部110は、ネットワーク400から取得した情報を図示しないメモリ等に記憶する。特に、通信部110は、後述するコントローラ130によって決定された識別子を送信する。例えば、通信部110は、4G/LTEや5Gなどのモバイル通信機能を備えたデバイスであってもよいし、Wifi通信機能を備えたデバイスであってもよい。
【0022】
コントローラ130は、表示部160、操作部170、端末100と接続される。コントローラ130には、操作部170、通信部110からの情報が入力され、コントローラ130からは表示部160、通信部110への情報が出力される。
【0023】
なお、コントローラ130は、CPU(中央処理装置)、メモリ、及び入出力部を備える汎用のコンピュータである。コントローラ130には、遠隔操作システムの一部として機能するためのコンピュータプログラム(遠隔操作プログラム)がインストールされている。コンピュータプログラムを実行することにより、コントローラ130は、表示部160、操作部170、通信部110の制御を行う。
【0024】
コントローラ130が備える各種の情報処理は、ソフトウェアによって実現されるものであってもよいし、専用のハードウェアによって実現されるものであってもよい。
【0025】
コントローラ130は、操作部170が受け付けたユーザが選択したコマンドを識別する識別子を決定する。すなわち、コントローラ130は、機器350に対するコマンドを識別する識別子を決定する。
【0026】
なお、コマンドを識別する識別子が、コマンドごとに予め設定され、図示しないメモリ等に記憶されている。識別子は、コマンドごとに予め生成されたランダムな文字列であってもよい。すなわち、悪意ある第三者が識別子を解析した場合であっても、識別子によって識別されるコマンドが容易に判別されないように、識別子を構成する文字列は設定されているものであってもよい。
【0027】
その他、識別子は、所定のタイミングで更新されるものであってもよい。例えば、識別子は、1週間に1回の頻度、又は、1ヶ月に1回の頻度で更新されるものであってもよい。特に、更新のタイミングは、悪意ある第三者が識別子を解析して識別子によって識別されるコマンドが判別されるまでに要する時間よりも短い周期で設定されるものであってもよい。更新のタイミングは、ここに挙げた例に限定されない。
【0028】
なお、コントローラ130は、1つのコマンドに対して1つの識別子を決定し、通信部110を介して、決定した識別子を送信する。後述するように、1つのコマンドに対して、機器350に係る複数の処理が紐づけられている場合であっても、通信部110は、1つの識別子を送信するため、端末100及びサーバ200の間での通信が削減される。
【0029】
[サーバの構成]
次に、サーバ200について説明する。図1に示すように、サーバ200は、通信部210と、データベース220と、コントローラ230と、を備える。
【0030】
通信部210は、ネットワーク400との間で情報を送受信する。通信部210は、ネットワーク400から取得した情報を図示しないメモリ等に記憶する。特に、通信部210は、端末100の通信部110から送信された識別子を受信し、後述するコントローラ230によって生成されたデータパッケージを送信する。例えば、通信部210は、4G/LTEや5Gなどのモバイル通信機能を備えたデバイスであってもよいし、Wifi通信機能を備えたデバイスであってもよい。
【0031】
データベース220は、機器350に対するコマンドを識別する識別子を記憶する。なお、データベース220によって記憶される識別子は、コントローラ130によって使用される識別子と同期されている。また、データベース220は、機器350に係る処理を識別する符号を記憶する。さらに、データベース220は、識別子と処理を識別する符号の間の対応関係を記憶する。「機器350に係る処理」については、後述する。
【0032】
また、データベース220は、機器350に係る処理を実行する際の優先度を記憶するものであってもよい。
【0033】
データベース220が記憶する対応関係によって、1つの識別子に対して、1又は複数の符号が対応付けられている。したがって、対応関係によって、機器350のコマンドの実行に必要な、1又は複数の処理が定義されている。その他、データベース220によって記憶される識別子は、所定のタイミングで更新されるものであってもよい。
【0034】
データベース220が記憶する対応関係は、所定のタイミングで更新されるものであってもよい。例えば、車両300に搭載される機器350の仕様が決定又は変更された際に、ユーザ又はサーバ200の管理者の指示に基づいて、対応関係が変更されるものであってもよい。更新のタイミングは、ここに挙げた例に限定されない。
【0035】
コントローラ230は、CPU(中央処理装置)、メモリ、及び入出力部を備える汎用のコンピュータである。コントローラ230には、情報処理システムの一部として機能させるためのコンピュータプログラム(遠隔操作プログラム)がインストールされている。コンピュータプログラムを実行することにより、コントローラ230は、複数の情報処理回路(231、233、235)として機能する。
【0036】
なお、ここでは、ソフトウェアによってコントローラ230が備える複数の情報処理回路(231、233、235)を実現する例を示す。ただし、以下に示す各情報処理を実行するための専用のハードウェアを用意して、情報処理回路(231、233、235)を構成することも可能である。また、複数の情報処理回路(231、233、235)を個別のハードウェアにより構成してもよい。
【0037】
コントローラ230は、複数の情報処理回路(231、233、235)として、処理特定部231、データ生成部233、データパッケージ生成部235を備える。
【0038】
処理特定部231は、通信部210が受信した識別子に基づいて、機器350に対するコマンドに紐づけられる、1又は複数の「機器350に係る処理」を特定する。なお、処理特定部231は、データベース220に記憶された対応関係を参照して、識別子に対応付けられた「機器350に係る処理」の符号を特定するものであってもよい。ここで、「機器350に係る処理」には、種々のものがある。
【0039】
例えば、機器350に対するコマンドが「ドアロックを施錠する」である場合、コマンドに紐づけられる処理として、例えば、「端末を認証する」、「ドアロックを施錠状態に変更する」、「ドアロックの状態を確認する」、「コマンド実行の成否を報告する」などの種々の処理が挙げられる。
【0040】
機器350に対するコマンドが「ドアロックを開錠する」である場合、コマンドに紐づけられる処理として、例えば、「端末を認証する」、「ドアロックを開錠状態に変更する」、「ドアロックの状態を確認する」、「コマンド実行の成否を報告する」などの種々の処理が挙げられる。
【0041】
機器350に対するコマンドが「ホーンを鳴らす」である場合、コマンドに紐づけられる処理として、「端末を認証する」、「ホーンを所定時間鳴らす」、「コマンド実行の成否を報告する」などの種々の処理が挙げられる。
【0042】
機器350に対するコマンドが「エアコンをオンにする」である場合、コマンドに紐づけられる処理として、「端末を認証する」、「車載バッテリの残容量を確認する」、「車載バッテリの残容量が所定値以上であるかを判定する」、「エアコンの電源をオンにする」、「車室内の温度が所定範囲の温度であるか否かを判定する」、「コマンド実行の成否を報告する」などの種々の処理が挙げられる。
【0043】
機器350に対するコマンドが「エアコンをオフにする」である場合、コマンドに紐づけられる処理として、「端末を認証する」、「エアコンの電源をオフにする」、「コマンド実行の成否を報告する」などの種々の処理が挙げられる。
【0044】
機器350に対するコマンドが「シートヒータをオンにする」である場合、コマンドに紐づけられる処理として、「端末を認証する」、「車載バッテリの残容量を確認する」、「車載バッテリの残容量が所定値以上であるかを判定する」、「シートヒータの電源をオンにする」、「車室内の温度が所定範囲の温度であるか否かを判定する」、「コマンド実行の成否を報告する」などの種々の処理が挙げられる。
【0045】
機器350に対するコマンドが「シートヒータをオフにする」である場合、コマンドに紐づけられる処理として、「端末を認証する」、「シートヒータの電源をオフにする」、「コマンド実行の成否を報告する」などの種々の処理が挙げられる。
【0046】
コマンドに紐づけられる、機器350に係る処理は、ここに挙げた例に限定されない。
【0047】
なお、処理特定部231は、データベース220に記憶された優先度を参照して、「機器350に係る処理」の優先度を設定するものであってもよい。例えば、上述した「機器350に係る処理」の例において、「端末を認証する」の優先度は最も高く設定されるものであってもよい。また、「車載バッテリの残容量を確認する」の優先度は、「車載バッテリの残容量が所定値以上であるかを判定する」の優先度よりも高く設定されるものであってもよい。さらに、「車載バッテリの残容量が所定値以上であるかを判定する」の優先度は、「エアコンの電源をオンにする」の優先度、「シートヒータの電源をオンにする」の優先度よりも高く設定されるものであってもよい。
【0048】
データ生成部233は、処理特定部231で特定された、「処理を識別する符号」又は「処理に対する入力データ」を生成する。なお、データ生成部233は、符号及び入力データのうち少なくとも一方を、特定された処理ごとに生成する。
【0049】
ここで、「処理を識別する符号」とは、車両300に搭載された機器350において実行され得る全ての処理の中から、特定された処理を一意に抽出することが可能な文字列および番号などで構成された符号である。
【0050】
また、「処理に対する入力データ」とは、当該処理の動作を特徴づけるパラメータとして設定される値である。例えば、機器350がエアコンである場合、「処理に対する入力データ」は、エアコンの設定温度であってもよい。また、機器350がシートヒータである場合、「処理に対する入力データ」は、シートヒータの設定温度であってもよい。機器350がホーンである場合、「処理に対する入力データ」は、ホーンが発生させる音のボリューム、種別、継続時間、パターンを示す設定値であってもよい。
【0051】
「処理を識別する符号」及び「処理に対する入力データ」は、処理ごとに予め設定されている。また、「処理を識別する符号」及び「処理に対する入力データ」は、所定のタイミングで更新されるものであってもよい。例えば、車両300に搭載される機器350の仕様が決定又は変更された際に、ユーザ又はサーバ200の管理者の指示に基づいて、「処理を識別する符号」及び「処理に対する入力データ」が変更されるものであってもよい。更新のタイミングは、ここに挙げた例に限定されない。
【0052】
その他、データ生成部233は、「機器350に係る処理」の優先度に基づいて、複数の処理の実行順序を示す順序データを生成するものであってもよい。より具体的には、データ生成部233は、優先度が高い処理ほどより早いタイミングで実行されるよう、複数の処理の実行順序を決定し、順序データを生成するものであってもよい。
【0053】
データパッケージ生成部235は、処理を識別する符号及び処理に対する入力データのうち少なくとも一方を処理ごとに含む、複数の処理に係る一のデータパッケージを生成する。
【0054】
ここで、「データパッケージ」とは、データ生成部233で生成した「処理を識別する符号」又は「処理に対する入力データ」を連続的に並べた1つのデータ列である。したがって、データパッケージは、識別子とは異なるデータである。データパッケージは、通信部210による1回の通信によって送信される。
【0055】
また、データパッケージ生成部235は、データ生成部233で生成された順序データを含むようにデータパッケージを生成してもよい。データパッケージ生成部235は、処理を識別する符号及び処理に対する入力データのうち少なくとも一方のデータの直前又は直後に順序データを付加してデータ列を生成してもよい。また、データパッケージ生成部235は、処理を識別する符号又は処理に対する入力データを連続的に並べた1つのデータ列の直前又は直後に順序データを付加してデータ列を生成してもよい。
【0056】
データパッケージ生成部235によって生成されたデータパッケージは、通信部210によって車両300に送信される。なお、データパッケージ生成部235は、データパッケージを暗号化し、暗号化されたデータパッケージが、通信部210によって車両300に送信されるものであってもよい。
【0057】
コントローラ230は、通信部210を介して、1つのコマンドに対して1つのデータパッケージを送信する。1つのコマンドに対して、機器350に係る複数の処理が紐づけられている場合であっても、通信部210は、1つのデータパッケージを送信するため、サーバ200及び車両300の間での通信が削減される。
【0058】
[車両の構成]
次に、車両300について説明する。図1に示すように、車両300は、通信部310と、車載コントローラ330と、機器350と、を備える。
【0059】
通信部310は、ネットワーク400との間で情報を送受信する。通信部310は、ネットワーク400から取得した情報を図示しないメモリ等に記憶する。特に、通信部310は、サーバ200の通信部210から送信されたデータパッケージを受信する。例えば、通信部310は、4G/LTEや5Gなどのモバイル通信機能を備えたデバイスであってもよいし、Wifi通信機能を備えたデバイスであってもよい。
【0060】
機器350は、車両300に搭載された各種の機器である。車両300には、1又は複数の機器350が搭載される。例えば、機器350は、端末100を認証する認証装置、ドアロック、エアコン、シートヒータ、ホーンなどである。機器350は、ここに挙げた例に限定されない。機器350の動作は、車載コントローラ330によって管理される。
【0061】
車載コントローラ330は、通信部310が受信したデータパッケージに基づいて、複数の処理を実行する。
【0062】
より具体的には、車載コントローラ330は、データパッケージに含まれる「処理を識別する符号」又は「処理に対する入力データ」を読み出し、機器350に係る処理を特定する。車載コントローラ330は、「処理を識別する符号」がない場合であっても、入力データの形式又は処理の優先度などから、入力データによって特徴づけられる処理を特定するものであってもよい。
【0063】
その後、車載コントローラ330は、特定した「機器350に係る処理」を実行する。データパッケージに順序データが含まれている場合には、順序データによって示される実行順序に従って「機器350に係る処理」を実行する。
【0064】
通信部310が暗号化されたデータパッケージを受信した場合には、車載コントローラ330は、暗号化されたデータパッケージを復号化して、暗号化されていないデータパッケージを生成するものであってもよい。
【0065】
その他、車載コントローラ330は、特定した「機器350に係る処理」を実行した結果(実行結果)をパッケージ化するものであってもよい。実行結果のパッケージ化とは、各処理の実行が成功したか否かの情報、及び、実行した後に機器350から返される戻り値を、連続的に並べた1つのデータ列を生成することである。
【0066】
車載コントローラ330によってパッケージ化した実行結果は、通信部310によってサーバ200を経由して、端末100に送信される。なお、車載コントローラ330は、パッケージ化した実行結果を暗号化し、暗号化された実行結果を、通信部310を介して端末100に送信するものであってもよい。
【0067】
車載コントローラ330は、通信部110を介して、1つのコマンドに対して1つのパッケージ化した実行結果を送信する。1つのコマンドに対して、機器350に係る複数の処理が紐づけられている場合であっても、通信部110は、1つのパッケージ化した実行結果を送信するため、端末100、サーバ200、車両300の間での通信が削減される。
【0068】
[遠隔操作システムの処理手順]
次に、本実施形態に係る遠隔操作システムの処理手順を、図2及び図3を参照して説明する。図2は、本開示の一実施形態に係る遠隔操作システムの処理を示すフローチャートである。図3は、本開示の一実施形態に係る遠隔操作システムの動作を説明するシーケンスチャートである。
【0069】
図2に示されるフローチャートの処理、図3に示されるシーケンスチャートは、所定の周期で繰り返し実行される。
【0070】
ステップS101において、操作部170は、ユーザが選択したコマンドを受け付ける。
【0071】
ステップS103において、コントローラ130は、ユーザが選択したコマンドを識別する識別子を決定する。
【0072】
ステップS105において、通信部110は、決定された識別子を送信し、通信部210は、識別子を受信する。
【0073】
ステップS107において、処理特定部231は、受信した識別子に基づいて、機器に係る処理を特定する。
【0074】
ステップS109において、データ生成部233は、特定した処理のうち、まだデータ(「処理を識別する符号」又は「処理に対する入力データ」)が生成されていない一の処理を選択する。
【0075】
ステップS111において、データ生成部233は、選択した処理についてデータ(「処理を識別する符号」又は「処理に対する入力データ」)を生成する。
【0076】
ステップS113において、データ生成部233は、特定した処理の全てについて、データ(「処理を識別する符号」又は「処理に対する入力データ」)を生成したか否かを判定する。
【0077】
全ての処理のデータを生成していないと判定された場合(ステップS113でNOの場合)、ステップS109に戻る。
【0078】
全ての処理のデータを生成したと判定された場合(ステップS113でYESの場合)、ステップS115において、データパッケージ生成部235は、データパッケージを生成する。
【0079】
ステップS117において、通信部210は、生成したデータパッケージを送信し、通信部310は、データパッケージを受信する。
【0080】
ステップS119において、車載コントローラ330は、機器350に係る処理を特定する。すなわち、車載コントローラ330は、実行する対象の処理を特定する。
【0081】
ステップS121において、車載コントローラ330は、特定した処理を実行する。
【0082】
ステップS123において、車載コントローラ330は、処理の実行結果をパッケージ化する。
【0083】
ステップS125において、通信部310は、パッケージ化した実行結果を送信する。パッケージ化した実行結果は、通信部210を介して、通信部110に送信される。
【0084】
[実施形態の効果]
以上詳細に説明したように、本実施形態に係る遠隔操作システム、サーバ、車載コントローラ、及び、遠隔操作方法では、サーバが、端末から受け付けた、機器に対するコマンドを識別する識別子に基づいて、コマンドに紐づけられる、機器に係る複数の処理を特定し、処理を識別する符号及び処理に対する入力データのうち少なくとも一方を処理ごとに含む、複数の処理に係る一のデータパッケージを生成して車載コントローラに送信し、車載コントローラが、データパッケージに基づいて、複数の処理を実行する。
【0085】
これにより、車両において複数の連続する処理を実行する際に、車両との通信の秘匿性を高めてセキュリティを向上させることができる。特に、機器に対するコマンドに対して、機器に係る複数の処理が紐づけられる場合に、処理ごとに通信が行われることが抑制され、車両における処理と通信の対応関係がなくなる。その結果、端末、サーバ、車両間で行われる通信の状況から、通信内容を推測することが困難となり、通信の秘匿性が高まる。その結果、セキュリティが向上する。
【0086】
さらに、機器に対するコマンドに対して、機器に係る複数の処理が紐づけられる場合に、処理ごとに通信が行われることが抑制され、車両に対する遠隔操作を完了するまでの時間を短縮することができる。特に、処理ごとに通信を行う際に、端末の認証などのセキュリティ担保のための処理を削減でき、遠隔操作を完了するまでの時間を短縮することができる。
【0087】
また、本実施形態に係る遠隔操作システム、サーバ、車載コントローラ、及び、遠隔操作方法において、識別子及び符号の対応関係を記憶するデータベースを更に備え、サーバは、対応関係に基づいて、処理を特定するものであってもよい。これにより、データベースに記憶された対応関係を変更する自由度を遠隔操作システムに持たせることができ、遠隔操作システムは、種々のコマンド及び機器に係る処理の関係に対応することができる。
【0088】
その結果、端末の側の機能に変更を加えることなく、車両に搭載される機器の仕様の変更、及び、コマンドごとに実行する処理の変更を行うことができるようになる。例えば、遠隔操作システムによるサービスを開始した後の、メンテナンス及び設計変更を容易に行うことができる。
【0089】
さらに、本実施形態に係る遠隔操作システム、サーバ、車載コントローラ、及び、遠隔操作方法において、識別子は、予めランダムに生成された文字列であってもよい。これにより、悪意ある第三者が識別子を解析して、識別子によって識別されるコマンドを判別することを困難にすることができる。その結果、セキュリティを向上させることができる。
【0090】
また、本実施形態に係る遠隔操作システム、サーバ、車載コントローラ、及び、遠隔操作方法において、データパッケージは、識別子とは異なるデータであってもよい。これにより、車両において複数の連続する処理を実行する際に、車両との通信の秘匿性を高めてセキュリティを向上させることができる。
【0091】
さらに、本実施形態に係る遠隔操作システム、サーバ、車載コントローラ、及び、遠隔操作方法において、サーバは、複数の処理の実行順序を示す順序データを生成し、データパッケージは、順序データを含むものであってもよい。これにより、機器に係る処理を実行する際の優先度を定義して、処理が指定された順序で実行されることを担保できる。
【0092】
また、本実施形態に係る遠隔操作システム、サーバ、車載コントローラ、及び、遠隔操作方法において、サーバは、データパッケージを暗号化して車載コントローラに送信するものであってもよい。これにより、車両との通信の秘匿性を高めてセキュリティを向上させることができる。
【0093】
上述の実施形態で示した各機能は、1又は複数の処理回路によって実装されうる。処理回路には、プログラムされたプロセッサや、電気回路などが含まれ、さらには、特定用途向けの集積回路(ASIC)のような装置や、記載された機能を実行するよう配置された回路構成要素なども含まれる。
【0094】
以上、実施形態に沿って本開示の内容を説明したが、本開示はこれらの記載に限定されるものではなく、種々の変形及び改良が可能であることは、当業者には自明である。この開示の一部をなす論述および図面は本開示を限定するものであると理解すべきではない。この開示から当業者には様々な代替実施形態、実施例および運用技術が明らかとなろう。
【0095】
本開示はここでは記載していない様々な実施形態等を含むことは勿論である。したがって、本開示の技術的範囲は上記の説明から妥当な特許請求の範囲に係る発明特定事項によってのみ定められるものである。
【符号の説明】
【0096】
100 端末
110 通信部
130 コントローラ
160 表示部
170 操作部
200 サーバ
210 通信部
220 データベース
230 コントローラ
231 処理特定部
233 データ生成部
235 データパッケージ生成部
300 車両
310 通信部
330 車載コントローラ
350 機器
400 ネットワーク
図1
図2
図3