JP7181800B2 - moving body - Google Patents

moving body Download PDF

Info

Publication number
JP7181800B2
JP7181800B2 JP2019011111A JP2019011111A JP7181800B2 JP 7181800 B2 JP7181800 B2 JP 7181800B2 JP 2019011111 A JP2019011111 A JP 2019011111A JP 2019011111 A JP2019011111 A JP 2019011111A JP 7181800 B2 JP7181800 B2 JP 7181800B2
Authority
JP
Japan
Prior art keywords
marker
orientation
markers
graph structure
node
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
JP2019011111A
Other languages
Japanese (ja)
Other versions
JP2020118586A (en
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.)
Toyota Industries Corp
Toyota Central R&D Labs Inc
Original Assignee
Toyota Industries Corp
Toyota Central R&D Labs Inc
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 Toyota Industries Corp, Toyota Central R&D Labs Inc filed Critical Toyota Industries Corp
Priority to JP2019011111A priority Critical patent/JP7181800B2/en
Publication of JP2020118586A publication Critical patent/JP2020118586A/en
Application granted granted Critical
Publication of JP7181800B2 publication Critical patent/JP7181800B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Length Measuring Devices By Optical Means (AREA)
  • Forklifts And Lifting Vehicles (AREA)
  • Control Of Position, Course, Altitude, Or Attitude Of Moving Bodies (AREA)
  • Image Analysis (AREA)

Description

本明細書に開示する技術は、対象物の位置および姿勢を認識する移動体に関する。 The technology disclosed in this specification relates to a moving object that recognizes the position and orientation of an object.

特許文献1には、マーカをパレットや荷台などの荷役対象物に貼り付け、カメラで撮像したマーカ画像に対してパターンマッチング処理を行うことで、マーカの位置や大きさを算出する技術が開示されている。これにより、フォークリフトに対する荷役対象物の相対的な位置や姿勢を検出している。 Patent Literature 1 discloses a technique for calculating the position and size of a marker by attaching a marker to a cargo handling object such as a pallet or a loading platform and performing pattern matching processing on the marker image captured by a camera. ing. This detects the relative position and orientation of the object to be handled with respect to the forklift.

特許第3921968号公報Japanese Patent No. 3921968

特許文献1の技術は、荷役対象物の奥行方向の3次元的な姿勢は算出できない。奥行方向の3次元的な姿勢の一例としては、荷役対象物のヨー方向(上下を軸とした回転方向)やピッチ方向(左右を軸とした回転方向)の回転姿勢が挙げられる。本明細書は、荷役対象物の三次元的な位置姿勢を高精度に推定することが可能な技術を開示する。 The technique of Patent Literature 1 cannot calculate the three-dimensional posture of the cargo handling object in the depth direction. An example of the three-dimensional posture in the depth direction is the rotational posture of the cargo handling object in the yaw direction (rotational direction about the vertical axis) and the pitch direction (rotational direction about the horizontal axis). This specification discloses a technique capable of estimating the three-dimensional position and orientation of an object to be handled with high accuracy.

本明細書に開示する移動体の一実施形態は、複数のマーカが予め定められた第1所定距離だけ離して配置されているマーカ群を備えた対象物の位置および姿勢を認識する移動体である。移動体は、マーカ群を撮像するための光学センサを備える。移動体は、移動体が移動した1つまたは複数の移動点の各々で光学センサを用いて対象物を撮像した画像に基づいて、1つまたは複数の移動点の各々においてマーカ群の位置および姿勢を推定するマーカ群位置姿勢推定部を備える。移動体は、複数のセンサノードと、マーカノードと、複数のセンサノードとマーカノードとの相対的位置関係を規定する複数のアークと、を備えるグラフ構造データを生成するグラフ構造データ生成部を備える。移動体は、生成したグラフ構造データを、複数のアークから算出される誤差関数の和が最小となるように最適化することで、マーカ群の位置および姿勢の推定値を補正する補正部を備える。複数のセンサノードは、1つまたは複数の移動点のそれぞれにおける光学センサの位置および姿勢を示すノードである。マーカノードは、マーカ群位置姿勢推定部で推定されたマーカ群の位置および姿勢を示すノードである。 One embodiment of the moving body disclosed in this specification is a moving body that recognizes the position and orientation of an object that includes a marker group in which a plurality of markers are arranged at a predetermined first predetermined distance. be. The moving body has an optical sensor for capturing an image of the marker group. The moving object detects the positions and orientations of the marker group at each of the one or more moving points based on the image of the object captured by the optical sensor at each of the one or more moving points. and a marker group position/orientation estimating unit for estimating . The moving body includes a graph structure data generator that generates graph structure data including a plurality of sensor nodes, a marker node, and a plurality of arcs that define relative positional relationships between the plurality of sensor nodes and the marker nodes. . The moving body includes a correction unit that corrects the estimated values of the position and orientation of the marker group by optimizing the generated graph structure data so that the sum of error functions calculated from a plurality of arcs is minimized. . A plurality of sensor nodes are nodes indicating the position and orientation of the optical sensor at each of one or more movement points. The marker node is a node indicating the position and orientation of the marker group estimated by the marker group position/orientation estimator.

上記の移動体では、1つまたは複数の移動点のそれぞれにおける光学センサの位置および姿勢を示す複数のセンサノードと、マーカ群位置姿勢推定部で推定されたマーカ群の位置および姿勢を示すマーカノードと、複数のセンサノードとマーカノードとの相対的位置関係を規定する複数のアークと、を備えたグラフ構造データを生成することができる。そしてグラフ構造データを最適化することで、マーカ群の位置および姿勢の推定値を補正することができる。1つまたは複数の移動点の各々において推定した、マーカ群の位置および姿勢の複数の推定結果を用いて、全体最適化することができる。よって、ある1つの移動点で推定したマーカ群の位置および姿勢の推定結果を用いる場合と比して、マーカ群の位置および姿勢をより正確に推定することが可能となる。 In the moving object described above, a plurality of sensor nodes indicating the position and orientation of the optical sensor at each of one or more movement points, and a marker node indicating the position and orientation of the marker group estimated by the marker group position and orientation estimator. and a plurality of arcs defining relative positional relationships between the plurality of sensor nodes and the marker nodes. By optimizing the graph structure data, the estimated values of the positions and orientations of the marker group can be corrected. Global optimization can be performed using multiple estimation results of the position and orientation of the marker group estimated at each of one or more movement points. Therefore, it is possible to more accurately estimate the position and orientation of the marker group compared to the case of using the estimation result of the position and orientation of the marker group estimated at one movement point.

移動体が時刻tの移動点から時刻ti+1の移動点まで移動した場合に、時刻ti+1の移動点における移動体の位置および姿勢を算出する移動体位置姿勢算出部をさらに備えてもよい。マーカ群位置姿勢推定部は、時刻ti+1の移動点においてマーカ群の位置および姿勢を推定してもよい。グラフ構造データ生成部は、時刻ti+1の移動点におけるセンサノードおよびマーカノードと、時刻ti+1の移動点におけるセンサノードとマーカノードとの相対的位置関係を規定するアークと、を生成して、グラフ構造データに追加してもよい。効果の詳細は実施例で説明する。 A moving body position/orientation calculation unit may be further provided for calculating the position and orientation of the moving body at the moving point at time t i+1 when the moving body moves from the moving point at time t i to the moving point at time t i+1. . The marker group position/orientation estimation unit may estimate the position and orientation of the marker group at the movement point at time t i+1 . The graph structure data generation unit generates a sensor node and a marker node at the movement point at time t i+1 and an arc that defines the relative positional relationship between the sensor node and the marker node at the movement point at time t i+1 , It may be added to the graph structure data. Details of the effect will be described in Examples.

移動体は、対象物を保持可能な支持構造部を備えていてもよい。移動体は、補正部によって補正されたマーカ群の位置および姿勢に基づいて、支持構造部をアクセスするアクセス位置を推定するアクセス位置推定部をさらに備えていてもい。効果の詳細は実施例で説明する。 The mobile body may comprise a support structure capable of holding the object. The moving body may further include an access position estimation unit that estimates an access position for accessing the support structure based on the positions and orientations of the marker group corrected by the correction unit. Details of the effect will be described in Examples.

移動体は、補正部によって補正されたマーカ群の位置および姿勢に基づいて、移動体の現在位置から対象物までの軌道および速度パターンを生成する軌道生成部をさらに備えていてもよい。移動体は、生成した軌道および速度パターンに基づいて移動体を対象物まで移動させる移動制御部をさらに備えていてもよい。移動体は、アクセス位置推定部で推定したアクセス位置に基づいて、支持構造部をアクセス位置にアクセスさせるアクセス制御部をさらに備えていてもよい。効果の詳細は実施例で説明する。 The moving object may further include a trajectory generating unit that generates a trajectory and speed pattern from the current position of the moving object to the target based on the positions and orientations of the marker group corrected by the correcting unit. The moving body may further include a movement control section that moves the moving body to the object based on the generated trajectory and speed pattern. The mobile body may further comprise an access controller for causing the support structure to access the access position based on the access position estimated by the access position estimator. Details of the effect will be described in Examples.

支持構造部はフォークであってもよい。対象物はパレットであってもよい。光学センサは、フォークの動作と一体化して動作してもよい。効果の詳細は実施例で説明する。 The support structure may be a fork. The object may be a pallet. The optical sensor may operate integrally with the movement of the forks. Details of the effect will be described in Examples.

マーカ群は、水平方向に第1所定距離だけ離れた2つ以上のマーカを備えていてもよい。効果の詳細は実施例で説明する。 The group of markers may comprise two or more markers horizontally separated by a first predetermined distance. Details of the effect will be described in Examples.

マーカ群は、水平方向に第1所定距離だけ離れた2つ以上のマーカよりも上方または下方側に、さらに1つ以上のマーカを備えていてもよい。効果の詳細は実施例で説明する。 The marker group may further include one or more markers above or below the two or more markers horizontally separated by the first predetermined distance. Details of the effect will be described in Examples.

マーカ群位置姿勢推定部は、光学センサで撮像された画像内にマーカ群が複数存在する場合に、複数のマーカ群の各々の位置および姿勢を推定してもよい。グラフ構造データ生成部は、複数のマーカ群の各々の位置および姿勢を示す複数のマーカノードを生成してもよい。効果の詳細は実施例で説明する。 The marker group position/orientation estimating unit may estimate the position and orientation of each of the plurality of marker groups when there are a plurality of marker groups in the image captured by the optical sensor. The graph structure data generation unit may generate a plurality of marker nodes indicating respective positions and orientations of a plurality of marker groups. Details of the effect will be described in Examples.

フォークリフト1の概略斜視図である。1 is a schematic perspective view of a forklift 1; FIG. フォークリフト1のブロック図である。1 is a block diagram of a forklift 1; FIG. パレット50の一例を示す図である。4 is a diagram showing an example of a palette 50; FIG. 実施例1における車体およびパレットの位置関係を示す図である。4 is a diagram showing the positional relationship between the vehicle body and the pallet in Embodiment 1. FIG. 図4の位置関係から生成されたグラフ構造データを示す図である。5 is a diagram showing graph structure data generated from the positional relationship of FIG. 4; FIG. 位置姿勢推定処理の内容を示すフローチャートである。9 is a flowchart showing the contents of position/orientation estimation processing; 荷役処理の内容を示すフローチャートである。It is a flowchart which shows the content of cargo-handling processing. マーカノードの位置及び姿勢を補正できる理由を説明する図である。FIG. 10 is a diagram for explaining the reason why the position and orientation of a marker node can be corrected; マーカの位置および姿勢の推定結果の一例を示す図である。FIG. 10 is a diagram showing an example of results of estimating the position and orientation of a marker; 実施例2における車体およびパレットの位置関係を示す図である。FIG. 10 is a diagram showing the positional relationship between a vehicle body and a pallet in Embodiment 2; 図10の位置関係から生成されたグラフ構造データを示す図である。FIG. 11 is a diagram showing graph structure data generated from the positional relationship of FIG. 10; 実施例3における車体、パレットおよび柱の位置関係を示す図である。FIG. 10 is a diagram showing the positional relationship among the vehicle body, pallet, and pillars in Example 3; 図12の位置関係から生成されたグラフ構造データを示す図である。FIG. 13 is a diagram showing graph structure data generated from the positional relationship of FIG. 12;

(フォークリフト1の構成)
以下、図1および図2を参照して、本実施例のフォークリフト1について説明する。図1はフォークリフト1の概略斜視図であり、図2はブロック図である。フォークリフト1は、無人フォークリフトである。図1に示すように、フォークリフト1は、車体2、制御部10(図2に図示)、マスト20、フォーク22、バックレスト23、カメラ固定部24、カメラ30、を備えている。
(Configuration of forklift 1)
A forklift 1 of this embodiment will be described below with reference to FIGS. 1 and 2. FIG. FIG. 1 is a schematic perspective view of a forklift 1, and FIG. 2 is a block diagram. A forklift 1 is an unmanned forklift. As shown in FIG. 1, the forklift 1 includes a vehicle body 2, a control section 10 (shown in FIG. 2), a mast 20, a fork 22, a backrest 23, a camera fixing section 24, and a camera 30.

車体2は、その両側面のそれぞれに前輪28及び後輪29を備えている。前輪28は、駆動機構を介して駆動輪モータ(不図示)が接続されており、移動制御部17(図2に図示)によって回転駆動されるようになっている。後輪29は、操舵装置(不図示)に接続されており、移動制御部17によって車輪の向きが調整される。移動制御部17が駆動輪モータ及び操舵装置を制御することで、車体2は路面を走行すると共に、車体2の進行方向を変えることができる。 The vehicle body 2 has front wheels 28 and rear wheels 29 on both side surfaces thereof. A drive wheel motor (not shown) is connected to the front wheel 28 via a drive mechanism, and is rotationally driven by the movement control unit 17 (shown in FIG. 2). The rear wheels 29 are connected to a steering device (not shown), and the direction of the wheels is adjusted by the movement control section 17 . The movement control unit 17 controls the driving wheel motors and the steering device, so that the vehicle body 2 can travel on the road surface and change the traveling direction of the vehicle body 2 .

マスト20は、車体2の前面に取付けられている支柱であり、その軸線は上下方向に伸びている。フォーク22は、マスト20に上下方向に移動可能に取付けられている。フォーク22は、一対のツメ22a、22bを有している。ツメ22a、22bは、車体2の左右方向に互いに離間した位置に配置されており、マスト20側から車体2の前方に向かって伸びている。フォーク22は、荷役装置制御部18(図2に図示)により昇降される。フォーク22の上下方向の位置は、荷役装置制御部18の駆動量によって特定可能となっている。 The mast 20 is a post attached to the front surface of the vehicle body 2, and its axis extends in the vertical direction. The fork 22 is attached to the mast 20 so as to be vertically movable. The fork 22 has a pair of claws 22a and 22b. The claws 22a and 22b are arranged at positions separated from each other in the lateral direction of the vehicle body 2 and extend forward of the vehicle body 2 from the mast 20 side. The fork 22 is raised and lowered by the cargo handling device control section 18 (illustrated in FIG. 2). The vertical position of the fork 22 can be identified by the amount of drive of the cargo handling device control section 18 .

バックレスト23は、フォーク22の上に載せた荷物がマスト20の後方に落下するのを防ぐ部材である。カメラ固定部24は、バックレスト23と一体化するようにカメラ30を固定する部材である。これにより、フォーク22がマスト20によって上下するときや、不図示のチルト機構によって前後に傾くときに、カメラ30も一体となって動く。よって、フォーク22を基準としたマーカ画像を取得することができる。 The backrest 23 is a member that prevents the load placed on the fork 22 from falling behind the mast 20. - 特許庁The camera fixing portion 24 is a member that fixes the camera 30 so as to be integrated with the backrest 23 . Accordingly, when the fork 22 is moved up and down by the mast 20 or tilted back and forth by a tilt mechanism (not shown), the camera 30 also moves together. Therefore, a marker image with the fork 22 as a reference can be acquired.

図2のブロック図を説明する。フォークリフト1は、制御部10、グラフ構造記憶部19、フォーク22、前輪28、後輪29、カメラ30、エンコーダ40、を備える。制御部10は、フォークリフト1を制御する装置である。制御部10は、例えば、CPU、ROM、RAM等を備えたコンピュータによって構成することができる。コンピュータがプログラムを実行することで、制御部10は、図2に示すマーカ群位置姿勢推定部11~荷役装置制御部18等として機能する。制御部10は、位置姿勢推定モジュールMOD1と、車両制御モジュールMOD2とを備える。位置姿勢推定モジュールMOD1は、後述する位置姿勢推定処理(図6)を実行する。車両制御モジュールMOD2は、後述する荷役処理(図7)を実行する。位置姿勢推定モジュールMOD1と車両制御モジュールMOD2とは、互いに独立しており並列に動作可能である。位置姿勢推定モジュールMOD1は、マーカ群位置姿勢推定部11、グラフ構造データ生成部13、グラフ最適化部14、アクセス位置推定部15を備えている。車両制御モジュールMOD2は、車体位置姿勢算出部12、軌道生成部16、移動制御部17、荷役装置制御部18を備えている。マーカ群位置姿勢推定部11~荷役装置制御部18の各々の動作内容の詳細は、後述する。グラフ構造記憶部19は、後述するグラフ構造データを記憶する部位である。エンコーダ40は、車輪の回転角を検出するセンサを備えた部位である。その他の部位については、図1で説明済みである。 The block diagram of FIG. 2 will be described. The forklift 1 includes a control unit 10 , a graph structure storage unit 19 , a fork 22 , a front wheel 28 , a rear wheel 29 , a camera 30 and an encoder 40 . The control unit 10 is a device that controls the forklift 1 . The control unit 10 can be configured by, for example, a computer including a CPU, ROM, RAM, and the like. By the computer executing the program, the control unit 10 functions as the marker group position/orientation estimation unit 11 to the cargo handling device control unit 18 shown in FIG. The control unit 10 includes a position/orientation estimation module MOD1 and a vehicle control module MOD2. The position/orientation estimation module MOD1 executes position/orientation estimation processing (FIG. 6), which will be described later. The vehicle control module MOD2 executes cargo handling processing (FIG. 7), which will be described later. The position and orientation estimation module MOD1 and the vehicle control module MOD2 are independent of each other and can operate in parallel. The position/posture estimation module MOD1 includes a marker group position/posture estimation unit 11, a graph structure data generation unit 13, a graph optimization unit 14, and an access position estimation unit 15. FIG. The vehicle control module MOD2 includes a vehicle body position/orientation calculator 12, a trajectory generator 16, a movement controller 17, and a cargo handling device controller . Details of the operations of each of the marker group position/orientation estimation unit 11 to the cargo handling device control unit 18 will be described later. The graph structure storage unit 19 is a part that stores graph structure data, which will be described later. The encoder 40 is a part provided with a sensor that detects the rotation angle of the wheel. Other parts have already been described with reference to FIG.

(パレットの構成)
図3に、本実施形態に係るパレット50の一例を示す。パレット50は、カゴパレットである。パレット50の正面下部には、フォーク22を挿入するための空間SPが配置されている。空間SP内には、パレット基準座標PCが予め設定されている。y方向(左右方向)におけるパレット基準座標PCの原点位置は、パレット50の正面中央である。z方向(上下方向)におけるパレット基準座標PCの原点位置は、フォーク22を差す高さである。パレット基準座標PCの原点位置は、設計者によって決定された位置であり、空間上の仮想的な位置である。
(Pallet composition)
FIG. 3 shows an example of the pallet 50 according to this embodiment. Pallet 50 is a basket pallet. A space SP for inserting the fork 22 is arranged in the front lower portion of the pallet 50 . Pallet reference coordinates PC are set in advance in the space SP. The origin position of the pallet reference coordinate PC in the y direction (horizontal direction) is the front center of the pallet 50 . The origin position of the pallet reference coordinate PC in the z direction (vertical direction) is the height at which the fork 22 is inserted. The origin position of the pallet reference coordinates PC is a position determined by the designer and is a virtual position in space.

パレット50の正面には、2つのマーカM1およびM2を備えたマーカ群MGが配置されている。本実施形態では、マーカM1およびM2は、AR(Augmented Reality)マーカである。すなわちマーカM1およびM2は、拡張現実システムにおいて、付加情報を表示する位置を指定するための標識となるマーカである。図3において、マーカ基準座標MC1およびMC2は、マーカM1およびM2の各々の位置および姿勢(向き)を示している。マーカM1およびM2は、予め定められた第1所定距離D1だけ互いに離れて、水平方向に配置されている。またマーカM1およびM2は、同一面内に配置されている。これにより、パレット基準座標PCの原点とマーカ基準座標MC1およびMC2の原点との相対位置が一意に決まる。具体的には、最初にマーカM1およびM2の配置位置や第1所定距離D1を決定する。そして、荷取り位置との距離を測定する、または、設計情報から距離を算出することで、マーカM1およびM2とパレット基準座標PCの原点との相対位置をデータファイルに登録する。よって、マーカM1およびM2の位置と、パレット基準座標PCとの関係を既定(拘束)することができる。換言すれば、マーカM1およびM2は、パレット基準座標PCとの位置関係が既定できる場所に設置しなければならない。 A marker group MG comprising two markers M1 and M2 is arranged in front of the pallet 50 . In this embodiment, the markers M1 and M2 are AR (Augmented Reality) markers. That is, the markers M1 and M2 are markers that serve as indicators for designating positions where additional information is displayed in the augmented reality system. In FIG. 3, marker reference coordinates MC1 and MC2 indicate the positions and orientations (orientations) of markers M1 and M2, respectively. The markers M1 and M2 are horizontally arranged apart from each other by a predetermined first predetermined distance D1. Markers M1 and M2 are arranged in the same plane. As a result, the relative positions of the origin of the pallet reference coordinates PC and the origins of the marker reference coordinates MC1 and MC2 are uniquely determined. Specifically, first, the placement positions of the markers M1 and M2 and the first predetermined distance D1 are determined. Then, the relative positions of the markers M1 and M2 and the origin of the pallet reference coordinates PC are registered in the data file by measuring the distance from the pick-up position or calculating the distance from the design information. Therefore, the relationship between the positions of the markers M1 and M2 and the pallet reference coordinates PC can be defined (constrained). In other words, the markers M1 and M2 must be placed at locations where the positional relationship with the pallet reference coordinates PC can be determined.

(パレットの自動荷役)
図4~図9を用いて、パレットの自動荷役の具体的な処理について説明する。本説明例では図4に示すように、時刻tにおける位置P1から時刻ti+1における位置P2へ、軌道TR1を通って車体2が走行する場合の処理内容を説明する。図4において、車体基準座標VC1およびVC2は、時刻tおよびti+1の各々における車体2の位置および姿勢(向き)を示している。車体基準座標VC1およびVC2の原点は、車体2の原点を示している。カメラ基準座標CC1およびCC2は、時刻tおよびti+1の各々におけるカメラ30の位置および姿勢(向き)を示している。
(Automatic loading and unloading of pallets)
Specific processing of automatic handling of pallets will be described with reference to FIGS. 4 to 9. FIG. In this explanation example, as shown in FIG. 4, the contents of processing when the vehicle body 2 travels along the track TR1 from the position P1 at the time t i to the position P2 at the time t i+1 will be explained. In FIG. 4, vehicle body reference coordinates VC1 and VC2 indicate the position and attitude (orientation) of vehicle body 2 at times t i and t i+1 , respectively. The origin of the vehicle body reference coordinates VC1 and VC2 indicates the origin of the vehicle body 2 . Camera reference coordinates CC1 and CC2 indicate the position and orientation (orientation) of camera 30 at times t i and t i+1 , respectively.

(位置姿勢推定処理の内容)
図6の位置姿勢推定処理は、新たな荷役処理の開始でスタートする。具体的には、後述する荷役処理のS210で荷役処理を開始することが判断されることによってスタートする。S10において、画像データ受信処理が行われる。本説明例では、図4の時刻tにおける位置P1において、カメラ30がパレット50を撮像する。そして制御部10は、カメラ30から画像データを受信する。
(Details of position and orientation estimation processing)
The position/orientation estimation process in FIG. 6 starts when a new cargo handling process starts. Specifically, it is started when it is determined in S210 of the cargo handling process to be described later that the cargo handling process is to be started. In S10, image data reception processing is performed. In this illustrative example, the camera 30 captures an image of the pallet 50 at the position P1 at time t i in FIG. The control unit 10 then receives image data from the camera 30 .

S20において、マーカ群位置姿勢推定部11は、受信した画像データに基づいてマーカM1およびM2の位置および姿勢を推定する。この推定処理は、公開されているソフトライブラリを用いることができるため、説明を省略する。図9に、マーカの位置および姿勢の推定結果の一例を示す。カメラ30による計測結果に基づく推定結果では、マーカの位置および姿勢には誤差が含まれる。例えば図9の推定結果では、マーカ基準座標MC1およびMC2が示すマーカM1およびM2の姿勢は、誤差を含むため、パレット50の正面に対して垂直になっていない状態である。すなわち図9の推定結果では、マーカM1およびM2のヨー角姿勢を正確に推定できていない。 In S20, the marker group position/orientation estimation unit 11 estimates the positions and orientations of the markers M1 and M2 based on the received image data. Since this estimation process can use a software library that is open to the public, the description is omitted. FIG. 9 shows an example of estimation results of the positions and orientations of the markers. The estimation result based on the measurement result by the camera 30 includes an error in the position and orientation of the marker. For example, in the estimation result of FIG. 9, the orientations of the markers M1 and M2 indicated by the marker reference coordinates MC1 and MC2 contain an error and are not perpendicular to the front of the pallet 50. In FIG. That is, in the estimation results of FIG. 9, the yaw angle attitudes of the markers M1 and M2 cannot be accurately estimated.

S30において、車体位置姿勢算出部12は、車体2の位置および姿勢を算出する。具体的には、エンコーダ40によって検出された前輪28の回転角に基づいて、車体2の移動方向及び移動量を求める。 In S<b>30 , the vehicle body position/orientation calculation unit 12 calculates the position and orientation of the vehicle body 2 . Specifically, based on the rotation angle of the front wheels 28 detected by the encoder 40, the movement direction and movement amount of the vehicle body 2 are obtained.

S35において、グラフ最適化部14は、グラフ最適化処理を実行するか否かを判断する。この判断は、例えば、グラフ最適化処理を前回実行した時点から車体2が0.5m以上進んだか否かによって行われてもよい。これにより、グラフ構造が必要以上に長大ならないように抑制することができる。否定判断される場合(S35:NO)にはS10へ戻り、肯定判断される場合(S35:YES)にはS40へ進む。 In S35, the graph optimization unit 14 determines whether or not to execute graph optimization processing. This determination may be made, for example, based on whether or not the vehicle body 2 has advanced by 0.5 m or more from the time when the graph optimization process was last executed. As a result, it is possible to prevent the graph structure from becoming unnecessarily long. If the determination is negative (S35: NO), the process returns to S10, and if the determination is positive (S35: YES), the process proceeds to S40.

S40~S70において、グラフ構造データ生成処理が行われる。グラフ構造データは、制御部10にて中間情報として生成されるデータである。グラフ構造データは、マーカM1およびM2の位置および姿勢の推定の誤差を抑制するために用いられるデータである。 In S40 to S70, graph structure data generation processing is performed. The graph structure data is data generated as intermediate information by the control unit 10 . The graph structure data is data used to suppress errors in estimating the positions and orientations of markers M1 and M2.

図5に示すグラフ構造データについて説明する。グラフ構造データは、車体ノードVN1およびVN2、センサノードSN1およびSN2、マーカノードMN1およびMN2を備える。車体ノードVN1およびVN2は、時刻tおよびti+1の移動点の各々における車体2の位置および姿勢を示す情報である。センサノードSN1およびSN2は、時刻tおよびti+1の移動点の各々におけるカメラ30の位置および姿勢を示す情報である。マーカノードMN1およびMN2は、時刻tおよびti+1の移動点の各々において推定されたマーカM1およびM2の位置および姿勢を示す情報である。図5では説明の便宜上、マーカノードMN1およびMN2を円で示している。しかし実際は、図9で説明したように、マーカノードMN1およびMN2は、ヨー角姿勢などの姿勢情報も有している。 The graph structure data shown in FIG. 5 will be described. The graph structure data comprises vehicle body nodes VN1 and VN2, sensor nodes SN1 and SN2, and marker nodes MN1 and MN2. The vehicle body nodes VN1 and VN2 are information indicating the position and orientation of the vehicle body 2 at each of the movement points at times t i and t i+1 . Sensor nodes SN1 and SN2 are information indicating the position and orientation of camera 30 at each of the movement points at times t i and t i+1 . The marker nodes MN1 and MN2 are information indicating the positions and orientations of the markers M1 and M2 estimated at each of the movement points at times t i and t i+1 . In FIG. 5, the marker nodes MN1 and MN2 are indicated by circles for convenience of explanation. In practice, however, the marker nodes MN1 and MN2 also have pose information such as yaw angle pose, as described in FIG.

またグラフ構造データは、アークAC1およびAC2、アークAVC1およびAVC2、アークAVN12、アークAM、を備える。アークは、相対位置の制約条件である。アークAC1は、センサノードSN1とマーカノードMN1との相対的位置関係、および、センサノードSN1とマーカノードMN2との相対的位置関係を規定する情報である。同様に、アークAC2は、センサノードSN2とマーカノードMN1との相対的位置関係、および、センサノードSN2とマーカノードMN2との相対的位置関係を規定する情報である。アークAVC1およびAVC2は、車体ノードとセンサノードとの間の相対的位置関係を規定する情報である。アークAVN12は、車体ノードVN1とVN2との相対的位置関係を規定する情報である。アークAMは、マーカM1とM2との間の相対的位置関係を規定する情報である。 The graph structure data also comprises arcs AC1 and AC2, arcs AVC1 and AVC2, arc AVN12, and arc AM. Arcs are relative position constraints. Arc AC1 is information defining the relative positional relationship between sensor node SN1 and marker node MN1 and the relative positional relationship between sensor node SN1 and marker node MN2. Similarly, arc AC2 is information defining the relative positional relationship between sensor node SN2 and marker node MN1 and the relative positional relationship between sensor node SN2 and marker node MN2. Arcs AVC1 and AVC2 are information defining the relative positional relationship between the vehicle node and the sensor node. Arc AVN12 is information that defines the relative positional relationship between vehicle nodes VN1 and VN2. Arc AM is information that defines the relative positional relationship between markers M1 and M2.

各アークは、「ノード間の相対位置・姿勢の初期値」と「確からしさ」に関する事前知識を保持している。「確からしさ」は、情報行列で表すことができる。情報行列は、ノード間の相対位置および姿勢の誤差についての分散共分散行例の逆行列である。アークAVC1およびAVC2によって規定される車体ノードとセンサノードとの間の相対位置および姿勢は、フォークリフト1の設計事項であるため、既知である。同様に、アークAMによって規定されるマーカM1とM2との間の相対位置および姿勢は、図3で説明したように既知である。アークAVCおよびアークAMは既知であるため、グラフ構造記憶部19に予め保存しておき、グラフ構造生成時に読み出して利用することができる。 Each arc has prior knowledge about "initial values of relative positions and orientations between nodes" and "probability". "Probability" can be represented by an information matrix. The information matrix is the inverse of the variance-covariance matrix for the relative position and pose errors between nodes. The relative positions and attitudes between the vehicle node and the sensor node defined by the arcs AVC1 and AVC2 are a matter of design of the forklift 1 and are known. Similarly, the relative position and orientation between markers M1 and M2 defined by arc AM are known as described in FIG. Since the arcs AVC and AM are known, they can be stored in advance in the graph structure storage unit 19 and read out for use when generating the graph structure.

グラフ構造データの生成処理の具体例を説明する。S40において、グラフ構造データ生成部13は、車体位置姿勢算出部12で得られた車体2の位置および姿勢を表す車体ノードを設定する。本説明例では、車体位置姿勢算出部12で時刻ti+1における車体基準座標VC2(図4)が求められる。そして、車体基準座標VC2に対応する車体ノードVN2(図5)が追加される。 A specific example of graph structure data generation processing will be described. In S<b>40 , the graph structure data generator 13 sets a vehicle body node representing the position and orientation of the vehicle body 2 obtained by the vehicle body position/orientation calculator 12 . In this illustrative example, the vehicle body position/orientation calculator 12 obtains the vehicle body reference coordinates VC2 (FIG. 4) at time t i +1 . Then, a vehicle node VN2 (FIG. 5) corresponding to the vehicle reference coordinate VC2 is added.

S50において、グラフ構造データ生成部13は、カメラ30の位置および姿勢を表すセンサノードを設定する。センサノードの設定は、カメラ30と、車体2の後輪29の車軸との既知の位置関係に基づいて行うことができる。本説明例では、センサノードSN2(図5)が追加される。
S60において、グラフ構造データ生成部13は、S20で推定したマーカM1およびM2の位置および姿勢を表すマーカノードMN1およびMN2(図5)を設定する。
In S<b>50 , the graph structure data generator 13 sets sensor nodes representing the position and orientation of the camera 30 . The sensor node can be set based on the known positional relationship between the camera 30 and the axle of the rear wheel 29 of the vehicle body 2 . In this illustrative example, a sensor node SN2 (FIG. 5) is added.
In S60, the graph structure data generator 13 sets marker nodes MN1 and MN2 (FIG. 5) representing the positions and orientations of the markers M1 and M2 estimated in S20.

S70において、グラフ構造データ生成部13は、センサノードとマーカノード間、車体ノードとセンサノード間、車体ノード間、マーカM1とM2との間、にアークを追加する。本説明例では、アークAC2、アークAVC2、アークAVN12およびアークAMが追加される。S80において、グラフ構造データ生成部13は、ノードやアークが追加されたグラフ構造データをグラフ構造記憶部19に記憶する。 In S70, the graph structure data generator 13 adds arcs between the sensor node and the marker node, between the vehicle node and the sensor node, between the vehicle node, and between the markers M1 and M2. In this illustrative example, arc AC2, arc AVC2, arc AVN12 and arc AM are added. In S<b>80 , the graph structure data generation unit 13 stores the graph structure data to which the nodes and arcs are added in the graph structure storage unit 19 .

S100においてグラフ最適化部14は、グラフ構造記憶部19に記憶されているグラフ構造データを最適化する。最適化には、例えば、Graph-Based SLAM(Simultaneous Localization and Mapping)を用いることができる。Graph-Based SLAMは、カメラ位置やマーカ位置をノード(頂点)、それらの間の相対位置の制約条件をアーク(辺)とするグラフに対して、各制約の誤差総和を最小化するように最適化計算を行う手法である。過去から現在までの車体2の移動に伴う全データを利用して全体最適化を行うため、過去に遡ってマーカ位置を修正できるという特徴を有する。 In S<b>100 , the graph optimization unit 14 optimizes graph structure data stored in the graph structure storage unit 19 . For optimization, for example, Graph-Based SLAM (Simultaneous Localization and Mapping) can be used. Graph-Based SLAM is optimized to minimize the total error of each constraint for a graph with camera positions and marker positions as nodes (vertices) and relative position constraints between them as arcs (edges). It is a method of performing conversion calculations. Since the overall optimization is performed using all the data associated with the movement of the vehicle body 2 from the past to the present, it has the feature that the marker positions can be corrected retroactively.

Graph-Based SLAMを具体的に説明する。各ノードの相対位置制約からの誤差の総和を評価関数として、非線形最小二乗問題を解く。この評価関数は次式となる。

Figure 0007181800000001
ここで、Cは制約条件の集合である。eij(x,x)はノードxとノードxの間の相対位置制約からの誤差ベクトル関数である。Σijはその制約の共分散行列である。制約の共分散によるマハラノビス距離の二乗和が最小となるように上式を最小化することで、各ノードの位置、姿勢関係を最適化する。これにより、マーカノードMN1およびMN2の位置および姿勢を補正することができる。 Graph-Based SLAM is explained concretely. A nonlinear least-squares problem is solved using the sum of errors from the relative position constraints of each node as the evaluation function. This evaluation function is given by the following equation.
Figure 0007181800000001
where C is a set of constraints. e ij (x i , x j ) is the error vector function from the relative position constraint between node x i and node x j . Σ ij is the constraint covariance matrix. By minimizing the above equation so that the sum of squares of the Mahalanobis distances due to the covariance of the constraints is minimized, the position and orientation relationship of each node is optimized. Thereby, the positions and orientations of the marker nodes MN1 and MN2 can be corrected.

図8を用いて、マーカノードの位置及び姿勢を補正できる理由を説明する。図8では、時刻tにおける位置P1、時刻ti+1における位置P2、時刻ti+2における位置P3の各々において、マーカM1およびM2の位置姿勢を推定(S20)した場合の例である。すなわち、多視点からの観測を行った例である。マーカを用いた位置姿勢の推定では、カメラ30からマーカを結んだ線上(奥行方向)に距離の誤差が生じる。例えば、カメラ30とマーカとの距離が4mの場合に、標準偏差20mmである。一方、横方向には誤差はほとんど生じない。すると、位置P1~P3の各々におけるマーカM1の位置姿勢の推定結果には、誤差の異方性を示す誤差楕円EE11~EE13が存在する。そこで、複数の異なる方向からの観測結果によるグラフ構造を作成し、最適化することで、誤差楕円EE11~EE13の交点IS1を解として求めることができる。また同様に、マーカM2においても誤差楕円EE21~EE23の交点IS2を解として求めることができる。よって、マーカの位置および姿勢の誤差を補正できる。そして後述するように、マーカM1およびM2の間には位置および姿勢に関する強い制約(高い確からしさ)が存在するため、奥行き方向の位置、および、マーカ基準座標MC1およびMC2のヨー角姿勢を正確に推定することが可能となる。 The reason why the position and orientation of the marker node can be corrected will be described with reference to FIG. FIG. 8 shows an example in which the positions and orientations of markers M1 and M2 are estimated (S20) at position P1 at time t i , position P2 at time t i+1 , and position P3 at time t i+2 . That is, this is an example of observation from multiple viewpoints. In estimating a position and orientation using a marker, a distance error occurs on a line connecting the camera 30 and the marker (in the depth direction). For example, the standard deviation is 20 mm when the distance between the camera 30 and the marker is 4 m. On the other hand, almost no error occurs in the horizontal direction. Then, error ellipses EE11 to EE13 indicating error anisotropy exist in the estimation results of the position and orientation of the marker M1 at each of the positions P1 to P3. Therefore, by creating a graph structure based on observation results from a plurality of different directions and optimizing it, the intersection point IS1 of the error ellipses EE11 to EE13 can be obtained as a solution. Similarly, for the marker M2, the intersection point IS2 of the error ellipses EE21 to EE23 can be obtained as a solution. Therefore, errors in the position and orientation of the marker can be corrected. As will be described later, since there is a strong constraint (high probability) regarding the position and orientation between the markers M1 and M2, the position in the depth direction and the yaw angle orientation of the marker reference coordinates MC1 and MC2 can be accurately determined. It is possible to estimate

S110において、アクセス位置推定部15は、マーカノードの補正された位置および姿勢から、フォーク22を差し込むアクセス位置を推定する。具体的には、パレット基準座標PCの原点および座標姿勢を推定する。図3で説明したように、マーカM1およびM2とパレット基準座標PCとの相対位置関係は既知であるため、パレット基準座標PCの原点および座標姿勢は容易に算出できる。そしてアクセス位置推定部15は、推定したアクセス位置を、軌道生成部16および荷役装置制御部18へ出力する。 In S110, the access position estimation unit 15 estimates the access position where the fork 22 is inserted from the corrected position and orientation of the marker node. Specifically, the origin and coordinate orientation of the pallet reference coordinates PC are estimated. As described with reference to FIG. 3, since the relative positional relationship between the markers M1 and M2 and the pallet reference coordinates PC is known, the origin and coordinate orientation of the pallet reference coordinates PC can be easily calculated. The access position estimation unit 15 then outputs the estimated access position to the trajectory generation unit 16 and the cargo handling device control unit 18 .

S120において、位置姿勢推定処理を終了するか否かが判断される。具体的には、後述する荷役処理のS280でパレット50をすくう処理が完了しているか否かによって、S120で位置姿勢推定処理を終了するか否かが判断される。否定判断される場合(S120:NO)にはS10へ戻る。そしてグラフ最適化処理を実行することが再度判断されると(S35:YES)、時刻ti+2における車体ノードVN3およびセンサノードSN3がグラフ構造データに新たに追加される。また、センサノードSN3とマーカノードMN1およびMN2との間のアークAC3、車体ノードVN3とセンサノードSN3との間のアークAVC3、車体ノードVN2とVN3との間のアークAVN23、がグラフ構造データに新たに追加される。そして、S100でグラフ構造データが再度最適化され、S110でマーカノードの位置姿勢が再度補正される。一方、肯定判断される場合(S120:YES)には、位置姿勢推定処理を終了する。 In S120, it is determined whether or not to end the position/orientation estimation process. Specifically, it is determined in S120 whether or not to end the position/orientation estimation process depending on whether or not the process of scooping up the pallet 50 in S280 of the cargo handling process described later is completed. If the determination is negative (S120: NO), the process returns to S10. When it is determined again that the graph optimization process should be executed (S35: YES), the vehicle node VN3 and the sensor node SN3 at time t i +2 are newly added to the graph structure data. Also, the arc AC3 between the sensor node SN3 and the marker nodes MN1 and MN2, the arc AVC3 between the vehicle node VN3 and the sensor node SN3, and the arc AVN23 between the vehicle nodes VN2 and VN3 are newly added to the graph structure data. added to. Then, the graph structure data is optimized again in S100, and the positions and orientations of the marker nodes are corrected again in S110. On the other hand, if the determination is affirmative (S120: YES), the position/orientation estimation process ends.

(荷役処理の内容)
図7を用いて荷役処理を説明する。S210において車両制御モジュールMOD2は、荷役処理を開始するか否かを判断する。例えば、ユーザによる荷役開始操作の入力の有無に応じて判断してもよい。否定判断される場合(S210:NO)にはS210へ戻り待機し、肯定判断される場合(S210:YES)にはS220へ進む。
(Details of cargo handling)
The cargo handling process will be described with reference to FIG. In S210, the vehicle control module MOD2 determines whether or not to start the cargo handling process. For example, the determination may be made depending on whether or not the user has input a cargo handling start operation. If the determination is negative (S210: NO), the process returns to S210 and waits, and if the determination is positive (S210: YES), the process proceeds to S220.

S220において軌道生成部16は、目標位置を取得する。目標位置の取得は、前述した位置姿勢推定処理(図6)のS110でフォーク22のアクセス位置の1回目の推定が行われたことに応じて、実行することができる。目標位置は、フォーク22のアクセス位置より30cmほど手前に設定してもよい。S230において、軌道生成部16は、S110で算出されたパレット基準座標PCの原点および座標姿勢に基づいて、車体2の現在位置から対象物までの軌道および速度パターンを生成する。S240において移動制御部17は、生成した軌道および速度パターンに基づいて、目標位置に向けて車体2を移動させる。 In S220, the trajectory generator 16 acquires the target position. Acquisition of the target position can be executed in response to the first estimation of the access position of the fork 22 in S110 of the above-described position/orientation estimation processing (FIG. 6). The target position may be set about 30 cm in front of the fork 22 access position. At S230, the trajectory generator 16 generates a trajectory and a speed pattern from the current position of the vehicle body 2 to the object based on the origin and coordinate orientation of the pallet reference coordinates PC calculated at S110. In S240, the movement control unit 17 moves the vehicle body 2 toward the target position based on the generated trajectory and speed pattern.

S250において移動制御部17は、目標位置に到達したか否かを判断する。否定判断される場合(S250:NO)にはS240へ戻りさらに車体2を移動させ、肯定判断される場合(S250:YES)にはS260へ進む。ここで、荷役処理(図7)と並列動作している位置姿勢推定処理(図6)では、車体2が移動することに従って、グラフ構造の追加(S40~S70)、グラフ構造の最適化(S100)およびアクセス位置の推定(S110)が繰り返し実行される。すなわち、車体2の移動中に、フォーク22から見た目標位置が更新される。そして、随時更新された目標位置に向かって車体2を移動させることができる。よって、パレット50への近接動作を正確に行うことが可能となる。 In S250, the movement control unit 17 determines whether or not the target position has been reached. If the determination is negative (S250: NO), the process returns to S240 to further move the vehicle body 2, and if the determination is positive (S250: YES), the process proceeds to S260. Here, in the position/orientation estimation processing (FIG. 6) that operates in parallel with the cargo handling processing (FIG. 7), the graph structure is added (S40 to S70) and the graph structure is optimized (S100) as the vehicle body 2 moves. ) and access position estimation (S110) are repeatedly executed. That is, the visual reference position is updated from the fork 22 while the vehicle body 2 is moving. Then, the vehicle body 2 can be moved toward the target position updated as needed. Therefore, it becomes possible to accurately perform the approaching operation to the pallet 50 .

S260において荷役装置制御部18は、不図示の荷役アクチュエータを介してフォーク22の位置を調整する。具体的には、リフト機構でフォーク22の高さを調整し、サイドシフト機構でフォーク22の横位置を調整する。S270において荷役装置制御部18は、算出されたパレット基準座標PCの原点および座標姿勢に基づいて、フォーク22をアクセス位置に差し込む。具体的には、パレット50の奥行を考慮して、車体2を直進させる。S280において、荷役装置制御部18は、パレット50をすくう。具体的には、チルト機構によってフォーク22を傾けるとともにマスト20によってフォーク22を上昇させる。 In S260, the cargo handling device control unit 18 adjusts the position of the fork 22 via a cargo handling actuator (not shown). Specifically, the lift mechanism adjusts the height of the fork 22 and the side shift mechanism adjusts the lateral position of the fork 22 . In S270, the cargo handling device control unit 18 inserts the fork 22 into the access position based on the calculated origin and coordinate orientation of the pallet reference coordinates PC. Specifically, considering the depth of the pallet 50, the vehicle body 2 is moved straight. In S<b>280 , the cargo handling device control unit 18 scoops up the pallet 50 . Specifically, the fork 22 is tilted by the tilt mechanism and the fork 22 is raised by the mast 20 .

S290において、荷降ろし動作および待機位置への復帰動作を行う。これらの動作は自動で行ってもよいし、オペレータが操作してもよい。これらの動作は従来技術で実現できるため、説明は省略する。 At S290, the unloading operation and the return operation to the standby position are performed. These operations may be performed automatically or may be operated by an operator. Since these operations can be realized by the conventional technology, description thereof is omitted.

(効果)
パレットや荷台などの対象物に貼り付けられたマーカを、正対したカメラで遠方から撮像して対象物の位置や姿勢を認識する技術では、一般的に、対象物の奥行方向の位置や、マーカの法線ベクトルによって推測されるヨー方向やピッチ方向の回転姿勢を正確に求めることが困難なため、フォークをパレットに差し込む際に意図しない衝突等が発生してしまう場合がある。本明細書の技術では、複数のセンサノードと、マーカノードと、複数のアークと、を備えるグラフ構造データを生成し、生成したグラフ構造データを最適化する。複数のセンサノードは、異なる時刻の複数の移動点のそれぞれにおけるカメラ30の位置および姿勢を示す情報である。マーカノードは、異なる時刻の複数の移動点のそれぞれで推定されたマーカM1およびM2の位置および姿勢を表す情報である。従って、異なる時刻の複数の移動点の各々において推定された、マーカM1およびM2の位置および姿勢の複数の推定結果を用いて、マーカM1およびM2の位置および姿勢の推定値を補正することができる。換言すると、マーカを用いて推定した対象物の奥行方向の情報と、複数の移動点の移動量の累積によって求めた車体2の位置(オドメトリ)の奥行方向の情報とを、グラフ構造を用いることで関連付けることができる。そして、対象物の奥行方向の情報の精度不足分を、オドメトリの奥行方向の情報を用いることで補完することができる。以上より、ある1つの移動点で推定したマーカM1およびM2の位置および姿勢の推定結果を用いる場合と比して、マーカM1およびM2の位置および姿勢をより正確に推定することが可能となる。
(effect)
In technology for recognizing the position and orientation of an object by photographing a marker attached to an object such as a pallet or loading platform from a distance with a facing camera, generally, the position of the object in the depth direction, Since it is difficult to accurately determine the rotational postures in the yaw and pitch directions estimated from the normal vectors of the markers, unintended collisions may occur when inserting the fork into the pallet. The technique herein generates graph structure data comprising a plurality of sensor nodes, marker nodes, and a plurality of arcs, and optimizes the generated graph structure data. A plurality of sensor nodes is information indicating the position and orientation of camera 30 at each of a plurality of movement points at different times. A marker node is information representing the positions and orientations of markers M1 and M2 estimated at each of a plurality of movement points at different times. Therefore, using a plurality of estimation results of the positions and orientations of the markers M1 and M2 estimated at each of a plurality of movement points at different times, the estimated values of the positions and orientations of the markers M1 and M2 can be corrected. . In other words, a graph structure is used for the information in the depth direction of the object estimated using the markers and the information in the depth direction of the position (odometry) of the vehicle body 2 obtained by accumulating the movement amounts of a plurality of moving points. can be associated with Insufficient accuracy of the information in the depth direction of the object can be compensated by using the information in the depth direction of the odometry. As described above, the positions and orientations of the markers M1 and M2 can be estimated more accurately than when using the estimation results of the positions and orientations of the markers M1 and M2 estimated at one movement point.

本明細書の技術では、カメラ、車体、マーカの相対位置関係を、グラフ構造データを用いて表現している。そして、マーカM1とM2との間の相対的位置関係は、既知であり、高精度に位置決めされている。換言すると、マーカ間のアークAMの「確からしさ」は高い。よって、最適化によって修正する必要のあるアークを、センサノードとマーカ間のアークACに絞ることが可能となる。全てのアークの「確からしさ」が低い場合に比して、マーカM1およびM2の位置および姿勢をより正確に推定することが可能となる。 In the technology of this specification, the relative positional relationship among the camera, vehicle body, and marker is expressed using graph structure data. The relative positional relationship between the markers M1 and M2 is known and positioned with high accuracy. In other words, the "probability" of the arc AM between markers is high. Therefore, arcs that need to be corrected by optimization can be narrowed down to arcs AC between sensor nodes and markers. The positions and orientations of the markers M1 and M2 can be estimated more accurately than when the "likelihood" of all arcs is low.

車体2が時刻tの移動点から時刻ti+1の移動点まで移動した場合に、グラフ構造データ生成部13は、時刻ti+1の移動点におけるセンサノードおよびマーカノードと、時刻ti+1の移動点におけるセンサノードとマーカノードとの相対的位置関係を規定するアークと、を生成する(S40~S70)。そして、生成した時刻ti+1の移動点におけるセンサノード、マーカノードおよびアークを、時刻tまでの移動点について生成されたグラフ構造データに、新たに追加することができる(S80)。すなわち本実施例に係るフォークリフト1は、グラフ構造データを走行中に更新することが可能である。 When the vehicle body 2 moves from the movement point at time t i to the movement point at time t i+1 , the graph structure data generator 13 generates sensor nodes and marker nodes at the movement point at time t i+1 and the movement point at time t i+1. and arcs that define the relative positional relationship between the sensor nodes and the marker nodes in (S40 to S70). Then, the generated sensor node, marker node, and arc at the movement point at time t i+1 can be newly added to the graph structure data generated for the movement points up to time t i (S80). That is, the forklift 1 according to the present embodiment can update the graph structure data during travel.

図3に示すように、マーカM1およびM2は、予め定められた第1所定距離D1だけ互いに離れて、水平方向に配置されている。すなわち、ヨー方向の回転軸(図3のz軸)に対して直交する方向に、マーカM1およびM2を配置している。これにより、パレット50の奥行方向の3次元的な姿勢である、ヨー方向の回転姿勢の推定精度を高くすることができる。換言すると、2つのマーカM1およびM2の各々のヨー方向の計測精度は低い。例えばマーカ正面から観測した場合の計測精度が、数度の角度の独立したばらつきを持つ場合がある。一方、位置(特に横方向や上下方向)の計測精度は、ヨー方向の計測精度に比して高い。そして図3で説明したように、二つのマーカ間の第1所定距離D1は正確に規定されている。また、マーカ基準座標MC1およびMC2の法線方向(図3のx軸負方向)は、二つのマーカを結んだ方向(図3のy軸方向)に対して直交するように正確に位置決めされている。この事前知識を元にグラフ構造の最適化を行うことにより、マーカのヨー角姿勢の推定精度を高めることができる。 As shown in FIG. 3, the markers M1 and M2 are horizontally arranged apart from each other by a predetermined first predetermined distance D1. That is, the markers M1 and M2 are arranged in a direction orthogonal to the rotation axis in the yaw direction (the z-axis in FIG. 3). As a result, the accuracy of estimating the rotational posture in the yaw direction, which is the three-dimensional posture of the pallet 50 in the depth direction, can be increased. In other words, the yaw measurement accuracy of each of the two markers M1 and M2 is low. For example, the measurement accuracy when observed from the front of the marker may have independent angular variations of several degrees. On the other hand, the measurement accuracy of the position (particularly in the horizontal direction and the vertical direction) is higher than the measurement accuracy in the yaw direction. And, as explained in FIG. 3, the first predetermined distance D1 between the two markers is precisely defined. Also, the normal direction of the marker reference coordinates MC1 and MC2 (x-axis negative direction in FIG. 3) is accurately positioned so as to be orthogonal to the direction connecting the two markers (y-axis direction in FIG. 3). there is By optimizing the graph structure based on this prior knowledge, it is possible to improve the accuracy of estimating the yaw angle posture of the marker.

実施例2は、マーカ群を備えたパレットが複数存在する場合における、自動荷役の処理例である。パレットが複数存在する点以外は、実施例1と処理内容は共通する。以下に、実施例1と異なる点のみを説明する。例として、図10に示すように、パレット50に加えてパレット50aが配置されている場合について説明する。パレット50aは、マーカM1aおよびM2aを備えている。マーカM1aおよびM2aの内容や位置関係は、パレット50のマーカM1およびM2と同様である。また、図10の位置関係に基づいて、図11のグラフ構造データが生成される場合について説明する。 A second embodiment is an example of automatic cargo handling when there are a plurality of pallets with marker groups. The processing contents are the same as those of the first embodiment except that there are a plurality of pallets. Only points different from the first embodiment will be described below. As an example, as shown in FIG. 10, a case where a pallet 50a is arranged in addition to the pallet 50 will be described. Pallet 50a includes markers M1a and M2a. The contents and positional relationship of the markers M1a and M2a are the same as those of the markers M1 and M2 of the palette 50. FIG. Also, a case where the graph structure data in FIG. 11 is generated based on the positional relationship in FIG. 10 will be described.

図10の時刻tにおける位置P1において、カメラ30によって、パレット50および50aが撮像される(図6のS10)。マーカ群位置姿勢推定部11は、マーカM1、M2、M1a、M2aの位置および姿勢を推定する(S20)。グラフ構造データ生成部13は、図11に示すように、マーカノードMN1およびMN2に加えて、マーカノードMN1aおよびMN2aを設定する(S60)。またアークAC1、アークAVC1、アークAVN12、アークAMに加えて、アークAC1aを設定する(S70)。以後の処理は、実施例1と同様であるため、説明を省略する。 Pallets 50 and 50a are imaged by camera 30 at position P1 at time t i in FIG. 10 (S10 in FIG. 6). The marker group position/orientation estimation unit 11 estimates the positions and orientations of the markers M1, M2, M1a, and M2a (S20). The graph structure data generator 13 sets marker nodes MN1a and MN2a in addition to the marker nodes MN1 and MN2, as shown in FIG. 11 (S60). In addition to arc AC1, arc AVC1, arc AVN12, and arc AM, arc AC1a is set (S70). Subsequent processing is the same as that of the first embodiment, so description thereof is omitted.

以上より、図11に示すように、複数のパレットについてグラフ構造データを生成することができる。そして、複数のパレットについてのグラフ構造データを最適化(S100)することができる。複数のパレットの各々に配置されているマーカの位置および姿勢を、同時にまとめて補正することが可能となる。 From the above, as shown in FIG. 11, graph structure data can be generated for a plurality of palettes. Then, the graph structure data for multiple palettes can be optimized (S100). It is possible to collectively correct the positions and orientations of the markers placed on each of the plurality of pallets at the same time.

実施例3は、パレットに加えて、柱や壁など既知の固定物にもマーカを配置した、自動荷役の処理例である。固定物にもマーカが配置されている点以外は、実施例1と処理内容は共通する。以下に、実施例1と異なる点のみを説明する。例として、図12に示すように、パレット50に加えて柱PL1~PL4が配置されている場合について説明する。柱PL1~PL4は、マーカMP1~MP4を備えている。また、時刻tにおける位置P11から時刻ti+3における位置P14へ、車体2が走行する場合の処理内容を説明する。また、図12の位置関係に基づいて、図13のグラフ構造データが生成される場合について説明する。図13では、柱PL1~PL4の各々に対応して、柱ノードPN1~PN4が配置されている。 Example 3 is an example of automatic cargo handling processing in which markers are placed on known fixed objects such as pillars and walls in addition to pallets. The contents of processing are the same as those of the first embodiment, except that markers are also placed on fixed objects. Only points different from the first embodiment will be described below. As an example, as shown in FIG. 12, a case where pillars PL1 to PL4 are arranged in addition to the pallet 50 will be described. The pillars PL1-PL4 are provided with markers MP1-MP4. Also, the processing contents when the vehicle body 2 travels from the position P11 at the time t i to the position P14 at the time t i+3 will be described. Also, a case where the graph structure data in FIG. 13 is generated based on the positional relationship in FIG. 12 will be described. In FIG. 13, pillar nodes PN1 to PN4 are arranged corresponding to the pillars PL1 to PL4, respectively.

グラフ構造データ生成部13は、図13に示すように、柱ノードPN1~PN4の間にアークAP1~AP5を設定する。センサノードSN11と柱ノードPN1およびPN2との間に、アークAC11を設定する。センサノードSN12と柱ノードPN3との間に、アークAC12を設定する。センサノードSN13と柱ノードPN4との間に、アークAC13を設定する。センサノードSN14とマーカノードMN1およびMN2との間に、アークAC14を設定する。 The graph structure data generator 13 sets arcs AP1 to AP5 between the pillar nodes PN1 to PN4, as shown in FIG. Arc AC11 is set between sensor node SN11 and pillar nodes PN1 and PN2. An arc AC12 is set between the sensor node SN12 and the pillar node PN3. An arc AC13 is set between the sensor node SN13 and the pillar node PN4. Arc AC14 is set between sensor node SN14 and marker nodes MN1 and MN2.

以上より図13に示すように、柱PL1~PL4についてもグラフ構造データを生成することができる。そして、生成したグラフ構造データを最適化(S100)することができる。柱PL1~PL4は、その相対位置や姿勢は既知であるため、柱ノードPN1~PN4の間に設定されたアークAP1~AP5は、「確からしさ」が高い。「確からしさ」が高いアークAP1~AP5をグラフ構造データに含めることができるため、アークAP1~AP5を含まない場合に比して、グラフ構造データに含まれる誤差の総和を小さくすることができる。より正確にマーカノードMN1およびMN2の位置および姿勢を補正することが可能となる。 From the above, as shown in FIG. 13, graph structure data can also be generated for the pillars PL1 to PL4. Then, the generated graph structure data can be optimized (S100). Since the relative positions and postures of the pillars PL1 to PL4 are known, the arcs AP1 to AP5 set between the pillar nodes PN1 to PN4 have a high "probability". Since the arcs AP1 to AP5 with high "probability" can be included in the graph structure data, the total error included in the graph structure data can be reduced compared to the case where the arcs AP1 to AP5 are not included. It is possible to correct the positions and orientations of the marker nodes MN1 and MN2 more accurately.

以上、本明細書が開示する技術の実施例について詳細に説明したが、これらは例示に過ぎず、特許請求の範囲を限定するものではない。特許請求の範囲に記載の技術には、以上に例示した具体例を様々に変形、変更したものが含まれる。 Although the embodiments of the technology disclosed in this specification have been described in detail above, these are merely examples and do not limit the scope of the claims. The technology described in the claims includes various modifications and changes of the specific examples illustrated above.

(変形例)
本実施形態では、マーカの位置および姿勢を認識する移動体としてフォークリフトを説明したが、この形態に限られない。マーカの位置・姿勢情報を利用して移動可能な移動体であれば、本明細書の技術を適用可能である。移動体の他の例としては、移動ロボット、モバイルマニュピレータ、ドローンなどが挙げられる。
(Modification)
In the present embodiment, a forklift was described as a moving object that recognizes the position and orientation of the marker, but the present invention is not limited to this form. The technology of the present specification can be applied to any moving object that can move using the position/orientation information of the marker. Other examples of mobile objects include mobile robots, mobile manipulators, and drones.

車体(移動体)ノードを含まないグラフ構造データを用いてもよい。この場合、例えば図5のグラフ構造データの例では、車体ノードVN1およびVN2、アークAVC1およびAVC2、アークAVN12を省略することができる。例えば手持ちカメラのように、カメラの位置姿勢の情報がない場合においても、複数の異なる方向からの観測結果と誤差モデルに対してGraph-Based SLAMを適用することより、マーカ位置を高精度に推定することができる。この原理は、図8で説明済みである。これにより、車体2の移動前においてパレット誘導用の軌道および速度パターンを生成する段階(S230)で、軌道の精度を向上させる効果を得ることができる。なお、グラフ構造の最適化では、必ずしも観測時のカメラ位置の初期値は必要ない。カメラノードの位置は、グラフ構造の最適化の結果、求めることができる。 Graph structure data that does not include a vehicle body (moving body) node may be used. In this case, for example, in the graph structure data example of FIG. 5, the vehicle body nodes VN1 and VN2, the arcs AVC1 and AVC2, and the arc AVN12 can be omitted. For example, even if there is no information about the position and orientation of the camera, such as a hand-held camera, the marker position can be estimated with high accuracy by applying Graph-Based SLAM to the observation results from multiple different directions and the error model. can do. This principle has already been explained in FIG. As a result, it is possible to obtain the effect of improving the accuracy of the trajectory at the step of generating the trajectory and speed pattern for guiding the pallet before the vehicle body 2 moves (S230). Note that the optimization of the graph structure does not necessarily require the initial value of the camera position at the time of observation. The position of the camera node can be obtained as a result of optimizing the graph structure.

本実施例では、異なる時刻の複数の移動点における複数のセンサノードを備えるグラフ構造データを生成する場合を説明したが、この形態に限られない。例えば図9に示すように、1の時刻の1つの移動点における1つのセンサノードを備えるグラフ構造を用いても、マーカM1およびM2の位置および姿勢を推定することが可能である。 In this embodiment, the case of generating graph structure data including a plurality of sensor nodes at a plurality of movement points at different times has been described, but the present invention is not limited to this form. For example, as shown in FIG. 9, it is possible to estimate the positions and orientations of markers M1 and M2 using a graph structure with one sensor node at one moving point at one time.

図3において、複数のマーカが同一面内に水平方向に配置されている場合を説明したが、この形態に限られない。パレット基準座標PCの原点とマーカ基準座標の原点との相対位置が一意に決まる態様であれば、複数のマーカが異なる面内に配置されていてもよいし、複数のマーカが水平方向に配置されていなくてもよい。 In FIG. 3, the case where a plurality of markers are arranged in the same plane in the horizontal direction has been described, but the present invention is not limited to this form. As long as the relative position between the origin of the pallet reference coordinates PC and the origin of the marker reference coordinates is uniquely determined, the plurality of markers may be arranged in different planes, or the plurality of markers may be arranged in the horizontal direction. It doesn't have to be.

図3において、第1所定距離D1離れて水平方向に配置されているマーカM1およびM2に加えて、マーカM1およびM2よりも上方側(z軸正方向側)または下方側(z軸負方向側)に、さらに1つ以上のマーカを備えてもよい。これにより、ピッチ方向の回転軸(図3のy軸)に対して直交する方向に、追加のマーカを配置することができる。パレット50の奥行方向の3次元的な姿勢である、ピッチ方向の回転姿勢の推定精度を高くすることができる。 In FIG. 3, in addition to the markers M1 and M2 horizontally arranged at a distance of a first predetermined distance D1, ) may further comprise one or more markers. This allows additional markers to be placed in a direction orthogonal to the pitch direction axis of rotation (y-axis in FIG. 3). It is possible to increase the accuracy of estimating the rotation posture in the pitch direction, which is the three-dimensional posture of the pallet 50 in the depth direction.

パレットに取り付けるマーカ数が2個である場合を説明したが、この形態に限られない。マーカ間にアークを配置できればよいため、マーカは複数枚であればよい。 Although the case where the number of markers attached to the pallet is two has been described, the present invention is not limited to this form. A plurality of markers is sufficient as long as arcs can be arranged between the markers.

図3では、パレット50の正面のみにマーカを配置する形態を説明したが、この形態に限られない。パレット50の正面に対して斜め方向からカメラ30がパレット50を撮像する場合に備えて、パレット50の側面にもマーカを配置してもよい。 Although FIG. 3 illustrates a mode in which markers are arranged only on the front surface of the pallet 50, the present invention is not limited to this mode. A marker may also be placed on the side surface of the pallet 50 in preparation for the case where the camera 30 takes an image of the pallet 50 from a direction oblique to the front of the pallet 50 .

マーカをパレットに配置する方法は、マーカ間の相対位置が一意に決まるのであれば、様々であってよい。テープでの貼付、接着、ねじ式、磁石式、ピン止めなどの態様でもよい。レーザー印刷、ホットスタンプ印刷、スクリーン印刷などによって、パレットにマーカを直接印刷してもよい。透明なポケットにマーカが差し込まれているマーカ取り付け部を、パレットに固定する態様でもよい。 Various methods of arranging the markers on the palette may be used as long as the relative positions between the markers are uniquely determined. Applied with a tape, adhered, screwed, magnetized, or pinned may be used. Markers may be printed directly onto the pallet by laser printing, hot stamping, screen printing, or the like. A mode is also possible in which the marker mounting part, in which the marker is inserted in the transparent pocket, is fixed to the pallet.

本実施例ではマーカとしてARマーカを用いる態様を説明したが、この形態に限られない。マーカの位置および姿勢が求まるのであれば、どのようなマーカを用いてもよい。例えば、不可視マーカを用いてもよい。 In this embodiment, a mode using an AR marker as a marker has been described, but the present invention is not limited to this mode. Any marker can be used as long as the position and orientation of the marker can be determined. For example, invisible markers may be used.

カメラ30は単眼カメラに限らず、ステレオカメラや不可視マーカ用カメラでもよい。 The camera 30 is not limited to a monocular camera, and may be a stereo camera or an invisible marker camera.

カメラ30は、フォーク22と一体化していれば、その取り付け方は自由である。例えば図1において、ツメ22aと22bの間であって、フォーク22のバックレスト面より奥側(車体2側)に配置されていてもよい。 The camera 30 can be attached freely as long as it is integrated with the fork 22 . For example, in FIG. 1, it may be arranged between the claws 22a and 22b and on the inner side (the side of the vehicle body 2) from the backrest surface of the fork 22. As shown in FIG.

パレット50がカゴパレットである場合を説明したが、平パレットなど他の形状のパレットでもよい。 Although the case where the pallet 50 is a basket pallet has been described, it may be a pallet of other shapes such as a flat pallet.

本実施例では、S30において車体位置姿勢算出部12はエンコーダ40で車体2移動量を求めているが、この形態に限られない。2次元レーザセンサ等を使ったレーザーオドメトリを用いてもよい。 In this embodiment, the vehicle body position/orientation calculator 12 obtains the movement amount of the vehicle body 2 with the encoder 40 in S30, but the present invention is not limited to this form. Laser odometry using a two-dimensional laser sensor or the like may also be used.

制御部10はフォークリフト1に搭載される形態に限られない。例えば、インターネットなどのネットワーク上に配置されたサーバであってもよい。 The control unit 10 is not limited to being mounted on the forklift 1 . For example, it may be a server located on a network such as the Internet.

本明細書または図面に説明した技術要素は、単独であるいは各種の組合せによって技術的有用性を発揮するものであり、出願時請求項記載の組合せに限定されるものではない。また、本明細書または図面に例示した技術は複数目的を同時に達成するものであり、そのうちの一つの目的を達成すること自体で技術的有用性を持つものである。 The technical elements described in this specification or in the drawings exhibit technical usefulness alone or in various combinations, and are not limited to the combinations described in the claims as of the filing. In addition, the techniques exemplified in this specification or drawings achieve multiple purposes at the same time, and achieving one of them has technical utility in itself.

カメラ30は、光学センサの一例である。グラフ最適化部14は、補正部の一例である。フォーク22は、支持構造部の一例である。 Camera 30 is an example of an optical sensor. The graph optimization unit 14 is an example of a correction unit. Fork 22 is an example of a support structure.

1:フォークリフト 11:マーカ群位置姿勢推定部 12:車体位置姿勢算出部 13:グラフ構造データ生成部 14:グラフ最適化部 15:アクセス位置推定部 16:軌道生成部 17:移動制御部 18:荷役装置制御部 19:グラフ構造記憶部 22:フォーク 30:カメラ 1: Forklift 11: Marker group position/posture estimation unit 12: Car body position/posture calculation unit 13: Graph structure data generation unit 14: Graph optimization unit 15: Access position estimation unit 16: Trajectory generation unit 17: Movement control unit 18: Cargo handling Device control unit 19: Graph structure storage unit 22: Fork 30: Camera

Claims (8)

第1マーカおよび第2マーカが予め定められた第1所定距離だけ離して配置されているマーカ群を備えた対象物の位置および姿勢を認識する移動体であって、
前記マーカ群を撮像するための光学センサと、
前記移動体が移動した1つまたは複数の移動点の各々で前記光学センサを用いて前記対象物を撮像した画像に基づいて、前記1つまたは複数の移動点の各々において前記第1マーカおよび前記第2マーカの位置および姿勢を推定するマーカ群位置姿勢推定部と、
複数のセンサノードと、第1マーカノードと、第2マーカノードと、前記複数のセンサノードと前記第1マーカノードおよび前記第2マーカノードとの相対的位置関係の制約条件を規定する複数の第1アークと、前記第1マーカと前記第2マーカとの相対的位置関係の制約条件を規定する第2アークと、を備えるグラフ構造データを生成するグラフ構造データ生成部と、
生成した前記グラフ構造データを最適化することで、前記第1マーカおよび前記第2マーカの位置および姿勢の推定値を補正する補正部と、
を備え、
前記複数のセンサノードは、前記1つまたは複数の移動点のそれぞれにおける前記光学センサの位置および姿勢を示すノードであり、
前記第1マーカノードおよび前記第2マーカノードは、前記マーカ群位置姿勢推定部で推定された前記第1マーカおよび前記第2マーカの位置および姿勢を示すノードであ
前記第2アークの制約条件は前記第1アークの制約条件よりも強く、
前記最適化では、前記第2アークよりも前記第1アークの方がより修正される、
移動体。
A moving body for recognizing the position and orientation of an object including a group of markers in which a first marker and a second marker are arranged apart from each other by a predetermined first predetermined distance,
an optical sensor for imaging the marker group;
At each of the one or more movement points, the first marker and the a marker group position/orientation estimation unit that estimates the position and orientation of the second marker ;
a plurality of sensor nodes; a first marker node ; a second marker node ; a graph structure data generation unit that generates graph structure data including one arc and a second arc that defines a constraint on the relative positional relationship between the first marker and the second marker;
a correction unit that corrects estimated values of the positions and orientations of the first marker and the second marker by optimizing the generated graph structure data;
with
the plurality of sensor nodes are nodes indicating the position and orientation of the optical sensor at each of the one or more movement points;
The first marker node and the second marker node are nodes indicating the positions and orientations of the first marker and the second marker estimated by the marker group position/orientation estimation unit,
the constraint on the second arc is stronger than the constraint on the first arc;
wherein the optimization modifies the first arc more than the second arc;
Mobile.
前記移動体が時刻tの移動点から時刻ti+1の移動点まで移動した場合に、前記時刻ti+1の移動点における前記移動体の位置および姿勢を算出する移動体位置姿勢算出部をさらに備え、
前記マーカ群位置姿勢推定部は、前記時刻ti+1の移動点において前記マーカ群の位置および姿勢を推定し、
前記グラフ構造データ生成部は、前記時刻ti+1の移動点におけるセンサノードおよびマーカノードと、前記時刻ti+1の移動点におけるセンサノードとマーカノードとの相対的位置関係を規定するアークと、を生成して、前記グラフ構造データに追加する、請求項1に記載の移動体。
a moving body position/orientation calculating unit that calculates the position and orientation of the moving body at the moving point at time t i+1 when the moving body moves from the moving point at time t i to the moving point at time t i+1; ,
The marker group position/orientation estimation unit estimates the position and orientation of the marker group at the movement point at the time t i+1 ,
The graph structure data generator generates a sensor node and a marker node at the movement point at time t i+1 and an arc that defines a relative positional relationship between the sensor node and the marker node at the movement point at time t i+1 . and added to the graph structure data.
前記移動体は、前記対象物を保持可能な支持構造部を備えており、
前記移動体は、前記補正部によって補正された前記マーカ群の位置および姿勢に基づいて、前記支持構造部をアクセスするアクセス位置を推定するアクセス位置推定部をさらに備える、請求項1に記載の移動体。
The moving body includes a support structure capable of holding the object,
2. The movement according to claim 1, wherein the moving body further comprises an access position estimating unit that estimates an access position for accessing the support structure based on the positions and orientations of the marker group corrected by the correcting unit. body.
前記補正部によって補正された前記マーカ群の位置および姿勢に基づいて、前記移動体の現在位置から前記対象物までの軌道および速度パターンを生成する軌道生成部と、
生成した前記軌道および速度パターンに基づいて前記移動体を前記対象物まで移動させる移動制御部と、
前記アクセス位置推定部で推定した前記アクセス位置に基づいて、前記支持構造部を前記アクセス位置にアクセスさせるアクセス制御部と、
をさらに備える、請求項3に記載の移動体。
a trajectory generation unit that generates a trajectory and a speed pattern from the current position of the moving body to the object based on the positions and orientations of the group of markers corrected by the correction unit;
a movement control unit that moves the moving object to the object based on the generated trajectory and speed pattern;
an access control unit that causes the support structure to access the access position based on the access position estimated by the access position estimation unit;
The moving object according to claim 3, further comprising:
前記支持構造部はフォークであり、
前記対象物はパレットであり、
前記光学センサは、前記フォークの動作と一体化して動作する、請求項3または4に記載の移動体。
the support structure is a fork;
the object is a pallet,
5. The moving body according to claim 3, wherein said optical sensor operates in unison with the movement of said fork.
前記マーカ群は、水平方向に前記第1所定距離だけ離れた2つ以上のマーカを備える、請求項1~5の何れか1項に記載の移動体。 6. The moving body according to any one of claims 1 to 5, wherein said marker group comprises two or more markers horizontally separated by said first predetermined distance. 前記マーカ群は、水平方向に前記第1所定距離だけ離れた前記2つ以上のマーカよりも上方または下方側に、さらに1つ以上のマーカを備える、請求項6に記載の移動体。 7. The moving body according to claim 6, wherein said marker group further comprises one or more markers above or below said two or more markers horizontally separated by said first predetermined distance. 前記マーカ群位置姿勢推定部は、前記光学センサで撮像された画像内に前記マーカ群が複数存在する場合に、複数のマーカ群の各々の位置および姿勢を推定し、
前記グラフ構造データ生成部は、前記複数のマーカ群の各々の位置および姿勢を示す複数の前記第1マーカノードおよび前記第2マーカノードを生成する、請求項1~7の何れか1項に記載の移動体。
The marker group position and orientation estimation unit estimates the position and orientation of each of the plurality of marker groups when there are a plurality of the marker groups in the image captured by the optical sensor,
8. The graph structure data generator according to any one of claims 1 to 7, wherein said graph structure data generator generates a plurality of said first marker nodes and said second marker nodes indicating respective positions and orientations of said plurality of marker groups. mobile.
JP2019011111A 2019-01-25 2019-01-25 moving body Active JP7181800B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2019011111A JP7181800B2 (en) 2019-01-25 2019-01-25 moving body

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2019011111A JP7181800B2 (en) 2019-01-25 2019-01-25 moving body

Publications (2)

Publication Number Publication Date
JP2020118586A JP2020118586A (en) 2020-08-06
JP7181800B2 true JP7181800B2 (en) 2022-12-01

Family

ID=71891993

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2019011111A Active JP7181800B2 (en) 2019-01-25 2019-01-25 moving body

Country Status (1)

Country Link
JP (1) JP7181800B2 (en)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7409264B2 (en) * 2020-08-27 2024-01-09 トヨタ自動車株式会社 Transport systems, transport methods, and programs
JP7351274B2 (en) * 2020-08-28 2023-09-27 株式会社豊田自動織機 cargo estimation device
WO2022049743A1 (en) * 2020-09-04 2022-03-10 ヤマハ発動機株式会社 Travel control method for autonomous carrier vehicle, autonomous carrier vehicle, and conveyance system
JP2022054072A (en) * 2020-09-25 2022-04-06 コベルコ建機株式会社 Position detection system
JP7482811B2 (en) * 2021-02-16 2024-05-14 三菱ロジスネクスト株式会社 MOBILE BODY CONTROL METHOD, MOBILE BODY, AND PROGRAM
JP7511518B2 (en) 2021-04-07 2024-07-05 三菱ロジスネクスト株式会社 MOBILE BODY CONTROL METHOD, MOBILE BODY, AND PROGRAM
US20240248483A1 (en) 2021-06-02 2024-07-25 Tohoku University Information processing device, moving body, information processing method, and program
WO2024209687A1 (en) * 2023-04-07 2024-10-10 三菱電機株式会社 Automatic connection mechanism, autonomous traveling vehicle, and automatic connection method

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2018084995A (en) 2016-11-24 2018-05-31 株式会社豊田中央研究所 Route data generation device, moving body equipped with same, and route data generation method

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH06115897A (en) * 1992-10-07 1994-04-26 Toyota Autom Loom Works Ltd Stacking method for post pallet for fork-lift
JPH11278799A (en) * 1998-03-24 1999-10-12 Mitsubishi Electric Corp Loading control device for unmanned fork lift, and loading control method for unmanned fork lift

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2018084995A (en) 2016-11-24 2018-05-31 株式会社豊田中央研究所 Route data generation device, moving body equipped with same, and route data generation method

Also Published As

Publication number Publication date
JP2020118586A (en) 2020-08-06

Similar Documents

Publication Publication Date Title
JP7181800B2 (en) moving body
KR102326097B1 (en) Pallet detection using units of physical length
US9868212B1 (en) Methods and apparatus for determining the pose of an object based on point cloud data
JP6697204B1 (en) Robot system control method, non-transitory computer-readable recording medium, and robot system control device
US11667036B2 (en) Workpiece picking device and workpiece picking method
WO2021046716A1 (en) Method, system and device for detecting target object and storage medium
US10102629B1 (en) Defining and/or applying a planar model for object detection and/or pose estimation
JP7252581B2 (en) Article detection device, article detection method, and industrial vehicle
JP2017102529A (en) Workpiece position posture calculator and handling system
CN110796118B (en) Method for obtaining attitude adjustment parameters of transportation equipment, transportation equipment and storage medium
CN111664857A (en) Self-position estimating device, self-position estimating method and recording medium
JP2006350897A (en) Motion measurement device
CN115683017A (en) Battery positioning method, device, equipment, storage medium and battery replacement station
JP7312089B2 (en) Measuring device
JP7227849B2 (en) Trajectory generator
JP7192706B2 (en) Position and orientation estimation device
CN111256689A (en) Robot positioning method, robot and storage medium
WO2023036212A1 (en) Shelf locating method, shelf docking method and apparatus, device, and medium
JP2021081852A (en) Movable body and system
JP7513203B2 (en) Vehicle control device, control method, and program
CN112218745A (en) Control device, control method, robot device, and program
CN116203578A (en) Visual marker map pose acquisition method, robot positioning method and system
CN108508894A (en) A kind of robot localization method based on two-dimensional laser
JP7223587B2 (en) Object motion estimation method and object motion estimation device
JP7249168B2 (en) Objects to be handled

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20210607

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20220420

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20220426

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20220622

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20221118

R150 Certificate of patent or registration of utility model

Ref document number: 7181800

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150