JP6725930B1 - Liquid weighing method, control device, computer program and learning method - Google Patents
Liquid weighing method, control device, computer program and learning method Download PDFInfo
- Publication number
- JP6725930B1 JP6725930B1 JP2020069679A JP2020069679A JP6725930B1 JP 6725930 B1 JP6725930 B1 JP 6725930B1 JP 2020069679 A JP2020069679 A JP 2020069679A JP 2020069679 A JP2020069679 A JP 2020069679A JP 6725930 B1 JP6725930 B1 JP 6725930B1
- Authority
- JP
- Japan
- Prior art keywords
- container
- angle
- liquid
- image
- robot arm
- 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
Links
Images
Classifications
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J13/00—Controls for manipulators
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01F—MEASURING VOLUME, VOLUME FLOW, MASS FLOW OR LIQUID LEVEL; METERING BY VOLUME
- G01F22/00—Methods or apparatus for measuring volume of fluids or fluent solid material, not otherwise provided for
Abstract
【課題】ロボットアームを利用して第1容器から第2容器への注水を行い、液体を秤量する液体秤量方法、制御装置、コンピュータプログラム及び学習方法を提供する。【解決手段】本実施の形態に係る液体秤量方法は、第1時点における前記第1容器の画像、前記第1容器の角度及び前記第2容器の液体量を入力として受け付け、第2時点における前記第1容器の角度を出力するよう機械学習された学習モデルを用い、前記ロボットアームの動作を制御する制御装置が、第1時点に撮影された前記第1容器を含む画像を取得し、前記第1時点の前記第1容器の角度を取得し、前記第1時点の前記第2容器の液体量を取得し、取得した画像、角度及び液体量を前記学習モデルへ入力して、前記学習モデルが出力する第2時点の角度を取得し、取得した前記第2時点の角度に応じて、前記ロボットアームが保持する前記第1容器の角度を制御する。【選択図】図5PROBLEM TO BE SOLVED: To provide a liquid weighing method, a controller, a computer program, and a learning method for weighing water by pouring water from a first container to a second container using a robot arm. A liquid weighing method according to the present embodiment receives an image of a first container, an angle of the first container, and a liquid amount of a second container at a first time point as inputs, and the liquid weighing method at a second time point. A controller for controlling the operation of the robot arm using a learning model machine-learned to output the angle of the first container acquires an image including the first container captured at a first time point, and The angle of the first container at one time point is acquired, the liquid amount of the second container at the first time point is acquired, and the acquired image, angle, and liquid amount are input to the learning model, and the learning model is The angle at the second time point to be output is acquired, and the angle of the first container held by the robot arm is controlled according to the acquired angle at the second time point. [Selection diagram] Fig. 5
Description
本発明は、ロボットアームを利用して液体を秤量する液体秤量方法、制御装置、コンピュータプログラム及び学習方法に関する。 The present invention relates to a liquid weighing method, a control device, a computer program, and a learning method for weighing a liquid using a robot arm.
従来、複数の関節ユニットを連結することにより構成された多関節のロボットアーム(マニピュレータ)が知られている。ロボットアームは汎用性が高く、工場等における組立及び搬送等の作業並びに実験室等における遠隔作業等のように、様々な産業での利用が期待されている。 Conventionally, a multi-joint robot arm (manipulator) configured by connecting a plurality of joint units is known. The robot arm has high versatility, and is expected to be used in various industries such as assembling and carrying work in factories and remote work in laboratories.
特許文献1においては、同一被検者の検体に対して複数種類の検査を実行する際の前処理を行う検体前処理方法が提案されている。この方法によれば、第1検体容器に収容された検体を分注部が複数の第2検体容器に分注し、ロボットアームが第2検体容器を把持して検体前処理部へ搬送する。これにより特許文献1に記載の検体前処理方法は、ユーザの作業負担を軽減すると共に、ユーザ由来の成分混入によるコンタミネーション(試料汚染)の発生を抑制することができる。
特許文献1に記載の検体前処理方法では、ロボットアームは第2検体容器の搬送に用いられるのみであり、第1検体容器から第2検体容器への検体の分注は別の装置にて行われている。
In the sample pretreatment method described in
本発明は、斯かる事情に鑑みてなされたものであって、その目的とするところは、ロボットアームを利用して第1容器から第2容器への注水を行い、液体を秤量することができる液体秤量方法、制御装置、コンピュータプログラム及び学習方法を提供することにある。 The present invention has been made in view of such circumstances, and an object thereof is to use a robot arm to inject water from a first container to a second container and measure a liquid. A liquid weighing method, a control device, a computer program, and a learning method are provided.
一実施形態に係る液体秤量方法は、ロボットアームが保持する第1容器から第2容器へ所定量の液体を注水する液体秤量方法であって、第1時点における前記第1容器の画像、前記第1容器の角度及び前記第2容器の液体量を入力として受け付け、第2時点における前記第1容器の角度を出力するよう機械学習された学習モデルを用い、前記ロボットアームの動作を制御する制御装置が、第1時点に撮影された前記第1容器を含む画像を取得し、前記第1時点の前記第1容器の角度を取得し、前記第1時点の前記第2容器の液体量を取得し、取得した画像、角度及び液体量を前記学習モデルへ入力して、前記学習モデルが出力する第2時点の角度を取得し、取得した前記第2時点の角度に応じて、前記ロボットアームが保持する前記第1容器の角度を制御する。 A liquid weighing method according to an embodiment is a liquid weighing method of pouring a predetermined amount of liquid from a first container held by a robot arm into a second container, and is an image of the first container at a first time point, A controller for controlling the operation of the robot arm by using a learning model machine-learned to receive the angle of one container and the liquid amount of the second container as inputs and output the angle of the first container at a second time point. Acquires an image including the first container taken at a first time point, acquires an angle of the first container at the first time point, and acquires a liquid amount of the second container at the first time point. The acquired image, the angle, and the liquid amount are input to the learning model to acquire the angle at the second time point output by the learning model, and the robot arm holds the angle according to the acquired angle at the second time point. The angle of the first container to be controlled is controlled.
一実施形態による場合は、ロボットアームを利用して第1容器から第2容器への注水を行い、液体を秤量することが期待できる。 According to one embodiment, it can be expected that water is weighed from the first container to the second container by using the robot arm.
本発明の実施形態に係る液体秤量システムの具体例を、以下に図面を参照しつつ説明する。なお、本発明はこれらの例示に限定されるものではなく、特許請求の範囲によって示され、特許請求の範囲と均等の意味及び範囲内でのすべての変更が含まれることが意図される。 A specific example of the liquid weighing system according to the embodiment of the present invention will be described below with reference to the drawings. It should be noted that the present invention is not limited to these exemplifications, and is shown by the scope of the claims, and is intended to include meanings equivalent to the scope of the claims and all modifications within the scope.
<システム概要>
図1は、本実施の形態に係る液体秤量システムの概要を説明するための模式図である。本実施の形態に係る液体秤量システムは、制御装置1、ロボットアーム2、カメラ3及び計量器4等を備えて構成されている。本実施の形態に係る液体秤量システムは、液体を収容した第1容器101をロボットアーム2が把持し、作業台103の容器置き場104から第2容器102の載置場所へと搬送し、ロボットアーム2が第1容器101を傾けることによって第1容器101から第2容器102への注水を行う。制御装置1は、第1容器101から第2容器102へ所定量の液体を注水するようにロボットアーム2の動作を制御し、これにより液体の所定量の秤量を行う。
<System overview>
FIG. 1 is a schematic diagram for explaining the outline of the liquid weighing system according to the present embodiment. The liquid weighing system according to the present embodiment is configured to include a
なお本実施の形態に係る液体秤量システムが秤量の対象とする液体は、どのような液体であってもよい。第1容器101及び第2容器102の形状及びサイズ等は、どのようなものであってもよい。第1容器101は、ロボットアーム2が把持して傾けることができるものであり、傾けることによって収容した液体を第2容器102へ注水することができるものであればよい。第2容器102は、第1容器101から注水される液体を収容できるものであり、所定量の液体を収容できるものであればよい。ロボットアーム2は、少なくとも第1容器101を傾ける動作を行うことができるものであればよい。
The liquid to be weighed by the liquid weighing system according to this embodiment may be any liquid. The
カメラ3は、作業台103の上で行われる秤量の作業を撮影し、撮影により得られた時系列的な画像(動画像)を制御装置1へ送信する。本実施の形態においてカメラ3は、少なくとも、ロボットアーム2が第1容器101から第2容器102への注水を行っている際の、第1容器101を撮像する。このときにカメラ3が撮影する画像には、第1容器101に収容された液体の液面が含まれることが好ましい。
The
計量器4は、第2容器102に注水された液体の量(質量又は容量等)を計測し、計測結果を制御装置1へ送信する。本実施の形態に係る液体秤量システムは、計量器4の計量する液体量が所定量となるように、ロボットアーム2が第1容器101から第2容器102への液体の注水を行うものである。なお本実施の形態においては計量器4にて第2容器102の液体量を計測するものとするが、これに限るものではなく、第2容器102の液体量はどのような装置で計測してもよい。例えばカメラ3にて撮影した第2容器102の画像に基づいて液体量を計測してもよい。
The measuring instrument 4 measures the amount (mass or volume) of the liquid poured into the
制御装置1は、ロボットアーム2に接続されており、ロボットアーム2が備えるモータ又はアクチュエータ等を制御することによって、ロボットアーム2の動作を制御する。本実施の形態に係る液体秤量システムでは、ロボットアーム2が把持した第1容器101の傾き(角度)を制御装置1が制御することによって、ロボットアーム2による秤量動作を行う。なお制御装置1は、ロボットアーム2の近傍に配置される必要はなく、例えばクラウドサーバ装置等のように遠隔でロボットアーム2の制御を行う装置であってもよい。
The
また本実施の形態においては、カメラ3が撮影した画像、及び、計量器4が計量した第2容器102の液体量が制御装置1へ入力されている。詳細な説明は後述するが、制御装置1は、予め機械学習がなされた学習済の学習モデルを備えており、この学習モデルを用いてロボットアーム2の動作を制御する処理を行う。学習モデルは、現時点における第1容器101の角度と、第1容器101の画像と、第2容器102の液体量との入力に対して、次時点における第1容器101の角度を出力するよう予め機械学習がなされている。制御装置1は、カメラ3により撮影された第1容器101の画像と、第1容器101の角度と、計量器4が計量した第2容器102の液体量とを学習モデルへ入力し、学習モデルが出力する次時点の第1容器101の角度を取得する。制御装置1は、取得した次時点の角度を目標値としてロボットアーム2を制御し、第1容器101の角度を変化させる。
Further, in the present embodiment, the image captured by the
第2容器102へ所定量の液体の注水を完了した後、制御装置1は、第1容器101を容器置き場104へ載置するようにロボットアーム2の動作を制御する。このときにロボットアーム2が第1容器101を載置する容器置き場104は、初めに第1容器101が置かれていた場所と同じであってもよく、異なる場所であってもよい。
After completing the injection of the predetermined amount of liquid into the
<装置構成>
図2は、ロボットアーム2の一構成例を示す模式図である。本実施の形態に係るロボットアーム2は、第1ベース部20a、第2ベース部20b、第1アーム部20c、第2アーム部20d及び第3アーム部20eを備えて構成されている。第1ベース部20aは、ロボットアーム2の土台を構成するものであり、例えば作業台103又はその近くの床面等に不動に固定される。第2ベース部20bは、第1軸21を介して回転可能に第1ベース部20aに支持されている。
<Device configuration>
FIG. 2 is a schematic diagram showing a configuration example of the
第1アーム部20cは、緩やかに湾曲した長い板状の部材であり、長手方向の一端側で第2軸22を介して揺動可能に第2ベース部20bに支持されている。第1アーム部20cの他端側は、第3軸23を介して揺動可能に第2アーム部20dを支持している。第2アーム部20dは、棒状の長い部材であり、その中途部分に第4軸24が埋め込まれている。第2アーム部20dは、第1アーム部20cに支持される根元部分に対して、先端部分が第4軸24により軸回りに回転可能である。第2アーム部20dの先端には、第3アーム部20eが第5軸25を介して揺動可能に支持されている。第3アーム部20eは、棒状の短い部材であり、その中途部分に第6軸26が埋め込まれている。第3アーム部20eは、第2アーム部20dに支持される根元部分に対して、先端部分が第6軸26により回転可能である。
The
第3アーム部20eには、種々のエンドエフェクタを取り付けることができる。エンドエフェクタは、例えばハンド(グリッパ)、吸着ハンド、スプーン、スプレーガン又は溶接トーチ等の種々のものが取り付けられ得る。本実施の形態においてロボットアーム2の第3アーム部20eには、第1容器101を把持することができるハンド等のエンドエフェクタが取り付けられる。ロボットアーム2のエンドエフェクタに把持された第1容器101は、第6軸26の回転により傾けられる。即ち制御装置1は、ロボットアーム2の第6軸26の回転角度を制御することによって、エンドエフェクタに把持された第1容器101の角度を制御することができる。
Various end effectors can be attached to the
ロボットアーム2の第1軸21〜第6軸26は、それぞれ個別のモータにより回転する。制御装置1は、これらのモータの回転を個別に制御し、ロボットアーム2による第1容器101の搬送、及び、第1容器101から第2容器102への液体の注水等を行うことができる。またロボットアーム2の第1軸21〜第6軸26を回転させる各モータは、例えばステッピングモータ等のように回転角度を高精度に制御可能なモータである。制御装置1は、各モータの回転角度を知ることができると共に、高精度に制御することができる。
The
なお液体秤量システムに用いるロボットアーム2は、図2に示すものに限らない。ロボットアーム2の回転軸の数は、5つ以下又は7つ以上であってよく、エンドエフェクタに把持された第1容器101の角度を制御するための少なくとも1つの回転軸を有していればよい。またロボットアーム2のベース部の数、アーム部の数、及び、各部材の連結構造等は、図示のものに限らず、適宜に変更等がなされてよい。
The
図3は、本実施の形態に係る制御装置1の構成を示すブロック図である。本実施の形態に係る制御装置1は、処理部11、記憶部(ストレージ)12、通信部(トランシーバ)13、表示部(ディスプレイ)14及び操作部15等を備えて構成されている。処理部11は、CPU(Central Processing Unit)、MPU(Micro-Processing Unit)又はGPU(Graphics Processing Unit)等の演算処理装置、ROM(Read Only Memory)、及び、RAM(Random Access Memory)等を用いて構成されている。処理部11は、記憶部12に記憶された制御プログラム12aを読み出して実行することにより、ロボットアーム2の動作を制御する処理及び学習モデルの学習処理等の種々の処理を行う。
FIG. 3 is a block diagram showing the configuration of the
記憶部12は、例えばハードディスク等の大容量の記憶装置を用いて構成されている。記憶部12は、処理部11が実行する各種のプログラム、及び、処理部11の処理に必要な各種のデータを記憶する。本実施の形態において記憶部12は、処理部11が実行する制御プログラム12aと、予め学習がなされた学習モデル5とを記憶している。
The
本実施の形態において制御プログラム12aは、メモリカード又は光ディスク等の記録媒体99に記録された態様で提供され、制御装置1は記録媒体99から制御プログラム12aを読み出して記憶部12に記憶する。ただし、制御プログラム12aは、例えば制御装置1の製造段階において記憶部12に書き込まれてもよい。また例えば制御プログラム12aは、遠隔のサーバ装置等が配信するものを制御装置1が通信にて取得してもよい。例えば制御プログラム12aは、記録媒体99に記録されたものを書込装置が読み出して制御装置1の記憶部12に書き込んでもよい。制御プログラム12aは、ネットワークを介した配信の態様で提供されてもよく、記録媒体99に記録された態様で提供されてもよい。
In the present embodiment, the
本実施の形態に係る制御装置1が備える学習モデル5は、ロボットアーム2の動作を制御して液体の秤量を行うよう機械学習がなされた学習モデルである。本実施の形態においては制御装置1が学習モデル5の学習処理を予め行うものとするが、これに限るものではない。学習モデル5は例えば別のサーバ装置等にて予め機械学習がなされてよく、制御装置1はサーバ装置等にて予め機械学習がなされた学習済の学習モデルを、ネットワーク又は記録媒体99等を介して取得してもよい。
The
通信部13は、有線又は無線のネットワークを介して、ロボットアーム2、カメラ3及び計量器4等の装置との間でデータの送受信を行う。本実施の形態において制御装置1は、ロボットアーム2へ第1軸21〜第6軸26の回転を制御する制御命令等を、通信部13からロボットアーム2へ送信する。また制御装置1は、ロボットアーム2からフィードバックされる種々の情報を通信部13にて受信してよい。また制御装置1は、カメラ3にて撮影された時系列的な画像(動画像)のデータを、通信部13にてカメラ3から受信する。また制御装置1は、計量器4にて計量された質量又は容量等のデータを、通信部13にて計量器4から受信する。通信部13は、処理部11から与えられたデータを他の装置へ送信すると共に、他の装置から受信したデータを処理部11へ与える。
The
表示部14は、液晶ディスプレイ等を用いて構成されており、処理部11の処理に基づいて種々の画像及び文字等を表示する。本実施の形態において制御装置1は、ロボットアーム2の動作状況等を表示部14に表示する。
The
操作部15は、ユーザの操作を受け付け、受け付けた操作を処理部11へ通知する。例えば操作部15は、機械式のボタン又は表示部14の表面に設けられたタッチパネル等の入力デバイスによりユーザの操作を受け付ける。また例えば操作部35は、マウス及びキーボード等の入力デバイスであってよく、これらの入力デバイスは制御装置1に対して取り外すことが可能な構成であってもよい。本実施の形態においては、ユーザは操作部15を利用して、第1容器101から第2容器102へ注水する液体量の目標値、即ち液体秤量処理により秤量する液体量の目標値を設定することができる。
The
また本実施の形態に係る制御装置1の処理部11には、記憶部12に記憶された制御プログラム12aを処理部11が読み出して実行することにより、画像取得部11a、現角度取得部11b、液体量取得部11c、次角度取得部11d、制御処理部11e及び学習処理部11f等がソフトウェア的な機能部として実現される。なおこれらの機能部は、ロボットアーム2による液体秤量の処理に関する機能部であり、これ以外の機能部については図示及び説明を省略する。
Further, in the
画像取得部11aは、カメラ3が撮像した第1容器101の画像を取得する処理を行う。本実施の形態においてカメラ3は、作業台103の上で行われるロボットアーム2による作業の全体を撮影している。このためカメラ3が撮影する画像には、ロボットアーム2の一部又は全部、第1容器101、第2容器102及び容器置き場104が含まれている。画像取得部11aは、カメラ3から送信されるこの全体画像を通信部13にて受信し、受信した全体画像から液体秤量処理に必要な部分画像を抽出する。本実施の形態において画像取得部11aは、第1容器101が映された領域を部分画像として全体画像から抽出し、抽出した部分画像を液体秤量処理に用いる画像とする。なお本実施の形態においてカメラ3は、第2容器102への注水を行っている状態で第1容器101に収容された液体の液面が映るように位置及び撮影角度等が設定されており、画像取得部11aが取得する画像には、第1容器101に収容された液体の液面の画像が含まれる。
The
現角度取得部11bは、ロボットアーム2に把持された第1容器101の現時点における角度を取得する処理を行う。第1容器101の角度は、基準軸(例えば、鉛直軸)に対する、第1容器101の所定の軸(例えば、中心軸)の角度である(図8参照)。本実施の形態において制御装置1は、第1容器101を容器置き場104から第2容器102への注水を行う位置まで移動する際に、ロボットアーム2の第1軸21〜第6軸26を適宜に回転させて第1容器101を搬送する。ただし本実施の形態において制御装置1は第1容器101から第2容器102への液体の注水を行う際に、ロボットアーム2の第1軸21〜第5軸25は回転させずに角度を固定し、ロボットアーム2の第6軸26のみを回転させて第1容器101を傾ける。このため液体秤量処理における第1容器101の初期角度は、搬送処理の終了時点における第1軸21〜第6軸26の角度により定まり、現角度取得部11bは、ロボットアーム2の第1軸21〜第6軸26の角度により定まる第1容器101の初期角度を取得する。また液体秤量処理中の第1容器101の角度は、初期角度に対してロボットアーム2の第6軸を回転させた角度を増減したものとみなすことができる。現角度取得部11bは、液体秤量処理において回転させたロボットアーム2の第6軸26の角度を取得し、初期角度及び第6軸26を回転させた角度に基づいて第1容器101の現時点の角度を算出することで、第1容器101の現時点の角度を取得する。ロボットアーム2の第6軸26の角度は、例えばロボットアーム2に対して出力した制御量、即ち第6軸26の回転を指示した際の回転量又は回転角度等に基づいて算出等されてもよく、また例えばロボットアーム2からフィードバックされる情報に基づいて取得されてもよい。
The current
液体量取得部11cは、計量器4にて計量された第2容器102の現時点における液体量を取得する処理を行う。計量器4が計量する液体の液体量は、グラム(g)もしくはキログラム(kg)等の単位で表される重さもしくは質量等、又は、リットル(L)若しくは立方メートル等の単位で表される容量もしくは体積等のいずれであってもよい。液体量取得部11cは、計量器4から送信される液体量の計量値を通信部13にて受信することで、第2容器102の液体量を取得する。
The liquid
なお画像取得部11aによる画像の取得、現角度取得部11bによる現時点の角度の取得、及び、液体量取得部11cによる液体量の取得は、所定の周期で繰り返し行われる。これらの情報を取得する周期は、例えば数ミリ秒〜数秒程度とすることができる。制御装置1は、例えばカメラ3による動画撮影のフレームレートに応じて定まる周期でこれらの情報を取得してもよく、フレームレートに応じて定まる周期よりも長い周期で情報を取得してもよい。また画像取得部11a、現角度取得部11b及び液体量取得部11cがそれぞれ異なる周期で情報の取得を行ってもよい。
The image acquisition by the
次角度取得部11dは、現在の時点の情報(最新の情報)に基づいて記憶部12の学習モデル5が予測する次の時点の情報(将来の情報)を取得する処理を行う。次角度取得部11dは、画像取得部11aが取得した第1容器101の画像と、現角度取得部11bが取得した現時点の第1容器101の角度と、液体量取得部11cが取得した現時点の第2容器102の液体量と、第2容器102へ注水する液体の目標量とを学習モデル5へ入力し、学習モデル5が出力する次の時点の第1容器101の角度を取得する。次角度取得部11dは、所定の周期で次角度の取得を繰り返し行っている。
The next
制御処理部11eは、ロボットアーム2の動作を制御する処理を行う。制御処理部11eは、例えばロボットアーム2の第1軸21〜第6軸26について、各軸の回転角度又は回転量等を指定した回転命令をロボットアーム2へ送信することにより、ロボットアーム2の動作を制御することができる。本実施の形態において制御処理部11eは、第1容器101から第2容器102へ注水する際に、第1軸21〜第5軸25を固定し、第6軸26の回転を制御することで第1容器101を傾けて注水を行う。このときに制御処理部11eは、次角度取得部11dが取得した次の時点の角度を第1容器101の角度の目標値として、ロボットアーム2の第6軸26の回転を制御する。なお制御処理部11eは、例えば第1容器101を容器置き場104から注水位置へ搬送する際には、第1軸21〜第6軸26を適宜に回転させてロボットアーム2に第1容器101の搬送を行わせてよい。
The control processing unit 11e performs processing for controlling the operation of the
学習処理部11fは、液体秤量処理に用いる学習モデル5を機械学習する処理を行う。本実施の形態において学習処理部11fは、所定時点における第1容器101の画像、第1容器101の角度、第2容器102の液体量及び秤量の目標値と、所定時点の次の時点における第1容器101の画像、第1容器101の角度、第2容器102の液体量及び秤量の目標値とを対応付けた教師データを用いて、学習モデル5の機械学習を行う。教師データは、例えば本システムの設計者等により予め作成されてもよく、また例えばロボットアーム2にて手本となる動作を行わせ、このときに得られた画像及び角度等の情報に基づいて制御装置1が作成してもよい。
The
<第1容器の画像取得処理>
図4は、本実施の形態に係る制御装置1が行う第1容器101の画像取得処理を説明するための模式図である。本実施の形態に係る液体秤量システムでは、カメラ3が撮像した画像に基づいて制御装置1がロボットアーム2の動作を制御する。カメラ3は、作業台103の上で行われるロボットアーム2による作業の全体を撮影するよう、その設置位置及び撮影角度等が設定されている。カメラ3の撮影により得られる全体画像111には、ロボットアーム2の一部、第1容器101、第2容器102及び容器置き場104等が含まれている。
<Image acquisition process for the first container>
FIG. 4 is a schematic diagram for explaining the image acquisition processing of the
本実施の形態において、制御装置1がロボットアーム2の動作を制御して第1容器101から第2容器102への液体の注水を行う際に必要な画像、即ち液体秤量のための学習モデル5へ入力する画像は、第1容器101が映された部分的な画像である。本図においてはこの第1容器101が映された部分的な画像を、容器画像112として示している。容器画像112には、第1容器101に収容された液体の液面が映されている。全体画像111のうち、第1容器101の容器画像112以外の部分、例えば第2容器102又は容器置き場104等の部分は液体秤量処理には不要であるが、液体秤量処理以外の処理、例えば第1容器101の搬送処理等に用いられ得る。
In the present embodiment, the
このため、本実施の形態に係る制御装置1は、カメラ3が撮影した全体画像111から、第1容器101が映された部分画像を容器画像112として抽出する画像処理を行う。制御装置1が全体画像111から容器画像112を抽出する方法は、例えば以下の2つの方法のいずれかが採用され得る。
Therefore, the
(容器画像抽出方法1)
制御装置1は、カメラ3が撮影した全体画像111に対して予め定められた領域の画像を抽出し、この抽出した画像を容器画像112とする。抽出する領域は、例えば本システムの設計者等により予め定められ、抽出する領域を定める座標等の情報が制御装置1に記憶される。又は、例えば本システムを利用する作業者等が制御装置1の操作部15を利用して容器画像112の抽出範囲を設定することが可能であってもよい。この抽出方法は、ロボットアーム2を利用した液体秤量処理において、ロボットアーム2が第1容器101を傾けて第2容器102へ注水を行う位置が固定されている場合に好適である。
(Container image extraction method 1)
The
(容器画像抽出方法2)
制御装置1は、カメラ3が撮影した全体画像111から第1容器101を検出する処理を行う。制御装置1による第1容器101の検出処理には、どのような方法が採用されてもよい。画像に写された物体を検出する技術は既存のものであるため、詳細な説明は省略する。制御装置1は、例えば第1容器101の画像を用いて予め機械学習がなされた学習済の物体検出モデルを利用して、カメラ3が撮影した全体画像111に映る第1容器101を検出する処理を行うことができる。制御装置1は、検出した第1容器101を含む矩形領域を全体画像111から抽出し、容器画像112とすることができる。この抽出方法は、ロボットアーム2を利用した液体秤量処理において、ロボットアーム2が第1容器101を傾けて第2容器102へ注水を行う位置が変化する可能性がある場合に好適である。また制御装置1は、第1容器101の搬送処理等において物体検出を行う場合、この処理結果を流用してもよい。
(Container image extraction method 2)
The
なお、制御装置1が行う容器画像112の抽出処理は上記の2つの方法に限らず、どのような方法で行われてもよい。制御装置1は、カメラ3が撮影した全体画像111から第1容器101が映された容器画像112を抽出し、抽出した容器画像112を学習モデル5への入力画像とする。また学習モデル5の学習処理において教師データとして用いる画像についても同様の方法で抽出された第1容器101の容器画像112が用いられる。また全体画像を撮影するカメラとは別に、第1容器101を撮影するカメラを設けてもよく、この場合には全体画像から容器画像を抽出する処理を制御装置1が行わなくてもよい。
The extraction process of the
<学習モデル>
図5は、本実施の形態に係る学習モデル5の構成を説明するための模式図である。本実施の形態に係る制御装置1が備える学習モデル5は、所定時点(時刻t)における第1容器101の画像(t)、第1容器101の角度(t)、第2容器102の液体量の計測値(t)及び秤量の目標値を入力情報として受け付け、所定時点の次の時点(時刻t+1)における第1容器101の画像(t+1)、第1容器101の角度(t+1)、第2容器102の液体量の計測値(t+1)及び秤量の目標値を出力する。なお目標値は、時刻t及び時刻t+1において同じ値である。
<Learning model>
FIG. 5 is a schematic diagram for explaining the configuration of the
本実施の形態に係る学習モデル5は、例えばRNN(Recurrent Neural Network)モデル51、CAE(Convolutional Auto Encoder)のエンコーダ52及びCAEのデコーダ53を備えて構成されている。RNNモデル51は、時系列的なデータを学習することが可能な学習モデルであり、例えばMTRNN(Multi Timescale RNN)又はLSTM(Long Short Term Memory)等であってよい。ただし学習モデル5は、RNNモデル51ではなく、例えばARIMA(Auto Regressive Integrated Moving Average)又は1次元CNN(Convolutional Neural Network)等のモデルを用いて構成されてもよい。
The
CAEは、画像を圧縮及び復元する学習モデルである。ただし学習モデル5は、CAEではなく、例えばオートエンコーダ(Autoencoder)、RBM(Restricted Boltzmann Machine)又は主成分分析(Principal Component Analysis)等のモデルを用いて構成されてもよい。CAEのエンコーダ52は、入力された画像を圧縮して、入力画像の特徴を有する特徴量を出力する。CAEのデコーダ53は、入力された特徴量から復元した画像を出力する。
CAE is a learning model that compresses and restores images. However, the
学習モデル5へ入力された所定時点(時刻t)の画像(t)はCAEのエンコーダ52へ入力され、エンコーダ52が出力する時刻tの特徴量(t)はRNNモデル51へ対応する角度(t)、計測値(t)及び目標値と共に入力される。これらの入力に対してRNNモデル51は、所定時点の次の時点(時刻t+1)の特徴量(t+1)、角度(t+1)、計測値(t+1)及び目標値を出力する。RNNモデル51が出力した次の時点の特徴量(t+1)はCAEのデコーダ53へ入力され、デコーダ53が出力する画像(t+1)が対応する角度(t+1)、計測値(t+1)及び目標値と共に学習モデル5の出力となる。
The image (t) at the predetermined time (time t) input to the
なお制御装置1は、学習モデル5が出力する角度(t+1)を取得してロボットアーム2の動作を制御する。制御装置1がロボットアーム2にて液体秤量を行う際には、学習モデル5が出力する画像(t+1)、計測値(t+1)及び目標値は、利用されない情報である。このため、制御装置1がロボットアーム2にて液体秤量を行うために記憶部12に記憶しておく学習済の学習モデル5は、画像(t+1)、計測値(t+1)及び目標値を出力する機能を有していなくてもよい。ただしこれらの情報の出力機能は、学習モデル5の機械学習を行う際には必要である。
The
<学習処理>
本実施の形態において学習モデル5の学習処理は、RNNモデル51と、CAEのエンコーダ52及びデコーダ53とで別に行われる。図6は、CAEのエンコーダ52及びデコーダ53の学習処理を説明するための模式図である。本実施の形態においてCAEのエンコーダ52及びデコーダ53は、それぞれ複数のニューロンを結合したニューラルネットワークの構成を有している。エンコーダ52は入力層へ入力される情報量より出力層から出力する情報量が少なく、デコーダ53は入力層へ入力される情報量より出力層から出力する情報量が多い。またエンコーダ52の入力層へ入力される情報とデコーダ53が出力層から出力する情報とは、画像であり、その情報量は等しい。エンコーダ52の出力層から出力する情報とデコーダ53の入力層へ入力される情報とは、画像の特徴量であり、その情報量は等しい。
<Learning process>
In the present embodiment, the learning process of the
CAEのエンコーダ52及びデコーダ53の学習処理は、エンコーダ52が出力する情報をデコーダ53へ入力するよう、エンコーダ52及びデコーダ53を連結して行われる。学習処理に用いられる教師データは、入力画像と出力画像とを同じ画像としたものである。教師データは、カメラ3が撮影した時系列の容器画像112を用いて作成され得るが、どのような画像が用いられてもよい。制御装置1は、このような教師データを用いて、入力画像及び出力画像が一致するようエンコーダ52及びデコーダ53の機械学習を行う。これによりエンコーダ52及びデコーダ53は、画像を特徴量に圧縮し、この特徴量を元の画像に復元することができる。エンコーダ52が出力する特徴量は、入力された画像よりも少ない次元で、情報量を落とさずに元の画像の特徴を表したものとなる。
The learning process of the
なお制御装置1は、例えば既存の学習済のCAEのエンコーダ及びデコーダを利用可能である場合等には、エンコーダ52及びデコーダ53の学習処理を行わなくてもよい。
Note that the
制御装置1は、CAEのエンコーダ52及びデコーダ53の学習処理を終えた後、学習済のエンコーダ52及びデコーダ53と未学習のRNNモデル51とを含む学習モデル5の学習処理を行う。このときに制御装置1が行う学習処理の対象は学習モデル5のRNNモデル51であり、エンコーダ52及びデコーダ53は学習処理の対象外である。即ち、制御装置1は、RNNモデル51のニューラルネットワークを構成するニューロンの値を学習処理によって更新するが、エンコーダ52及びデコーダ53のニューラルネットワークを構成するニューロンの値は更新しない。
After finishing the learning process of the
図7は、学習モデル5の学習処理を説明するための模式図である。本実施の形態においては、学習モデル5の学習処理に用いる教師データを生成するために、制御装置1、ロボットアーム2、カメラ3及び計量器4等を用い、ロボットアーム2に第1容器101から第2容器102へ液体を注水する見本の動作を行わせる。この見本動作は、ユーザ(人間)がロボットアーム2を手動操作により動作させる。このときに制御装置1は、ロボットアーム2の見本動作をカメラ3で撮影すると共に、見本動作における第1容器101の角度(第6軸26の角度)と計量器4による第2容器102の液体量の計量結果とを時系列に取得し、画像、角度及び液体量のデータを記憶部12に記憶して蓄積する。
FIG. 7 is a schematic diagram for explaining the learning process of the
なお、ユーザによるロボットアーム2の手動操作の方法はどのようなものであってもよい。例えば、ロボットアーム2と同様の構成を有する入力デバイスを用いる方法(マスタ−スレーブ方式)が採用され得る。この入力デバイスをユーザが掴んで動かし、ロボットアーム2の第1軸21〜第6軸26に対応する入力デバイスの各角度をセンサで検知し、検知した角度に応じてロボットアーム2を動作させて、第1容器101から第2容器102への注水の見本動作をロボットアーム2に行わせることができる。また例えば、ユーザの腕にセンサ等を装着し、ユーザの腕の動きをセンサで検知したロボットアーム2の動作に反映させて見本動作を行わせてもよい。
It should be noted that any method of manually operating the
また例えば、本実施の形態においてはロボットアーム2の第6軸26の回転のみ行って第1容器101から第2容器102への注水を行うため、第6軸26の角度のみを操作するダイヤルスイッチ又はスライドバー等の入力デバイスを制御装置1の操作部15に設けてもよい。ユーザは、操作部15のこれらの入力デバイスを操作してロボットアーム2の見本動作を行わせることができる。これらの入力デバイスは例えばハードウェアとして制御装置1に設けられてもよく、また例えばこれらの入力デバイスを模した画像を制御装置1が表示部34に表示し、タッチパネル等により回転操作等を受け付けてロボットアーム2の見本動作を行わせてもよい。また例えば、ロボットアーム2を操作するための装置、いわゆるティーチングペンダントを用いて、ロボットアーム2に見本動作を行わせてもよい。
Further, for example, in the present embodiment, since only the rotation of the
また例えば、ユーザが直接的にロボットアーム2を操作して見本動作を行わせるのではなく、予めユーザが設定した演算式又はテーブル等に応じて制御装置1がロボットアーム2に見本動作を行わせてもよい。ユーザは、時刻の入力に対して第6軸26の角度を出力する演算式又はテーブル等を予め作成して制御装置1に記憶させておくことで、制御装置1に自動で見本動作を行わせることができる。演算式又はテーブル等は、例えばロボットアーム2のシミュレーション等の結果に基づいて作成されてもよい。
Further, for example, the user does not directly operate the
ロボットアーム2に第1容器101から第2容器102へ注水する一連の見本動作を行わせることによって、制御装置1は、第1容器101の画像と、第1容器101の角度と、第2容器102の液体量の計測値との時系列的なデータを蓄積することができる。また一連の見本動作により第2容器102へ注水された最終的な液体量の計測値は、この注水動作による液体の秤量の目標値とみなすことができる。
By causing the
図7においては、所定時点(時刻t)における第1容器101の画像(t)と、第1容器101の角度(t)と、第2容器102の液体量の計測値(t)と、液体秤量の目標値とを1つのデータ(t)として図示している。ここでいう第1容器101の画像(t)は、容器画像112に相当する。制御装置1は、時刻tにおけるデータ(t)を入力とし、次の時刻t+1におけるデータ(t+1)を出力の正解値として対応付けた教師データを生成する。制御装置1は、一連の見本動作について蓄積したデータから、注水開始時点(t=0)から注水完了時点(t=Tmax)まで時系列のデータを順に取得して、各時点に対応する教師データを生成することができる。なお以下においては、時刻tのデータ(t)を入力とし、時刻t+1のデータを出力の正解値とした教師データを、教師データ(t)と表す。教師データ(t)は、t=0からt=Tmax−1まで生成される。
In FIG. 7, the image (t) of the
制御装置1は、生成した教師データ(t)をt=0からt=Tmax−1まで時系列順に読み出し、読み出した教師データ(t)を時系列順に学習モデル5に適用して機械学習を行うことによって、学習モデル5のRNNモデル51のパラメータを繰り返し更新する。全ての教師データを用いてRNNモデル51のパラメータの更新を行うことによって、制御装置1による学習モデル5の学習処理が完了する。なお本例では、1回分の見本動作のみから教師データを生成して学習処理を行う手順を説明しているが、制御装置1は、複数回分の見本動作から複数組の教師データを生成して学習モデル5の機械学習を行ってよい。
The
また本実施の形態においては、教師データを生成するための見本動作に制限を設けている。図8及び図9は、見本動作の制限を説明するための模式図である。図8には、液体秤量処理における第1容器101の動きを図示してある。第1容器101は、ロボットアーム2により容器置き場104から液体秤量を行うための位置(秤量位置)へ搬送される。搬送位置へ搬送された直後の第1容器101の状態を図8において実線で図示しており、この状態を液体秤量における第1容器101の初期状態とし、初期状態における第1容器101の角度を0°とする。なお図8においては第1容器101が直立した状態を初期状態としているが、これは一例であり、第1容器101が傾いた状態が初期状態であってもよい。ただし第1容器101の初期状態は、収容された液体が外部へ漏れ出ることがない状態とする。
Further, in the present embodiment, the sample operation for generating the teacher data is limited. 8 and 9 are schematic diagrams for explaining the limitation of the sample operation. FIG. 8 illustrates the movement of the
ロボットアーム2に把持された第1容器101は第6軸26の回転により傾けられ、第1容器101から第2容器102への注水が行われる。図8には、第1容器101が第6軸26を中心に角度θだけ傾いた状態が図示されている。本実施の形態において第1容器101の角度θは、上記の初期状態を角度0°とし、初期状態に対して第1容器101を傾けた角度である。
The
図9には、見本動作における第1容器101の角度の変化をグラフとして示している。本グラフの横軸は時刻tであり、縦軸は角度θである。見本動作においては、所定角度に達するまで第1容器101の角度θを単調増加させ、その後に第1容器101の角度を所定角度から角度0°まで単調減少させる。本実施の形態においては、学習モデル5の教師データとして、第1容器101の角度が始めに単調増加し、その後に単調減少して注水動作を終える見本動作から得られるデータを用いる。このような学習データを用いて学習モデルの学習処理を行うことによって、学習された学習モデル5を用いるロボットアーム2の液体秤量を安定して行うことができる。
FIG. 9 shows a graph of changes in the angle of the
図10は、本実施の形態に係る制御装置1が行う教師データ生成処理の手順を示すフローチャートである。なお本フローチャートにおいては変数tを用いているが、この変数tは例えば制御装置1の処理部11が有するレジスタ等の記憶領域を用いて実現され得る。本実施の形態に係る制御装置1の処理部11は、例えばユーザの手動操作に応じてロボットアーム2に液体秤量の見本動作を行わせる(ステップS1)。処理部11は、ロボットアーム2が見本動作を行っている際にカメラ3が撮影した全体画像111から抽出した第1容器101の画像(容器画像112)、第1容器101の角度及び計量器4の計測値等のデータを取得して記憶部12に記憶し、データを蓄積する(ステップS2)。処理部11は、液体秤量の見本動作が終了したか否かを判定する(ステップS3)。見本動作が終了していない場合(S3:NO)、処理部11は、ステップS1へ処理を戻し、見本動作及びデータ蓄積を継続して行う。
FIG. 10 is a flowchart showing the procedure of the teacher data generation process performed by the
見本動作が終了した場合(S3:YES)、処理部11は、変数tの値を0に初期化する(ステップS4)。処理部11は、蓄積したデータの中から、所定の時刻tのデータを取得する(ステップS5)。また処理部11は、蓄積したデータの中から、次の時刻t+1のデータを取得する(ステップS6)。処理部11は、ステップS5にて取得した時刻tのデータを入力とし、ステップS6にて取得した時刻t+1のデータを出力の正解値として対応付けた教師データを生成する(ステップS7)。
When the sample operation is completed (S3: YES), the
なお、ステップS5にて取得する時刻tのデータには、時刻tにおける第1容器101の画像(t)と、時刻tにおける第1容器の角度(t)と、時刻tにおける第2容器102の液体量の計測値(t)と、液体秤量の目標値とが含まれる。またステップS6にて取得する時刻t+1のデータには、時刻t+1における第1容器101の画像(t+1)と、時刻t+1における第1容器の角度(t+1)と、時刻t+1における第2容器102の液体量の計測値(t+1)と、液体秤量の目標値とが含まれる。両データの目標値は、見本動作の終了時点における第2容器102の液体量の計測値(Tmax)が設定される。
The data at time t acquired in step S5 includes the image (t) of the
その後、処理部11は、変数tの値に1を加える(ステップS8)。処理部11は、変数tの値が最大値Tmaxであるか否かを判定する(ステップS9)。変数tの値がTmaxでない場合(S9:NO)、処理部11は、ステップS5へ処理を戻し、教師データの生成を継続する。変数tの値がTmaxである場合(S9:YES)、処理部11は、教師データ生成処理を終了する。
After that, the
図11は、本実施の形態に係る制御装置1が行う学習モデル5の学習処理の手順を示すフローチャートである。なお本フローチャートにおいては変数tを用いているが、この変数tは例えば制御装置1の処理部11が有するレジスタ等の記憶領域を用いて実現され得る。本実施の形態に係る制御装置1の処理部11の学習処理部11fは、まず変数tの値を0に初期化する(ステップS21)。学習処理部11fは、所定の時刻tに対応する教師データを記憶部12から取得する(ステップS22)。学習処理部11fは、取得した教師データに含まれる時刻tの画像、角度、計測値及び目標値を学習モデル5の入力とし、時刻t+1の画像、角度、計測値及び目標値を学習モデル5の出力の正解値として、学習モデル5がこの入出力関係を満たすようにRNNモデル51のパラメータを更新する(ステップS23)。なお、RNNモデル51のパラメータの更新は、複数の教師データに対してまとめて行われてもよい。
FIG. 11 is a flowchart showing the procedure of the learning process of the
その後、学習処理部11fは、変数tの値に1を加える(ステップS24)。学習処理部11fは、変数tの値が最大値Tmaxであるか否かを判定する(ステップS25)。変数tの値がTmaxでない場合(S25:NO)、学習処理部11fは、ステップS22へ処理を戻し、学習モデル5の学習を継続する。変数tの値がTmaxである場合(S25:YES)、処理部11は、学習処理を終了する。
After that, the
<液体秤量処理>
学習モデル5の学習処理が完了した後、制御装置1は、学習済の学習モデル5を利用して、ロボットアーム2による液体の秤量処理を行うことができる。本実施の形態においては、作業台103の容器置き場104に第1容器101が置かれ、計量器4の上に第2容器102が置かれた状態から、ロボットアーム2が第1容器101を把持して所定の秤量位置へ搬送し、第1容器101を傾けて第2容器102へ注水を行い、目標値の注水を完了してロボットアーム2が第1容器101を容器置き場104へ置くまでの動作を説明する。なお秤量の目標値は、例えば制御装置1の操作部15を利用してユーザが予め設定しているものとする。
<Liquid weighing processing>
After the learning process of the
図12は、本実施の形態に係る制御装置1が行う液体秤量処理の概略手順を示すフローチャートである。本実施の形態に係る制御装置1の処理部11は、まず、ロボットアーム2の動作を制御して、作業台103の容器置き場104に置かれた第1容器101をロボットアーム2に把持させる(ステップS31)。ロボットアーム2が第1容器101を把持する動作の制御は、どのような方法で行われてもよい。
FIG. 12 is a flowchart showing a schematic procedure of the liquid weighing process performed by the
次いで処理部11は、ステップS31にて把持した第1容器101を、液体の秤量を行う秤量位置へと搬送する(ステップS32)。ロボットアーム2による第1容器101の搬送の制御は、どのような方法で行われてもよい。また搬送動作の終点である秤量位置は、例えば予め設定された固定位置であってもよく、また例えば第2容器102の位置等に応じて変動する位置であってもよい。
Next, the
次いで処理部11は、第1容器101に収容された液体を第2容器102へ注水する動作を行い、所定量の液体を秤量する秤量処理を行う(ステップS33)。秤量処理において処理部11は、ロボットアーム2の第6軸26のみを回転させて第1容器101を傾け、第1容器101から第2容器102への注水を行う。秤量処理の詳細については後述する。
Next, the
所定量の液体を第1容器101から第2容器102へ注水し、秤量処理を完了した後、処理部11は、ロボットアーム2を制御して第1容器101を秤量位置から容器置き場104へ搬送し(ステップS34)、処理を終了する。ロボットアーム2による第1容器101の搬送の制御は、どのような方法で行われてもよい。また秤量処理を終えた後の第1容器101の搬送先は、最初に第1容器101が置かれていた容器置き場104とは別の場所であってもよい。
After pouring a predetermined amount of liquid from the
図13は、本実施の形態に係る制御装置1が行う液体秤量処理の詳細手順を示すフローチャートであり、図12のステップS33にて行われる秤量処理の詳細手順である。本実施の形態に係る制御装置1の処理部11の画像取得部11aは、カメラ3が撮影した第1容器101の画像を取得する(ステップS41)。なおステップS41にて取得する画像は、全体画像から第1容器101の部分を抽出した容器画像である。また処理部11の現角度取得部11bは、ロボットアーム2の第1軸21から第6軸26までの角度に基づいて、第1容器101の角度を取得する(ステップS42)。また処理部11の液体量取得部11cは、計量器4が計量する第2容器102の液体量の計測値を取得する(ステップS43)。
FIG. 13 is a flowchart showing a detailed procedure of the liquid weighing process performed by the
処理部11の次角度取得部11dは、ステップS41にて取得した画像と、ステップS42にて取得した角度と、ステップS43にて取得した液体量の計測値と、ユーザが予め設定した秤量の目標値とを含む現時点のデータを、記憶部12に記憶された学習済の学習モデル5へ入力する(ステップS44)。次角度取得部11dは、ステップS44におけるデータの入力に応じて学習モデル5が出力するデータのうち、第1容器101の次の時点の角度を取得する(ステップS45)。
The next
処理部11の制御処理部11eは、ステップS45にて取得した次の時点の角度が予め設定された上限角度以下であるか否かを判定する(ステップS46)。次の時点の角度が上限角度以下である場合(S47:YES)、制御処理部11eは、ステップS45にて取得した次の時点の角度に第1容器101の角度を変化させるべく、ロボットアーム2の第6軸26の回転を制御し(ステップS47)、ステップS49へ処理を進める。次の時点の角度が上限角度を超える場合(S47:NO)、制御処理部11eは、第1容器101の現時点の角度を維持すべく、ロボットアーム2の第6軸26の角度を維持し(ステップS48)、ステップS49へ処理を進める。
The control processing unit 11e of the
次いで処理部11は、液体秤量の動作が終了したか否かを判定する(ステップS49)。液体秤量の処理が終了したか否かの判定方法は、どのようなものであってもよい。例えば処理部11は、第1容器101の角度が初期状態の角度(即ち角度0°)に戻ったことを液体秤量の終了と判断することができる。また例えば処理部11は、第1容器101からの液体の吐出が終了したか否かをカメラ3が撮影した画像に基づいて判断し、液体秤量の終了を判断してもよい。液体秤量の処理が終了していない場合(S49:NO)、処理部11は、ステップS41へ処理を戻す。液体秤量の処理が終了した場合(S49:YES)、処理部11は、図12に示したフローチャートへ処理を戻す。
Next, the
<まとめ>
以上の構成の本実施の形態に係る液体秤量システムは、ロボットアーム2が保持する第1容器101から第2容器102へ所定量の液体を注水することによって液体の秤量を行う。ロボットアーム2の動作を制御する制御装置1は、第1時点(時刻t)における第1容器101の画像、第1容器101の角度及び第2容器102の液体量及び秤量の目標値を入力として受け付け、第2時点(時刻t+1)における第1容器101の角度を出力するよう機械学習がなされた学習モデル5を記憶部12に記憶している。制御装置1は、現時点(第1時点)にてカメラ3が撮影した第1容器101の画像を取得し、現時点の第1容器101の角度を取得し、現時点の第2容器102の液体量を取得する。制御装置1は、取得した画像、角度及び液体量を学習モデル5へ入力し、学習モデル5が出力する次の時点(第2時点)の第1容器101の角度を取得する。制御装置1は、取得した次の時点の角度に応じて、ロボットアーム2が保持する第1容器101の角度を制御する。これにより制御装置1は、ロボットアーム2を制御して所定量の液体を第1容器101から第2容器102へ注水することができ、ロボットアーム2を利用した液体の秤量を精度よく行うことが期待できる。
<Summary>
The liquid weighing system according to the present embodiment having the above configuration measures the liquid by injecting a predetermined amount of the liquid from the
また本実施の形態に係る制御装置1は、第1容器101を傾けて第2容器102へ注水する際に、ロボットアーム2の第1軸21〜第5軸25を固定し、第1容器101の保持位置に最も近い第6軸26の回転を制御して、第1容器101の角度を制御する。制御装置1は、第1容器101について角度以外のパラメータ(例えば上下方向、左右方向又は前後方向等の位置)を変化させずに、第1容器101の角度のみを変化させて第2容器102へ注水を行うことができる。これにより制御装置1によるロボットアーム2の制御の容易化、学習モデル5の学習の容易化等が期待できる。
Further, the
また本実施の形態に係る制御装置1は、ロボットアーム2、第1容器101、第2容器102、作業台103及び容器置き場104等を含むようにカメラ3が撮影した全体画像から、第1容器101の画像を取得して学習モデル5への入力データとする。制御装置1は、全体画像から所定の領域を容器画像として抽出してもよく、全体画像に映された第1容器101を検出して容器画像を抽出してもよい。これにより、学習される画像に含まれるノイズ(第1容器101以外の画像)が減少し、学習モデル5の学習の精度が向上する。結果として、学習モデル5を用いる第1容器101の角度の制御を精度よく行うことが期待できる。
Further, the
また本実施の形態においては、制御装置1がロボットアーム2を制御して第1容器101を傾ける際に、第1容器101の角度に上限角度が定められており、この上限角度を超えない範囲で第1容器101の角度を制御装置1が制御する。これにより第1容器101の角度が大きくなりすぎることを防止でき、秤量動作を安定して行うことが期待できる。
Further, in the present embodiment, when the
また本実施の形態においては、カメラ3が撮影する画像に、第1容器101に収容された液体の液面の画像を含めるよう、カメラ3の位置及び撮影角度等が設定される。これにより、第1容器101に収容された液体の粘度等の情報を含む学習モデル5の学習処理が可能となり、液体秤量の精度の向上が期待できる。
Further, in the present embodiment, the position, the shooting angle, etc. of the
また本実施の形態においては、学習モデル5の学習処理に用いる教師データを、ロボットアーム2の見本動作により得られるデータを基に生成する。見本動作においては、ロボットアーム2が第1容器101の角度を基準角度から所定角度へ単調増加させた後、所定角度から基準角度へ単調減少させることで第1容器101から第2容器102への注水を完了させる。この見本動作における時系列の画像、角度及び液体量に基づいて、制御装置1が教師データを生成する。この教師データを用いて機械学習がなされた学習モデル5を用いることにより、制御装置1は、第1容器101の角度を基準角度から所定角度へ単調増加させた後、所定角度から基準角度へ単調減少させることで注水を完了させるよう、ロボットアーム2の動作を制御することができる。
Further, in the present embodiment, the teacher data used for the learning process of the
今回開示された実施形態はすべての点で例示であって、制限的なものではないと考えられるべきである。本発明の範囲は、上記した意味ではなく、特許請求の範囲によって示され、特許請求の範囲と均等の意味及び範囲内でのすべての変更が含まれることが意図される。 The embodiments disclosed this time are to be considered as illustrative in all points and not restrictive. The scope of the present invention is shown not by the above meaning but by the scope of the claims, and is intended to include meanings equivalent to the scope of the claims and all modifications within the scope.
1 制御装置
2 ロボットアーム
3 カメラ
4 計量器
5 学習モデル
11 処理部
11a 画像取得部
11b 現角度取得部
11c 液体量取得部
11d 次角度取得部
11e 制御処理部
11f 学習処理部
12 記憶部
13 通信部
14 表示部
15 操作部
20a 第1ベース部
20b 第2ベース部
20c 第1アーム部
20d 第2アーム部
20e 第3アーム部
21 第1軸
22 第2軸
23 第3軸
24 第4軸
25 第5軸
26 第6軸
51 RNNモデル
52 エンコーダ
53 デコーダ
99 記録媒体
101 第1容器
102 第2容器
103 作業台
104 容器置き場
111 全体画像
112 容器画像
DESCRIPTION OF
Claims (14)
第1時点における前記第1容器の画像、前記第1容器の角度及び前記第2容器の液体量を入力として受け付け、第2時点における前記第1容器の角度を出力するよう機械学習された学習モデルを用い、
前記ロボットアームの動作を制御する制御装置が、
第1時点に撮影された前記第1容器を含む画像を取得し、
前記第1時点の前記第1容器の角度を取得し、
前記第1時点の前記第2容器の液体量を取得し、
取得した画像、角度及び液体量を前記学習モデルへ入力して、前記学習モデルが出力する第2時点の角度を取得し、
取得した前記第2時点の角度に応じて、前記ロボットアームが保持する前記第1容器の角度を制御する、
液体秤量方法。 A liquid weighing method for pouring a predetermined amount of liquid from a first container held by a robot arm into a second container,
A learning model machine-learned to accept the image of the first container at the first time point, the angle of the first container, and the liquid amount of the second container as inputs, and output the angle of the first container at the second time point. Using
A control device for controlling the operation of the robot arm,
Acquiring an image including the first container taken at a first time point,
Obtaining the angle of the first container at the first time point,
Obtaining the liquid amount of the second container at the first time point,
The acquired image, angle, and liquid amount are input to the learning model to acquire the angle at the second time point output by the learning model,
Controlling the angle of the first container held by the robot arm according to the acquired angle at the second time point;
Liquid weighing method.
請求項1に記載の液体秤量方法。 The control device controls the operation of the robot arm such that parameters other than the angle of the first container are not changed.
The liquid weighing method according to claim 1.
前記制御装置は、複数の回転軸のうちの1つの回転軸の回転を制御し、当該回転軸以外の回転軸を固定して、前記ロボットアームの動作を制御する、
請求項2に記載の液体秤量方法。 The robot arm has a plurality of rotation axes that can be controlled by the control device,
The control device controls the rotation of one of the plurality of rotation shafts, fixes the rotation shafts other than the rotation shaft, and controls the operation of the robot arm.
The liquid weighing method according to claim 2.
請求項3に記載の液体秤量方法。 The control device controls rotation of one rotation shaft closest to a holding position of the first container to control an angle of the first container held by the robot arm,
The liquid weighing method according to claim 3.
請求項1から請求項4までのいずれか1つに記載の液体秤量方法。 The control device acquires an image of the first container from an entire image captured including the robot arm, the first container, and the second container, and inputs the image to the learning model.
The liquid weighing method according to any one of claims 1 to 4.
前記全体画像から前記第1容器を検出し、
検出した前記第1容器の画像を前記全体画像から取得する、
請求項5に記載の液体秤量方法。 The control device is
Detecting the first container from the overall image,
Acquiring an image of the detected first container from the overall image,
The liquid weighing method according to claim 5.
請求項1から請求項6までのいずれか1つに記載の液体秤量方法。 An upper limit is set for the angle of the first container,
The liquid weighing method according to any one of claims 1 to 6.
請求項1から請求項7までのいずれか1つに記載の液体秤量方法。 The image including the first container includes an image of the liquid surface of the liquid contained in the first container,
The liquid weighing method according to any one of claims 1 to 7.
請求項1から請求項8までのいずれか1つに記載の液体秤量方法。 The control device monotonically increases the angle of the first container from a reference angle to a predetermined angle, and then monotonically decreases from the predetermined angle to the reference angle, thereby injecting water from the first container to the second container. To control the angle of the first container held by the robot arm,
The liquid weighing method according to any one of claims 1 to 8.
第1時点における前記第1容器の画像、前記第1容器の角度及び前記第2容器の液体量を入力として受け付け、第2時点における前記第1容器の角度を出力するよう機械学習された学習モデルを記憶する記憶部と、
第1時点に撮影された前記第1容器を含む画像を取得する画像取得部と、
前記第1時点の前記第1容器の角度を取得する現角度取得部と、
前記第1時点の前記第2容器の液体量を取得する液体量取得部と、
前記画像取得部が取得した画像、前記現角度取得部が取得した現時点の角度及び前記液体量取得部が取得した液体量を、前記記憶部に記憶した前記学習モデルへ入力して、前記学習モデルが出力する第2時点の角度を取得する次角度取得部と
を備え、
前記制御部は、前記次角度取得部が取得した前記第2時点の角度に応じて、前記ロボットアームが保持する前記第1容器の角度を制御する、
制御装置。 A control device comprising a control unit for controlling operation of a robot arm, the control device performing control for pouring a predetermined amount of liquid from a first container held by the robot arm into a second container,
A learning model machine-learned to accept the image of the first container at the first time point, the angle of the first container, and the liquid amount of the second container as inputs, and output the angle of the first container at the second time point. A storage unit for storing
An image acquisition unit that acquires an image including the first container captured at a first time point;
A current angle acquisition unit that acquires the angle of the first container at the first time point,
A liquid amount acquisition unit that acquires the liquid amount of the second container at the first time point,
The image acquired by the image acquisition unit, the current angle acquired by the current angle acquisition unit, and the liquid amount acquired by the liquid amount acquisition unit are input to the learning model stored in the storage unit, and the learning model is acquired. And a next angle acquisition unit that acquires the angle at the second time point output by
The control unit controls the angle of the first container held by the robot arm according to the angle at the second time point acquired by the next angle acquisition unit,
Control device.
第1時点に撮影された前記第1容器を含む画像を取得し、
前記第1時点の前記第1容器の角度を取得し、
前記第1時点の前記第2容器の液体量を取得し、
第1時点における前記第1容器の画像、前記第1容器の角度及び前記第2容器の液体量を入力として受け付け、第2時点における前記第1容器の角度を出力するよう機械学習された学習モデルに対して、取得した前記第1時点の画像、角度及び液体量を入力して、前記学習モデルが出力する第2時点の角度を取得し、
取得した前記第2時点の角度に応じて、前記ロボットアームが保持する前記第1容器の角度を制御する、
コンピュータプログラム。 A computer that controls the operation of the robot arm that injects a predetermined amount of liquid from the first container to the second container,
Acquiring an image including the first container taken at a first time point,
Obtaining the angle of the first container at the first time point,
Obtaining the liquid amount of the second container at the first time point,
A learning model machine-learned to accept the image of the first container at the first time point, the angle of the first container, and the liquid amount of the second container as inputs, and output the angle of the first container at the second time point. In contrast, by inputting the acquired image, angle and liquid amount at the first time point, the angle at the second time point output by the learning model is acquired,
Controlling the angle of the first container held by the robot arm according to the acquired angle at the second time point;
Computer program.
前記ロボットアームが前記第1容器から前記第2容器へ前記所定量の液体を注水する際の前記第1容器の時系列の角度を取得し、
前記ロボットアームが前記第1容器から前記第2容器へ前記所定量の液体を注水する際の前記第2容器の時系列の液体量を取得し、
取得した第1時点における画像、角度及び液体量と、第2時点における画像、角度及び液体量とを対応付けた教師データを生成し、
第1時点における画像、角度及び液体量を入力として受け付け、第2時点における画像、角度及び液体量を出力する学習モデルに対し、生成した教師データを用いて機械学習を行い、
第1時点における前記第1容器の画像、前記第1容器の角度及び前記第2容器の液体量を入力として受け付け、第2時点における前記第1容器の画像、前記第1容器の角度及び前記第2容器の液体量を出力する学習モデルを生成する、
学習方法。 Acquiring a time-series image including the first container, which is photographed when pouring a predetermined amount of liquid from the first container held by the robot arm into the second container,
The robot arm acquires a time series angle of the first container when the predetermined amount of liquid is poured from the first container to the second container,
The robot arm acquires a time-series liquid amount of the second container when the predetermined amount of liquid is poured from the first container to the second container,
Teacher data in which the acquired image, angle, and liquid amount at the first time point are associated with the image, angle, and liquid amount at the second time point,
Machine learning is performed using the generated teacher data for a learning model that receives the image, angle, and liquid amount at the first time point as input, and outputs the image, angle, and liquid amount at the second time point,
The image of the first container at the first time point, the angle of the first container, and the liquid amount of the second container are accepted as inputs, and the image of the first container at the second time point, the angle of the first container, and the Generate a learning model that outputs the amount of liquid in two containers,
Learning method.
請求項12に記載の学習方法。 The image of the teacher data includes an image of the liquid level of the liquid contained in the first container,
The learning method according to claim 12.
請求項12又は請求項13に記載の学習方法。 The robot arm monotonically increases the angle of the first container from a reference angle to a predetermined angle, and then monotonically decreases from the predetermined angle to the reference angle, thereby injecting water from the first container to the second container. Generating the teacher data based on the time-series image, the angle, and the liquid amount when completed.
The learning method according to claim 12 or 13.
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2020069679A JP6725930B1 (en) | 2020-04-08 | 2020-04-08 | Liquid weighing method, control device, computer program and learning method |
PCT/JP2021/012633 WO2021205896A1 (en) | 2020-04-08 | 2021-03-25 | Liquid weighing method, control device, computer program, and learning method |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2020069679A JP6725930B1 (en) | 2020-04-08 | 2020-04-08 | Liquid weighing method, control device, computer program and learning method |
Publications (2)
Publication Number | Publication Date |
---|---|
JP6725930B1 true JP6725930B1 (en) | 2020-07-22 |
JP2021164980A JP2021164980A (en) | 2021-10-14 |
Family
ID=71664045
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2020069679A Active JP6725930B1 (en) | 2020-04-08 | 2020-04-08 | Liquid weighing method, control device, computer program and learning method |
Country Status (2)
Country | Link |
---|---|
JP (1) | JP6725930B1 (en) |
WO (1) | WO2021205896A1 (en) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20230271319A1 (en) * | 2022-02-28 | 2023-08-31 | Denso Wave Incorporated | Method of generating a learning model for transferring fluid from one container to another by controlling robot arm based on a machine-learned learning model, and a method and system for weighing the fluid |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2016181466A1 (en) * | 2015-05-11 | 2016-11-17 | 株式会社安川電機 | Dispensing system, controller, and control method |
JP7087006B2 (en) * | 2017-09-20 | 2022-06-20 | グーグル エルエルシー | Policy controller optimization for robotic agents that use image embedding |
JP2019098419A (en) * | 2017-11-28 | 2019-06-24 | キユーピー株式会社 | Machine learning method for learning extraction operation of powder, grain or fluid, and robot machine learning control device |
US20190197466A1 (en) * | 2017-12-27 | 2019-06-27 | E-Commerce Exchange Solutions, Inc. | Inventory control for liquid containers |
-
2020
- 2020-04-08 JP JP2020069679A patent/JP6725930B1/en active Active
-
2021
- 2021-03-25 WO PCT/JP2021/012633 patent/WO2021205896A1/en active Application Filing
Also Published As
Publication number | Publication date |
---|---|
WO2021205896A1 (en) | 2021-10-14 |
JP2021164980A (en) | 2021-10-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7881917B2 (en) | Apparatus simulating operations between a robot and workpiece models | |
CN101970184B (en) | Operation teaching system and operation teaching method | |
JP6540472B2 (en) | Simulation apparatus, simulation method, and simulation program | |
US8406923B2 (en) | Apparatus for determining pickup pose of robot arm with camera | |
JP6811465B2 (en) | Learning device, learning method, learning program, automatic control device, automatic control method and automatic control program | |
CN108724179A (en) | control device, robot and robot system | |
JP6931457B2 (en) | Motion generation method, motion generator, system and computer program | |
JP7219910B2 (en) | Optimal Compaction Judgment Construction System for Concrete | |
JP6725930B1 (en) | Liquid weighing method, control device, computer program and learning method | |
JP2008021092A (en) | Simulation apparatus of robot system | |
WO2019167765A1 (en) | Simulation device, method, and program | |
CN114599488A (en) | Machine learning data generation device, machine learning device, work system, computer program, machine learning data generation method, and work machine manufacturing method | |
JP5849477B2 (en) | Robot, robot control apparatus, robot control method, and program | |
JP2017203701A (en) | Information processing apparatus, measurement system, information processing method, and program | |
CN109669482A (en) | Cloud platform control method, device and equipment | |
JP2001100906A (en) | Three-dimensional data display device | |
JP2017227595A (en) | Damage figure creation support system and damage figure creation support method | |
JP5064533B2 (en) | Rotary weight filling apparatus and rotary weight filling method | |
JP3977369B2 (en) | Robot program generation device and analysis device | |
EP3839420A1 (en) | Dynamical modeling of cmms for numerically correcting measurement results | |
JP4703965B2 (en) | Rotary weight filling apparatus and rotary weight filling method | |
JP7442578B2 (en) | Learning model generation method, learning model generation program, learning model generation device, learning data generation method, learning data generation program, learning data generation device, inference method, inference program, inference device, weighing method, and weighing system | |
JP2015100567A (en) | Azimuth angle calibration method, motion analysis device and azimuth angle calibration program | |
JP2023130795A (en) | robot teaching system | |
CN114115288A (en) | Robot gait adjusting method, device, equipment and storage medium |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20200408 |
|
A871 | Explanation of circumstances concerning accelerated examination |
Free format text: JAPANESE INTERMEDIATE CODE: A871 Effective date: 20200408 |
|
A975 | Report on accelerated examination |
Free format text: JAPANESE INTERMEDIATE CODE: A971005 Effective date: 20200609 |
|
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: 20200616 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20200622 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 6725930 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |