JP7185079B1 - 自走システム、制御方法、および制御プログラム - Google Patents

自走システム、制御方法、および制御プログラム Download PDF

Info

Publication number
JP7185079B1
JP7185079B1 JP2022022595A JP2022022595A JP7185079B1 JP 7185079 B1 JP7185079 B1 JP 7185079B1 JP 2022022595 A JP2022022595 A JP 2022022595A JP 2022022595 A JP2022022595 A JP 2022022595A JP 7185079 B1 JP7185079 B1 JP 7185079B1
Authority
JP
Japan
Prior art keywords
self
charging
battery
propelled
propelled device
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
JP2022022595A
Other languages
English (en)
Other versions
JP2023119632A (ja
Inventor
秀明 吉岡
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
DMG Mori Co Ltd
Original Assignee
DMG Mori Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by DMG Mori Co Ltd filed Critical DMG Mori Co Ltd
Priority to JP2022022595A priority Critical patent/JP7185079B1/ja
Application granted granted Critical
Publication of JP7185079B1 publication Critical patent/JP7185079B1/ja
Publication of JP2023119632A publication Critical patent/JP2023119632A/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02TCLIMATE CHANGE MITIGATION TECHNOLOGIES RELATED TO TRANSPORTATION
    • Y02T10/00Road transport of goods or passengers
    • Y02T10/60Other road transportation technologies with climate change mitigation effect
    • Y02T10/70Energy storage systems for electromobility, e.g. batteries

Landscapes

  • Manipulator (AREA)
  • Electric Propulsion And Braking For Vehicles (AREA)
  • Control Of Position, Course, Altitude, Or Attitude Of Moving Bodies (AREA)

Abstract

【課題】自走装置の作業効率が低下することを抑制しつつバッテリーの劣化を抑制することが可能な技術を提供する。【解決手段】自走システムは、内蔵されているバッテリーから電力の供給を受けることで自走し、搬送物を搬送することが可能な自走装置と、バッテリーを充電することが可能な充電ステーションと、自走装置を制御するための制御装置とを備える。制御装置は、バッテリーの残りの電力量を取得する処理と、自走装置の作業スケジュールに基づいて、次の作業の開始タイミングを特定する処理と、自走装置が次の作業を行うのに要する必要電力量を推定する処理と、残りの電力量が開始タイミングまでに必要電力量以上になるように、バッテリーの充電速度を決定する処理とを実行する。【選択図】図3

Description

本開示は、自走システム、制御方法、および制御プログラムに関する。
工場などの生産システムにおいて、無人化が望まれている。無人化を実現するために、自走装置の開発が進められている。自走装置は、加工前のワークや工具などを各工作機械に搬送したり、各工作機械で加工が完了したワークや使用済の工具などを回収したりする。
特開2021-87328号公報(特許文献1)は、受電装置を備えた無人搬送車を開示している。当該受電装置は、無人搬送車に駆動用電力を供給するバッテリーを含む。当該受電装置は、工場内に設けられた給電装置から非接触給電により電力を受電し、当該電力をバッテリーに蓄電する。
特開2021-87328号公報
バッテリーが急速に充電されると、バッテリーの劣化が早まる。一方で、バッテリーの充電速度が遅いと、充電時間が長くなり、自走装置は、搬送作業を効率的に行うことができない。したがって、自走装置の作業効率が低下することを抑制しつつバッテリーの劣化を抑制することが可能な技術が望まれている。なお、特許文献1は、このような技術を開示するものではない。
本開示の一例では、自走システムは、内蔵されているバッテリーから電力の供給を受けることで自走し、搬送物を搬送することが可能な自走装置と、上記バッテリーを充電することが可能な充電ステーションと、上記自走装置を制御するための制御装置とを備える。上記制御装置は、上記バッテリーの残りの電力量を取得する処理と、上記自走装置の作業スケジュールに基づいて、次の作業の開始タイミングを特定する処理と、上記自走装置が上記次の作業を行うのに要する必要電力量を推定する処理と、上記残りの電力量が上記開始タイミングまでに上記必要電力量以上になるように、上記バッテリーの充電速度を決定する処理とを実行する。
本開示の一例では、上記推定する処理は、上記次の作業における上記自走装置の走行距離が長いほど、上記必要電力量を多くすることを含む。
本開示の一例では、上記推定する処理は、上記自走装置が上記次の作業で搬送する搬送物の重量が重いほど、上記必要電力量を多くすることを含む。
本開示の一例では、上記推定する処理は、上記次の作業における上記自走装置の走行経路が直線に近いほど、上記必要電力量を少なくすることを含む。
本開示の一例では、上記決定する処理は、現在から上記開始タイミングまでの時間が長いほど、上記充電速度を遅くすることを含む。
本開示の一例では、上記充電ステーションにおける動作モードは、第1速度で上記バッテリーを充電する第1充電モードと、上記第1速度よりも速い第2速度で上記バッテリーを充電する第2充電モードとを含む。上記決定する処理は、上記第1充電モードで上記バッテリーを充電することによって、上記残りの電力量が上記開始タイミングまでに上記必要電力量以上になる場合には、上記充電ステーションを上記第1充電モードで動作させる処理と、上記第1充電モードで上記バッテリーを充電することによって、上記残りの電力量が上記開始タイミングまでに上記必要電力量以上にならない場合には、上記充電ステーションを上記第2充電モードで動作させる処理とを含む。
本開示の他の例では、自走システムの制御方法が提供される。上記自走システムは、内蔵されているバッテリーから電力の供給を受けることで自走し、搬送物を搬送することが可能な自走装置と、上記バッテリーを充電することが可能な充電ステーションとを備える。上記制御方法は、上記バッテリーの残りの電力量を取得するステップと、上記自走装置の作業スケジュールに基づいて、次の作業の開始タイミングを特定するステップと、上記自走装置が上記次の作業を行うのに要する必要電力量を推定するステップと、上記残りの電力量が上記開始タイミングまでに上記必要電力量以上になるように、上記バッテリーの充電速度を決定するステップとを備える。
本開示の他の例では、自走システムの制御プログラムが提供される。上記自走システムは、内蔵されているバッテリーから電力の供給を受けることで自走し、搬送物を搬送することが可能な自走装置と、上記バッテリーを充電することが可能な充電ステーションとを備える。上記制御プログラムは、上記自走システムに、上記バッテリーの残りの電力量を取得するステップと、上記自走装置の作業スケジュールに基づいて、次の作業の開始タイミングを特定するステップと、上記自走装置が上記次の作業を行うのに要する必要電力量を推定するステップと、上記残りの電力量が上記開始タイミングまでに上記必要電力量以上になるように、上記バッテリーの充電速度を決定するステップとを実行させる。
本発明の上記および他の目的、特徴、局面および利点は、添付の図面と関連して理解される本発明に関する次の詳細な説明から明らかとなるであろう。
自走システムの装置構成の一例を示す図である。 自走装置の外観を示す図である。 通常充電モードでバッテリーを充電している様子をグラフで示す図である。 急速充電モードでバッテリーを充電している様子をグラフで示す図である。 コントローラのハードウェア構成の一例を示す模式図である。 自走装置のハードウェア構成の一例を示す図である。 充電ステーションのハードウェア構成の一例を示す図である。 工作機械のハードウェア構成を示すブロック図である。 搬送物の搬送処理に関する機能構成の一例を示す図である。 加工設定のデータ構造の一例を示す図である。 ワーク情報のデータ構造の一例を示す図である。 作業スケジュールのデータ構造の一例を示す図である。 3次元マップの一例を示す図である。 自走装置の充電処理に関する機能構成の一例を示す図である。 コントローラによる充電制御処理の流れをフローチャートで示す図である。 自走装置による充電制御処理の流れをフローチャートで示す図である。
以下、図面を参照しつつ、本発明に従う各実施の形態について説明する。以下の説明では、同一の部品および構成要素には同一の符号を付してある。それらの名称および機能も同じである。したがって、これらについての詳細な説明は繰り返さない。なお、以下で説明される各実施の形態および各変形例は、適宜選択的に組み合わされてもよい。
<A.自走システム10>
まず、図1を参照して、自走システム10の装置構成について説明する。図1は、自走システム10の装置構成の一例を示す図である。
図1に示されるように、自走システム10は、コントローラ100と、自走装置200と、充電ステーション300と、工作機械400とを含む。
図1には、自走システム10が1つのコントローラ100で構成されている例が示されているが、自走システム10は、2つ以上のコントローラ100で構成されてもよい。同様に、自走システム10は、2つ以上の自走装置200で構成されてもよい。同様に、自走システム10は、2つ以上の充電ステーション300で構成されてもよい。同様に、自走システム10は、2つ以上の工作機械400で構成されてもよい。
コントローラ100は、自走装置200の制御装置として機能する。コントローラ100は、たとえば、ノート型のPC(Personal Computer)、デスクトップ型のPC、タブレット端末、または、通信機能を備えたその他のコンピュータである。コントローラ100は、ネットワークNWに接続可能に構成されている。ネットワークNWには、たとえば、EtherNet(登録商標)などが採用される。
自走装置200は、ネットワークNWに接続可能に構成されている。自走装置200は、ネットワークNWを介してコントローラ100と通信することができる。コントローラ100は、ネットワークNWを介して制御指令を自走装置200に送信し、自走装置200の走行を制御する。当該制御指令としては、たとえば、ワークや工具などの搬送指令、および充電ステーション300への充電指令などが挙げられる。
自走装置200は、たとえば、コントローラ100からの搬送指令に従って、ワークや工具などの搬送物を、工作機械400などの指定された場所に搬送する。また、自走装置200は、コントローラ100からの搬送指令に従って、工作機械400などの所定の場所から、指定された搬送先に搬送物を搬送する。
他の例として、自走装置200は、コントローラ100からの充電指令に従って、充電ステーション300まで走行する。自走装置200が充電ステーション300付近の充電可能位置に到達したことに基づいて、自走装置200は、コントローラ100から受信した充電指令を充電ステーション300に送信する。自走装置200と充電ステーション300との通信は、WiFi(登録商標)およびBluetooth(登録商標)などの近距離無線通信で実現されてもよいし、ネットワークNWを介して実現されてもよい。充電指令は、たとえば、充電速度を指示するための充電モードと、充電に要する充電時間とを含む。充電ステーション300は、自走装置200から充電指令を受信したことに基づいて、自走装置200に内蔵されている後述のバッテリー209(図2参照)を非接触で充電する。
なお、図1の例では、充電指令は、コントローラ100から自走装置200を介して充電ステーション300に間接的に送信されているが、当該充電指令は、コントローラ100から充電ステーション300に直接的に送信されてもよい。
また、上述では、充電ステーション300が非接触で自走装置200を充電する例について説明を行ったが、充電ステーション300は、接触方式の充電方法(たとえば、コンダクティブ充電)で自走装置200を充電してもよい。
工作機械400は、自走装置200によって搬送された工具を用いて、自走装置200によって搬送されたワークを加工する。工作機械400は、ワークを加工する機能を備えた種々の装置を包含する概念である。工作機械400は、横形のマシニングセンタであってもよいし、立形のマシニングセンタであってもよい。あるいは、工作機械400は、旋盤であってもよいし、付加加工機であってもよいし、その他の切削機械や研削機械であってもよい。
<B.自走装置200>
次に、図2を参照して、自走装置200について説明する。図2は、自走装置200の外観を示す図である。
図2に示されるように、自走装置200は、車輪駆動の走行本体20と、アームロボット23とを含む。
アームロボット23は、たとえば、走行本体20上に設けられている。アームロボット23は、アームAR1~AR4と、エンドエフェクタ225とで構成されている。
アームAR1の一端は、走行本体20に繋がっている。アームAR1の他端は、アームAR2の一端と繋がっている。アームAR2の他端は、アームAR3の一端と繋がっている。アームAR3の他端は、アームAR4の一端と繋がっている。アームAR4の他端には、エンドエフェクタ225が設けられている。エンドエフェクタ225は、ワークや工具を把持可能に構成される。
アームAR2は、アームAR1との連結軸を回転中心としてモータによって回転可能に構成される。アームAR3は、アームAR2との連結軸を回転中心としてモータによって回転可能に構成される。アームAR4は、アームAR3との連結軸を回転中心としてモータによって回転可能に構成される。
また、アームロボット23には、カメラ207が設けられている。図2の例では、カメラ207は、アームロボット23の先端部であるエンドエフェクタ225に設けられている。カメラ207は、CCD(Charge Coupled Device)カメラであってもよいし、赤外線カメラ(サーモグラフィ)であってもよいし、その他の種類のカメラであってもよい。
なお、カメラ207は、必ずしもアームロボット23に設けられる必要はない。カメラ207は、たとえば、走行本体20のカバー210に設けられてもよい。
走行本体20の内部には、レーザセンサ205が設けられる。レーザセンサ205は、レーザ光を回転させながら照射し、当該レーザ光の反射光を受光するように構成される。これにより、レーザセンサ205は、周囲にある物体までの距離を測定する。自走装置200は、レーザセンサ205の測定結果に基づいて、前進方向R、後進方向B、右折方向、および左折方向などの走行本体20の走行を制御する。
また、走行本体20の内部には、バッテリー209が設けられる。バッテリー209は、コントローラ100内の各種機器に電力を供給する。
また、走行本体20上には、搬送物の仮置き場216が設けられている。図2の例では、搬送物として、ワークWが示されている。アームロボット23は、仮置き場216上のワークWを把持し、指定された搬送先に当該ワークWを搬入する。あるいは、アームロボット23は、指定された場所からワークWを搬出し、当該ワークWを仮置き場216に置く。
なお、図2の例では、アームロボット23が走行本体20上に設けられているが、ワークや工具などの搬送物を搬送することが可能な種々の搬送装置が走行本体20上に設けられ得る。一例として、当該搬送装置は、オートローダであってもよい。
<C.充電処理の概要>
次に、図3および図4を参照して、上述のバッテリー209(図2参照)の充電制御処理の概要について説明する。
自走装置200のバッテリー209が急速に充電されると、バッテリー209の劣化が早まる。一方で、自走装置200のバッテリー209の充電速度が遅いと、充電時間が長くなり、自走装置200は、搬送作業を効率的に行うことができない。そこで、自走システム10は、自走装置200の作業効率が低下することを抑制しつつ、バッテリー209の劣化を抑制するようにバッテリー209を充電する。
より具体的には、まず、コントローラ100は、バッテリー209の残りの電力量(以下、「残電力量」ともいう。)を自走装置200から取得する。次に、コントローラ100は、自走装置200の作業スケジュールに基づいて、次の作業開始タイミングを特定する。また、コントローラ100は、自走装置200が次の作業を行うのに要する必要電力量を推定する。続いて、コントローラ100は、次の作業開始タイミングまでに残電力量が必要電力量以上になるように、バッテリー209の充電速度を決定する。
好ましくは、コントローラ100は、必要電力量に所定電力量を加算した値を目標電力量として、次の作業開始タイミングまでに残電力量が当該目標電力量になるように、バッテリー209の充電速度を決定する。その後、コントローラ100は、決定した充電速度でバッテリー209を充電するように充電ステーション300に制御指令を送信する。
このように、コントローラ100は、次の作業開始タイミングに合わせて必要電力量を充電することで、必要に応じた充電速度でバッテリー209を充電することができる。これにより、自走装置200は、バッテリー209を毎回急速充電することを回避でき、バッテリー209の劣化を抑制することができる。一方で、コントローラ100は、自走装置200が次の作業を行うのに要する必要電力量をするため、自走装置200の作業効率が低下することを抑制することができる。
バッテリー209の充電速度は、様々な方法で変えられる。一例として、バッテリー209の充電速度は、充電ステーション300の動作モードを指定することで変えられる。充電ステーション300における動作モードは、たとえば、通常充電モードと、急速充電モードとを含む。
図3は、通常充電モードでバッテリー209を充電している様子をグラフで示す図である。図3に示されるグラフの横軸は、時間を示す。図3に示されるグラフの縦軸は、バッテリー209の残電力量を示す。
通常充電モードは、充電速度「V1」(第1速度)でバッテリー209を充電する動作モードである。急速充電モードは、充電速度「V1」よりも速い充電速度「V2」(第2速度)でバッテリー209を充電する動作モードである。充電速度「V1」,「V2」は、単位時間当たりにおける充電量を示す。充電速度「V1」,「V2」は、予め設定されていてもよいし、制御パラメータの設定により変更されてもよい。
図3を参照して、現在時刻「T0」において、バッテリー209の残電力量が「P0」であるとする。また、自走装置200の次の作業開始タイミングが「T1」であるとする。また、自走装置200が次の作業を行うのに要する必要電力量は「P1」であるとする。すなわち、コントローラ100は、作業開始タイミング「T1」までの猶予時間「ΔTA」の間に、バッテリー209の残電力量を必要電力量「P1」以上にする必要がある。
このとき、コントローラ100は、通常充電モードでバッテリー209を充電することによって、バッテリー209の残電力量が開始タイミング「T1」までに必要電力量「P1」以上になる場合には、充電ステーション300を通常充電モードで動作させる。図3の例では、バッテリー209が充電速度「V1」で充電されることで、バッテリー209の残電力量は、作業開始タイミング「T1」までに必要電力量「P1」以上になる。この場合、コントローラ100は、充電速度が急速充電モードよりも遅い通常充電モードで充電ステーション300を動作させる。
図4は、急速充電モードでバッテリー209を充電している様子をグラフで示す図である。図4の例では、自走装置200の次の作業開始タイミングが「T2」であるとする。すなわち、コントローラ100は、作業開始タイミング「T2」までの時間「ΔTB」の間に、バッテリー209の残電力量を必要電力量「P1」以上にする必要がある。
このとき、コントローラ100は、通常充電モードでバッテリー209を充電することによって、バッテリー209の残電力量が開始タイミング「T2」までに必要電力量「P1」以上にならない場合には、充電ステーション300を急速充電モードで動作させる。図4の例では、バッテリー209が充電速度「V1」で充電されると、バッテリー209の残電力量は、作業開始タイミング「T2」までに必要電力量「P1」以上にならない。一方で、バッテリー209が充電速度「V2」で充電されると、バッテリー209の残電力量は、作業開始タイミング「T2」までに必要電力量「P1」以上になる。コントローラ100は、急速充電モードで充電ステーション300を動作させる。
なお、上述の例では、バッテリー209の充電速度が通常充電モードと急速充電モードとのいずれかで指定される例について説明を行ったが、充電ステーション300の動作モードは、充電速度が異なる3つ以上の充電モードを有していてもよい。また、バッテリー209の充電速度は、必ずしも充電モードで指定される必要はなく、充電速度を示す数値により指定されてよい。あるいは、バッテリー209の充電速度は、充電速度と相関する制御パラメータにより指定されてよい。
<D.コントローラ100のハードウェア構成>
図5を参照して、コントローラ100のハードウェア構成について説明する。図5は、コントローラ100のハードウェア構成の一例を示す模式図である。
コントローラ100は、制御回路101と、ROM(Read Only Memory)102と、RAM(Random Access Memory)103と、通信インターフェイス104と、表示インターフェイス105と、入力インターフェイス107と、補助記憶装置120とを含む。これらのコンポーネントは、バスB1に接続される。
制御回路101は、たとえば、少なくとも1つの集積回路によって構成される。集積回路は、たとえば、少なくとも1つのCPU(Central Processing Unit)、少なくとも1つのGPU(Graphics Processing Unit)、少なくとも1つのASIC(Application Specific Integrated Circuit)、少なくとも1つのFPGA(Field Programmable Gate Array)、またはそれらの組み合わせなどによって構成され得る。
制御回路101は、制御プログラム122やオペレーティングシステムなどの各種プログラムを実行することでコントローラ100の動作を制御する。制御プログラム122は、自走装置200の制御(たとえば、充電制御および搬送制御)に係るプログラムである。制御回路101は、制御プログラム122の実行命令を受け付けたことに基づいて、補助記憶装置120またはROM102からRAM103に制御プログラム122を読み出す。RAM103は、ワーキングメモリとして機能し、制御プログラム122の実行に必要な各種データを一時的に格納する。
通信インターフェイス104には、LAN(Local Area Network)やアンテナなどが接続される。コントローラ100は、通信インターフェイス104を介してネットワークNW(図1参照)に接続される。これにより、コントローラ100は、ネットワークNWに接続される外部機器とデータをやり取りする。当該外部機器は、たとえば、自走装置200やサーバー(図示しない)などを含む。コントローラ100は、当該外部機器から制御プログラム122をダウンロードできるように構成されてもよい。
表示インターフェイス105には、ディスプレイ106が接続される。表示インターフェイス105は、制御回路101などからの指令に従って、ディスプレイ106に対して、画像を表示するための画像信号を送出する。ディスプレイ106は、たとえば、液晶ディスプレイ、有機EL(Electro Luminescence)ディスプレイ、またはその他の表示機器である。なお、ディスプレイ106は、コントローラ100と一体的に構成されてもよいし、コントローラ100とは別に構成されてもよい。
入力インターフェイス107には、入力デバイス108が接続される。入力デバイス108は、たとえば、マウス、キーボード、タッチパネル、またはユーザの操作を受け付けることが可能なその他の装置である。なお、入力デバイス108は、コントローラ100と一体的に構成されてもよいし、コントローラ100とは別に構成されてもよい。
補助記憶装置120は、たとえば、ハードディスクやフラッシュメモリなどの記憶媒体である。補助記憶装置120は、制御プログラム122、後述の加工設定123、後述のワーク情報124、および後述の作業スケジュール125などを格納する。補助記憶装置120に記憶される各種データの格納場所は、補助記憶装置120に限定されない。当該各種データは、制御回路101の記憶領域(たとえば、キャッシュメモリなど)、ROM102、RAM103、外部機器(たとえば、PLC151や外部サーバー)などに格納されていてもよい。
なお、制御プログラム122は、単体のプログラムとしてではなく、任意のプログラムの一部に組み込まれて提供されてもよい。この場合、制御プログラム122による自走装置200の制御処理は、任意のプログラムと協働して実現される。このような一部のモジュールを含まないプログラムであっても、本実施の形態に従う制御プログラム122の趣旨を逸脱するものではない。さらに、制御プログラム122によって提供される機能の一部または全部は、専用のハードウェアによって実現されてもよい。さらに、少なくとも1つのサーバーが制御プログラム122の処理の一部を実行する所謂クラウドサービスのような形態でコントローラ100が構成されてもよい。
<E.自走装置200のハードウェア構成>
次に、図6を参照して、自走装置200のハードウェア構成について説明する。図6は、自走装置200のハードウェア構成の一例を示す図である。
自走装置200は、制御回路201と、ROM202と、RAM203と、通信インターフェイス204と、レーザセンサ205と、モータ駆動装置206,208と、補助記憶装置220とを含む。これらのコンポーネントは、バスB2に接続される。
制御回路201は、たとえば、少なくとも1つの集積回路によって構成される。集積回路は、たとえば、少なくとも1つのCPU、少なくとも1つのGPU、少なくとも1つのASIC、少なくとも1つのFPGA、またはそれらの組み合わせなどによって構成され得る。一例として、制御回路201は、PLC(Programmable Logic Controller)である。
制御回路201は、制御プログラム222やオペレーティングシステムなどの各種プログラムを実行することで自走装置200の動作を制御する。制御回路201は、制御プログラム222の実行命令を受け付けたことに基づいて、補助記憶装置220またはROM202からRAM203に制御プログラム222を読み出す。RAM203は、ワーキングメモリとして機能し、制御プログラム222の実行に必要な各種データを一時的に格納する。
通信インターフェイス204には、LAN(Local Area Network)やアンテナなどが接続される。自走装置200は、通信インターフェイス204を介して外部機器との無線通信または有線通信を実現する。当該外部機器は、たとえば、サーバー(図示しない)、自走装置200を操作するためのユーザ端末(図示しない)などを含む。当該ユーザ端末は、たとえば、タブレット端末やスマートフォンなどである。ユーザは、当該ユーザ端末を介して自走装置200の走行を制御することができる。
レーザセンサ205は、レーザ光を回転させながら照射し、当該レーザ光の反射光を受光するように構成される。これにより、レーザセンサ205は、周囲にある物体までの距離を角度別に表わした2次元距離データを出力する。
より具体的には、レーザセンサ205は、照射部と、ミラーと、受光部とで構成される。当該照射部は、当該ミラーに向けてレーザ光を照射する。当該ミラーは、モータによって回転可能にされており、レーザ光を各方向に反射する。これにより、レーザセンサ205は、レーザ光を各方向に照射する。物体がレーザセンサ205の周囲にある場合には、レーザ光は、当該物体に反射され、レーザセンサ205に戻る。レーザセンサ205は、当該反射光を受光部で受ける。
レーザセンサ205は、物体からの反射光を受けて、当該物体までの距離を算出する。一例として、レーザセンサ205は、レーザ光を照射してから、当該レーザ光の反射光を受光するまでの時間に基づいて、レーザセンサ205から物体までの距離を算出する。典型的には、レーザセンサ205は、光の速度に当該時間を掛けることで物体までの距離を算出する。レーザセンサ205は、当該距離をレーザ光の照射角度に対応付けることで、角度別に距離を表わした2次元距離データを出力する。
モータ駆動装置206は、制御回路201からの制御指令に従って、自走装置200の駆動輪を回転駆動するためのモータM1を制御する。当該制御指令は、たとえば、モータM1の正転指令、モータM1の逆転指令、モータM1の回転速度などを含む。モータM1には、たとえば、ステッピングモータまたはサーボモータなどが採用される。
モータ駆動装置208は、制御回路201からの制御指令に従って、アームロボット23(図2参照)に設けられている各モータM2の回転を制御する。モータM2は、アームロボット23の各関節に設けられている。モータM2は、たとえば、サーボモータである。サーボモータの回転軸にはエンコーダが設けられている。当該エンコーダは、サーボモータの位置、サーボモータの回転速度、サーボモータの累積回転数などを、モータ駆動装置208にフィードバックする。モータ駆動装置208は、エンコーダの出力値に基づいて、アームロボット23の位置姿勢を制御する。
バッテリー209は、自走装置200内の各種機器に電力を供給する。バッテリー209は、受電コイル136に電気的に接続されている。自走装置200は、受電コイル136が充電ステーション300の送電コイル311と対向しているときに、充電ステーション300に充電指令を送る。これにより、充電ステーション300は、送電コイル311に交流電流を印加し、受電コイル136に誘導起電力を発生させ、当該誘導起電力によってバッテリー209を充電する。これにより、バッテリー209は、非接触で充電される。
補助記憶装置220は、たとえば、ハードディスクやフラッシュメモリなどの記憶媒体である。補助記憶装置220は、自走装置200の走行を制御するための制御プログラム222、および、自走装置200の走行経路を規定する3次元マップ224、自走装置200の駆動に係る制御パラメータ226などを格納する。制御プログラム222、3次元マップ224、および制御パラメータ226の格納場所は、補助記憶装置220に限定されず、制御回路201の記憶領域(たとえば、キャッシュメモリなど)、ROM202、RAM203、外部機器(たとえば、サーバー)などに格納されていてもよい。
また、制御プログラム222は、単体のプログラムとしてではなく、任意のプログラムの一部に組み込まれて提供されてもよい。この場合、制御プログラム222による自走装置200の制御処理は、任意のプログラムと協働して実現される。このような一部のモジュールを含まないプログラムであっても、本実施の形態に従う制御プログラム222の趣旨を逸脱するものではない。さらに、制御プログラム222によって提供される機能の一部または全部は、専用のハードウェアによって実現されてもよい。さらに、少なくとも1つのサーバーが制御プログラム222の処理の一部を実行する所謂クラウドサービスのような形態で自走装置200が構成されてもよい。
<F.充電ステーション300のハードウェア構成>
次に、図7を参照して、充電ステーション300のハードウェア構成について説明する。図7は、充電ステーション300のハードウェア構成の一例を示す図である。
充電ステーション300は、制御回路301と、ROM302と、RAM303と、通信インターフェイス304と、交流電源310と、補助記憶装置320とを含む。これらのコンポーネントは、バスB3に接続される。
制御回路301は、たとえば、少なくとも1つの集積回路によって構成される。集積回路は、たとえば、少なくとも1つのCPU、少なくとも1つのGPU、少なくとも1つのASIC、少なくとも1つのFPGA、またはそれらの組み合わせなどによって構成され得る。
制御回路301は、制御プログラム322やオペレーティングシステムなどの各種プログラムを実行することで充電ステーション300の動作を制御する。制御回路301は、制御プログラム322の実行命令を受け付けたことに基づいて、補助記憶装置320またはROM302からRAM303に制御プログラム322を読み出す。RAM303は、ワーキングメモリとして機能し、制御プログラム322の実行に必要な各種データを一時的に格納する。
通信インターフェイス304には、LAN(Local Area Network)やアンテナなどが接続される。充電ステーション300は、通信インターフェイス304を介して外部機器との無線通信または有線通信を実現する。当該外部機器は、たとえば、自走装置200やサーバー(図示しない)などを含む。
交流電源310には、送電コイル311が電気的に接続されている。交流電源310は、送電コイル311が自走装置200の受電コイル211と対向しているときに送電コイル311に交流電流を印加する。これにより、誘導起電力が受電コイル136に発生し、当該誘導起電力によって自走装置200のバッテリー209が充電される。
補助記憶装置320は、たとえば、ハードディスクやフラッシュメモリなどの記憶媒体である。補助記憶装置320は、充電の制御プログラム322、および充電に係る制御パラメータ324などを格納する。これらの格納場所は、補助記憶装置320に限定されず、制御回路301の記憶領域(たとえば、キャッシュメモリなど)、ROM302、RAM303、外部機器(たとえば、サーバー)などに格納されていてもよい。
また、制御プログラム322は、単体のプログラムとしてではなく、任意のプログラムの一部に組み込まれて提供されてもよい。この場合、制御プログラム322による充電ステーション300の制御処理は、任意のプログラムと協働して実現される。このような一部のモジュールを含まないプログラムであっても、本実施の形態に従う制御プログラム322の趣旨を逸脱するものではない。さらに、制御プログラム322によって提供される機能の一部または全部は、専用のハードウェアによって実現されてもよい。さらに、少なくとも1つのサーバーが制御プログラム322の処理の一部を実行する所謂クラウドサービスのような形態で充電ステーション300が構成されてもよい。
<G.工作機械400のハードウェア構成>
図8を参照して、工作機械400のハードウェア構成の一例について説明する。図8は、工作機械400のハードウェア構成を示すブロック図である。
工作機械400は、CNC(Computer Numerical Control)401と、ROM402と、RAM403と、表示インターフェイス405と、入力インターフェイス409と、サーボドライバ411A~411Dと、サーボモータ412A~412Dと、エンコーダ413A~413Dと、ボールねじ414A,414Bと、工具を取り付けるための主軸415とを含む。これらの機器は、バス(図示しない)を介して接続されている。
CNC401は、少なくとも1つの集積回路によって構成される。集積回路は、たとえば、少なくとも1つのCPU、少なくとも1つのMPU、少なくとも1つのASIC、少なくとも1つのFPGA、またはそれらの組み合わせなどによって構成される。
CNC401は、加工プログラム422など各種プログラムを実行することでCNC400の動作を制御する。CNC401は、加工プログラム422の実行命令を受け付けたことに基づいて、補助記憶装置420からROM402に加工プログラム422を読み出す。RAM403は、ワーキングメモリとして機能し、加工プログラム422の実行に必要な各種データを一時的に格納する。
表示インターフェイス405は、ディスプレイ430などの表示機器と接続され、CNC401などからの指令に従ってディスプレイ430に対して画像を表示するための画像信号を送出する。ディスプレイ430は、たとえば、液晶ディスプレイ、有機ELディスプレイ、またはその他の表示機器である。
入力インターフェイス409は、入力デバイス431に接続され得る。入力デバイス431は、たとえば、マウス、キーボード、タッチパネル、またはユーザ操作を受け付けることが可能なその他の入力機器である。
CNC400は、加工プログラム422に従ってサーボドライバ411Aを制御する。サーボドライバ411Aは、CNC401から目標回転数(または目標位置)の入力を逐次的に受け、サーボモータ412Aが目標回転数で回転するようにサーボモータ412Aを制御し、ワーク設置台(図示しない)をX軸方向に駆動する。より具体的には、サーボドライバ411Aは、エンコーダ413Aのフィードバック信号からサーボモータ412Aの実回転数(または実位置)を算出する。サーボドライバ411Aは、当該実回転数が目標回転数よりも小さい場合にはサーボモータ412Aの回転数を上げ、当該実回転数が目標回転数よりも大きい場合にはサーボモータ412Aの回転数を下げる。このように、サーボドライバ411Aは、サーボモータ412Aの回転数のフィードバックを逐次的に受けながらサーボモータ412Aの回転数を目標回転数に近付ける。サーボドライバ411Aは、ボールねじ414Aに接続されるワーク設置台をX軸方向に移動し、ワーク設置台をX軸方向の任意の位置に移動する。
同様のモータ制御により、サーボドライバ411Bは、ボールねじ414Bに接続されるワーク設置台をCNC400からの制御指令に従ってY軸方向に移動し、ワーク設置台をY軸方向の任意の位置に移動する。同様のモータ制御を行うことにより、サーボドライバ411Cは、CNC400からの制御指令に従って主軸415をZ軸方向に移動し、主軸415をZ軸方向の任意の位置に移動する。同様のモータ制御を行うことにより、サーボドライバ411Dは、CNC400からの制御指令に従って、主軸415の軸方向を回転中心とする主軸415の回転速度を制御する。
補助記憶装置420は、たとえば、ハードディスクやフラッシュメモリなどの記憶媒体である。補助記憶装置420は、加工プログラム422などを格納する。加工プログラム422の格納場所は、補助記憶装置420に限定されず、CNC401の記憶領域(たとえば、キャッシュ領域など)、ROM402、RAM403、外部機器(たとえば、サーバー)などに格納されていてもよい。
<H.搬送制御に関する機能構成>
次に、図9~図13を参照して、搬送物の搬送処理に関する機能構成について説明する。図9は、搬送物の搬送処理に関する機能構成の一例を示す図である。
図9に示されるように、コントローラ100の制御回路101は、搬送処理に関する機能構成として、スケジュール生成部152と、搬送指令部154とを含む。なお、これらの機能構成の一部または全部は、自走装置200またはその他の装置に実装されてもよい。
また、自走装置200の制御回路201は、搬送処理に関する機能構成として、マップ生成部252と、走行制御部254とを含む。なお、これらの機能構成の一部または全部は、コントローラ100またはその他の装置に実装されてもよい。
以下では、スケジュール生成部152の機能と、搬送指令部154の機能と、マップ生成部252の機能と、走行制御部254の機能とについて順に説明する。
(H1.スケジュール生成部152)
まず、図10~図12を参照して、図9に示されるスケジュール生成部152の機能について説明する。
スケジュール生成部152は、図10に示される加工設定123と、図11に示されるワーク情報124とに基づいて、図12に示される作業スケジュール125を生成する。
図10は、加工設定123のデータ構造の一例を示す図である。作業者は、加工設定123を登録することにより加工対象のワークを予め登録しておく。加工設定123は、たとえば、上述のコントローラ100またはその他の端末において作業者によって登録される。作業者によって登録される内容は、たとえば、加工対象のワークの識別情報(ワーク名やワークIDなど)、加工対象のワークの個数、およびワークの加工順などを含む。
図10の例では、加工設定123は、2つのワークW1の加工タスクと、2つのワークW2の加工タスクと、4つのワークW3の加工タスクと、6つのワークW4の加工タスクとを含んでいる。
図11は、ワーク情報124のデータ構造の一例を示す図である。一例として、ワーク情報124には、ワークの加工を実現するための加工プログラムと、ワークの重量と、ワークの加工に要する加工時間と、ワークの加工に関するその他の情報(たとえば、加工に用いられる工具情報)とが、ワークの識別情報別に規定されている。
ワーク情報124に規定される加工プログラムは、たとえば、上述のコントローラ100、または上述の工作機械400などにおいて作業者によって登録される。当該加工プログラムの生成方法は、任意である。一例として、工作機械400の中には、オペレータが対話形式での質問に応えることにより自動で加工プログラムを生成する機能を有するものがある。加工プログラムは、たとえば、当該機能により生成される。あるいは、加工プログラムは、作業者がプログラムコードを記述することにより設計されてもよい。
ワーク情報124に規定される重量は、たとえば、ユーザによって予め設定されてもよいし、加工プログラムの設計時などに登録されてもよい。一例として、当該重量は、コントローラ100またはその他の端末において入力される。当該重量は、たとえば、加工開始前のワークの重さを示す。
ワーク情報124に規定される加工時間は、たとえば、作業者によって予め入力される。あるいは、当該加工時間は、各ワークの過去の加工実績から算出されてもよい。
スケジュール生成部152は、ワーク情報124を参照して、加工設定123に規定される各ワークについて加工時間を特定する。次に、スケジュール生成部152は、当該特定した加工時間と、加工設定123に規定される各ワークの個数と、加工設定123に規定される各ワークの加工順序とに基づいて、図12に示される作業スケジュール125を生成する。
図12は、作業スケジュール125のデータ構造の一例を示す図である。作業スケジュール125には、自走装置200による搬送物の搬送タスクが規定される。スケジュール生成部152によって生成された作業スケジュール125は、たとえば、自走システム10内の記憶装置に格納される。
一例として、作業スケジュール125において、日時と、搬送主体と、搬送元と、搬送先と、搬送物とが時系列に対応付けられている。
作業スケジュール125に示される日時は、たとえば、自走装置200による作業開始タイミングを示す情報である。当該日時は、たとえば、日にちと、時刻とで規定される。なお、作業スケジュール125には、自走装置200による作業終了タイミングがさらに規定されてもよい。
作業スケジュール125に示される搬送主体は、自走装置200を一意に特定するための情報である。当該搬送主体は、たとえば、自走装置200の識別情報で規定される。搬送主体としては、たとえば、「自走装置A」,「自走装置B」などが挙げられる。
作業スケジュール125に示される搬送元は、搬送物の置き場所を一意に特定するための情報である。当該搬送元としては、たとえば、工作機械400の位置、および搬送物の置き場の位置などが挙げられる。
作業スケジュール125に示される搬送先は、搬送物の搬送目的地を一意に特定するための情報である。当該搬送目的地としては、たとえば、工作機械400、および搬送物の置き場などが挙げられる。
作業スケジュール125に示される搬送物は、搬送する物体を一意に特定するための情報である。当該搬送物としては、たとえば、加工対象のワーク、および加工に用いられる工具などが挙げられる。
なお、作業スケジュール125には、搬送物の作業スケジュールだけでなく、自走装置200の充電スケジュールが規定されていてもよい。
(H2.搬送指令部154)
次に、引き続き図12を参照して、図9に示される搬送指令部154の機能について説明する。
搬送指令部154は、作業スケジュール125に規定されている搬送タスクに従って、自走装置200の搬送を制御する。一例として、現在時刻が「T1」になった場合には、搬送指令部154は、「置き場所R1」にある搬送物「ワークW1A,W1B」を「工作機械A」に搬送するためのように「自走装置A」に搬送指令を送る。他の例として、現在日時が「T2」になった場合には、搬送指令部154は、「置き場所R2」にある搬送物「工具T1,T2」を「工作機械B」に搬送するように「自走装置B」に搬送指令を送る。
(H3.マップ生成部252)
次に、図13を参照して、図9に示されるマップ生成部252の機能について説明する。
マップ生成部252は、自走装置200の駆動中に上述のレーザセンサ205から順次取得される2次元距離データDに基づいて、自走装置200の周囲の空間を表わす3次元マップ224を生成する。
3次元マップ224は、たとえば、SLAM(Simultaneous Localization and Mapping)技術により生成される。3次元マップ224は、自走装置200の現在位置を特定するために生成される情報であり、かつ、自走装置200の走行場所における静止物の位置を示す情報である。当該静止物としては、たとえば、床、壁、棚、工作機械、トレイ、および充電ステーションなどが挙げられる。
3次元マップ224は、たとえば、ユーザがユーザ端末を用いて自走装置200を手動で操作することにより生成される。この場合、ユーザ操作に応じた操作信号が通信インターフェイス204を介して制御回路201に送信されることで、制御回路201は、操作信号に応じてモータ駆動装置206に指令を出力し、自走装置200の走行を制御する。このとき、制御回路201は、レーザセンサ205から入力される2次元距離データDと、自走装置200の位置とに基づいて、自走装置200の周囲にある物体の位置を3次元マップ224にマッピングする。自走装置200の位置は、たとえば、モータ駆動装置206の駆動情報に基づいて特定される。これにより、3次元マップ224において、物体の有無を示す情報が3次元の座標値(x,y,z)の各々に関連付けられる。
図13は、一例としての3次元マップ224を示す図である。説明の便宜のために、図7には、3次元マップ224が2次元のマップで示されている。
3次元マップ224は、たとえば、工場内のマップを示す。一例として、3次元マップ224には、ワークのトレイ70の位置と、充電ステーション300の位置と、工作機械400の位置と、障害物430A,430Bの位置とが規定されている。3次元マップ224上に規定される物体の種別は、たとえば、ユーザによって指定されてもよいし、画像処理などにより自動で認識されてもよい。
(H4.走行制御部254)
次に、引き続き図13を参照して、図6に示される走行制御部254の機能について説明する。走行制御部254は、自走装置200の走行を制御するための機能モジュールである。
走行制御部254は、コントローラ100からの搬送指令に従って、自走装置200の走行を制御する。一例として、当該搬送指令は、搬送物の種別を示す情報と、搬送物の置き場所を示す情報と、搬送物の搬送先を示す情報とを含む。走行制御部254は、3次元マップ224を参照して、搬送物の置き場所から搬送先までの間の走行経路を設定する。
一例として、搬送物の置き場所として位置PAが指定され、搬送物の搬送先として位置PBが指定されたとする。このことに基づいて、走行制御部254は、位置PAから位置PBまでの最短経路である走行経路240を設定する。
その後、自走装置200は、位置PAにおいて、トレイ70から自走装置200へのワークのピックアップ作業を行い、当該ワークの搬送作業を開始する。その後、走行制御部254は、レーザセンサ205から入力される2次元距離データDと、3次元マップ224とを比較することにより、自走装置200の現在位置を定期的に特定する。走行制御部254は、現在位置を特定することで、走行経路240に沿って自走装置200を走行させる。
さらに、走行制御部254は、自走装置200の駆動中にレーザセンサ205から順次取得される2次元距離データDに基づいて、自走装置200の周囲にある障害物を検出し、当該障害物との衝突を避けるように自走装置200の走行を制御する。当該障害物は、たとえば、人物や他の自走装置200などの移動体と、壁や棚などの静止体とを含む。
走行制御部254は、障害物が検出されていない間、走行経路240を走行するように自走装置200の走行を制御する。一方で、走行制御部254は、障害物が検出された場合には、当該障害物との衝突を避けるように自走装置200の走行を制御する。
一例として、障害物までの距離が所定距離以上である場合には、走行制御部254は、当該障害物を避けるように自走装置200の走行を制御する。一方で、障害物までの距離が所定距離未満である場合には、走行制御部254は、自走装置200の走行を停止する。
走行制御部254は、自走装置200が位置PBに到達したことに基づいて、自走装置200から工作機械400へのワークの供給作業を行う。その後、走行制御部254は、自走装置200を予め定められた待機位置に移動する。あるいは、走行制御部254は、自走装置200の残電力量が所定量以下である場合には、自走装置200を充電ステーション300に移動する。
なお、上述では、自走装置200が位置PAから位置PBにワークを搬送する例について説明を行ったが、自走装置200による搬送物は、特に限定されない。一例として、自走装置200は、ワークではなく工具を搬送してもよい。
また、上述では、1つのトレイ70の位置が3次元マップ224に規定されている例について説明を行ったが、複数のトレイ70の各位置が3次元マップ224に規定されてもよい。
また、上述では、1つの充電ステーション300の位置が3次元マップ224に規定されている例について説明を行ったが、複数の充電ステーション300の各位置が3次元マップ224に規定されてもよい。
同様に、上述では、1つの工作機械400の位置が3次元マップ224に規定されている例について説明を行ったが、複数の工作機械400の各位置が3次元マップ224に規定されてもよい。
<I.充電制御に関する機能構成>
次に、図14を参照して、自走装置200の充電処理に関する機能構成について説明する。図14は、自走装置200の充電処理に関する機能構成の一例を示す図である。
図14に示されるように、コントローラ100の制御回路101は、充電処理に関する機能構成として、特定部162と、推定部164と、取得部166と、決定部170とを含む。これらの機能構成は、たとえば、コントローラ100に実装される。あるいは、これらの機能構成の一部または全部は、自走装置200またはその他の装置に実装されてもよい。
以下では、特定部162の機能と、推定部164の機能と、取得部166の機能と、決定部170の機能とについて順に説明する。
(I1.特定部162)
まず、上述の図12を参照して、図14に示される特定部162の機能について説明する。
特定部162は、作業スケジュール125に基づいて、次の作業の開始タイミングを特定する。より具体的な処理として、まず、特定部162は、現在時刻を特定する。現在時刻は、コントローラ100に標準搭載されている計時機能(タイマー)から取得される。あるいは、現在時刻は、コントローラ100と通信可能に構成される外部装置(たとえば、サーバー)から取得されてもよい。次に、特定部162は、作業スケジュール125に規定されている日時を参照して、取得した現在時刻の次に予定されている作業の開始タイミングを特定する。特定された作業開始タイミングは、決定部170に出力される。
なお、作業開始タイミングを特定する処理は、任意のタイミングで実行され得る。一例として、当該特定する処理は、自走装置200の充電タイミングが到来したことに基づいて実行される。充電タイミングは、たとえば、作業スケジュール125に予め規定されている。
一例として、現在時刻が日時「T3」になり、「自走装置A」の充電タイミングが到来したとする。この場合、特定部162は、作業スケジュール125を参照して、「自走装置A」が次に行う作業の開始時刻「T4」を作業開始タイミングとして特定する。
なお、上述の例では、作業開始タイミングは、必ずしも時刻で示される必要はない。一例として、作業開始タイミングは、現在時刻から次の作業開始時刻までの間の猶予時間で示されてもよい。
(I2.推定部164)
次に、上述の図12を参照して、図14に示される推定部164の機能について説明する。
推定部164は、作業スケジュール125に基づいて、自走装置200が次の作業を行うのに要する必要電力量を推定する。ここで言う「次の作業」とは、現在時刻の次に予定されている少なくとも1つの作業を意味する。一例として、「次の作業」は、現在時刻の次に行われる予定の1つの作業であってもよいし、現在時刻の次に行われる予定の所定数の作業であってもよいし、現在から所定時間以内に行われる予定の作業であってもよい。
推定部164は、次の作業に係る作業量に応じて必要電力量を推定する。一例として、当該作業量が多いほど必要電力量は多くなり、当該作業量が少ないほど必要電力量は少なくなる。
必要電力量は、たとえば、予め定められた算出式に基づいて、算出される。当該算出式は、必要電力量を目的変数とし、当該必要電力量と相関する物理量を説明変数とする。説明変数の数は、1つであってもよいし、複数であってもよい。
ある局面において、当該物理量は、次の作業における自走装置200の走行距離を含む。この場合、推定部164は、当該走行距離が長いほど必要電力量を多く推定する。異なる言い方をすれば、推定部164は、当該走行距離が短いほど、必要電力量を少なく推定する。
より具体的な処理として、推定部164は、上述の3次元マップ224と、作業スケジュール125に規定されている搬送元と、作業スケジュール125に規定されている搬送先とに基づいて、次に作業時における自走装置200の走行経路を特定する。その後、推定部164は、当該特定した各走行経路の距離を積算することで、次の作業時における自走装置200の走行距離を算出する。推定部164は、算出した走行距離に、単位距離当たりの必要電力量を乗算することで、次に作業時における必要電力量を算出する。単位距離当たりの必要電力量は、予め設定されていてもよいし、過去の履歴などから算出されてもよい。なお、推定部164は、搬送元と搬送先との間の直線距離を走行距離として算出してもよい。
他の局面において、上記物理量は、自走装置200が次の作業で搬送する搬送物の重量を含む。この場合、推定部164は、当該重量が重いほど必要電力量を多く推定する。異なる言い方をすれば、推定部164は、当該重量が軽いほど、必要電力量を少なく推定する。
より具体的な処理として、推定部164は、作業スケジュール125を参照して、次に作業時における搬送物を特定する。その後、推定部164は、上述のワーク情報124(図11参照)を参照して、当該特定した搬送物の重量を算出する。なお、搬送物が工具である場合には、当該工具の重量は、当該工具のカタログ情報から取得されてもよいし、各工具の情報を規定した工具情報から取得されてもよい。
さらに他の局面において、上記物理量は、次の作業における自走装置200の走行経路の直線度合いを含む。この場合、推定部164は、当該走行経路が直線に近いほど、必要電力量を少なく推定する。異なる言い方をすれば、推定部164は、当該走行経路が蛇行しているほど、必要電力量を多く推定する。
一例として、推定部164は、上述の3次元マップ224と、作業スケジュール125に規定されている搬送元と、作業スケジュール125に規定されている搬送先とに基づいて、次に作業時における自走装置200の走行経路を特定する。その後、推定部164は、所定のアルゴリズム(たとえば、最小二乗法)に基づいて、当該特定した走行経路の近似式を直線で表わす。次に、推定部164は、当該直線と走行経路との類似度を、走行経路の直線度合いとして算出する。
他の例として、推定部164は、自走装置200の走行方向の変化数をカウントする。当該変化数は、たとえば、走行経路上において自走装置200の走行方向が所定角度以上変化する点の数に相当する。推定部164は、当該変化数が少ないほど走行経路の直線度合いを小さく推定し、当該変化数が多いほど走行経路の直線度合いを大きく推定する。
(I3.取得部166)
次に、図14に示される取得部166の機能について説明する。
取得部166は、自走装置200からバッテリー209の残電力量を取得する。当該残電力量は、自走装置200によって検出される。バッテリー209の残電力量の検出方法には、様々な方法が採用される。
一例として、バッテリー209の残電力量が減るにつれて、バッテリー209の出力電圧または出力電流が小さくなるので、自走装置200は、バッテリー209の出力電圧または出力電流に応じて残電力量を検出する。バッテリー209の出力電圧または出力電流は、たとえば、バッテリー209に電気的に接続されている検出回路(図示しない)によって検出される。
より具体的には、自走装置200は、バッテリー209の出力電流または出力電圧が小さいほどバッテリー209の残電力量が少なくなるように、当該残電力量を検出する。異なる言い方をすれば、バッテリー209の出力電流または出力電圧が大きいほどバッテリー209の残電力量が多くなるように、当該残電力量を検出する。
(I4.決定部170)
次に、図14に示される決定部170の機能について説明する。
決定部170は、特定部162によって特定された次の作業の開始タイミングと、推定部164によって推定された必要電力量と、取得部166によって取得された残電力量とに基づいて、バッテリー209の充電速度を決定する。
このとき、決定部170は、現在から次の作業開始タイミングまでの猶予時間が長いほど充電速度を遅くする。異なる言い方をすれば、決定部170は、現在から次の作業開始タイミングまでの猶予時間が短いほど充電速度を速くする。これにより、コントローラ100は、猶予時間に応じた充電速度でバッテリー209を充電することができ、急速充電に伴うバッテリー209の劣化を抑制することができる。
また、決定部170は、バッテリー209の残電力量と、次の作業時における必要電力量との差分値が小さいほど充電速度を遅くする。異なる言い方をすれば、当該差分値が大きいほど充電速度を速くする。これにより、コントローラ100は、次の作業時における必要電力量に応じた充電速度でバッテリー209を充電することができ、急速充電に伴うバッテリー209の劣化を抑制することができる。
決定部170は、決定した充電速度を含む充電指令を自走装置200に送信する。自走装置200は、コントローラ100から充電指令を受信したことに基づいて、充電ステーション300まで走行する。その後、自走装置200は、自走装置200内の受電コイル136と充電ステーション300内の送電コイル311とが対向しているときに、充電ステーション300に充電指令を送る。これにより、充電ステーション300は、指定された充電速度に基づいて、バッテリー209を充電する。
<J.コントローラ100の制御フロー>
次に、図15を参照して、コントローラ100の制御フローについて説明する。図15は、コントローラ100による充電制御処理の流れをフローチャートで示す図である。
図15に示される処理は、コントローラ100が上述の制御プログラム122を実行することにより実現される。他の局面において、処理の一部または全部が、回路素子またはその他のハードウェアによって実行されてもよい。
ステップS110において、制御回路101は、自走装置200の充電タイミングが到来したか否かを判断する。一例として、制御回路101は、上述の作業スケジュール125に規定されている充電タスクが実行されたことに基づいて、充電タイミングが到来したと判断する。他の例として、制御回路101は、自走装置200からバッテリー209の残電力量を受信し、当該残電力量が所定量以下である場合に、充電タイミングが到来したと判断する。さらに他の例として、制御回路101は、上述の作業スケジュール125を参照して、自走装置200が待機状態であるときに、充電タイミングが到来したと判断する。
制御回路101は、自走装置200の充電タイミングが到来したと判断した場合(ステップS110においてYES)、制御をステップS112に切り替える。そうでない場合には(ステップS110においてNO)、制御回路101は、ステップS110の処理を再び実行する。
ステップS112において、制御回路101は、上述の特定部162(図14参照)として機能し、作業スケジュール125(図12参照)に基づいて、次の作業の開始タイミングを特定する。作業開始タイミングの特定方法については上述の通りであるので、その説明については繰り返さない。
ステップS114において、制御回路101は、上述の推定部164(図14参照)として機能し、作業スケジュール125(図12参照)に基づいて、自走装置200が次の作業を行うのに要する必要電力量を推定する。必要電力量の推定方法については上述の通りであるので、その説明については繰り返さない。
ステップS116において、制御回路101は、上述の取得部166(図14参照)として機能し、バッテリー209の残電力量を自走装置200から受信する。当該残電力量の取得方法については上述の通りであるので、その説明については繰り返さない。
ステップS120において、制御回路101は、上述の決定部170(図14参照)として機能し、ステップS112で特定された次の作業開始タイミングと、ステップS114で推定された必要電力量と、ステップS116で取得された残電力量とに基づいて、バッテリー209の充電速度を決定する。当該充電速度の決定方法については上述の通りであるので、その説明については繰り返さない。
ステップS122において、制御回路101は、自走装置200に充電指令を送信する。当該充電指令は、充電速度と、充電に要する充電時間とを含む。
<K.自走装置200の制御フロー>
次に、図16を参照して、自走装置200の制御フローについて説明する。図16は、自走装置200による充電制御処理の流れをフローチャートで示す図である。
図16に示される処理は、自走装置200が上述の制御プログラム222を実行することにより実現される。他の局面において、処理の一部または全部が、回路素子またはその他のハードウェアによって実行されてもよい。
ステップS150において、制御回路201は、コントローラ100から充電指令を受信したか否かを判断する。制御回路201は、コントローラ100から充電指令を受信したと判断した場合(ステップS150においてYES)、制御をステップS152に切り替える。そうでない場合には(ステップS150においてNO)、制御回路201は、ステップS150の処理を再び実行する。
ステップS152において、制御回路201は、上述の走行制御部254(図9参照)として機能し、自走装置200を充電ステーション300まで走行させる。充電ステーション300の位置は、たとえば、上述の3次元マップ224に規定されている。
ステップS160において、制御回路201は、自走装置200が充電ステーション300に到達したか否かを判断する。制御回路201は、自走装置200が充電ステーション300に到達したと判断した場合(ステップS160においてYES)、制御をステップS162に切り替える。そうでない場合には(ステップS160においてNO)、制御回路201は、ステップS160の処理を再び実行する。
ステップS162において、制御回路201は、充電ステーション300に充電指令を送信する。当該充電指令は、たとえば、ステップS150でコントローラ100から受信した充電指令と同じ情報を含む。充電ステーション300は、充電指令を受信したことに基づいて、指示された充電速度に応じて上述の交流電源310を駆動する。これにより、交流電流が充電ステーション300内の受電コイル136に発生する。結果として、誘導起電力が自走装置200内の受電コイル136に発生し、当該誘導起電力によってバッテリー209が充電される。
ステップS170において、制御回路201は、バッテリー209の残電力量が必要電力量以上になったか否かを判断する。制御回路201は、バッテリー209の残電力量が必要電力量以上になったと判断した場合(ステップS170においてYES)、図16に示される処理を終了する。そうでない場合には(ステップS170においてNO)、制御回路201は、ステップS170の処理を再び実行する。
なお、制御回路201は、ステップS170の処理の実行後には、作業スケジュール125に規定されている次の作業を自走装置200に実行させる。あるいは、制御回路201は、作業スケジュール125が変更されたことにより次の作業までに時間がある場合には、バッテリー209の充電を継続してもよい。
今回開示された実施の形態は全ての点で例示であって制限的なものではないと考えられるべきである。本発明の範囲は上記した説明ではなくて特許請求の範囲によって示され、特許請求の範囲と均等の意味および範囲内での全ての変更が含まれることが意図される。
10 自走システム、20 走行本体、23 アームロボット、70 トレイ、100 コントローラ、101 制御回路、102 ROM、103 RAM、104 通信インターフェイス、105 表示インターフェイス、106 ディスプレイ、107 入力インターフェイス、108 入力デバイス、120 補助記憶装置、122 制御プログラム、123 加工設定、124 ワーク情報、125 作業スケジュール、136 受電コイル、152 スケジュール生成部、154 搬送指令部、162 特定部、164 推定部、166 取得部、170 決定部、200 自走装置、201 制御回路、202 ROM、203 RAM、204 通信インターフェイス、205 レーザセンサ、206 モータ駆動装置、207 カメラ、208 モータ駆動装置、209 バッテリー、210 カバー、211 受電コイル、216 仮置き場、220 補助記憶装置、222 制御プログラム、224 3次元マップ、225 エンドエフェクタ、226 制御パラメータ、240 走行経路、252 マップ生成部、254 走行制御部、300 充電ステーション、301 制御回路、302 ROM、303 RAM、304 通信インターフェイス、310 交流電源、311 送電コイル、320 補助記憶装置、322 制御プログラム、324 制御パラメータ、400 工作機械、402 ROM、403 RAM、405 表示インターフェイス、409 入力インターフェイス、411A サーボドライバ、411B サーボドライバ、411C サーボドライバ、411D サーボドライバ、412A サーボモータ、412B サーボモータ、412C サーボモータ、412D サーボモータ、413A エンコーダ、413B エンコーダ、413C エンコーダ、413D エンコーダ、414A ボールねじ、414B ボールねじ、415 主軸、420 補助記憶装置、422 加工プログラム、430 ディスプレイ、430A 障害物、430B 障害物、431 :入力デバイス。

Claims (7)

  1. 自走システムであって、
    内蔵されているバッテリーから電力の供給を受けることで自走し、搬送物を搬送することが可能な自走装置と、
    前記バッテリーを充電することが可能な充電ステーションと、
    前記自走装置を制御するための制御装置とを備え、
    前記制御装置は、
    前記バッテリーの残りの電力量を取得する処理と、
    前記自走装置によって搬送される予定の各搬送物について作業開始タイミングを規定している作業スケジュールに基づいて、次の作業の開始タイミングを特定する処理と、
    前記自走装置が前記次の作業を行うのに要する必要電力量を推定する処理と、
    前記残りの電力量が前記開始タイミングまでに前記必要電力量以上になるように、前記バッテリーの充電速度を決定する処理とを実行し、
    前記自走装置によって搬送される搬送物は、工作機械による加工対象のワーク、または工作機械で加工に用いられる工具であり、
    前記推定する処理は、
    前記作業スケジュールに基づいて、前記次の作業での搬送物を特定することと、
    搬送物の種別に当該搬送物の重量を規定している情報に基づいて、前記特定された搬送物の重量を特定することと、
    前記特定された重量が重いほど、前記必要電力量を多くすることを含む、自走システム。
  2. 前記推定する処理は、前記次の作業における前記自走装置の走行距離が長いほど、前記必要電力量を多くすることを含む、請求項1に記載の自走システム。
  3. 前記推定する処理は、前記次の作業における前記自走装置の走行経路が直線に近いほど、前記必要電力量を少なくすることを含む、請求項1または2に記載の自走システム。
  4. 前記決定する処理は、現在から前記開始タイミングまでの時間が長いほど、前記充電速度を遅くすることを含む、請求項1~3のいずれか1項に記載の自走システム。
  5. 前記充電ステーションにおける動作モードは、
    第1速度で前記バッテリーを充電する第1充電モードと、
    前記第1速度よりも速い第2速度で前記バッテリーを充電する第2充電モードとを含み、
    前記決定する処理は、
    前記第1充電モードで前記バッテリーを充電することによって、前記残りの電力量が前記開始タイミングまでに前記必要電力量以上になる場合には、前記充電ステーションを前記第1充電モードで動作させる処理と、
    前記第1充電モードで前記バッテリーを充電することによって、前記残りの電力量が前記開始タイミングまでに前記必要電力量以上にならない場合には、前記充電ステーションを前記第2充電モードで動作させる処理とを含む、請求項1~4のいずれか1項に記載の自走システム。
  6. 自走システムの制御方法であって、
    前記自走システムは、
    内蔵されているバッテリーから電力の供給を受けることで自走し、搬送物を搬送することが可能な自走装置と、
    前記バッテリーを充電することが可能な充電ステーションとを備え、
    前記制御方法は、
    前記バッテリーの残りの電力量を取得するステップと、
    前記自走装置によって搬送される予定の各搬送物について作業開始タイミングを規定している作業スケジュールに基づいて、次の作業の開始タイミングを特定するステップと、
    前記自走装置が前記次の作業を行うのに要する必要電力量を推定するステップと、
    前記残りの電力量が前記開始タイミングまでに前記必要電力量以上になるように、前記バッテリーの充電速度を決定するステップとを備え、
    前記自走装置によって搬送される搬送物は、工作機械による加工対象のワーク、または工作機械で加工に用いられる工具であり、
    前記推定するステップは、
    前記作業スケジュールに基づいて、前記次の作業での搬送物を特定することと、
    搬送物の種別に当該搬送物の重量を規定している情報に基づいて、前記特定された搬送物の重量を特定することと、
    前記特定された重量が重いほど、前記必要電力量を多くすることを含む、制御方法。
  7. 自走システムの制御プログラムであって、
    前記自走システムは、
    内蔵されているバッテリーから電力の供給を受けることで自走し、搬送物を搬送することが可能な自走装置と、
    前記バッテリーを充電することが可能な充電ステーションとを備え、
    前記制御プログラムは、前記自走システムに、
    前記バッテリーの残りの電力量を取得するステップと、
    前記自走装置によって搬送される予定の各搬送物について作業開始タイミングを規定している作業スケジュールに基づいて、次の作業の開始タイミングを特定するステップと、
    前記自走装置が前記次の作業を行うのに要する必要電力量を推定するステップと、
    前記残りの電力量が前記開始タイミングまでに前記必要電力量以上になるように、前記バッテリーの充電速度を決定するステップとを実行させ、
    前記自走装置によって搬送される搬送物は、工作機械による加工対象のワーク、または工作機械で加工に用いられる工具であり、
    前記推定するステップは、
    前記作業スケジュールに基づいて、前記次の作業での搬送物を特定することと、
    搬送物の種別に当該搬送物の重量を規定している情報に基づいて、前記特定された搬送物の重量を特定することと、
    前記特定された重量が重いほど、前記必要電力量を多くすることを含む、制御プログラム。
JP2022022595A 2022-02-17 2022-02-17 自走システム、制御方法、および制御プログラム Active JP7185079B1 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2022022595A JP7185079B1 (ja) 2022-02-17 2022-02-17 自走システム、制御方法、および制御プログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2022022595A JP7185079B1 (ja) 2022-02-17 2022-02-17 自走システム、制御方法、および制御プログラム

Publications (2)

Publication Number Publication Date
JP7185079B1 true JP7185079B1 (ja) 2022-12-06
JP2023119632A JP2023119632A (ja) 2023-08-29

Family

ID=84327876

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2022022595A Active JP7185079B1 (ja) 2022-02-17 2022-02-17 自走システム、制御方法、および制御プログラム

Country Status (1)

Country Link
JP (1) JP7185079B1 (ja)

Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004112851A (ja) 2002-09-13 2004-04-08 Toyota Motor Corp ハイブリッド車両
JP2012228005A (ja) 2011-04-15 2012-11-15 Denso Corp 車両用充電制御装置
JP2013090360A (ja) 2011-10-13 2013-05-13 Nissan Motor Co Ltd 充電制御装置
JP2014040774A (ja) 2013-10-29 2014-03-06 Mitsubishi Heavy Industries Pariking Co Ltd 揚重装置およびその制御方法、これを応用した機械式立体駐車場
JP2014096911A (ja) 2012-11-09 2014-05-22 Sumitomo Heavy Ind Ltd 充電装置及び荷役装置
JP2018206761A (ja) 2017-06-08 2018-12-27 フォルヴェルク・ウント・ツェーオー、インターホールディング・ゲーエムベーハーVorwerk & Compagnie Interholding Gesellshaft Mit Beschrankter Haftung 蓄電池を有する家庭用機器の動作方法
JP2020051176A (ja) 2018-09-28 2020-04-02 大和ハウス工業株式会社 建物の荷受け構造
JP2021087328A (ja) 2019-11-29 2021-06-03 Dmg森精機株式会社 無人搬送車、及び無人搬送システム
JP6986314B1 (ja) 2021-01-08 2021-12-22 株式会社LexxPluss 搬送システム、及び搬送制御方法

Patent Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004112851A (ja) 2002-09-13 2004-04-08 Toyota Motor Corp ハイブリッド車両
JP2012228005A (ja) 2011-04-15 2012-11-15 Denso Corp 車両用充電制御装置
JP2013090360A (ja) 2011-10-13 2013-05-13 Nissan Motor Co Ltd 充電制御装置
JP2014096911A (ja) 2012-11-09 2014-05-22 Sumitomo Heavy Ind Ltd 充電装置及び荷役装置
JP2014040774A (ja) 2013-10-29 2014-03-06 Mitsubishi Heavy Industries Pariking Co Ltd 揚重装置およびその制御方法、これを応用した機械式立体駐車場
JP2018206761A (ja) 2017-06-08 2018-12-27 フォルヴェルク・ウント・ツェーオー、インターホールディング・ゲーエムベーハーVorwerk & Compagnie Interholding Gesellshaft Mit Beschrankter Haftung 蓄電池を有する家庭用機器の動作方法
JP2020051176A (ja) 2018-09-28 2020-04-02 大和ハウス工業株式会社 建物の荷受け構造
JP2021087328A (ja) 2019-11-29 2021-06-03 Dmg森精機株式会社 無人搬送車、及び無人搬送システム
JP6986314B1 (ja) 2021-01-08 2021-12-22 株式会社LexxPluss 搬送システム、及び搬送制御方法

Also Published As

Publication number Publication date
JP2023119632A (ja) 2023-08-29

Similar Documents

Publication Publication Date Title
JP6458052B2 (ja) 自走式関節ロボット
CN110198813B (zh) 机器人路径生成装置和机器人系统
US10274931B2 (en) Cell control apparatus which predicts failure of manufacturing machines and production system
EP2939798A1 (en) An automation system and a method for tending a production system
CN110554699A (zh) 机器人的控制系统及控制方法
KR102049960B1 (ko) 사물인터넷 기반 운송 로봇 및 운송 로봇의 동작 방법
US10625420B2 (en) Machining system
EP3433062A1 (en) Agile manufacturing platform and system
JP6748126B2 (ja) 作業ロボットシステム
KR20130052591A (ko) 무인 반송차 및 주행 제어 방법
JP2017207806A (ja) 揺動切削を行う工作機械のサーボ制御装置、制御方法及びコンピュータプログラム
JP7553583B2 (ja) ロボットの障害物との衝突予測及び回避
CN214846390U (zh) 基于自动导引小车的动态环境避障系统
JP2020116687A (ja) 追随ロボットおよび作業ロボットシステム
JP7185079B1 (ja) 自走システム、制御方法、および制御プログラム
RU178222U1 (ru) Мобильный робот
CN116133788A (zh) 搬送系统、搬送系统的控制方法以及搬送系统的控制程序
KR20100110960A (ko) 옴니휠을 이용한 이동로봇의 주행제어 장치 및 방법
US11633851B2 (en) Control method for robot system
JP6918259B1 (ja) 搬送システム、制御方法、および制御プログラム
WO2021241512A1 (ja) ワークに対する作業をロボットに実行させる制御装置、ロボットシステム、及び制御方法
Gui et al. Design and experimental verification of an intelligent wall-climbing welding robot system
JP7062843B1 (ja) 搬送ロボット、搬送方法、および制御プログラム
JP7049411B2 (ja) 移動体
JP2019209444A (ja) ロボット制御装置及びロボット制御方法

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20220217

A871 Explanation of circumstances concerning accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A871

Effective date: 20220217

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20220405

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20220411

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20220712

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20220905

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20221124

R150 Certificate of patent or registration of utility model

Ref document number: 7185079

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

RD07 Notification of extinguishment of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: R3D07