(58)【調査した分野】(Int.Cl.,DB名)
【発明を実施するための形態】
【0017】
以下、図面を参照しつつ、本発明に従う各実施の形態について説明する。以下の説明では、同一の部品および構成要素には同一の符号を付してある。それらの名称および機能も同じである。したがって、これらについての詳細な説明は繰り返さない。なお、以下で説明される各実施の形態および各変形例は、適宜選択的に組み合わされてもよい。
【0018】
<A.搬送システム10の外観>
図1を参照して、搬送システム10について説明する。
図1は、搬送システム10の外観を示す図である。
【0019】
図1に示されるように、搬送システム10は、1つ以上の収納部200と、1つ以上の搬送装置300と、1つ以上の工作機械400と、1つ以上の作業ステーション500とを含む。
【0020】
収納部200は、搬送装置300によるワークの搬送先の1つである。収納部200には、複数のパレットPLが収納され得る。パレットPLは、ワークを取り付け可能に構成される。収納部200には、ワークが搭載されていない空のパレットや、加工前のワークを搭載するパレットや、加工途中のワークを搭載するパレットや、加工済みのワークを搭載するパレットなどが収納される。
【0021】
搬送装置300は、指定されたパレットPLを指定された場所に搬送する。より具体的には、搬送装置300は、レール330と、台車331とを含む。台車331は、たとえば、後述のサーボモータ335(
図2参照)によってレール330に沿って移動可能に構成される。また、台車331は、レール330と直交方向(すなわち、台車331の走行方向に直交する方向)に駆動可能に構成されるフォーク部333を有する。台車331は、レール330に沿って搬送対象のパレットPLの位置まで移動し、フォーク部333を用いて搬送対象のパレットPLを台車331上に載せる。その後、台車331は、レール330に沿って指定された搬送先まで移動し、フォーク部333を用いて搬送対象のパレットPLを搬送先に搬入する。
【0022】
工作機械400は、搬送装置300によるパレットPLの搬送先の1つである。工作機械400は、予め設計された加工プログラムに従って、搬入されたパレットPLに取り付けられているワークを加工する。ワークの加工が完了すると、工作機械400内のパレットPLは、搬送装置300によって収納部200または作業ステーション500に搬送される。
【0023】
作業ステーション500は、搬送装置300によるパレットPLの搬送先の1つである。作業ステーション500において、作業者は、搬入されたパレットPLに対して種々の作業を行う。一例として、作業者は、作業ステーション500において、搬入されたパレットPLに対して加工対象のワークを取り付ける作業や、加工済みのワークをパレットPLから取り外す作業などを行う。作業者は、パレットPLに対する作業が完了すると、作業完了を指示するための操作を行う。このことに基づいて、作業ステーション500内のパレットPLは、搬送装置300によって収納部200または工作機械400に搬送される。
【0024】
<B.搬送システム10の装置構成>
図2は、搬送システム10の装置構成の一例を示す図である。
図2を参照して、搬送システム10の装置構成の一例について説明する。
【0025】
図2に示されるように、搬送システム10は、制御部50と、リモートI/O(Input/Output)ユニット61〜63と、搬送装置300と、工作機械400と、作業ステーション500とを含む。
【0026】
本明細書でいう「制御部50」とは、搬送システム10を制御する装置を意味する。制御部50の装置構成は、任意である。制御部50は、単体の制御ユニットで構成されてもよいし、複数の制御ユニットで構成されてもよい。
図2の例では、制御部50は、コントロールシステム100と、制御盤150とで構成されている。制御部50は、工作機械400を制御するCNC401、または作業ステーション500内の操作端末550などを含んでもよい。
【0027】
コントロールシステム100は、搬送システム10を制御するメインコンピュータである。制御盤150は、加工工程を自動化するための種々の産業用機器を制御する。制御盤150は、PLC151を含む。
【0028】
コントロールシステム100およびPLC151は、ネットワークNW1に接続される。コントロールシステム100およびPLC151は、有線で通信接続されてもよいし、無線で通信接続されてもよい。ネットワークNW1には、EtherNET(登録商標)などが採用される。コントロールシステム100は、ネットワークNW1を介して、PLC151に制御指令を送る。当該制御指令によって、搬送対象のパレットPL、当該パレットPLの搬送先、当該パレットPLの搬送開始/停止などが指定される。
【0029】
リモートI/Oユニット61〜63およびPLC151は、ネットワークNW2に接続されている。ネットワークNW2には、データの到達時間が保証される、定周期通信を行うフィールドネットワークを採用することが好ましい。このような定周期通信を行うフィールドネットワークとして、EtherCAT(登録商標)、EtherNet/IP(登録商標)、CC−Link(登録商標)、またはCompoNet(登録商標)などが採用される。
【0030】
搬送装置300は、1つ以上のサーボドライバ334と、1つ以上のサーボモータ335とを含む。搬送装置300内または搬送装置300周辺には、リモートI/Oユニット61が設置される。リモートI/Oユニット61は、搬送装置300内の各種駆動ユニット(たとえば、サーボドライバ334)と、PLC151との間のデータのやり取りを仲介する。サーボドライバ334は、リモートI/Oユニット61を介してPLC151からの制御指令を一定周期ごとに受け、当該制御指令に従って、サーボモータ335を駆動制御する。一例として、一つのサーボモータ335は、上述の台車331(
図1参照)を駆動制御し、もう一つのサーボモータ335は、上述のフォーク部333(
図1参照)を駆動制御する。
【0031】
サーボドライバ334は、PLC151から目標回転速度(または目標位置)の入力を逐次的に受け、サーボモータ335が目標回転速度で回転するようにサーボモータ335を制御する。より具体的には、サーボドライバ334は、サーボモータ335用のエンコーダ(図示しない)のフィードバック信号からサーボモータ335の実回転速度(または実位置)を算出し、当該実回転速度が目標回転速度よりも小さい場合にはサーボモータ335の回転速度を上げ、当該実回転速度が目標回転速度よりも大きい場合にはサーボモータ335の回転速度を下げる。このように、サーボドライバ334は、サーボモータ335の回転速度のフィードバックを逐次的に受けながらサーボモータ335の回転速度を目標回転速度に近付ける。これにより、搬送装置300は、パレットPLを任意の搬送先に移動することができる。
【0032】
工作機械400は、CNC(Computer Numerical Control)401と、サーボドライバ411と、サーボモータ412とを含む。工作機械400内または工作機械400周辺には、リモートI/Oユニット62が設置される。リモートI/Oユニット62は、工作機械400内の各種駆動ユニット(たとえば、CNC401)と、PLC151との間のデータのやり取りを仲介する。サーボドライバ411は、サーボドライバ334と同様に、リモートI/Oユニット62を介してPLC151からの制御指令を一定周期ごとに受け、当該制御指令に従って、サーボモータ412を駆動制御する。
【0033】
作業ステーション500は、作業者による操作を受け付ける操作端末550を含む。作業ステーション500内または作業ステーション500周辺には、リモートI/Oユニット63が設置される。リモートI/Oユニット63は、操作端末550とPLC151との間のデータのやり取りを仲介する。操作端末550に対する作業者の操作内容は、リモートI/Oユニット63介してPLC151に一定周期ごとに送られる。
【0034】
<C.概要>
次に、上述の
図1を参照して、搬送システム10によるワークの搬送制御について説明する。
【0035】
搬送システム10は、工作機械400がワークを加工している間に、次に加工予定のワークを作業ステーション500から収納部200に搬送する。次に加工予定のワークは、工作機械400での加工が終了するまで待機する。その後、工作機械400によるワークの加工が終了したことに基づいて、次に加工予定のワークは、収納部200から工作機械400に搬送される。
【0036】
ワークの重量が重いほど、搬送装置300によるワークの搬送時間が長くなる。そのため、次に加工される予定のワークは、工作機械400の近くに収納されておくことが好ましい。これにより、収納部200から工作機械400への搬送時間が短縮される。
【0037】
しかしながら、各ワークが工作機械400の近い場所から順に収納された場合には、加工順が後の重いワークは、工作機械400から遠い場所に収納される可能性がある。この場合、搬送時間が長くなってしまう。そこで、搬送システム10の制御部50は、作業ステーション500から収納部200への搬送対象のワークの重量(第1重量)を取得し、当該重量に基づいて、搬送対象のワークについて収納部200内の収納先を決定する。当該収納先は、搬送対象のワークの重量が重いほど工作機械400に近くなるように決定される。
【0038】
これにより、搬送システム10は、重いワークを工作機械400の近くに収納することができ、ワークの搬送効率が改善される。結果として、ワークの生産性が上がる。
【0039】
<D.制御部50の機能構成>
図3〜
図12を参照して、上述の制御部50(
図2参照)の機能について説明する。
図3は、制御部50の機能構成の一例を示す図である。
【0040】
図3に示されるように、制御部50は、機能構成として、スケジュール生成部152と、取得部154と、搬送制御部156とを含む。これらの機能構成は、制御部50を構成するコントロールシステム100またはPLC151に実装される。あるいは、これらの機能構成は、操作端末550に実装されてもよい。
【0041】
ある局面において、スケジュール生成部152、搬送制御部156、および取得部154の一部がコントロールシステム100に実装され、残りの機能構成がPLC151に実装される。他の局面において、スケジュール生成部152、搬送制御部156、および取得部154の全部がコントロールシステム100に実装される。他の局面において、スケジュール生成部152、搬送制御部156、および取得部154の全部がPLC151に実装される。
【0042】
(D1.スケジュール生成部152)
まず、
図4〜
図6を参照して、
図3に示されるスケジュール生成部152の機能について説明する。
【0043】
スケジュール生成部152は、
図4に示される加工設定123と、
図5に示されるワーク情報124とに基づいて、
図6に示される加工スケジュール125を生成する。
【0044】
図4は、加工設定123のデータ構造の一例を示す図である。作業者は、加工設定123を登録することにより加工対象のワークを予め登録しておく。加工設定123は、たとえば、上述のコントロールシステム100または上述の操作端末550などにおいて作業者によって登録される。作業者によって登録される内容は、たとえば、加工対象のワークの識別情報(ワーク名やワークIDなど)、加工対象のワークの個数、およびワークの加工順などを含む。
【0045】
図4の例では、加工設定123は、加工時間が15分である1つのワークWAの加工タスクと、加工時間が35分である1つのワークWBの加工タスクと、加工時間が25分である2つのワークWCの加工タスクと、加工時間が35分である3つのワークWDの加工タスクとを含んでいる。
【0046】
図5は、ワーク情報124のデータ構造の一例を示す図である。一例として、ワーク情報124には、ワークの加工を実現するための加工プログラムと、ワークの重量と、ワークの加工に要する加工時間と、ワークの加工に関するその他の情報とが、ワークの識別情報別に規定されている。
【0047】
ワーク情報124に規定される加工プログラムは、たとえば、上述のコントロールシステム100、上述の工作機械400、または上述の操作端末550などにおいて作業者によって登録される。当該加工プログラムの生成方法は、任意である。一例として、工作機械400の中には、オペレータが対話形式での質問に応えることにより自動で加工プログラムを生成する機能を有するものがある。加工プログラムは、たとえば、当該機能により生成される。あるいは、加工プログラムは、作業者がプログラムコードを記述することにより設計されてもよい。
【0048】
ワーク情報124に規定される重量は、たとえば、ユーザによって予め設定されてもよいし、加工プログラムの設計時などに登録されてもよい。一例として、当該重量は、操作端末550において入力される。当該重量は、加工開始前のワークの重さを示す。
【0049】
ワーク情報124に規定される加工時間は、たとえば、作業者によって予め入力される。あるいは、当該加工時間は、各ワークの過去の加工実績から算出されてもよい。
【0050】
スケジュール生成部152は、ワーク情報124を参照して、加工設定123に規定される各ワークについて加工時間を特定する。次に、スケジュール生成部152は、当該特定した加工時間と、加工設定123に規定される各ワークの個数と、加工設定123に規定される各ワークの加工順序とに基づいて、
図6に示される加工スケジュール125を生成する。
【0051】
図6は、一例としての加工スケジュール125を示す図である。加工スケジュール125には、工作機械400の各々におけるワークの加工タスクが規定される。スケジュール生成部152によって生成された加工スケジュール125は、搬送システム10の記憶装置に格納されてもよいし、搬送制御部156に出力されてもよい。
【0052】
(D2.取得部154)
次に、上述の
図5を参照して、
図3に示される取得部154の機能について説明する。
【0053】
取得部154は、搬送対象のワークの重量を取得する。搬送対象のワークの重量は、たとえば、ワーク情報124から取得される。上述のように、ワーク情報124は、各種ワークの重量を規定している。取得部154は、搬送対象のワークの種別を搬送制御部156から取得したことに基づいて、当該ワークの種別に対応する重量をワーク情報124から取得する。取得したワークの重量は、搬送制御部156に出力される。
【0054】
なお、ワークの重量の取得方法は、上述の方法に限定されない。ワークの重量は、様々な方法で取得され得る。
【0055】
ある局面において、取得部154は、搬送対象のワークの重量を重量センサ(図示しない)から取得する。当該重量センサは、たとえば、各パレットに設けられる。重量センサは、ワークがパレットに取り付けられたことに基づいて、当該ワークの重量を検知する。当該ワークの重量は、たとえば、制御部50に送信される。
【0056】
他の局面において、取得部154は、カメラ(図示しない)を用いて搬送対象のワークの重量を計測する。当該カメラは、たとえば、作業ステーション500内に設けられる。ワークが作業ステーション500内において取り付けられたことに基づいて、取得部154は、当該カメラに撮影指示を送る。これにより、取得部154は、搬送対象のワークを表わす画像を取得する。
【0057】
画像からのワークの重量の検知方法には、種々の画像処理が用いられ得る。一例として、ワークの重量は、学習済みモデルを用いて測定される。学習済みモデルは、学習用データセットを用いた学習処理により予め生成されている。学習用データセットは、ワークが写っている複数の学習用画像を含む。各学習用画像には、ワークの重量を示すラベルが関連付けられる。学習済みモデルの内部パラメータは、このような学習用データセットを用いた学習処理により予め最適化されている。
【0058】
学習済みモデルを生成するための学習手法には、種々の機械学習アルゴリズムが採用され得る。一例として、当該機械学習アルゴリズムとして、ディープラーニング、コンボリューションニューラルネットワーク(CNN)、全層畳み込みニューラルネットワーク(FCN)、サポートベクターマシンなどが採用される。
【0059】
取得部154は、カメラから得られた画像を学習済みモデルに入力する。当該学習済みモデルは、画像の入力を受け付けると、当該画像に写っているワークの重量を出力する。これにより、取得部154は、搬送対象のワークの重量を取得する。なお、画像を用いたワーク重量の推定方法は、学習済モデルを用いた上述の方法に限定されず、ルールベースに基づく画像処理が採用されてもよい。
【0060】
さらに他の局面において、取得部154は、搬送装置300にかかるモータ負荷から当該ワークの重量を推定してもよい。より具体的には、モータ負荷が大きいほど、ワークの重量が多くなる。
【0061】
モータ負荷は、たとえば、搬送装置300のサーボモータ335(
図2参照)に出力する電流値の大きさと相関するため、取得部154は、たとえば、当該電流値の大きさに基づいて、サーボモータ335にかかるモータ負荷を検知する。サーボモータ335が三相交流モータである場合、サーボモータ335は、インバータ(図示しない)を介して制御される。この場合、サーボモータ335のトルクは、たとえば、下記の式(1)に基づいて制御される。
【0062】
T=K×(V/f)×I・・・(1)
式(1)に示される「T」は、サーボモータ335のトルク(モータ負荷)を示す。「K」は、定数である。「V」は、インバータへの出力電圧値を示す。「f」は、インバータの出力周波数を示す。「I」は、インバータへの出力電流値を示す。「K×(V/f)」は、一定周波数(たとえば、60Fz)までは一定値となる。すなわち、モータ負荷は、インバータの出力電流値「I」に応じて変わる。
【0063】
この点に着目して、取得部154は、インバータの出力電流値「I」に基づいて、搬送対象のワークの重量を推定する。より具体的には、出力電流値「I」の大きさと、搬送対象のワークの重量との相関関係は、予め決められている。当該相関関係は、ワークの重量を出力電流値別に対応付けたテーブル形式で規定されてもよいし、出力電流値を説明変数とし、ワークの重量を目的変数とする相関式で規定されてもよい。
【0064】
(D3.搬送制御部156)
次に、
図3に示される搬送制御部156の機能について説明する。まず、
図7を参照して、加工スケジュール125に規定される1つ目のワークWAの搬送過程について説明する。
図7は、収納部200から工作機械400へのワークの搬送過程の一例を示す図である。
【0065】
搬送制御部156は、上述の加工スケジュール125を参照して、1つ目の加工対象としてワークWAを認識する。このことに基づいて、搬送制御部156は、収納部200から作業ステーション500に空のパレットの搬送を開始する。このときの搬送対象のパレットは、空のパレットの内からランダムに決められてもよいし、予め指定されたパレットから決められてもよい。
図7の例では、収納部200は、パレットの収納場所P1〜P10を有しており、空のパレットPL4が搬送対象として決定されている。
【0066】
次に、作業者は、ワークWAをパレットPL4に取り付ける。ワークWAの取り付け作業が完了すると、作業者は、パレットPL4の搬送開始操作を行う。一例として、当該搬送開始操作は、作業ステーション500内に設けられている搬送開始ボタンの押下に実現される。
【0067】
工作機械400が非加工中である場合、搬送制御部156は、ワークWAが取り付けられたパレットPL4を工作機械400に搬送する。工作機械400へのパレットPL4の搬送が完了すると、工作機械400は、ワークWAの加工を開始する。
【0068】
次に、
図8〜
図10を参照して、加工スケジュール125に規定される2つ目のワークWBの搬送過程について説明する。
図8は、ワークWBの重量が軽い場合における作業ステーション500から収納部200へのワークWBの搬送過程を示す図である。
【0069】
搬送制御部156は、1つ目の加工対象であるワークWAの搬送が完了したことに基づいて、上述の加工スケジュール125を参照して、2つ目の加工対象としてワークWBを認識する。このとき、工作機械400は、ワークWAの加工中であるため、搬送制御部156は、工作機械400が空くまでワークWBを収納部200に一時的に収納する必要がある。この場合、搬送制御部156は、上述のワーク情報124(
図5参照)からワークWBの重量(第1重量)を取得し、当該重量に基づいて、ワークWBについての収納先を決定する。その際、当該収納先は、ワークWBの重量が重いほど工作機械400に近くなるように決定される。
【0070】
一例として、搬送制御部156は、
図9に示される収納場所情報126に基づいて、ワークWBの収納先を決定する。
図9は、収納場所情報126のデータ構造の一例を示す図である。
【0071】
収納場所情報126は、収納部200の収納場所別に、ワークの重量範囲と、当該収納場所の座標値と、当該収納場所におけるパレットの有無またはパレットの識別情報、当該収納場所におけるワークの有無またはワークの識別情報などを規定している。
【0072】
工作機械400に近い収納場所ほど、対応付けられる重量範囲が重量側となる。一例として、収納場所P1には、重量範囲Δw1が対応付けられている。
【0073】
収納場所P2には、重量範囲Δw2が対応付けられている。重量範囲Δw2の上限値は、重量範囲Δw1の下限値よりも小さい。
【0074】
収納場所P3には、重量範囲Δw3が対応付けられている。重量範囲Δw3の上限値は、重量範囲Δw2の下限値よりも小さい。
【0075】
収納場所P4には、重量範囲Δw4が対応付けられている。重量範囲Δw4の上限値は、重量範囲Δw3の下限値よりも小さい。
【0076】
収納場所P5には、重量範囲Δw5が対応付けられている。重量範囲Δw5の上限値は、重量範囲Δw4の下限値よりも小さい。
【0077】
収納場所P6には、重量範囲Δw6が対応付けられている。重量範囲Δw6の上限値は、重量範囲Δw5の下限値よりも小さい。
【0078】
収納場所P7には、重量範囲Δw7が対応付けられている。重量範囲Δw7の上限値は、重量範囲Δw6の下限値よりも小さい。
【0079】
収納場所P8には、重量範囲Δw8が対応付けられている。重量範囲Δw8の上限値は、重量範囲Δw7の下限値よりも小さい。
【0080】
収納場所P9には、重量範囲Δw9が対応付けられている。重量範囲Δw9の上限値は、重量範囲Δw8の下限値よりも小さい。
【0081】
収納場所P10には、重量範囲Δw10が対応付けられている。重量範囲Δw10の上限値は、重量範囲Δw9の下限値よりも小さい。
【0082】
搬送制御部156は、収納場所情報126を参照して、ワークWBの重量が属する重量範囲を特定し、当該重量範囲に対応付けられている収納場所をワークWBの収納先として決定する。
図8の例では、軽いワークWBについては収納場所P9が収納先として決定されている。
【0083】
次に、搬送制御部156は、収納場所P9にある空のパレットPL9を収納部200から作業ステーション500に搬送する。その後、作業者は、ワークWBをパレットPL9に取り付ける。ワークWBの取り付け作業が完了すると、作業者は、パレットPL9の搬送開始操作を行う。その後、搬送制御部156は、パレットPL9を作業ステーション500から収納場所PL9に搬送する。これにより、軽いワークWBは、工作機械400から遠い収納場所P9に収納される。
【0084】
図10は、ワークWBの重量が重い場合における作業ステーション500から収納部200へのワークWBの搬送過程を示す図である。
【0085】
上述と同様に、搬送制御部156は、収納場所情報126を参照して、ワークWBの重量が属する重量範囲を特定し、当該重量範囲に対応付けられている収納場所をワークWBの収納先として決定する。
図10の例では、重いワークWBについては収納場所P1が収納先として決定されている。
【0086】
次に、搬送制御部156は、収納場所P1にある空のパレットPL1を収納部200から作業ステーション500に搬送する。その後、作業者は、ワークWBをパレットPL1に取り付ける。ワークWBの取り付け作業が完了すると、作業者は、パレットPL1の搬送開始操作を行う。その後、搬送制御部156は、パレットPL1を作業ステーション500から収納場所PL1に搬送する。これにより、重いワークWBは、工作機械400の近くである収納場所P1に収納される。
【0087】
次に、
図11および
図12を参照して、加工スケジュール125に規定される3つ目のワークWCの搬送過程について説明する。
図11は、ワークWCの重量がワークWBの重量よりも軽い場合における作業ステーション500から収納部200へのワークWCの搬送過程を示す図である。
【0088】
搬送制御部156は、2つ目の加工対象であるワークWBの搬送が完了したことに基づいて、上述の加工スケジュール125を参照して、3つ目の加工対象としてワークWCを認識する。このとき、工作機械400は、ワークWAの加工中であるため、搬送制御部156は、工作機械400が空くまでワークWCを収納部200に一時的に収納する必要がある。この場合、搬送制御部156は、上述のワーク情報124からワークWCの重量を取得し、当該重量に基づいて、ワークWCについての収納先を決定する。
【0089】
図11に示されるように、1つ以上のワークが収納部200に既に収納されている場合には、搬送制御部156は、収納済のワークの重量を基準にワークWCの収納先を決定する。以下では、ワークWBが収納場所P5に収納されている前提で、ワークWCについての搬送過程について説明する。
【0090】
搬送制御部156は、上述のワーク情報124を参照して、収納済のワークWBの重量を取得するとともに、搬送対象のワークWCの重量を取得する。その後、搬送制御部156は、収納済のワークWBの重量と、搬送対象のワークWCの重量とを比較することで、ワークWCの収納場所を決定する。
【0091】
図11に示されるように、搬送対象のワークWCの重量(第1重量)が収納済のワークWBの重量(第2重量)よりも軽い場合、搬送制御部156は、ワークWBの収納場所P5よりも工作機械400から遠くなるように、ワークWCの収納先を決定する。この場合、ワークWCの収納先は、ワークWBの収納場所P5よりも工作機械400から遠い収納場所P6〜P10の内から決定される。
【0092】
図12は、ワークWCの重量がワークWBの重量よりも重い場合における作業ステーション500から収納部200へのワークWCの搬送過程を示す図である。
図12に示されるように、搬送対象のワークWCの重量(第1重量)が収納済のワークWBの重量(第2重量)よりも重い場合、搬送制御部156は、ワークWBの収納場所P5よりも工作機械400に近くなるように、ワークWCの収納先を決定する。この場合、ワークWCの収納先は、ワークWBの収納場所P5よりも工作機械400に近い収納場所P1〜P4の内から決定される。
【0093】
図11および
図12の例に示されるように、搬送対象のワークの収納先は、ワークの収納場所とワークの重量との関係に基づいて、必ずしも決定される必要はなく、収納部200に収納済のワークの重量を基準として決定されてもよい。これにより、ワークの収納場所とワークの重量との関係を予め規定する必要がなくなり、搬送制御部156は、柔軟かつ効率的にワークを搬送することができる。
【0094】
なお、上述では、搬送対象のワークの収納先が、収納部200から作業ステーション500へのワークの搬送前に決定される例について説明を行ったが、当該収納先を決定するタイミングは、任意である。一例として、当該収納先は、作業ステーション500でのワークの取り付け作業が完了した後に決定されてもよい。この場合には、ワークの重量が必ずしも予め規定される必要がない。
【0095】
<E.データの共有方法>
図13を参照して、搬送システム10を構成する各種機器間でのデータの共有方法について説明する。
図13は、搬送システム10を構成する各種機器の協働関係を概略的に示す概念図である。
【0096】
上述のように、コントロールシステム100およびPLC151は、EtherNETなどのネットワークNW1に接続される。リモートI/Oユニット61〜63およびPLC151は、フィールドネットワークであるネットワークNW2に接続される。
【0097】
ネットワークNW2には、フレーム72が伝送される。フレーム72は、ネットワークNW2上を予め定められた制御周期ごとに周回する。リモートI/Oユニット61〜63およびPLC151は、フレーム72を介して各種データを共有する。
【0098】
フレーム72は、たとえば、PLC151用のデータ領域71Aと、リモートI/Oユニット61に接続される搬送装置300用のデータ領域71Bと、リモートI/Oユニット62に接続される工作機械400用のデータ領域71Cと、リモートI/Oユニット63に接続される操作端末550用のデータ領域71Dとを有する。
【0099】
フレーム72のデータ領域71Aは、PLC151が各種データを書き込む領域である。データ領域71Aには、パレットPLの搬送指示などが書き込まれる。当該搬送指示には、パレットPLの搬送先が含まれる。当該搬送先は、たとえば、パレット収納部200内の格納場所を示す識別番号(たとえば、格納場所を示すID(Identification))や、工作機械400を識別するための識別番号(たとえば、工作機械のID)などで表わされる。PLC151によってデータ領域71Aに書き込まれた各種データは、ネットワークNW2に接続される各種機器に参照され得る。
【0100】
フレーム72のデータ領域71Bは、リモートI/Oユニット61が搬送装置300に関する各種データを書き込む領域である。データ領域71Bに書き込まれた各種データは、ネットワークNW2に接続される各種機器に参照される。
【0101】
フレーム72のデータ領域71Cは、リモートI/Oユニット62が工作機械400に関する各種データを書き込む領域である。データ領域71Cに書き込まれた各種データは、ネットワークNW2に接続される各種機器に参照される。
【0102】
フレーム72のデータ領域71Dは、たとえば、リモートI/Oユニット63が操作端末550に対する操作内容を書き込む領域である。一例として、フレーム72のデータ領域71Dには、作業ステーション500からのパレットの搬送に対する許可または拒否の選択結果などが書き込まれる。
【0103】
<F.コントロールシステム100のハードウェア構成>
図14を参照して、コントロールシステム100のハードウェア構成について説明する。
図14は、コントロールシステム100のハードウェア構成の一例を示す模式図である。
【0104】
コントロールシステム100は、プロセッサ101と、ROM(Read Only Memory)102と、RAM(Random Access Memory)103と、通信インターフェイス104と、表示インターフェイス105と、入力インターフェイス107と、記憶装置120とを含む。これらのコンポーネントは、バス110に接続される。
【0105】
プロセッサ101は、たとえば、少なくとも1つの集積回路によって構成される。集積回路は、たとえば、少なくとも1つのCPU(Central Processing Unit)、少なくとも1つのGPU(Graphics Processing Unit)、少なくとも1つのASIC(Application Specific Integrated Circuit)、少なくとも1つのFPGA(Field Programmable Gate Array)、またはそれらの組み合わせなどによって構成され得る。
【0106】
プロセッサ101は、制御プログラム122やオペレーティングシステムなどの各種プログラムを実行することでコントロールシステム100の動作を制御する。制御プログラム122は、ワークの搬送制御に係るプログラムである。プロセッサ101は、制御プログラム122の実行命令を受け付けたことに基づいて、記憶装置120またはROM102からRAM103に制御プログラム122を読み出す。RAM103は、ワーキングメモリとして機能し、制御プログラム122の実行に必要な各種データを一時的に格納する。
【0107】
通信インターフェイス104には、LAN(Local Area Network)やアンテナなどが接続される。コントロールシステム100は、通信インターフェイス104を介してネットワークNW1に接続される。これにより、コントロールシステム100は、ネットワークNW1に接続される外部機器とデータをやり取りする。当該外部機器は、たとえば、制御盤150やサーバー(図示しない)などを含む。コントロールシステム100は、当該外部機器から制御プログラム122をダウンロードできるように構成されてもよい。
【0108】
表示インターフェイス105には、ディスプレイ106が接続される。表示インターフェイス105は、プロセッサ101などからの指令に従って、ディスプレイ106に対して、画像を表示するための画像信号を送出する。ディスプレイ106は、たとえば、液晶ディスプレイ、有機EL(Electro Luminescence)ディスプレイ、またはその他の表示機器である。なお、ディスプレイ106は、コントロールシステム100と一体的に構成されてもよいし、コントロールシステム100とは別に構成されてもよい。
【0109】
入力インターフェイス107には、入力デバイス108が接続される。入力デバイス108は、たとえば、マウス、キーボード、タッチパネル、またはユーザの操作を受け付けることが可能なその他の装置である。なお、入力デバイス108は、コントロールシステム100と一体的に構成されてもよいし、コントロールシステム100とは別に構成されてもよい。
【0110】
記憶装置120は、たとえば、ハードディスクやフラッシュメモリなどの記憶媒体である。記憶装置120は、制御プログラム122、上述の加工設定123、上述のワーク情報124、上述の加工スケジュール125、および上述の収納場所情報126などを格納する。記憶装置120に記憶される各種データの格納場所は、記憶装置120に限定されず、プロセッサ101の記憶領域(たとえば、キャッシュメモリなど)、ROM102、RAM103、外部機器(たとえば、PLC151や外部サーバー)などに格納されていてもよい。
【0111】
制御プログラム122は、単体のプログラムとしてではなく、任意のプログラムの一部に組み込まれて提供されてもよい。この場合、制御プログラム122による搬送制御処理は、任意のプログラムと協働して実現される。このような一部のモジュールを含まないプログラムであっても、本実施の形態に従う制御プログラム122の趣旨を逸脱するものではない。さらに、制御プログラム122によって提供される機能の一部または全部は、専用のハードウェアによって実現されてもよい。さらに、少なくとも1つのサーバーが制御プログラム122の処理の一部を実行する所謂クラウドサービスのような形態でコントロールシステム100が構成されてもよい。
【0112】
<G.PLC151のハードウェア構成>
図15を参照して、PLC151のハードウェア構成の一例について説明する。
図15は、PLC151の主要なハードウェア構成を示すブロック図である。
【0113】
PLC151は、プロセッサ161と、ROM(Read Only Memory)162と、RAM(Random Access Memory)163と、通信インターフェイス164,165と、記憶装置170とを含む。
【0114】
プロセッサ161は、少なくとも1つの集積回路によって構成される。集積回路は、たとえば、少なくとも1つのCPU、少なくとも1つのMPU(Micro Processing Unit)、少なくとも1つのASIC、少なくとも1つのFPGAまたはそれらの組み合わせなどによって構成される。
【0115】
プロセッサ161は、制御プログラム172など各種プログラムを実行することで搬送装置300や工作機械400の動作を制御する。プロセッサ161は、制御プログラム172の実行命令を受け付けたことに基づいて、記憶装置170からROM162に制御プログラム172を読み出す。RAM163は、ワーキングメモリとして機能し、制御プログラム172の実行に必要な各種データを一時的に格納する。
【0116】
通信インターフェイス164には、LANやアンテナなどが接続される。PLC151は、通信インターフェイス164を介してネットワークNW1に接続される。これにより、PLC151は、ネットワークNW1に接続される外部機器とデータをやり取りする。当該外部機器は、たとえば、コントロールシステム100やサーバー(図示しない)などを含む。
【0117】
通信インターフェイス165は、フィールドネットワークであるネットワークNW2に接続するためのインターフェイスである。PLC151は、通信インターフェイス165を介してネットワークNW2に接続される外部機器とデータをやり取りする。当該外部機器は、たとえば、リモートI/Oユニット61〜63などを含む。
【0118】
記憶装置170は、たとえば、ハードディスクやフラッシュメモリなどの記憶媒体である。記憶装置170は、制御プログラム172、ワーク情報174、加工スケジュール175、および収納場所情報176などを格納する。ワーク情報174は、上述のコントロールシステム100から受信したワーク情報124に相当する。加工スケジュール175は、上述のコントロールシステム100から受信した加工スケジュール125に相当する。収納場所情報176は、上述のコントロールシステム100から受信した収納場所情報126に相当する。記憶装置170に記憶される各種データの格納場所は、記憶装置170に限定されず、プロセッサ161の記憶領域(たとえば、キャッシュ領域など)、ROM162、RAM163、外部機器(たとえば、サーバー)などに格納されていてもよい。
【0119】
制御プログラム172は、単体のプログラムとしてではなく、任意のプログラムの一部に組み込まれて提供されてもよい。この場合、本実施の形態に従う制御処理は、任意のプログラムと協働して実現される。このような一部のモジュールを含まないプログラムであっても、本実施の形態に従う制御プログラム172の趣旨を逸脱するものではない。さらに、制御プログラム172によって提供される機能の一部または全部は、専用のハードウェアによって実現されてもよい。さらに、少なくとも1つのサーバーが制御プログラム172の処理の一部を実行する所謂クラウドサービスのような形態でPLC151が構成されてもよい。
【0120】
<H.工作機械400のハードウェア構成>
図16を参照して、工作機械400のハードウェア構成の一例について説明する。
図16は、工作機械400の主要なハードウェア構成を示すブロック図である。
【0121】
工作機械400は、CNC401と、ROM402と、RAM403と、フィールドバスコントローラ404と、表示インターフェイス405と、入力インターフェイス409と、サーボドライバ411A〜411Dと、サーボモータ412A〜412Dと、エンコーダ413A〜413Dと、ボールねじ414A,414Bと、工具を取り付けるための主軸415とを含む。これらの機器は、バス(図示しない)を介して接続されている。
【0122】
CNC401は、少なくとも1つの集積回路によって構成される。集積回路は、たとえば、少なくとも1つのCPU、少なくとも1つのMPU、少なくとも1つのASIC、少なくとも1つのFPGA、またはそれらの組み合わせなどによって構成される。
【0123】
CNC401は、加工プログラム422など各種プログラムを実行することでCNC400の動作を制御する。CNC401は、加工プログラム422の実行命令を受け付けたことに基づいて、記憶装置420からROM402に加工プログラム422を読み出す。RAM403は、ワーキングメモリとして機能し、加工プログラム422の実行に必要な各種データを一時的に格納する。
【0124】
フィールドバスコントローラ404は、リモートI/Oユニット62を介してPLC151との通信を実現するためのインターフェイスである。CNC400は、フィールドバスコントローラ404を介してPLC151との間でデータをやり取りする。
【0125】
表示インターフェイス405は、ディスプレイ430などの表示機器と接続され、CNC401などからの指令に従ってディスプレイ430に対して画像を表示するための画像信号を送出する。ディスプレイ430は、たとえば、液晶ディスプレイ、有機ELディスプレイ、またはその他の表示機器である。
【0126】
入力インターフェイス409は、入力デバイス431に接続され得る。入力デバイス431は、たとえば、マウス、キーボード、タッチパネル、またはユーザ操作を受け付けることが可能なその他の入力機器である。
【0127】
CNC400は、加工プログラム422に従ってサーボドライバ411Aを制御する。サーボドライバ411Aは、CNC401から目標回転数(または目標位置)の入力を逐次的に受け、サーボモータ412Aが目標回転数で回転するようにサーボモータ412Aを制御し、ワーク設置台(図示しない)をX軸方向に駆動する。より具体的には、サーボドライバ411Aは、エンコーダ413Aのフィードバック信号からサーボモータ412Aの実回転数(または実位置)を算出し、当該実回転数が目標回転数よりも小さい場合にはサーボモータ412Aの回転数を上げ、当該実回転数が目標回転数よりも大きい場合にはサーボモータ412Aの回転数を下げる。このように、サーボドライバ411Aは、サーボモータ412Aの回転数のフィードバックを逐次的に受けながらサーボモータ412Aの回転数を目標回転数に近付ける。サーボドライバ411Aは、ボールねじ414Aに接続されるワーク設置台をX軸方向に移動し、ワーク設置台をX軸方向の任意の位置に移動する。
【0128】
同様のモータ制御により、サーボドライバ411Bは、ボールねじ414Bに接続されるワーク設置台をCNC400からの制御指令に従ってY軸方向に移動し、ワーク設置台をY軸方向の任意の位置に移動する。同様のモータ制御を行うことにより、サーボドライバ411Cは、CNC400からの制御指令に従って主軸415をZ軸方向に移動し、主軸415をZ軸方向の任意の位置に移動する。同様のモータ制御を行うことにより、サーボドライバ411Dは、CNC400からの制御指令に従って、主軸415の回転速度を制御する。
【0129】
記憶装置420は、たとえば、ハードディスクやフラッシュメモリなどの記憶媒体である。記憶装置420は、加工プログラム422などを格納する。加工プログラム422の格納場所は、記憶装置420に限定されず、CNC401の記憶領域(たとえば、キャッシュ領域など)、ROM402、RAM403、外部機器(たとえば、サーバー)などに格納されていてもよい。
【0130】
<I.操作端末550のハードウェア構成>
図17を参照して、作業ステーション500に設置されている操作端末550のハードウェア構成について説明する。
図17は、操作端末550のハードウェア構成の一例を示す模式図である。
【0131】
操作端末550は、プロセッサ501と、ROM502と、RAM503と、通信インターフェイス504と、表示インターフェイス505と、入力インターフェイス507と、記憶装置520とを含む。これらのコンポーネントは、バス510に接続される。
【0132】
プロセッサ501は、たとえば、少なくとも1つの集積回路によって構成される。集積回路は、たとえば、少なくとも1つのCPU、少なくとも1つのGPU、少なくとも1つのASIC、少なくとも1つのFPGA、またはそれらの組み合わせなどによって構成され得る。
【0133】
プロセッサ501は、制御プログラム522やオペレーティングシステムなどの各種プログラムを実行することで操作端末550の動作を制御する。プロセッサ501は、制御プログラム522の実行命令を受け付けたことに基づいて、記憶装置520またはROM502からRAM503に制御プログラム522を読み出す。RAM503は、ワーキングメモリとして機能し、制御プログラム522の実行に必要な各種データを一時的に格納する。
【0134】
通信インターフェイス504には、LANやアンテナなどが接続される。操作端末550は、通信インターフェイス504を介してネットワークNW1,NW2に接続される。これにより、操作端末550は、ネットワークNW1,NW2に接続される外部機器とデータをやり取りする。当該外部機器は、たとえば、制御盤150やサーバー(図示しない)などを含む。操作端末550は、当該外部機器から制御プログラム522をダウンロードできるように構成されてもよい。
【0135】
表示インターフェイス505には、ディスプレイ506が接続される。表示インターフェイス505は、プロセッサ501などからの指令に従って、ディスプレイ506に対して、画像を表示するための画像信号を送出する。ディスプレイ506には、作業ステーション500にある作業中のパレットの強制搬送を許可または拒否を受け付ける選択画面などが表示される。ディスプレイ506は、たとえば、液晶ディスプレイ、有機ELディスプレイ、またはその他の表示機器である。なお、ディスプレイ506は、操作端末550と一体的に構成されてもよいし、操作端末550とは別に構成されてもよい。
【0136】
入力インターフェイス507には、入力デバイス508が接続される。入力デバイス508は、たとえば、マウス、キーボード、タッチパネル、またはユーザの操作を受け付けることが可能なその他の装置である。なお、入力デバイス508は、操作端末550と一体的に構成されてもよいし、操作端末550とは別に構成されてもよい。
【0137】
記憶装置520は、たとえば、ハードディスクやフラッシュメモリなどの記憶媒体である。記憶装置520は、制御プログラム522などを格納する。制御プログラム522などの格納場所は、記憶装置520に限定されず、プロセッサ501の記憶領域(たとえば、キャッシュメモリなど)、ROM502、RAM503、外部機器(たとえば、サーバー)などに格納されていてもよい。
【0138】
制御プログラム522は、単体のプログラムとしてではなく、任意のプログラムの一部に組み込まれて提供されてもよい。この場合、制御プログラム522による制御処理は、任意のプログラムと協働して実現される。このような一部のモジュールを含まないプログラムであっても、本実施の形態に従う制御プログラム522の趣旨を逸脱するものではない。さらに、制御プログラム522によって提供される機能の一部または全部は、専用のハードウェアによって実現されてもよい。さらに、少なくとも1つのサーバーが制御プログラム522の処理の一部を実行する所謂クラウドサービスのような形態で操作端末550が構成されてもよい。
【0139】
<J.フローチャート>
図18を参照して、PLC151のプロセッサ161の制御フローについて説明する。
図18は、プロセッサ161が実行する搬送処理の一部を表わすフローチャートである。
【0140】
ステップS110において、プロセッサ161は、作業ステーション500へのワークの搬入指示を受け付けたか否かを判断する。当該搬入指示は、たとえば、作業ステーション500内に設けられている搬入開始ボタンが押下されることで発せられる。プロセッサ161は、作業ステーション500へのワークの搬入指示を受け付けたと判断した場合(ステップS110においてYES)、制御をステップS112に切り替える。そうでない場合には(ステップS110においてNO)、プロセッサ161は、ステップS110の処理を再び実行する。
【0141】
ステップS112において、プロセッサ161は、上述の取得部154(
図3参照)として機能し、上述のワーク情報124(
図5参照)を参照して、搬送対象のワークの重量を取得する。
【0142】
ステップS120において、プロセッサ161は、上述の収納場所情報126(
図9参照)を参照して、搬送対象のワークとは異なる他のワークが収納部200にあるか否かを判断する。プロセッサ161は、収納済の他のワークが収納部200にあると判断した場合(ステップS120においてYES)、制御をステップS124に切り替える。そうでない場合には(ステップS120においてNO)、プロセッサ161は、制御をステップS122に切り替える。
【0143】
ステップS122において、プロセッサ161は、上述の搬送制御部156(
図3参照)として機能し、収納場所情報126に基づいて、ステップS112で取得されたワークの重量が属する重量範囲を特定する。そして、プロセッサ161は、当該重量範囲に対応付けられている収納場所を、搬送対象のワークの収納先として決定する。このとき、当該収納先は、搬送対象のワークの重量が重いほど工作機械400に近くなるように決定される。
【0144】
ステップS124において、プロセッサ161は、上述の搬送制御部156として機能し、収納部200に収納済のワークの重量を基準として、搬送対象のワークの収納先を決定する。より具体的には、搬送対象のワークの重量が収納済のワークの重量よりも軽い場合、搬送対象のワークの収納先は、収納済のワークの位置よりも工作機械400から遠くなる。一方で、搬送対象のワークの重量が収納済のワークの重量よりも重い場合、搬送対象のワークの収納先は、収納済のワークの位置よりも工作機械400に近くなる。このとき、当該収納先は、空のパレットの収納場所から決定される。
【0145】
ステップS126において、プロセッサ161は、上述の搬送制御部156として機能し、ステップS122またはステップS124で決定された収納先にある空のパレットを作業ステーション500に搬送する。
【0146】
ステップS130において、プロセッサ161は、パレットの搬送開始操作を受け付けたか否かを判断する。当該搬送開始操作は、たとえば、上述の操作端末550において受け付けられる。プロセッサ161は、パレットの搬送開始操作を受け付けたと判断した場合(ステップS130においてYES)、制御をステップS140に切り替える。そうでない場合には(ステップS130においてNO)、プロセッサ161は、ステップS130の処理を再び実行する。
【0147】
ステップS140において、プロセッサ161は、工作機械400が非加工中であるか否かを判断する。工作機械400が非加工中であるか否かは、たとえば、加工プログラムが実行中であるか否か基づいて判断される。プロセッサ161は、工作機械400が非加工中であると判断した場合(ステップS140においてYES)、制御をステップS172に切り替える。そうでない場合には(ステップS140においてNO)、プロセッサ161は、制御をステップS150に切り替える。
【0148】
ステップS150において、プロセッサ161は、次の加工開始までの時間が所定時間以内であるか否かを判断する。次の加工開始までの時間が所定時間以内であるか否かは、たとえば、上述の加工スケジュール125に基づいて判断される。当該所定時間の長さは、予め設定されていてもよいし、ユーザによって任意に設定されてもよい。プロセッサ161は、次の加工開始までの時間が所定時間以内であると判断した場合(ステップS150においてYES)、制御をステップS152に切り替える。そうでない場合には(ステップS150においてNO)、プロセッサ161は、制御をステップS160に切り替える。
【0149】
ステップS152において、プロセッサ161は、搬送装置300の動作モードを待機モードとし、搬送装置300の駆動を停止する。
【0150】
ステップS160において、プロセッサ161は、段取り作業が必要なパレットが収納部200にあるか否かを判断する。当該パレットが収納部200にあるか否かは、たとえば、上述の加工スケジュール125と、上述の収納場所情報126とに基づいて判断される。当該段取り作業は、たとえば、加工対象のワークをパレットに装着する作業や、加工済みワークをパレットから取り外す作業などを含む。プロセッサ161は、段取り作業が必要なパレットが収納部200にあると判断した場合(ステップS160においてYES)、制御をステップS174に切り替える。そうでない場合には(ステップS160においてNO)、プロセッサ161は、制御をステップS152に切り替える。
【0151】
ステップS170において、プロセッサ161は、工作機械400が非加工中であるか否かを判断する。工作機械400が非加工中であるか否かは、たとえば、加工プログラムが実行中であるか否か基づいて判断される。プロセッサ161は、工作機械400が非加工中であると判断した場合(ステップS170においてYES)、制御をステップS172に切り替える。そうでない場合には(ステップS170においてNO)、プロセッサ161は、制御をステップS152に戻す。
【0152】
ステップS172において、プロセッサ161は、上述の搬送制御部156として機能し、作業ステーション500においてワークが取り付けられたパレットを工作機械400に搬送する。
【0153】
ステップS174において、プロセッサ161は、上述の搬送制御部156として機能し、作業ステーション500においてワークが取り付けられたパレットを、ステップS122またはステップS124で決定された収納先に搬送する。このように、プロセッサ161は、工作機械400が搬送対象のワークとは異なるワークを加工している間に、当該搬送対象のワークを収納先に搬送する。プロセッサ161は、加工の待ち時間を利用して、各ワークを重量に応じた収納先に搬送することで、ワークの搬送効率を改善することができる。
【0154】
なお、作業ステーション500から収納部200へのワークの搬送は、必ずしも工作機械400の非加工中に行われる必要はない。
【0155】
また、上述では、搬送対象のワークの収納先が、収納部200から作業ステーション500へのパレットの搬送前に決定される例について説明を行ったが、当該収納先を決定するタイミングは、任意である。一例として、当該収納先は、作業ステーション500でのワークの取り付け作業が完了した後に決定されてもよい。
【0156】
<K.変形例1>
次に、
図19および
図20を参照して、作業ステーション500から収納部200へのワークの搬送方法における変形例1について説明する。
【0157】
上述の
図8〜
図10の例では、搬送対象のワークの収納先は、収納場所情報126に基づいて、一意に決められていた。また、上述の
図11および
図12の例では、収納部200におけるワークの収納先は、収納済のワークの重量を基準として決められていた。これに対して、本変形例では、収納部200の収納場所が複数の収納エリアに予め区分されており、搬送システム10は、搬送対象のワークの重量に応じた収納エリアに当該ワークを搬送する。
【0158】
図19は、作業ステーション500から収納エリアAR1へのワークWBの搬送過程を示す図である。
図19の例では、収納部200は、収納エリアAR1(第1収納エリア)と、収納エリアAR2(第2収納エリア)とに区分されている。収納エリアAR1は、ワークの収納場所P1〜P5を含む。収納エリアAR2は、ワークの収納場所P6〜P10を含む。収納エリアAR1は、収納エリアAR2よりも工作機械400に近い。
【0159】
図19に示されるように、搬送システム10の制御部50は、搬送対象のワークWBの重量が予め定められた重量よりも重い場合、工作機械400により近い収納エリアAR1内から収納先を決定する。一例として、当該収納先は、工作機械400により近い空の収納場所から決定される。あるいは、当該収納先は、収納場所P1〜P5の空の収納場所からランダムに決定されてもよい。
【0160】
図20は、作業ステーション500から収納エリアAR2へのワークWBの搬送過程を示す図である。
図20に示されるように、搬送システム10の制御部50は、搬送対象のワークWBの重量が予め定められた重量よりも軽い場合、工作機械400からより遠い収納エリアAR2内から収納先を決定する。一例として、当該収納先は、工作機械400から離れている空の収納場所から決定される。あるいは、当該収納先は、収納場所P6〜P10の空の収納場所からランダムに決定されてもよい。
【0161】
このように、収納部200の収納エリアがワークの重量に応じて大まかに分けられることで、プログラムの設計が簡素化される。
【0162】
なお、
図19および
図20では、収納部200が2つの収納エリアAR1,AR2に区分されている例について説明を行ったが、収納部200の区分数は、2つに限定されない。収納部200は、3つ以上の収納エリアに区分されてもよい。
【0163】
また、各収納エリアに含まれる収納場所の数は、同数である必要はない。さらに、各収納エリアに含まれる収納場所の数は、固定であってもよいし、各収納エリアにおけるワークの収納率に応じて動的に変えられてもよい。一例として、搬送システム10は、各収納エリアにおけるワークの収納率の差が最小になるように、各収納エリアに含まれる収納場所の数を適宜調整してもよい。
【0164】
<L.変形例2>
次に、
図21を参照して、作業ステーション500から収納部200へのワークの搬送方法における変形例2について説明する。
【0165】
上述の
図1などの例では、収納部200は、一段で構成されていた。これに対して、本変形例では、収納部200は、2つ以上の段で構成されている。
【0166】
図21は、変形例に従う収納部200を示す図である。
図21の例では、収納部200は、2つの段ST1,ST2で構成されている。段ST2(第2段)は、段ST1(第1段)よりも上段である。
【0167】
段ST1は、ワークの収納場所P1〜P10を含む。段ST2は、ワークの収納場所P11〜P20を含む。上下方向(重力方向)におけるワークの搬送時間は、水平方向におけるワークの搬送時間よりも長くなる。そのため、収納部200が複数段で構成されている場合、搬送システム10は、収納部200の下段から順に、搬送対象のワークの収納先を決定する。すなわち、搬送システム10は、収納先の判断基準として、水平方向における工作機械400から収納場所までの距離よりも、上下方向における工作機械400から収納場所までの距離を優先する。
【0168】
より具体的には、搬送システム10の制御部50は、段ST1に空きがある場合には、搬送対象のワークの重量に基づいて段ST1内から収納先を決定する。このとき、当該収納先は、当該ワークの重量が重いほど工作機械400に近くなるように段ST1内から決定される。同一の段内での収納先の決定方法は、上述の通りである。
【0169】
一方で、搬送システム10の制御部50は、段ST2に空きがない場合には、搬送対象のワークの重量に基づいて段ST2内から収納先を決定する。このとき、当該収納先は、当該ワークの重量が重いほど工作機械400に近くなるように段ST2内から決定される。同一の段内での収納先の決定方法は、上述の通りである。
【0170】
<M.変形例3>
次に、作業ステーション500から収納部200へのワークの搬送方法における変形例3について説明する。
【0171】
上述の例では、搬送対象のワークの収納先は、当該ワークの重量に基づいて決定されていた。これに対して、本変形例に従う搬送システム10は、他のワークよりも加工順を優先するワーク(以下、「優先ワーク」ともいう。)の指定を受け付け可能に構成されている。優先ワークの指定は、たとえば、上述の操作端末550(操作盤)で受け付けられる。
【0172】
搬送システム10の制御部50は、優先ワークの指定を受け付けた場合には、優先ワークの重量に関わらず、収納部200内の収納先を決定する。このとき、制御部50は、収納部200内の収納場所P1〜P10の内の工作機械400により近い収納場所を優先ワークの収納先として決定する。これにより、搬送システム10は、優先ワークの搬送時間を短縮することができる。
【0173】
今回開示された実施の形態は全ての点で例示であって制限的なものではないと考えられるべきである。本発明の範囲は上記した説明ではなくて特許請求の範囲によって示され、特許請求の範囲と均等の意味および範囲内での全ての変更が含まれることが意図される。
【解決手段】ワークの搬送システムは、加工対象のワークを搬送するための搬送装置と、搬送装置によるワークの搬送先の1つであり、複数のワークを収納することが可能な収納部と、搬送装置によるワークの搬送先の1つであり、作業者がワークに対する作業を行うための作業ステーションと、搬送装置によるワークの搬送先の1つであり、ワークを加工するための工作機械と、搬送システムを制御するための制御部とを備える。制御部は、作業ステーションから収納部への搬送対象のワークの第1重量を取得する処理と、第1重量に基づいて、搬送対象のワークについて収納部内の収納先を決定する処理とを実行し、収納先は、第1重量が重いほど工作機械に近くなるように決定される。