JP6605638B2 - 制御処理装置 - Google Patents

制御処理装置 Download PDF

Info

Publication number
JP6605638B2
JP6605638B2 JP2018017471A JP2018017471A JP6605638B2 JP 6605638 B2 JP6605638 B2 JP 6605638B2 JP 2018017471 A JP2018017471 A JP 2018017471A JP 2018017471 A JP2018017471 A JP 2018017471A JP 6605638 B2 JP6605638 B2 JP 6605638B2
Authority
JP
Japan
Prior art keywords
time
count value
data
processing unit
counter
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
JP2018017471A
Other languages
English (en)
Other versions
JP2019130656A (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 JP2018017471A priority Critical patent/JP6605638B2/ja
Priority to US16/245,557 priority patent/US20190243656A1/en
Publication of JP2019130656A publication Critical patent/JP2019130656A/ja
Application granted granted Critical
Publication of JP6605638B2 publication Critical patent/JP6605638B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/20Scenes; Scene-specific elements in augmented reality scenes
    • 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
    • G05B19/0421Multiprocessor system
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/04Generating or distributing clock signals or signals derived directly therefrom
    • G06F1/12Synchronisation of different clock signals provided by a plurality of clock generators
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/10Terrestrial scenes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/60Type of objects
    • G06V20/64Three-dimensional objects
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Multimedia (AREA)
  • General Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Automation & Control Theory (AREA)
  • Manipulator (AREA)

Description

本発明は、2つの処理部を有し、一方の処理部から他方の処理部に基準の時刻を表すカウント値を送信しながら、当該2つの処理部で同期した制御処理を実行し得るように構成された制御処理装置に関する。
例えば移動ロボットにおいて、該移動ロボットに搭載されたステレオカメラ等の外界センサにより、移動ロボットの周囲に存在する物体の配置状態等の外界状態を認識しながら、移動ロボットの動作制御を行うように構成された制御処理装置を搭載したものが従来より知られている(例えば特許文献1を参照)。
この種の制御処理装置は、そのレイアウト上の制約等により、単一の処理部として構成することが困難となる場合が多々あり、そのような場合には、制御処理装置を複数の処理部で構成すると共に、これらの処理部を各別の箇所に配置し、これらの処理部の間で通信ケーブル等を介して通信を行うようにすることが行われる。
例えば、特許文献1に見られる如き移動ロボットでは、外界状態を計測することに関する制御処理を実行する処理部と、移動ロボットの各関節を駆動したり、移動ロボットの実際の動作状態の監視すること等に関する制御処理を実行する処理部とを各別の箇所に配置し、これらの処理部の間で通信を行うように制御処理装置を構成する場合が多々ある。
そして、このように複数の処理部を備える制御処理装置では、該複数の処理部のそれぞれの制御処理(データの生成又は取得等)の同期をとるために、一つの処理部から、基準の時刻を示すカウント値を所定の基準周期で逐次更新しながら他の各処理部に送信し、それぞれの処理部で、該カウント値の更新に同期して制御処理を実行することが一般に行われる。
なお、例えば、特許文献2には、マイコロコンピュータの関する処理技術が開示され、特許文献3には、グローバルポジショニングシステムの受信機に関する処理技術が開示されている。
特開2009−285752号公報 特許第4082211号公報 特許第3385321号公報
ところで、上記のように基準の時刻を示すカウント値を送信する処理部(以降、第1処理部ということがある)と、該カウント値を受信する処理部(以降、第2処理部ということがある)とを備える制御処理装置においては、該第1処理部と第2処理部との間の通信ケーブルや通信規格等に起因する制約によって、送信するカウント値の更新周期をあまり短くできない場合が多々ある。
一方、上記カウント値を受信する第2処理部では、その制御処理により得られるデータの精度等を高める上で、より高い時間分解能で制御処理を実行し得ることが好ましい場合が多々ある。
例えば、移動ロボットにおいて、、移動ロボットの各関節を駆動したり、移動ロボットの実際の動作状態の監視すること等に関する制御処理を実行する主たる処理部を上記第1処理部とすると共に、ステレオカメラ等の外界センサにより外界状態を計測する制御処理を実行する処理部を上記第2処理部として制御処理装置を構成した場合、外界状態の計測データの精度を高める上では、多くの場合、第2処理部による外界状態の計測のための制御処理の時間分解能を高めることが好ましい。
しかるに、従来は、第2処理部の制御処理は、第1処理部から送信されるカウント値の更新周期により規定される時間分解能で実行されていたため、第1処理部から送信するカウント値の更新周期をあまり短くできない場合には、第2処理部の制御処理の時間分解能が低下する。ひいては、第2処理部の制御処理で得られるデータ(例えば外界状態の計測結果を示すデータ)の精度を高めることが困難となりやすい。
本発明はかかる背景に鑑みてなされたものであり、第1処理部から第2処理部に所定の基準周期で逐次更新されるように送信されるカウント値の更新周期よりも高い時間分解能で第2処理部の処理を実行することを、該第1処理部及び第2処理部のそれぞれの処理の時間的な整合性を確保しつつ実現することができる制御処理装置を提供することを目的とする。
本発明の制御処理装置は、上記の目的を達成するために、所定の基準周期毎の時刻を表す第1カウント値を該基準周期で逐次更新するように出力する第1カウンタを有し、該第1カウンタから出力される各第1カウント値が対応付けられた第1データを生成又は取得する処理と、該第1カウント値を前記基準周期で逐次送信する処理とを実行する機能を有する第1処理部と、
前記第1処理部から送信される前記第1カウント値を受信可能に構成されていると共に、前記基準周期よりも短い所定の周期毎の時刻を表す第2カウント値を該所定の周期で逐次更新するように出力する第2カウンタを有し、該第2カウンタから出力される第2カウント値を、前記第1カウント値の受信に応じて定期的に初期化する処理と、前記第1データに関連する第2データを前記基準周期により規定される時間分解能よりも高い時間分解能で生成又は取得する処理とを実行する機能を有する第2処理部とを備えており、
前記第2処理部は、前記第2データを生成又は取得するとき、前記第1処理部から受信した第1カウント値により示される時刻と、前記第2カウンタから出力された第2カウント値により示される時刻とを合成した時刻を前記第2データに対応付けるように構成されていることを基本構成とする
上記基本構成によれば、前記第2処理部は、前記基準周期よりも短い所定の周期毎の時刻を表す第2カウント値を逐次出力する第2カウンタを備えており、該第2カウンタから出力される第2カウント値は、前記第1カウンタの受信に応じて定期的に初期化される。そして、第2処理部が生成又は取得する第2データには、第1処理部から受信した第1カウント値により示される時刻と、前記第2カウンタから出力された第2カウント値により示される時刻とを合成した時刻が対応付られる。
これにより、第2処理部は、第1処理部による第1データの生成又は取得の処理との時間的な整合性を確保しつつ、前記基準周期により規定される時間分解能よりも高い時間分解能で、第2データを生成又は取得する処理を実行することが可能となる。
よって、前記基本構成を有する本発明によれば、第1処理部から第2処理部に所定の基準周期で逐次更新さ れるように送信されるカウント値の更新周期よりも高い時間分解能で第2処理部の処理を実行することを、該第1処理部及び第2処理部のそれぞれの処理の時間的な整合性を確保しつつ実現することが可能となる。
上記基本構成を有する本発明では、より具体的には、前記第2処理部は、前記第2データを生成又は取得した時刻以前に前記第1処理部から受信した最新の第1カウント値により示される時刻に、該最新の第1カウント値により示される時刻から前記第2データを生成又は取得した時刻までに前記第2カウンタから出力された第2カウント値の変化量により示される時間幅を加えた時刻を前記合成した時刻として前記第2データに対応付けるように構成されているという態様を採用し得る(第2発明)。
これにより、前記基準周期よりも高い時間分解能での時刻を、第2データに対応付けることを適正に行うことができる。
上記基本構成を有する本発明又は第2発明では、前記第2処理部は、前記第1カウント値の受信毎に、前記第2カウンタから出力される前記第2カウント値を初期化するように構成されていることが好ましい(第3発明)。
これによれば、第1カウント値と、第2カウント値との同期性のずれを極力抑制することができる。
上記基本構成を有する本発明では、前記第1処理部は、前記各第1カウント値が対応付けられた前記第1データを前記第2処理部に送信する処理を前記基準周期で逐次実行するように構成されており、前記第2処理部は、生成又は取得した前記第2データに対応付けられた時刻での前記第1データの値を、前記第1処理部から受信した前記第1データの時系列から補間処理により推定する処理を実行する機能をさらに有するように構成されている
また、前記第1処理部は、移動体の所定の部位の動作状態に関する検出データを前記第1データとして取得して、該第1データを前記第2処理部に送信するように構成されており、前記第2処理部は、前記移動体の周囲に存在する物体を検出し得るように該移動体の前記所定の部位に搭載された外界センサから出力される前記物体の検出データを前記第2データとして取得し、さらに、該第2データに対応付けられた時刻での前記第1データの値として前記補間処理により推定した値と、該第2データの値とを用いて、前記外界センサにより検出された物体の前記移動体に対する相対的な配置状態を示す第3データを生成するように構成されている。
さらに、前記第2処理部は、前記第2データを取得するとき、前記外界センサによる検出の終了に応じて該外界センサから入力される終了トリガ信号に応じて、該終了トリガ信号の入力時刻を当該取得した第2データに対応する時刻として決定し、該入力時刻を、前記第1処理部から受信した第1カウント値により示される時刻と、前記第2カウンタから出力された第2カウント値により示される時刻とを合成した時刻として求めて該第2データに対応付けるように構成されている。、
従って、本発明では、前記第1処理部は、前記各第1カウント値が対応付けられた前記第1データとして、移動体の所定の部位の動作状態に関する検出データを取得して、該第1データを前記第2処理部に送信する処理を前記基準周期で逐次実行するように構成されており、
前記第2処理部は、
前記移動体の周囲に存在する物体を検出し得るように該移動体の前記所定の部位に搭載された外界センサから出力される前記物体の検出データを前記第2データとして取得するように構成されていると共に、
前記第2データを取得するとき、前記外界センサによる検出の終了に応じて該外界センサから入力される終了トリガ信号に応じて、該終了トリガ信号の入力時刻を当該取得した第2データに対応する時刻として決定し、該入力時刻を、前記第1処理部から受信した第1カウント値により示される時刻と、前記第2カウンタから出力された第2カウント値により示される時刻とを合成した時刻として求めて該第2データに対応付ける機能と、
該第2データに対応付けられた時刻での前記第1データの値を、前記第1処理部から受信した前記第1データの時系列から補間処理により推定する処理を実行する機能と、
該第2データに対応付けられた時刻での前記第1データの値として前記補間処理により推定した値と該第2データの値とを用いて、前記外界センサにより検出された物体の前記移動体に対する相対的な配置状態を示す第3データを生成する機能とををさらに有するように構成されていることを特徴とする(第1発明)。
これによれば、前記第2処理部が前記第2データを取得するときに、第2データに対応付けられた時刻での前記第1データの値を前記補間処理により適切に推定することができる。このため、第2処理部では、前記第2データを、その取得の時点での第1データの値に対応付けることが可能となる。
また、前記物体の検出データを前記基準周期よりも高い時間分解能で短い周期で取得できると共に、該物体の検出データを取得した時刻での前記移動体の所定の部位の動作状態を前記補間処理により適切に推定できるので、前記外界センサにより検出された物体の移動体に対する相対的な配置状態を示すデータを精度よく生成することが可能となる。
上記基本構成を有する本発明では、前記第2処理部は、前記第1処理部から送信される前記第1カウント値を正常に受信できない異常状態が発生したとき、該異常状態の発生後に生成又は取得する前記第2データに対応付ける時刻を、前記第2カウンタから出力される第2カウント値に基づいて推定し、当該推定した時刻を前記第2データに対応付けるように構成されていることが好ましい(第発明)。
これによれば、前記第2処理部は、前記異常状態が発生した場合でも、生成又は取得する第2データに、前記基準時刻よりも高い時間分解能での時刻を対応付けることが可能となる。
上記第発明では、より具体的には、前記第2処理部は、前記異常状態の発生前に最後に受信した前記第1カウント値により示される時刻に、該時刻から、前記異常状態の発生後に前記第2データを生成又は取得した時刻までに前記第2カウンタから出力された前記第2カウント値の変化量により示される時間幅を加えた時刻を該第2データに対応付ける時刻として決定するように構成されているという態様を採用し得る(第発明)。
これによれば、前記異常状態が発生した場合に、前記第2データに対応付ける時刻を適切に決定することができる。
本発明の制御処理装置の実施形態を適用するロボット(移動体)を示す図。 実施形態の制御処理装置の構成を示すブロック図。
本発明の一実施形態を図1及び図2を参照して以下に説明する。本実施形態の制御処理装置Aは、例えば、図1に示す如きロボット1に搭載されている。ロボット1は、移動体の一例である。この例でのロボット1は、人型の脚式移動ロボットであり、上体に相当する基体2と、基体2から延設された複数(本実施形態では4個)の可動リンクとしての左右一対の(2つの)脚リンク3,3及び左右一対の(2つの)腕リンク4,4と、頭部5とを備える。
基体2は、本実施形態では、基体2の下部を構成する下側基体6と、基体2の上部を構成する上側基体7と、該下側基体6及び上側基体7を連結する関節機構8とから構成される。そして、頭部5は、基体2の上端部(上側基体7の上端部)に首関節機構27を介して取り付けられている。
各脚リンク3は、基体2の下部(下側基体6)から延設されており、大腿部11、下腿部12、足部13にそれぞれ相当する要素リンクを、基体2側から順番に、股関節機構14、膝関節機構15、足首関節機構16を介して連結して構成されている。
各腕リンク4は、基体2の上部(上側基体7)から延設されており、上腕部21、前腕部22、ハンド部23にそれぞれ相当する要素リンクを、基体2側から順番に、肩関節機構24、肘関節機構25、手首関節機構26を介して連結して構成されている。
詳細な図示は省略するが、上記の各関節機構8,14,15,16,24,25,26のそれぞれは、例えば1軸周りの回転自由度を有する一つ以上の関節(回転型の関節)により構成され、該関節のそれぞれを電動モータ等のアクチュエータにより駆動することで、ロボット1の運動が行われる。なお、各関節機構8,14,15,16,24,25,26は、回転型の関節に限らず、直動型の関節を含んでいてもよい。
かかる構成のロボット1には、本実施形態の制御処理装置Aの構成要素としての第1処理部30及び第2処理部40と、ロボット1の周囲の外界状態を計測するための外界センサ50と、該外界センサ50に関する制御処理を行うセンサ制御部51とが任意の適所に搭載されている。
図示例のロボット1では、第1処理部30は例えば下側基体6に搭載され、第2処理部40は例えば上側基体7に搭載され、外界センサ50及びセンサ制御部51は例えば頭部5に搭載されている。なお、頭部5は、本発明における移動体の所定の部位に相当する。
外界センサ50は、本実施形態では、より詳しくは、ロボット1の周囲に存在する物体(地面、床面、設置物、構造物等)を検知するためのセンサであり、例えば、ステレオカメラ、レーザ・レンジ・ファインダ(LRF)等により構成される。該外界センサ50は、その正面側の領域に存在する物体の複数の測定点までの距離を計測し、その計測データ(以降、外界計測データという)を出力することができるように構成されている。本実施形態では、該外界計測データが、本発明における物体の検出データに相当する。
第1処理部30、第2処理部40及びセンサ制御部51のそれぞれは、マイクロコンピュータもしくはプロセッサ、メモリ、インターフェース回路等を含む電子回路ユニットにより構成される。そして、図2に示す如く、第1処理部30は、第2処理部40と通信し得るように、通信ケーブル34a,34bを介して第2制御部40と接続されている。また、第2制御部40は、センサ制御部51と通信し得るように、通信ケーブル48a,48bを介してセンサ制御部51と接続されていると共に、外界センサ50から外界計測データを受信し得るように、通信ケーブル48cを介して該外界センサ50と接続されている。
以降、本実施形態の制御処理装置Aの構成及び作動をさらに詳細に説明する。まず、第1処理部30は、実装されたハードウェア構成及びプログラム(ソフトウェア構成)により実現される機能として、ロボット1の動作制御等を行うロボット動作制御部31と、所定の基準周期毎の時刻を表す第1カウント値N1(より詳しくは、任意の初期時刻からの経過時間を上記基準周期毎に表す第1カウント値N1)を逐次更新しつつ出力する第1カウンタ32とを含む。
第1カウンタ32は、第1処理部30に備えられた図示しない発振器等により生成されるクロック信号により規定される所定の基準周期Δt1(一定周期)で、第1カウント値N1を増加させていくように該第1カウント値N1を逐次更新する。そして、第1カウンタ32から出力される第1カウント値N1は、ロボット動作制御部31に入力されると共に、第1処理部30から通信ケーブル34bを介して第2処理部40に送信される。
ロボット動作制御部31は、第1カウンタ32から入力される第1カウント値N1の更新に同期した周期(=基準周期Δt1)で、ロボット1の動作制御のための制御処理を逐次実行する。
この場合、ロボット動作制御部31には、ロボット1の各関節の変位量(回転角等)の検出データ、及びロボット1の下側基体6(又は上側基体7)の姿勢(傾斜角等)の検出データ等、ロボット1の実際の動作状態を示す検出データが図示を省略するセンサ等から入力されると共に、ロボット1の動作目標が、図示を省略する上位の制御装置あるいは外部のサーバ等から入力される。
そして、ロボット動作制御部31は、入力された動作目標を実現するように、ロボット1の各関節の変位量の目標値を逐次決定し、該目標値に各関節の実際の変位量を追従させるように、各関節を電動モータ等のアクチュエータを介して駆動する。
また、ロボット動作制御部31は、上記の如くロボット1の動作制御を行うことと並行して、第1カウンタ32から入力される第1カウント値N1のそれぞれに対応する時刻における前記外界センサ50の搭載部(頭部5)の姿勢の検出値を示す姿勢検出データに、対応する時刻を示す第1カウント値N1を付加してなるデータ(以降、姿勢検出データ(N1)と称する)を前記基準周期Δt1(=第1カウント値N1の更新周期)で逐次出力する。
ここで、上記姿勢検出データ(N1)は、より詳しくは、例えば、第1カウント値N1に対応する時刻での外界センサ50の搭載部(頭部5)の、ロボット1の基準部位(例えば下側基体6)に対する相対的な位置及び向きを特定し得る検出データである。該姿勢検出データ(N1)としては、例えばロボット1の基準部位に設定されるロボット座標系で見た、外界センサ50の搭載部(頭部5)の位置及び向きを示す検出データ、あるいは、該位置及び向きを規定する検出データ(例えば、ロボット1の基準部位と外界センサ50の搭載部(頭部5)との間に存在する各関節の変位量の検出データ)等を使用することができる。
そして、ロボット動作制御部31から出力される姿勢検出データ(N1)は、第1処理部30から通信ケーブル34aを介して第2処理部40に逐次送信される。本実施形態では、かかる姿勢検出データ(N1)が本発明における第1データに相当する。
なお、第1カウント値N1の更新周期(=基準周期Δt1)は、第1処理部30と第2処理部40との間のデータ通信(通信ケーブル34a又は34bによるデータ通信)に要する時間(所謂、レイテンシ)よりも大きい時間幅である。
第2処理部40は、実装されたハードウェア構成及びプログラム(ソフトウェア構成)により実現される機能として、前記基準周期よりも短い所定周期毎の時刻を表す第2カウント値N2(より詳しくは、任意の初期時刻からの経過時間を上記所定周期毎に表す第2カウント値N2)を逐次更新しつつ出力する第2カウンタ41と、第1処理部30から受信した第1カウント値により示される時刻と該2カウンタ42から出力される第2カウント値により示される時刻とを合成した時刻を表す内挿カウント値N3を生成する内挿カウント値生成部42と、内挿カウント値N3に対応する時刻でのロボット1の外界センサ50の搭載部(頭部5)の姿勢を推定するセンサ姿勢推定部43と、外界センサ50から前記外界計測データを取得する外界計測データ取得部44と、外界センサ50により検出された物体(距離計測がなされた物体)のロボット1に対する相対的な配置状態を示す外界認識データを生成する処理を実行する実行する3次元再構成部45とを備える。
第2カウンタ41は、第2処理部40に備えられた図示しない発振器等により生成されるクロック信号により規定される所定周期Δt2(一定周期)で、第2カウント値N2を増加させていくように該第2カウント値N2を逐次更新する。この場合、第2カウント値N2の更新周期である上記所定周期Δt2は、前記基準周期Δt1(=第1カウント値N1の更新周期)よりも十分に短い周期(例えば、基準周期Δt1の1/1000の周期)である。従って、第2カウンタ41は、第1カウンタ32よりも高速でカウント値を更新する高速カウンタである。
また、第2カウンタ41には、第1処理部30から第2処理部40で受信された第1カウント値N1が逐次入力される。そして、第2カウンタ41は、第1カウント値N1の入力の都度(受信の都度)、出力する第2カウント値N2を初期値(例えばゼロ)に初期化する。
従って、第2カウンタ41から出力される第2カウント値N2は、第1カウント値N1の受信時刻からの経過時間(上記所定周期Δt2毎の経過時間)を表すものとなる。この場合、第2カウント値N2の更新周期(=Δt2。以降、高速周期Δt2ということがある)は、前記基準周期Δt1より短い周期(本実施形態では、例えばΔt2=Δt1/1000)であるので、該第2カウント値N2は、第1カウント値N1よりも高い時間分解能での時刻を表すものとなる。
また、外界計測データ取得部44は、例えば所定の計測処理周期で、あるいは、第2処理部40で適宜決定される計測タイミング毎に、外界センサ50による外界計測データを取得する。この場合、本実施形態では、外界計測データ取得部44は、外界計測データの取得を行う計測タイミングで、センサ制御部51に計測開始を指示する開始トリガ信号を出力する。
この開始トリガ信号は、センサ制御部51を介して外界センサ50に与えられ、これに応じて外界センサ50による計測が開始される。このとき、外界センサ50はその正面に存在する物体の複数の測定点までの距離を計測することで得られた外界計測データを第2処理部40に出力する。そして、該外界計測データが外界計測データ取得部44で取得される。
一方、外界センサ50は、計測を終了すると、その旨を示す終了トリガ信号をセンサ制御部51を介して第2処理部40に出力する。そして、該終了トリガ信号は、第2処理部40の内挿カウント値生成部42に入力される。
該内挿カウント値生成部42には、上記の如くセンサ制御部51から終了トリガ信号が入力されるほか、第1処理部30から第2処理部40で受信された第1カウント値N1と、第2カウンタ41から出力された第2カウント値N2とが逐次入力される。
そして、内挿カウント値生成部42は、センサ制御部51から終了トリガ信号が入力された時刻を表す内挿カウント値N3を決定して出力する。該内挿カウント値N3は、換言すれば、外界計測データ取得部44が外界センサ50から外界計測データを取得した時刻を表す指標値として、該外界計測データに対応付られるものであり、例えば次のように決定される。
すなわち、内挿カウント値生成部42は、センサ制御部51から終了トリガ信号が入力された時刻以前に第1処理部30から受信した最新の第1カウント値N1(以降、これをN1aと表記する)と、該終了トリガ信号が入力された時刻で第2カウンタ41から出力されている第2カウント値N2(以降、これをN2aと表記する)とを、例えば、次式(1)により合成(線形結合)することにより、内挿カウント値N3を決定する。
N3=N1a+N2a/n ……(1)
ただし、n=Δt1/Δt2(例えばn=1000)
例えば、N1a=50、N2a=150である場合、内挿カウント値N3は、N3=50.150となる。このように、内挿カウントN3を決定した場合、該内挿カウント値N3に、前記基準周期Δt1を乗じてなる時刻(=Δt1・N3=Δt1・N1a+Δt2・N2a)が、外界計測データ取得部44が外界センサ50から外界計測データを取得した時刻(初期時刻からの経過時間)を第2カウント値N2と同じ時間分解能(第1カウント値N1のn倍(本実施形態では1000倍)の時間分解能)で表すものとなる。
なお、内挿カウント値N3は、上記式(1)により算出される値に、ゼロ以外の任意の定数(例えば、n)を乗じた値であってもよい。また、内挿カウント値N3は、外界計測データ取得部44が外界センサ50から外界計測データを取得した時刻(初期時刻からの経過時間)そのものを表す値(=Δt1・N1a+Δt2・N2a)であってもよい。
ところで、前記通信ケーブル34bの断線、あるいは通信不良等により、第2処理部40が第1処理部30から第1カウント値N1を正常に受信できなくなると、第2カウンタ41から出力される第2カウント値N2が初期化されなくなると共に、内挿カウント値N3の生成に用いる第1カウント値N1が内挿カウント値生成部42に入力されなくなる。
この場合、内挿カウント値生成部42は、第2カウンタ41から出力される第2カウント値N2だけを用いて、内挿カウント値N3を推定する。
具体的には、内挿カウント値生成部42は、第2カウンタ41から出力される第2カウント値N2が、あらかじめ定められた所定値N2xを超えた場合に、第2処理部40が第1処理部30から第1カウント値N1を正常に受信できない異常状態が発生したことを検知する。上記所定値N2xは、例えば、前記基準周期Δtに相当する第2カウント値N2の変化量(=Δt1/Δt2)に所定のマージンα(<Δt1/Δt2)を加えた値に設定されている。
そして、内挿カウント値生成部42は、上記異常状態の発生を検知した場合には、その後、センサ制御部51から終了トリガ信号が入力されたときに、外界計測データの取得時刻(取得した外界計測データに対応付ける時刻)を表す内挿カウント値N3を、例えば、次式(2)により決定する。
N3=N1b+ΔN1+(N2a−n・ΔN1)/n ……(2)
ただし、
N1b:異常状態の発生前に第2処理部40が最後に受信した第1カウント値
ΔN1:現在時刻での第2カウント値N2aを比率n(=Δt1/Δt2)で除算して得られる商(整数値)
N2a−n・ΔN1:現在時刻での第2カウント値N2aを比率n(=Δt1/Δt2)で除算して得られる剰余
この場合、式(2)の右辺のN1b+ΔN1が、第1カウント値N1を第2処理部40が正常に受信できる状態が継続していると仮定した場合に、外界計測データの取得時刻以前に、第2処理部40で受信していたはずの最新の第1カウント値N1aの推定値(前記式(1)の右辺のN1aの推定値)に相当し、(N2a−n・ΔN1)は、上記仮定の基での該第1カウント値N1aの受信時点以後の第2カウント値N2の変化量の推定値(前記式(1)の右辺のN2aの推定値)に相当する。
上記式(2)により内挿カウント値N3を決定することで、第2処理部40が第1カウント値N1を正常に受信できない異常状態が発生した後であっても、外界計測データの取得時刻を示す内挿カウント値N3を適正に決定することができる。
上記のように内挿カウント値生成部42で決定された内挿カウント値N3は、外界計測データ計測部44による外界計測データの取得の都度、センサ姿勢推定部43に入力される。該センサ姿勢推定部43には、内挿カウント値N3の他、第1処理部30から送信されて第2処理部40が受信した姿勢検出データ(N1)が逐次入力される。
そして、センサ姿勢推定部43は、入力された内挿カウント値N3により示される時刻(外界計測データの取得時刻)での外界センサ50の搭載部(頭部5)の位置及び向きを表す姿勢検出データ(N3)を推定する。
この場合、センサ姿勢推定部43は、内挿カウント値N3により示される時刻が、ある第1カウント値N1cにより示される時刻に一致する場合(本実施形態では、N3=N1cである場合)には、第2処理部40で受信された姿勢検出データ(N1)のうち、該第1カウント値N1cが対応付られた姿勢検出データ(N1c)を、内挿カウント値N3により示される時刻での姿勢検出データ(N3)として決定する。
また、内挿カウント値N3により示される時刻が、ある第1カウント値N1dにより示される時刻と、その次の第1カウント値N1d+1により示される時刻との間の時刻である場合(本実施形態では、N1d<N3<N1d+1である場合)には、センサ姿勢推定部43は、第1カウント値N1dが対応付けられた姿勢検出データ(N1d)と、次の第2カウント値N1d+1が対応付られた姿勢検出データ(N1d+1)とから、補間処理(例えば線形補間処理)により、内挿カウント値N3により示される時刻での姿勢検出データ(N3)を推定する。これにより、外界計測データの各取得時刻(各内挿カウント値N3により示される時刻)での姿勢検出データを得ることができる。
センサ姿勢推定部43により上記の如く推定された姿勢検出データ(N3)と、外界計測データ取得部44で取得された外界計測データとは、それぞれ時系列的に3次元再構成部45に入力される。そして、該3次元再構成部45は、各内挿カウント値N3により示される時刻で取得された外界計測データ(N3)と、該内挿カウント値N3により示される時刻での姿勢検出データ(N3)の推定値とから、該内挿カウント値N3により示される時刻での物体配置状態(外界センサ50により検出された物体のロボット1に対する相対的な配置状態)を特定する。該物体配置状態は、例えば、ロボット1に設定された座標系で見た3次元の点群によって表される。
上記のように3次元再構成部45により特定された物体配置状態を示すデータである外界認識データは、第2処理部40から、第1処理部30、あるいは、上位の制御装置等に送信される。本実施形態では、かかる外界認識データが本発明における第3データに相当する。
以上が本実施形態の制御処理装置Aの詳細である。かかる制御処理装置Aによれば、第2処理部40は、第1処理部30での制御処理に係る基準周期Δt1(第1カウント値N1の更新周期)よりも十分に短い高速周期Δt2により規定される高い時間分解能で、外界計測データの取得時刻を得ることができる。
また、第2処理部40は、第1処理部30から送信される姿勢検出データ(N1)の時系列から補間処理により、外界計測データの取得時刻での姿勢検出データを推定することができる。
このため、3次元再構成部45により、精度よくロボット1に対する周囲の物体の相対的な配置状態を示す外界認識データ(3次元点群のデータ)を生成することができる。ひいては、該外界認識データを用いてロボット1の動作制御を行う場合に、ロボット1の周囲の物体の実際の配置状態を適切に反映させて、ロボット1の動作目標を決定することが可能となる。
また、通信ケーブル34bの断線等により、第2処理部40が第1処理部30から送信される第1カウント値N1を正常に受信することができなくなる異常状態が発生しても、外界計測データの取得時刻を示す内挿カウント値N3を、姿勢検出データ(N1)との時間的な関係を特定し得るように推定することができる。
すなわち、あたかも、第2処理部40が第1処理部30から送信される第1カウント値N1を正常に受信し得る状態が継続しているようにして、外界計測データの取得時刻を示す内挿カウント値N3を決定することができる。
ひいては、第2処理部40が第1処理部30から送信される第1カウント値N1を正常に受信することができなくなる異常状態が発生しても、外界計測データとの時間的な整合性を適切にとり得るように、外界検出データの各取得時刻での姿勢検出データを推定することを適切に実現できる。その結果、ロボット1の動作の非常停止等を適切に実現することも可能となる。
なお、本発明は、以上説明した実施形態に限定されるものではなく、他の実施形態を採用することもできる。以下に他の実施形態を説明する。
前記実施形態では、外界センサ50による計測を、第2処理部40からセンサ制御部51に送信する開始トリガ信号に応じて実行するようにした。ただし、外界センサ50による計測を、第2処理部40からセンサ制御部51への開始トリガ信号の送信を必要とせずに、センサ制御部51が周期的に、もしくは適宜決定したタイミングで開始させるようにしてもよい。
また、前記実施形態では、制御処理装置Aを適用する移動体として、脚式移動ロボットを例示したが、移動体は、例えば車輪型の移動体等であってもよい。また、本発明の制御処理装置は、ロボット等の移動体に限らず、産業ロボット、輸送機器等、種々様々な装置に適用できる。この場合、本発明の制御処理装置を適用する装置毎に、第1処理部で生成又は取得する第1データ、あるいは、第2処理部で生成又は取得する第2データとして、種々様々な種類のデータを採用し得る。これらの第1データ又は第2データは、検出データに限らず、目標値等であってもよい。
また、前記実施形態では、第1処理部30と第2処理部40との間の通信は、有線通信であるが、該通信は無線通信であってよい。
また、前記実施形態では、第2処理部40が第1カウント値N1を受信する毎に、第2カウント値N2を初期化するようにした。ただし、例えば、基準周期の複数倍の期間毎に、第2カウント値N2を初期化するようにすることも可能である。ただし、前記基準周期Δt1と、高速周期Δt2との比率n(=Δt1/Δt2)のばらつきを考慮すると、第2処理部40が第1カウント値N1を受信する毎に、第2カウント値N2を初期化することが望ましい。
A…制御処理装置、1…ロボット(移動体)、5…頭部(移動体の所定の部位)、30…第1処理部、40…第2処理部、32…第1カウンタ、41…第2カウンタ、50…外界センサ。

Claims (5)

  1. 所定の基準周期毎の時刻を表す第1カウント値を該基準周期で逐次更新するように出力する第1カウンタを有し、該第1カウンタから出力される各第1カウント値が対応付けられた第1データを取得する処理と、該第1カウント値を前記基準周期で逐次送信する処理とを実行する機能を有する第1処理部と、
    前記第1処理部から送信される前記第1カウント値を受信可能に構成されていると共に、前記基準周期よりも短い所定の周期毎の時刻を表す第2カウント値を該所定の周期で逐次更新するように出力する第2カウンタを有し、該第2カウンタから出力される第2カウント値を、前記第1カウント値の受信に応じて定期的に初期化する処理と、前記第1データに関連する第2データを前記基準周期により規定される時間分解能よりも高い時間分解能で取得する処理とを実行する機能を有する第2処理部とを備えており、
    前記第1処理部は、前記各第1カウント値が対応付けられた前記第1データとして、移動体の所定の部位の動作状態に関する検出データを取得して、該第1データを前記第2処理部に送信する処理を前記基準周期で逐次実行するように構成されており、
    記第2処理部は、
    前記移動体の周囲に存在する物体を検出し得るように該移動体の前記所定の部位に搭載された外界センサから出力される前記物体の検出データを前記第2データとして取得するように構成されていると共に、
    記第2データを取得するとき、前記外界センサによる検出の終了に応じて該外界センサから入力される終了トリガ信号に応じて、該終了トリガ信号の入力時刻を当該取得した第2データに対応する時刻として決定し、該入力時刻を、前記第1処理部から受信した第1カウント値により示される時刻と、前記第2カウンタから出力された第2カウント値により示される時刻とを合成した時刻として求めて該第2データに対応付ける機能と、
    該第2データに対応付けられた時刻での前記第1データの値を、前記第1処理部から受信した前記第1データの時系列から補間処理により推定する処理を実行する機能と、
    該第2データに対応付けられた時刻での前記第1データの値として前記補間処理により推定した値と該第2データの値とを用いて、前記外界センサにより検出された物体の前記移動体に対する相対的な配置状態を示す第3データを生成する機能とををさらに有するように構成されていることを特徴とする制御処理装置。
  2. 請求項1記載の制御処理装置において、
    前記第2処理部は、前記第2データを取得した時刻以前に前記第1処理部から受信した最新の第1カウント値により示される時刻に、該最新の第1カウント値により示される時刻から前記第2データを取得した時刻までに前記第2カウンタから出力された第2カウント値の変化量により示される時間幅を加えた時刻を前記合成した時刻として前記第2データに対応付けるように構成されていることを特徴とする制御処理装置。
  3. 請求項1又は2記載の制御処理装置において、
    前記第2処理部は、前記第1カウント値の受信毎に、前記第2カウンタから出力される前記第2カウント値を初期化するように構成されていることを特徴とする制御処理装置。
  4. 請求項1〜のいずれか1項に記載の制御処理装置において、
    前記第2処理部は、前記第1処理部から送信される前記第1カウント値を正常に受信できない異常状態が発生したとき、該異常状態の発生後に取得する前記第2データに対応付ける時刻を、前記第2カウンタから出力される第2カウント値に基づいて推定し、当該推定した時刻を前記第2データに対応付けるように構成されていることを特徴とする制御処理装置。
  5. 請求項記載の制御処理装置において、
    前記第2処理部は、前記異常状態の発生前に最後に受信した前記第1カウント値により示される時刻に、該時刻から、前記異常状態の発生後に前記第2データを取得した時刻までに前記第2カウンタから出力された前記第2カウント値の変化量により示される時間幅を加えた時刻を該第2データに対応付ける時刻として推定するように構成されていることを特徴とする制御処理装置。
JP2018017471A 2018-02-02 2018-02-02 制御処理装置 Active JP6605638B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2018017471A JP6605638B2 (ja) 2018-02-02 2018-02-02 制御処理装置
US16/245,557 US20190243656A1 (en) 2018-02-02 2019-01-11 Control processing device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2018017471A JP6605638B2 (ja) 2018-02-02 2018-02-02 制御処理装置

Publications (2)

Publication Number Publication Date
JP2019130656A JP2019130656A (ja) 2019-08-08
JP6605638B2 true JP6605638B2 (ja) 2019-11-13

Family

ID=67475592

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2018017471A Active JP6605638B2 (ja) 2018-02-02 2018-02-02 制御処理装置

Country Status (2)

Country Link
US (1) US20190243656A1 (ja)
JP (1) JP6605638B2 (ja)

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH099197A (ja) * 1995-06-21 1997-01-10 Asia Kosoku Kk 連続ステレオ画像データ記録装置
JP3725982B2 (ja) * 1998-12-03 2005-12-14 アジア航測株式会社 位置取得装置
JP3856391B2 (ja) * 2003-09-29 2006-12-13 白山工業株式会社 時刻発生装置及び方法
US7002312B2 (en) * 2003-12-30 2006-02-21 The Chamberlain Group, Inc. System and method of actuating a movable barrier operator
JP2007038326A (ja) * 2005-08-01 2007-02-15 Toyota Motor Corp ロボット制御システム
JP4513773B2 (ja) * 2006-03-13 2010-07-28 トヨタ自動車株式会社 移動体制御システム及び移動体の可動部の絶対位置算出方法
US8170165B2 (en) * 2007-12-05 2012-05-01 Agere Systems Inc. Clock calibration in sleep mode
JP5316563B2 (ja) * 2011-02-15 2013-10-16 オムロン株式会社 画像処理装置および画像処理システム
US9037891B2 (en) * 2013-02-28 2015-05-19 Hamilton Sundstrand Corporation Multi-processor synchronization using time base counters
US10014041B1 (en) * 2016-12-23 2018-07-03 Texas Instruments Incorporated Integrated circuits, methods and interface circuitry to synchronize data transfer between high and low speed clock domains
US20190196563A1 (en) * 2017-12-22 2019-06-27 Mediatek Inc. Cost-Effective Clock Structure For Digital Systems And Methods Thereof

Also Published As

Publication number Publication date
JP2019130656A (ja) 2019-08-08
US20190243656A1 (en) 2019-08-08

Similar Documents

Publication Publication Date Title
US10679360B2 (en) Mixed motion capture system and method
US7233872B2 (en) Difference correcting method for posture determining instrument and motion measuring instrument
US10415975B2 (en) Motion tracking with reduced on-body sensors set
US9572520B2 (en) Movement assistance device, and synchrony based control method for movement assistance device
CA3023844C (en) Dead-reckoning drift compensation using personal gait
WO2014114967A1 (en) Self-calibrating motion capture system
JP6622765B2 (ja) ロボットシステム
US9021712B2 (en) Autonomous system and method for determining information representative of the movement of an articulated chain
JP2014185996A (ja) 計測装置
JP2019119027A (ja) ロボットシステムの制御方法、およびロボットシステム
EP1607195A1 (en) Robot device and method of controlling the same
JP6605638B2 (ja) 制御処理装置
JP2016206081A (ja) 動作推測装置および動作推測方法
JP2013111407A (ja) 軌跡演算装置および軌跡演算方法
CN108209931B (zh) 关节夹角的测量系统及方法
JP7280860B2 (ja) 情報処理装置、システム、情報処理方法および情報処理プログラム
JP2013075042A (ja) 脚部関節角度測定装置、歩行補助装置及び脚部関節角度測定方法
US20230011082A1 (en) Combine Orientation Tracking Techniques of Different Data Rates to Generate Inputs to a Computing System
JP2015210109A (ja) 測定装置、測定方法及び測定プログラム
CN114668389A (zh) 一种基于旋转矩阵的外骨骼设备穿戴误差校正方法和装置
Karunarathne et al. A machine-driven process for human limb length estimation using inertial sensors
JP2017146115A (ja) 演算装置、演算方法及び演算プログラム
JP2016202381A (ja) 歩行測定装置、歩行測定方法及び歩行測定方法をコンピュータに実行させるためのプログラム
Ding et al. The online estimation of the joint angle based on the gravity acceleration using the accelerometer and gyroscope in the wireless networks
JP2011064483A (ja) 関節角度計測装置

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20180927

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20190716

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20190912

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: 20191001

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20191016

R150 Certificate of patent or registration of utility model

Ref document number: 6605638

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150