JP6227948B2 - 自律走行式床洗浄機、清掃スケジュールのデータ構造、記憶媒体、清掃スケジュールの生成方法、及びプログラム - Google Patents
自律走行式床洗浄機、清掃スケジュールのデータ構造、記憶媒体、清掃スケジュールの生成方法、及びプログラム Download PDFInfo
- Publication number
- JP6227948B2 JP6227948B2 JP2013193320A JP2013193320A JP6227948B2 JP 6227948 B2 JP6227948 B2 JP 6227948B2 JP 2013193320 A JP2013193320 A JP 2013193320A JP 2013193320 A JP2013193320 A JP 2013193320A JP 6227948 B2 JP6227948 B2 JP 6227948B2
- Authority
- JP
- Japan
- Prior art keywords
- cleaning
- unit
- teaching
- traveling
- data acquisition
- 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
- 238000004140 cleaning Methods 0.000 title claims description 850
- 238000000034 method Methods 0.000 title claims description 96
- 238000003860 storage Methods 0.000 title description 97
- 239000007788 liquid Substances 0.000 claims description 75
- 238000012937 correction Methods 0.000 claims description 12
- 238000005406 washing Methods 0.000 claims description 6
- 238000003825 pressing Methods 0.000 description 22
- 238000010586 diagram Methods 0.000 description 18
- 230000007613 environmental effect Effects 0.000 description 18
- 238000004364 calculation method Methods 0.000 description 12
- 230000006870 function Effects 0.000 description 11
- 238000005315 distribution function Methods 0.000 description 9
- 238000006243 chemical reaction Methods 0.000 description 5
- 230000000694 effects Effects 0.000 description 4
- 238000012545 processing Methods 0.000 description 4
- 238000013459 approach Methods 0.000 description 3
- 238000001514 detection method Methods 0.000 description 3
- 238000013507 mapping Methods 0.000 description 3
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000011084 recovery Methods 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 1
- 239000000428 dust Substances 0.000 description 1
- 230000003028 elevating effect Effects 0.000 description 1
- 230000005484 gravity Effects 0.000 description 1
- 230000004807 localization Effects 0.000 description 1
- 230000000630 rising effect Effects 0.000 description 1
- 239000010865 sewage Substances 0.000 description 1
- 230000009466 transformation Effects 0.000 description 1
- XLYOFNOQVPJJNP-UHFFFAOYSA-N water Substances O XLYOFNOQVPJJNP-UHFFFAOYSA-N 0.000 description 1
Images
Classifications
-
- A—HUMAN NECESSITIES
- A47—FURNITURE; DOMESTIC ARTICLES OR APPLIANCES; COFFEE MILLS; SPICE MILLS; SUCTION CLEANERS IN GENERAL
- A47L—DOMESTIC WASHING OR CLEANING; SUCTION CLEANERS IN GENERAL
- A47L11/00—Machines for cleaning floors, carpets, furniture, walls, or wall coverings
- A47L11/40—Parts or details of machines not provided for in groups A47L11/02 - A47L11/38, or not restricted to one of these groups, e.g. handles, arrangements of switches, skirts, buffers, levers
- A47L11/4011—Regulation of the cleaning machine by electric means; Control systems and remote control systems therefor
-
- A—HUMAN NECESSITIES
- A47—FURNITURE; DOMESTIC ARTICLES OR APPLIANCES; COFFEE MILLS; SPICE MILLS; SUCTION CLEANERS IN GENERAL
- A47L—DOMESTIC WASHING OR CLEANING; SUCTION CLEANERS IN GENERAL
- A47L11/00—Machines for cleaning floors, carpets, furniture, walls, or wall coverings
- A47L11/02—Floor surfacing or polishing machines
- A47L11/10—Floor surfacing or polishing machines motor-driven
- A47L11/14—Floor surfacing or polishing machines motor-driven with rotating tools
- A47L11/16—Floor surfacing or polishing machines motor-driven with rotating tools the tools being disc brushes
- A47L11/161—Floor surfacing or polishing machines motor-driven with rotating tools the tools being disc brushes with supply of cleaning agents
-
- A—HUMAN NECESSITIES
- A47—FURNITURE; DOMESTIC ARTICLES OR APPLIANCES; COFFEE MILLS; SPICE MILLS; SUCTION CLEANERS IN GENERAL
- A47L—DOMESTIC WASHING OR CLEANING; SUCTION CLEANERS IN GENERAL
- A47L11/00—Machines for cleaning floors, carpets, furniture, walls, or wall coverings
- A47L11/29—Floor-scrubbing machines characterised by means for taking-up dirty liquid
- A47L11/30—Floor-scrubbing machines characterised by means for taking-up dirty liquid by suction
- A47L11/302—Floor-scrubbing machines characterised by means for taking-up dirty liquid by suction having rotary tools
- A47L11/305—Floor-scrubbing machines characterised by means for taking-up dirty liquid by suction having rotary tools the tools being disc brushes
-
- A—HUMAN NECESSITIES
- A47—FURNITURE; DOMESTIC ARTICLES OR APPLIANCES; COFFEE MILLS; SPICE MILLS; SUCTION CLEANERS IN GENERAL
- A47L—DOMESTIC WASHING OR CLEANING; SUCTION CLEANERS IN GENERAL
- A47L11/00—Machines for cleaning floors, carpets, furniture, walls, or wall coverings
- A47L11/40—Parts or details of machines not provided for in groups A47L11/02 - A47L11/38, or not restricted to one of these groups, e.g. handles, arrangements of switches, skirts, buffers, levers
- A47L11/4002—Installations of electric equipment
- A47L11/4008—Arrangements of switches, indicators or the like
-
- A—HUMAN NECESSITIES
- A47—FURNITURE; DOMESTIC ARTICLES OR APPLIANCES; COFFEE MILLS; SPICE MILLS; SUCTION CLEANERS IN GENERAL
- A47L—DOMESTIC WASHING OR CLEANING; SUCTION CLEANERS IN GENERAL
- A47L11/00—Machines for cleaning floors, carpets, furniture, walls, or wall coverings
- A47L11/40—Parts or details of machines not provided for in groups A47L11/02 - A47L11/38, or not restricted to one of these groups, e.g. handles, arrangements of switches, skirts, buffers, levers
- A47L11/4036—Parts or details of the surface treating tools
- A47L11/4044—Vacuuming or pick-up tools; Squeegees
-
- A—HUMAN NECESSITIES
- A47—FURNITURE; DOMESTIC ARTICLES OR APPLIANCES; COFFEE MILLS; SPICE MILLS; SUCTION CLEANERS IN GENERAL
- A47L—DOMESTIC WASHING OR CLEANING; SUCTION CLEANERS IN GENERAL
- A47L11/00—Machines for cleaning floors, carpets, furniture, walls, or wall coverings
- A47L11/40—Parts or details of machines not provided for in groups A47L11/02 - A47L11/38, or not restricted to one of these groups, e.g. handles, arrangements of switches, skirts, buffers, levers
- A47L11/408—Means for supplying cleaning or surface treating agents
- A47L11/4083—Liquid supply reservoirs; Preparation of the agents, e.g. mixing devices
-
- A—HUMAN NECESSITIES
- A47—FURNITURE; DOMESTIC ARTICLES OR APPLIANCES; COFFEE MILLS; SPICE MILLS; SUCTION CLEANERS IN GENERAL
- A47L—DOMESTIC WASHING OR CLEANING; SUCTION CLEANERS IN GENERAL
- A47L11/00—Machines for cleaning floors, carpets, furniture, walls, or wall coverings
- A47L11/40—Parts or details of machines not provided for in groups A47L11/02 - A47L11/38, or not restricted to one of these groups, e.g. handles, arrangements of switches, skirts, buffers, levers
- A47L11/408—Means for supplying cleaning or surface treating agents
- A47L11/4088—Supply pumps; Spraying devices; Supply conduits
-
- A—HUMAN NECESSITIES
- A47—FURNITURE; DOMESTIC ARTICLES OR APPLIANCES; COFFEE MILLS; SPICE MILLS; SUCTION CLEANERS IN GENERAL
- A47L—DOMESTIC WASHING OR CLEANING; SUCTION CLEANERS IN GENERAL
- A47L9/00—Details or accessories of suction cleaners, e.g. mechanical means for controlling the suction or for effecting pulsating action; Storing devices specially adapted to suction cleaners or parts thereof; Carrying-vehicles specially adapted for suction cleaners
- A47L9/28—Installation of the electric equipment, e.g. adaptation or attachment to the suction cleaner; Controlling suction cleaners by electric means
- A47L9/2857—User input or output elements for control, e.g. buttons, switches or displays
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05D—SYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
- G05D1/00—Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
- G05D1/0088—Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots characterized by the autonomous decision making process, e.g. artificial intelligence, predefined behaviours
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05D—SYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
- G05D1/00—Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
- G05D1/02—Control of position or course in two dimensions
- G05D1/021—Control of position or course in two dimensions specially adapted to land vehicles
- G05D1/0212—Control of position or course in two dimensions specially adapted to land vehicles with means for defining a desired trajectory
- G05D1/0221—Control of position or course in two dimensions specially adapted to land vehicles with means for defining a desired trajectory involving a learning process
-
- A—HUMAN NECESSITIES
- A47—FURNITURE; DOMESTIC ARTICLES OR APPLIANCES; COFFEE MILLS; SPICE MILLS; SUCTION CLEANERS IN GENERAL
- A47L—DOMESTIC WASHING OR CLEANING; SUCTION CLEANERS IN GENERAL
- A47L2201/00—Robotic cleaning machines, i.e. with automatic control of the travelling movement or the cleaning operation
- A47L2201/04—Automatic control of the travelling movement; Automatic obstacle detection
Landscapes
- Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Physics & Mathematics (AREA)
- Automation & Control Theory (AREA)
- Aviation & Aerospace Engineering (AREA)
- Remote Sensing (AREA)
- Radar, Positioning & Navigation (AREA)
- Mechanical Engineering (AREA)
- Business, Economics & Management (AREA)
- Game Theory and Decision Science (AREA)
- Medical Informatics (AREA)
- Evolutionary Computation (AREA)
- Artificial Intelligence (AREA)
- Health & Medical Sciences (AREA)
- Control Of Position, Course, Altitude, Or Attitude Of Moving Bodies (AREA)
- Electric Vacuum Cleaner (AREA)
Description
本発明の一見地に係る自律走行式床洗浄機は、教示された清掃条件と走行経路とを再現することにより、自律的に走行し清掃を実行する自律走行式床洗浄機である。自律走行式床洗浄機は、清掃部と、走行部と、位置推定部と、清掃条件教示部と、走行経路教示部と、教示データ取得部と、清掃スケジュール作成部と、清掃再現部と、経過時間決定部と、を備える。
清掃部は、清掃条件に従って床面を清掃する。
走行部は、操作者の操作又は走行制御指令に従って走行する。
位置推定部は、位置情報を推定する。位置情報とは、所定の座標上の、走行部の走行経路上の位置と姿勢に関する情報とを含む情報である。
清掃条件教示部は、操作者による清掃条件の入力を受け付けて、清掃部に出力する。
走行経路教示部は、操作者による走行部の移動操作を受け付ける。
教示データ取得部は、手動操作教示モードの実行時に、教示位置情報と、教示清掃条件とを、教示データ取得時間において取得する。ここで、手動操作教示モードとは、自律走行式床洗浄機において、操作者の操作による清掃条件及び走行経路を教示する動作モードのことである。また、教示位置情報とは、手動操作教示モード時に位置推定部において推定された位置情報である。さらに、教示清掃条件とは、手動操作教示モード時に清掃条件教示部において教示されている清掃条件である。
清掃再現部は、自律清掃モードの実行時に、清掃スケジュールに記憶された教示データ取得時間と教示清掃条件と教示位置情報とに基づいて、自律清掃モードの実行開始からの所定の経過時間における再現走行制御指令と再現清掃条件とを算出する。そして、清掃再現部は、算出された再現走行制御指令及び再現清掃条件をそれぞれ、走行部及び清掃部に出力する。ここで、自律清掃モードとは、自律走行式床洗浄機が、操作者の操作を必要とすることなく自律的に走行及び清掃を行う動作モードである。経過時間決定部は、教示データ取得時間と所定の経過時間を決定する。
操作者が清掃作業を教示するとき(手動操作教示モードの実行時)、
(i)教示データ取得部が、操作者による走行部及び清掃部の操作を教示データ取得時間において取得する。
(ii)清掃スケジュール作成部が、教示データ取得時間、教示位置情報、及び教示清掃条件が関連付けられた清掃スケジュールを作成し記憶する。
自律走行式床洗浄機が自律的に清掃を行うとき(自律清掃モードの実行時)、
(iii)清掃再現部が、清掃スケジュールに記憶された教示データ取得時間、教示位置情報、及び教示清掃条件に基づいて、自律清掃モードの実行開始からの所定の経過時間において出力すべき清掃条件(再現清掃条件)及び走行制御指令(再現走行制御指令)を算出する。
(iv)再現清掃条件に基づいて清掃部を制御し、再現走行制御指令に基づき走行部を制御する。
また、この場合、洗浄液供給部から供給される洗浄液の供給量と、床面洗浄部による床面の洗浄力と、吸引部による洗浄液の吸引力とは、清掃条件として任意に設定可能であってもよい。
これにより、清掃部は、多様な清掃作業(すなわち、多様な清掃条件)を実行できる。
清掃スケジュールのデータ構造は、経過時間情報記憶領域と、清掃条件記憶領域と、位置情報記憶領域と、から構成される。経過時間情報記憶領域には、経過時間情報が記憶されている。ここで、経過時間情報とは、清掃部及び走行部の制御を開始してからの経過時間に関する情報である。清掃条件記憶領域には、経過時間情報に表された経過時間における清掃条件が記憶される。位置情報記憶領域には、経過時間情報に表された経過時間における位置情報が記憶される。
この場合、所定のタイミングは、経過時間情報記憶領域に記憶された経過時間情報に基づき決定される。また、当該タイミングにおける清掃条件は、清掃条件記憶領域に記憶され、当該タイミングに対応する経過時間情報に関連付けられた清掃条件に基づき算出される。さらに、当該タイミングにおける走行制御指令は、位置情報記憶領域に記憶され、当該タイミングに対応する経過時間情報に関連付けられた位置情報に基づき算出される。
また、自律的に走行及び清掃を実行する際(自律清掃モードの実行時)、所定のタイミングにおける清掃条件(再現清掃条件)及び走行制御指令(再現走行制御指令)は、清掃スケジュールに記憶された、当該所定のタイミングに対応する経過時間に関連付けられた清掃条件及び位置情報に基づいて算出される。これにより、自律走行式床洗浄機は多様な清掃作業を自律的に再現できる。
◎操作者により設定された教示清掃条件に基づいて、自律走行式床洗浄機に清掃作業を実行させるステップ。
◎操作者の操作に基づいて、自律走行式床洗浄機を走行させるステップ。
◎自律走行式床洗浄機にて定めた所定の座標上の、自律走行式床洗浄機の走行経路上の位置と姿勢に関する情報とを含む教示位置情報を推定するステップ。
◎教示位置情報と清掃作業を実行中の清掃条件である教示清掃条件とを、自律走行式床洗浄機において決定された教示データ取得時間において取得するステップ。
◎教示位置情報と教示清掃条件とを、教示データ取得時間と関連付けて記憶し清掃スケジュールを作成するステップ。
(1)自律走行式床洗浄機の全体構成
まず、本実施形態に係る自律走行式床洗浄機の全体構成について、図1を用いて説明する。図1は、自律走行式床洗浄機100の全体構成を示す図である。図1に示す自律走行式床洗浄機100は、教示された清掃条件と走行経路とを忠実に再現することにより、自律的に清掃作業を実行するものである。「教示された清掃条件」とは、自律走行式床洗浄機100が手動操作可能な状態のときに、操作者による手動操作により自律走行式床洗浄機100が実行した清掃の清掃条件のことを言う。また、「教示された走行経路」とは、操作者による手動操作(移動操作)により自律走行式床洗浄機100が走行した経路のことを言う。
自律走行式床洗浄機100は、走行部1と、清掃部3と、制御部5と、走行経路教示部7と、設定部9と、前方検出器11と、後方検出器13と、を備える。
主輪部1001は、走行モータ1003の出力回転軸に取り付けられている。従って、主輪部1001は、走行モータ1003により回転可能となっている。
また、本実施形態においては、主輪部1001よりも後方に補助輪部1005が取り付けられているが、これに限られない。自律走行式床洗浄機100の重心位置などを考慮して、補助輪部1005は主輪部1001よりも前方に取り付けられてもよい。
これにより、制御部5は、走行部1を走行制御指令に従って制御し、清掃部3を清掃条件に従って制御する。なお、制御部5の詳細な構成については後ほど説明する。ここで、走行制御指令とは、走行モータ1003の回転速度及び/又は回転量を制御するための指令である。本実施形態においては、走行制御指令は、移動量として表現される。移動量は、例えば、現在位置と目標位置が決まっていれば、目標位置と現在位置との差から算出できる。また、走行経路教示部7(後述)のハンドル7001a、7001bの回動方向や回動量から、移動量を算出できる。また、清掃条件とは、洗浄用部材3001(後述)の回転数や押圧力で表される洗浄力W、洗浄液供給部3003から供給される洗浄液供給量S、及び吸引部3005による吸引力Pのことをいう。
また、設定部9は、制御部5に電気的に接続されている。これにより、設定部9において設定した設定値を、制御部5へ送信できる。なお、設定部9の詳細については、後ほど説明する。
前方検出器11としては、例えば、レーザーレンジファインダ(Laser Range Finder、LRF)を用いることができる。レーザーレンジファインダを前方検出器11として用いた場合、走行部1と前方障害物との距離と、前方障害物が存在する方向とが、前方障害物に関する情報として取得できる。
後方検出器13としては、例えば、その検出範囲が180°以上のレーザーレンジファインダ(Laser Range Finder、LRF)を用いることができる。レーザーレンジファインダを後方検出器13として用いた場合、走行部1と後方障害物との距離と、後方障害物が存在する方向とが、後方障害物に関する情報として取得できる。
次に、清掃部3の構成について、図1を用いて説明する。清掃部3は、清掃条件に従って床面Fを洗浄するものである。清掃部3は、洗浄用部材3001と、洗浄液供給部3003と、吸引部3005と、スキージ部3007と、を有する。
洗浄用部材3001は、走行部1の底面の前方側に設けられている。また、洗浄用部材3001は、固定部材3041に固定されている。そして、固定部材3041は、洗浄用部材回転モータ3011の出力回転軸に接続されている。このため、固定部材3041が洗浄用部材回転モータ3011により回転することにより、洗浄用部材3001も回転する。さらに、洗浄用部材3001は、押圧部材3031を介して、洗浄用部材押圧アクチュエータ3021に接続されている。このため、洗浄用部材3001は、洗浄用部材押圧アクチュエータ3021により、床面Fに押し付けられる。
その結果、洗浄用部材3001は、床面Fに押し付けられて回転しながら床面Fを洗浄できる。そして、洗浄用部材回転モータ3011の回転数及び洗浄用部材押圧アクチュエータ3021による押圧力を調整することにより、洗浄用部材3001による洗浄力を調整できる。なお、洗浄用部材3001としては、床面洗浄用のブラシなどを用いることができる。
なお、洗浄液供給部3003から供給される洗浄液としては、例えば、水を用いることができる。
また、回収部3025の上部に設けられた他の1つの開口部に、吸引モータ3015が設置されている。吸引モータ3015は、回収部3025の空間内を負圧状態にする。その結果、吸引部3005は負圧状態となり、床面F上の洗浄液などを回収部3025へと吸引できる。そして、吸引部3005による吸引力Pは、吸引モータ3015の出力を調整することにより、調整可能である。
また、スキージ部3007は、自律走行式床洗浄機100がバック走行するときは、床面Fから離れている。これにより、バック走行時において、床面F上の液体などが自律走行式床洗浄機100のさらに後方に移動することを抑制できる。その結果、自律走行式床洗浄機100は、効率よく床面Fの洗浄を行える。
次に、走行経路教示部7の構成について、図2を用いて説明する。図2は、走行経路教示部7の構成を示す図である。走行経路教示部7は、ハンドル7001a、7001bと、筐体7003と、走行制御指令算出部7005と、を有する。
ハンドル7001a、7001bは、それぞれ、筐体7003の左右側面に取り付けられている。ハンドル7001a、7001bを把持する操作者は、ハンドル7001a、7001bを介して、走行部1を操作者の方へ引張る力、又は、走行部1を押し出す力のいずれかを加えることができる。
このように、ハンドル7001a、7001bのそれぞれにかける力を調節することにより、走行部1の走行方向を調節できる。例えば、走行部1の前方方向から見て左側のハンドル7001aに対して、走行部1を引張る力を加えれば、走行部1は左へと方向転換する。
次に、設定部9の構成について、図3を用いて説明する。図3は、設定部9の構成を示す図である。設定部9は、切替部9001と、手動操作記憶スイッチ9002と、清掃条件教示部9003と、表示部9005と、清掃制御指令算出部9007と、設定操作部9008と、設定変換部9009と、を有する。
切替部9001は、制御部5に電気的に接続されている。切替部9001は、自律走行式床洗浄機100の動作モードを選択する。切替部9001は、例えば、スイッチなどにより構成されており、スイッチの切替により動作モードを選択する。
一方、手動操作モードは、自律走行式床洗浄機100が操作者により手動操作可能な状態にある動作モードである。動作モードの手動操作モードへの設定は、切替部9001を図3に示す「手動」に設定することにより可能となる。
従って、自律走行式床洗浄機100の動作モードには、自律清掃モードと、手動操作モードに加えて、手動操作モードのサブ動作モードとしての手動操作教示モードがある。手動操作教示モードは、操作者の手動操作による自律走行式床洗浄機100の清掃条件および走行経路を、自律走行式床洗浄機100に教示する動作モードである。そして、手動操作記憶スイッチ9002が押されることにより、動作モードが手動操作モードから手動操作教示モードへと移行する。
なお、手動操作教示モードの実行時に手動操作記憶スイッチ9002が押された場合、動作モードが手動操作教示モードから手動操作モードに切り替わってもよい。この場合、操作者は、手動操作教示モードが手動操作モードに切り替わっても、継続して自律走行式床洗浄機100を手動操作できる。
また、清掃条件教示部9003は、清掃条件調整部9013と、運転切替部9023と、を有している。清掃条件調整部9013は、洗浄用部材3001による床面Fの洗浄力Wと、洗浄液供給部3003から供給される洗浄液供給量Sと、吸引部3005による吸引力Pと、を教示清掃条件として個別に設定する。清掃条件調整部9013は、例えば、押圧スイッチにより構成され、押圧スイッチの押圧回数に従って上記の教示清掃条件を設定できる。
その他、表示部9005は、現在の動作モード(自律清掃モード/手動操作モード/手動操作教示モード)及び、運転時間などを表示する。さらに、表示部9005は、設定操作部9008により自律走行式床洗浄機100の各種設定を行う際に、各種設定手順を表示する。
設定操作部9008は、自律走行式床洗浄機100の各種設定を行い、当該各種設定を制御部5に送信する。設定操作部9008は、例えば、押圧スイッチなどにより構成されている。従って、操作者は、表示部9005に表示された各種設定の設定手順を確認しながら、設定操作部9008を操作して、自律走行式床洗浄機100の各種設定を行える。
5−1.制御部の全体構成
次に、制御部5の全体構成について、図4を用いて説明する。図4は、制御部5の全体構成を示す図である。本実施形態において、制御部5は、CPU(Central Processing Unit)、RAM(Random Access Memory)やROM(Read Only Memory)などのメモリ部、記憶装置、各種インターフェースなどを備えたマイコンシステムにより実現されている。以下に説明する制御部5の各部の全部又は一部は、当該マイコンシステムにて実行可能なプログラムとして実現されていてもよい。この場合、当該プログラムは、メモリ部及び/又は記憶装置に記憶されていてもよい。また、制御部5の各部の全部又は一部は、カスタムICとして実現されていてもよい。
清掃制御部5001は、洗浄用部材回転モータ3011と、洗浄液供給ポンプ3013と、吸引モータ3015と、電気的に接続されている。これにより、清掃制御部5001は、洗浄用部材回転モータ3011、洗浄液供給ポンプ3013、及び吸引モータ3015に対して、これらのモータやポンプの回転速度や出力などを制御する電力(清掃部制御量)を供給できる。また、清掃制御部5001は、洗浄用部材押圧アクチュエータ3021と、スキージ部昇降アクチュエータ3017と、電気的に接続されている。これにより、清掃制御部5001は、洗浄用部材押圧アクチュエータ3021及びスキージ部昇降アクチュエータ3017に対し、これらアクチュエータの動作量を制御する電力(清掃部制御量)を供給できる。
なお、清掃スケジュール修正部5009は、自律走行式床洗浄機100と一体に形成されなくてもよい。例えば、清掃スケジュール修正部5009は、情報端末などに備えられていてもよい。この場合、清掃スケジュール修正部5009を備える情報端末などは、例えば、自律走行式床洗浄機100と通信することにより、記憶部5007に記憶された清掃スケジュール500を送受信できる。
次に、清掃制御部5001の構成について、図5を用いて説明する。図5は、清掃制御部5001の構成を示す図である。清掃制御部5001は、清掃切替部5011と、清掃部制御部5031と、を有する。
清掃切替部5011は、3つの端子a、b、及びcを有している。また、清掃切替部5011は、切替部9001と信号送受信可能に接続されている。このため、清掃切替部5011は、切替部9001からの信号に基づき、端子bと端子aとを接続するか、あるいは、端子bと端子cとを接続するかのいずれかを選択できる。
また、端子aは、清掃条件教示部9003と接続されている。端子bは、清掃部制御部5031(後述)、表示部9005、及び制御統括部5005と接続されている。端子cは、制御統括部5005と接続されている。
清掃部制御部5031において、上述のモータ、ポンプ、及びアクチュエータに供給される駆動電力は、受信した教示清掃条件又は再現清掃条件に基づき制御される。
次に、走行制御部5003の構成について、図6を用いて説明する。図6は、走行制御部5003の構成を示す図である。走行制御部5003は、走行切替部5013と、モータ制御部5033と、を有する。
また、端子dは、走行経路教示部7と接続されている。端子eは、モータ制御部5033(後述)と接続されている。そして、端子fは、制御統括部5005と接続されている。
また、モータ制御部5033は、エンコーダ1013と信号送受信可能に接続されている。このため、モータ制御部5033は、ハンドル7001a、7001bの回動量/回動方向又は再現走行制御指令、及び、エンコーダ1013からのパルス信号に基づいて、走行モータ1003の回転速度などを制御できる。エンコーダ1013からのパルス信号に基づいて得られる情報は、走行モータ1003の回転量などの回転に関する情報である。よって、モータ制御部5033は、走行モータ1003の回転量をフィードバックしながら走行モータ1003を制御する。
次に、制御統括部5005の構成について、図7を用いて説明する。図7は、制御統括部5005の構成を示す図である。制御統括部5005は、教示データ取得部5015と、清掃スケジュール作成部5025と、清掃再現部5035と、SLAM部5045と、を有する。
教示データ取得部5015は、手動操作教示モードの実行時に、教示位置情報と、教示清掃条件とを、教示データ取得時間において取得する機能を実現できる。具体的には、教示データ取得部5015は、清掃制御部5001と信号送受信可能に接続されている。これにより、教示データ取得部5015は、清掃制御部5001から教示清掃条件を入力できる。また、教示データ取得部5015は、SLAM部5045に信号送受信可能に接続されている。これにより、教示データ取得部5015は、SLAM部5045から、教示データ取得時間と教示位置情報とを入力できる。また、教示データの取得時間は、システムクロックから直接取得してもよい。さらに、教示データ取得部5015は、清掃スケジュール作成部5025に信号送受信可能に接続されている。これにより、教示データ取得部5015は、清掃スケジュール作成部5025に教示清掃条件、教示位置情報、及び教示データ取得時間を出力できる。
従って、教示データ取得部5015は、手動操作教示モードの実行時に、教示位置情報と教示清掃条件とを、教示データ取得時間において取得できる。
なお、清掃スケジュール作成部5025において作成される清掃スケジュール500のデータ構造については、後述する。
この結果、清掃再現部5035は、自律清掃モードの実行時に、清掃スケジュール500に記憶された教示データ取得時間、教示清掃条件、及び教示位置情報に基づいて、所定の経過時間における再現清掃条件と再現走行制御指令とを算出できる。なお、清掃再現部5035における、再現清掃条件及び再現走行制御指令の算出方法については、後述する。
SLAM部5045においては、SLAM(Simultaneous Localization and Mapping)法により位置情報の推定を行っている。具体的な位置情報の推定方法は、後述する。
以下に、SLAM部5045の構成について説明する。
次に、SLAM部5045の構成について、図7を用いて説明する。SLAM部5045は、位置推定部5145と、経過時間決定部5245と、地図作成部5345と、を有する。位置推定部5145は、位置情報を推定する機能を実現する。位置推定部5145は、具体的には、記憶部5007に記憶された地図情報と、走行モータ1003の回転量と、ローカルマップ情報(後述)と、に基づいて、所定の座標上の走行部1(自律走行式床洗浄機100)の位置に関する情報、すなわち、位置情報を推定する。なお、位置推定部5145における、位置情報の構造及び位置情報の推定方法については、後述する。
なお、経過時間決定部5245における、教示データ取得時間及び上記の経過時間(所定の経過時間)の決定方法については、後ほど詳しく説明する。
地図作成部5345において作成される地図情報には、以下の4つが存在する。
(i)第1ローカルマップ情報:第1座標上の第1領域内における、障害物が存在する確率を表す地図情報である。具体的には、第1領域内の座標(Xk,Yk)(k=1,2,・・・m、m:整数)における、障害物が存在する確率に相当する値Pkにより表現される。従って、第1ローカルマップ情報は、3次元の値(Xk,Yk,Pk)として表現できる。
(ii)第2ローカルマップ情報:第2座標(上述の所定の座標に対応)上の第2領域内における、障害物が存在する確率を表す地図情報。第2ローカルマップ情報は、第1ローカルマップ情報の第1領域内の座標(Xk,Yk)を、第2座標上の座標に変換して得られる。従って、第2ローカルマップ情報は、3次元の値(xk,yk,Pk)(k=1,2,・・・m、m:整数)として表現できる。
(iii)環境地図情報:清掃作業を行う床面Fの所定の領域内における障害物に関する情報を、第2座標上に表した地図情報。環境地図情報は、位置情報を推定するために用いられる。環境地図情報は、第2座標上の第3領域内の座標(xi,yi)(i=1,2,・・・j、j:整数)における、障害物が存在する確率に相当する値piにより表現される。従って、環境地図情報は、3次元の値(xi,yi,pi)として表現できる。なお、環境地図情報を表す第3領域は、第2ローカルマップ情報を表す第2領域と同じ大きさであってもよく、異なる大きさであってもよい。
(iv)復元用地図情報:自律清掃モードの実行時に、環境地図情報を復元するために用いられる地図情報。この地図情報は、手動操作教示モードの実行時に第1ローカルマップ情報又は第2ローカルマップ情報に基づいて生成される。また、復元用地図情報は、時間に関連付けられて管理される。
6−1.基本動作
次に、自律走行式床洗浄機100の動作について説明する。図8Aは、自律走行式床洗浄機100の基本的な動作を示すフローチャートである。
まず、自律走行式床洗浄機100が動作を開始すると、制御部5が、切替部9001の状態を確認する(ステップS1)。すなわち、制御部5は、切替部9001が図3に示す「手動」を選択しているか、又は、図3に示す「自動」を選択しているかを確認する。
切替部9001が「手動」を選択している場合、制御部5は、自律走行式床洗浄機100が走行経路教示部7及び清掃条件教示部9003などにより手動操作可能な状態(すなわち、動作モードが手動操作モードに設定されている状態)にあると判断する。一方、切替部9001が「自動」を選択している場合、制御部5は、自律清掃モードを実行することが選択されていると判断する。
このように、手動操作記憶スイッチ9002が押されたときに手動操作の教示を開始することにより、操作者は、所望の走行位置から自律走行式床洗浄機100に手動操作を教示できる。その結果、自律走行式床洗浄機100は、操作者が所望する清掃スケジュール500を作成できる。
まず、図8AのステップS3における操作者による自律走行式床洗浄機100の手動操作を教示する方法について、図8Bを用いて説明する。図8Bは、操作者による自律走行式床洗浄機の手動操作を教示する方法を示すフローチャートである。
動作モードが手動操作教示モードに移行後(すなわち、手動操作の教示の開始後)、操作者は、走行経路教示部7を用いて、自律走行式床洗浄機100を手動により走行させる。また、操作者は、清掃条件教示部9003を用いて清掃条件を手動設定し、自律走行式床洗浄機100に床面Fの清掃を実行させる(ステップS31)。
これにより、操作者による清掃作業が終了するまで上記のステップS31〜S33の実行が継続され、操作者による清掃作業が自律走行式床洗浄機100に教示される。
次に、上記のステップS32における教示データの取得方法について、図9を用いて説明する。図9は教示データ取得方法を示すフローチャートである。
教示データの取得を開始すると、まず、教示データ取得部5015が、手動操作教示モードの実行開始からの経過時間(手動操作教示モード経過時間)を確認する(ステップS321)。そして、教示データ取得部5015は、手動操作教示モード経過時間が教示データ取得時間と一致するかどうかを判断する(ステップS322)。この判断は、例えば、以下のようにして実現できる。
一方、教示データ取得部5015が手動操作教示モード経過時間と教示データ取得時間とが一致すると判断した場合(ステップS322において「Yes」の場合)、ステップS323に進む。これにより、教示データ取得部5015は、経過時間決定部5245が決定した時間において、教示データを取得できる。
又は、経過時間決定部5245が、取得時間決定パルス信号のみでなく、教示データ取得時間も決定して、教示データ取得部5015に出力してもよい。この場合、教示データ取得部5015が、教示データ取得時間を算出する必要がなくなる。
なお、位置推定部5145における、教示位置情報の推定方法については、後述する。
ステップS324においては、教示データ取得部5015が、取得した上述の教示データを、清掃スケジュール作成部5025に送信する。
ここで、SLAM部5045における位置情報の推定方法について、図10を用いて説明する。図10は、(教示)位置情報の推定方法を示すフローチャートである。図10を用いて説明する位置情報の推定方法においては、エンコーダ1013のパルス信号に基づいて算出される走行部1の移動量と、前方検出器11及び後方検出器13から得られる障害物に関する情報(地図情報)を用いて、走行部1の位置情報の推定を行っている。
以下においては、教示データ取得時間Tn(n:整数。nはn番目の位置推定であることを示す)における位置推定方法を例に取って説明する。
ステップS3231の実行後、ステップS3232に進む。ステップS3232においては、取得した前方の障害物に関する情報及び後方の障害物に関する情報に基づいて、地図作成部5345が第1ローカルマップ情報を作成する。なお、具体的な第1ローカルマップ情報の作成方法については、後述する。
すなわち、本実施形態における、教示データ取得時間Tnにおける位置推定情報は、第2座標上の座標値(xn,yn)と走行部1の進行方向θnとにより構成される、3次元の値(xn,yn,θn)である。
なお、ステップS3233における走行部1の位置及び進行方向の推定方法については、後述する。
ステップS3234においては、地図作成部5345が、ステップS3232において取得した第1ローカルマップ情報から第2ローカルマップ情報を作成し、作成された第2ローカルマップ情報を復元用地図情報として記憶部5007に記憶する。この時、地図作成部5345は、復元用地図情報と教示データ取得時間Tnを関連付けて、復元用地図情報を記憶部5007に記憶する。
まず、第1ローカルマップ情報を、ステップS3233において推定された走行部1の進行方向θnとは逆方向にθnだけ回転する。すなわち、第1ローカルマップ情報を−θnだけ回転する。そして、回転処理後の第1ローカルマップ情報の原点が、ステップS3233において推定された走行部1の座標値(xn,yn)となるように、回転処理後の第1ローカルマップを平行移動する。
この処理により、第1座標上に表現された第1ローカルマップ情報(Xk,Yk,Pk)は、第2座標上に表現された第2ローカルマップ情報(xk,yk,Pk)=(xn+Xkcos(−θn)+Yksin(−θn),yn−Xksin(−θn)+Ykcos(−θn),Pk)に変換される。
従って、第2ローカルマップ情報は、走行部1(自律走行式床洗浄機100)を中心とした第1座標上に表現された第1ローカルマップ情報を、清掃作業を行っている平面(床面F)を表す第2座標上に展開することにより作成されている。よって、作成された複数の第2ローカルマップ情報を連結すると、清掃作業を行っている平面(床面F)全体(あるいは、全体の内の一部)の地図情報となる。
なお、上述した位置情報の推定方法において、教示データ取得時間T0、すなわち、手動操作教示モードを開始した時間における位置情報(x0,y0,θ0)は、(0,0,0)であるとする。これは、手動操作教示モードの開始時においては、走行部1は、所定の座標上の原点(0,0)に存在し、走行部1の進行方向は0°(x軸に平行、すなわち、手動操作教示モードの開始時の走行部1の基準軸が、所定の座標のx軸に対応する)であるとすることを意味している。
そして、教示データ取得時間T0において、ステップS3235における環境地図情報の更新は、ステップS3232において取得された第1ローカルマップ情報を、環境地図情報とすることにより行われる。
ここで、前方検出器11及び後方検出器13から得られた、前方の障害物に関する情報及び後方の障害物に関する情報から第1ローカルマップ情報の作成方法について、図12〜図13Bを用いて説明する。図12は、第1ローカルマップ情報の作成方法を示すフローチャートである。図13A及び図13Bは、第1ローカルマップ情報の作成方法を模式的に示した図である。ここで、図13Aに示すように、第1ローカルマップ情報の範囲を表す第1領域A1は、所定数の小領域に分割されているとする(図13A及び図13Bでは、8×8の64個の小領域に分割)。そして、それぞれの小領域の中心の座標(Xk,Yk)(k=1,2,・・・,64)が定められているとする。また、前方検出器11及び後方検出器13から得られた障害物に関する情報は、走行部1(前方検出器11又は後方検出器13)から障害物までの距離rと、障害物が存在する方向の走行部1の進行方向(第1座標のX軸に対応)に対する角度φにより、(r,φ)として表現されるとする。
まず、障害物が存在するとされた小領域を表す座標(Xk1,Yk1)には、確率値1.0を割り当てる。次に、第1座標の原点から各小領域の座標(Xk,Yk)までの距離を算出する。当該距離は、(Xk 2+Yk 2)0.5の式から算出できる。
一方、距離(Xk 2+Yk 2)0.5がrよりも小さい小領域(Xk3,Yk3)及び小領域(Xk4,Yk4)(図13Bを参照)に対しては、確率値として負の値を割り当てる。そして、当該負の値は、距離(Xk 2+Yk 2)0.5がrに近づく(小領域が小領域(Xk1,Yk1)に近づく)につれて、0に近づく。図13Bの例においては、障害物が存在する小領域に近い小領域(Xk3,Yk3)に割り当てられる確率値−aは、障害物が存在する小領域から遠い小領域(Xk4,Yk4)に割り当てられる確率値−bよりも0に近い。つまり、この時の確率値は、小領域に障害物が存在しないことと、小領域から障害物までの距離の長短とを表している。
一方、必要な小領域の全てに対して確率値を割り当てていない場合(ステップS3232−4において「No」の場合)、ステップS3232−1に戻り、第1ローカルマップ情報の作成を継続する。
次に、図10に示したフローチャートのステップS3233における、走行部1の所定の座標(第2座標)上の位置及び進行方向の推定方法の一例について、図14及び図15を用いて説明する。図14は、走行部1の第2座標上(所定の座標上)の位置及び進行方向の推定方法の一例を示すフローチャートである。図15は、回転量の誤差を考慮したデッドレコニングにより位置推定方法を模式的に示す図である。
図14に示す走行部1の位置及び進行方向の推定方法は、エンコーダ1013のパルス信号に基づいて算出される位置情報と、前方検出器11及び後方検出器13の信号に基づいて作成される地図情報とに基づいて、位置情報を推定する方法である。また、以下の位置情報の推定方法の一例は、ベイズの定理(ベイズフィルタ)に基づいた推定方法である。
また、以下の説明においては、教示データ取得時間Tnにおける走行部1の位置及び進行方向の推定方法について説明する。
このように、エンコーダ1013からのパルス信号に基づいて、位置及び進行方向を推定することを、「デッドレコニングによる位置推定」と呼ぶこともある。
次に、地図作成部5345が、所定の数の仮の位置のそれぞれに対して、教示データ取得時間Tnにおける第1ローカルマップ情報から、第2ローカルマップ情報を作成する。なお、この時の第2ローカルマップ情報は、上述のステップS3234の説明のときに説明した第1ローカルマップ情報を第2ローカルマップ情報に変換する方法に従って作成できる。
そして、仮の位置における第2ローカルマップ情報のそれぞれと、教示データ取得時間Tn−1において作成された環境地図情報との一致の度合いを数値として算出する(マップマッチング)。なお、ステップS3233−2は、ベイズの定理において、尤度を算出することに対応する。
このように、所定の数の仮の位置における地図情報(第2ローカルマップ情報)を作成し、環境地図情報とマップマッチングを行うことにより、次のような効果がある。すなわち、前方検出器11及び/又は後方検出器13から得られる信号にノイズなどが入り、第1ローカルマップ情報が実際の障害物情報からゆらいでいても、当該第1ローカルマップ情報のゆらぎを考慮して、位置情報を推定できる。
ステップS3233−3においては、位置推定部5145が、ステップS3233−1におけるデッドレコニングによる位置推定結果と、ステップS3233−2における所定の数の第2ローカルマップ情報と環境地図情報とのマップマッチング結果に基づいて、教示データ取得時間Tnにおける、走行部1の位置と進行方向(xn,yn,θn)(位置情報)を推定する。
具体的には、まず、位置推定部5145が、ステップS3233−2において算出したマップマッチング結果と、ステップS3233−1において定義した正規分布関数との積を計算する。そして、当該マップマッチング結果と正規分布関数との積が最大値となる仮の位置を、教示データ取得時間Tnにおける走行部1の位置(xn,yn,θn)と推定する。
なお、上述のステップS3233−3において、マップマッチング結果と正規分布関数との積を算出することは、ベイズの定理においては、事後確率を算出することに対応する。
次に、図8Bに示したフローチャートのステップS33の清掃スケジュール500の作成方法について、図16〜図17Bを用いて説明する。図16は、清掃スケジュール500の作成方法を示すフローチャートである。図17Aは、走行スケジュール単位(後述)を示す図である。図17Bは、清掃スケジュール単位を追加した清掃スケジュールを示す図である。
まず、清掃スケジュール作成部5025が、教示データ取得部5015から、教示データ取得時間Tnにおいて、教示データ取得時間Tn、教示位置情報(xn,yn,θn)、及び教示清掃条件(Sn,Wn,Pn)(後述)を受信する(ステップS331)。ステップS331において、清掃スケジュール500の作成に必要な教示データを取得後、ステップS332へ進む。
位置情報記憶領域503−nには、位置情報が記憶される。ステップS33において清掃スケジュール500を作成する際は、位置情報記憶領域503−nには、教示データ取得時間Tnにおける教示位置情報(xn,yn,θn)が記憶される。
この時、Tn−1までに作成された清掃スケジュール500は、記憶部5007に記憶されている。従って、清掃スケジュール単位500−nを清掃スケジュール500に連結することにより、清掃スケジュール単位500−nは記憶部5007に記憶されることになる。また、教示データの取得開始直後において、清掃スケジュール500には教示データが存在しない。しかし、清掃スケジュール500が電子ファイルの場合には、教示データが空であっても、清掃スケジュール500に、例えば、「エンド・オブ・ファイル」の識別子が記録されていれば、清掃スケジュール500の末尾は判断できるので、取得した清掃スケジュール単位500−n(この場合、n=0)を清掃スケジュール500に連結できる。
又は、清掃スケジュール単位を、次行に連結あるいは積み上げるのではなく、清掃スケジュール500の終端(清掃スケジュール500がマイコンシステムにおいて使用可能な電子ファイルであれば、「エンド・オブ・ファイル」識別子の直前)に、改行を挿入することなく連結してもよい。この場合、清掃スケジュール500は、図17Bの紙面の横方向に伸びるような電子ファイルとなる。
その他、清掃スケジュール500の利用や管理のしやすさなどに応じて、適切な連結方法を用いることができる。
次に、図8AのステップS5における、教示された清掃作業(走行経路及び清掃条件)を再現する、自律清掃モードの実行時における自律走行式床洗浄機100の動作について、図18を用いて説明する。図18は、自律清掃モードの実行時の自律走行式床洗浄機100の動作を示すフローチャートである。今、自律走行モードの実行開始からの経過時間tn−1までが決定されているとする。ここで、nは、n番目の自律清掃のための制御が行われたことを示す。
まず、SLAM部5045が、前方検出器11及び後方検出器13から、前方の障害物に関する情報及び後方の障害物に関する情報を取得する(ステップS51)。
又は、(x’n,y’n,θ’n)に近い2つの位置情報を清掃スケジュール500から抽出し、2つの位置情報の線形補間により算出される時間を、経過時間tnとしてもよい。
今、経過時間tnが、教示データ取得時間TL(に最も近い)であると決定されたとする。この場合、次のようにして、清掃再現部5035は、再現走行制御指令及び再現清掃条件を算出する。
まず、清掃再現部5035は、次の教示データ取得時間TL+1に関連付けられた位置情報(xL+1,yL+1,θL+1)を、清掃スケジュール500から読み出す。そして、清掃再現部5035は、経過時間tnにおける再現走行制御指令ΔMrを、ΔMr=(xL+1−x’n,yL+1−y’n,θL+1−θ’n)と算出する。
これにより、自律走行式床洗浄機100は、清掃スケジュール500に記憶された清掃作業を忠実に再現できる。
以下に、本実施形態の効果について述べる。
自律走行式床洗浄機100(自律走行式床洗浄機の一例)は、教示清掃条件(教示された清掃条件の一例)と教示された走行経路とを再現することにより、自律的に走行し清掃を実行する自律走行式床洗浄機である。自律走行式床洗浄機100は、清掃部3(清掃部の一例)と、走行部1(走行部の一例)と、位置推定部5145(位置推定部の一例)と、清掃条件教示部9003(清掃条件教示部の一例)と、走行経路教示部7(走行経路教示部の一例)と、教示データ取得部5015(教示データ取得部の一例)と、清掃スケジュール作成部5025(清掃スケジュール作成部の一例)と、清掃再現部5035(清掃再現部の一例)と、経過時間決定部5245(経過時間決定部の一例)と、を備える。
清掃部3は、清掃条件に従って床面F(床面の一例)を清掃する。
走行部1は、操作者の操作又は走行制御指令に従って走行する。
位置推定部5145は、位置情報(xn,yn,θn)(位置情報の一例)を推定する。
清掃条件教示部9003は、操作者による清掃条件の入力を受け付けて、清掃部3に出力する。
走行経路教示部7は、操作者による走行部1の移動操作を受け付ける。
教示データ取得部5015は、手動操作教示モードの実行時に、教示位置情報(xn,yn,θn)(教示位置情報の一例)と、教示清掃条件(Sn,Wn,Pn)(教示清掃条件の一例)とを、教示データ取得時間Tn(教示データ取得時間の一例)において取得する。
清掃再現部5035は、自律清掃モードの実行時に、清掃スケジュール500に記憶された教示データ取得時間Tnと教示清掃条件(Sn,Wn,Pn)と教示位置情報(xn,yn,θn)とに基づいて、自律清掃モードの実行開始からの経過時間tn(所定の経過時間の一例)における再現走行制御指令と再現清掃条件とを算出する。そして、清掃再現部5035は、算出された再現走行制御指令及び再現清掃条件をそれぞれ、走行部1及び清掃部3に出力する。
経過時間決定部5245は、教示データ取得時間Tnと経過時間tnを決定する。
操作者が清掃作業を教示するとき(手動操作教示モードの実行時)、
(i)教示データ取得部5015が、操作者による走行部1及び清掃部3の操作を教示データ取得時間Tnにおいて取得する。
(ii)清掃スケジュール作成部5025が、教示データ取得時間Tn、教示位置情報(xn,yn,θn)、及び教示清掃条件(Sn,Wn,Pn)が関連付けられた清掃スケジュール500を作成し記憶する。
自律走行式床洗浄機100が自律的に清掃を行うとき(自律清掃モードの実行時)、
(iii)清掃再現部5035が、清掃スケジュール500に記憶された教示データ取得時間Tn、教示位置情報(xn,yn,θn)、及び教示清掃条件(Sn,Wn,Pn)に基づいて、経過時間tnにおいて出力すべき再現清掃条件及び再現走行制御指令を算出する。
(iv)清掃部制御部5031が再現清掃条件に基づいて清掃部3を制御し、モータ制御部5033が再現走行制御指令に基づき走行部1を制御する。
また、この場合、手動操作教示モードにおいて、洗浄液供給部3003から供給される洗浄液の供給量Sn(供給量の一例)と、清掃部3による床面Fの洗浄力Wn(洗浄力の一例)と、吸引部3005による洗浄液の吸引力Pn(吸引力の一例)とは、教示清掃条件として任意に設定可能である。
これにより、清掃部3は、多様な清掃作業(すなわち、多様な清掃条件)を実行できる。
清掃スケジュール500は、経過時間情報記憶領域501−n(経過時間情報記憶領域の一例)と、清掃条件記憶領域505−n(清掃条件記憶領域の一例)と、位置情報記憶領域503−n(位置情報記憶領域の一例)と、から構成されるデータ構造を有する。経過時間情報記憶領域501−nには、教示データ取得時間Tn(経過時間情報の一例)が記憶されている。清掃条件記憶領域505−nには、教示データ取得時間Tnにおける教示清掃条件(Sn,Wn,Pn)(清掃条件の一例)が記憶される。位置情報記憶領域503−nには、教示データ取得時間Tnにおける教示位置情報(xn,yn,θn)(位置情報の一例)が記憶される。
また、経過時間tnは、経過時間情報記憶領域501−nに記憶された教示データ取得時間Tnに基づき決定される。経過時間tnにおける清掃条件(再現清掃条件)は、清掃条件記憶領域505−nに記憶され、経過時間tnに対応する教示データ取得時間Tnに関連付けられた教示清掃条件(Sn,Wn,Pn)に基づき算出される。さらに、経過時間tnにおける走行制御指令(再現走行制御指令)は、位置情報記憶領域503−nに記憶され、経過時間tnに対応する教示データ取得時間Tnに関連付けられた教示位置情報(xn,yn,θn)に基づき算出される。
また、自律清掃モードの実行時には、経過時間tnにおける清掃条件(再現清掃条件)及び走行制御指令(再現走行制御指令)は、清掃スケジュール500に記憶された、当該経過時間tnに対応する教示データ取得時間Tnに関連付けられた教示清掃条件(Sn,Wn,Pn)及び教示位置情報(xn,yn,θn)に基づいて算出される。これにより、自律走行式床洗浄機は多様な清掃作業を自律的に再現できる。
◎操作者により設定された教示清掃条件に基づいて、自律走行式床洗浄機100に清掃作業を実行させるステップ。
◎操作者の操作に基づいて、自律走行式床洗浄機100を走行させるステップ。
◎自律走行式床洗浄機100にて定めた所定の座標上の、自律走行式床洗浄機100の走行経路上の位置と姿勢に関する情報とを含む教示位置情報(xn,yn,θn)を推定するステップ。
◎教示位置情報と清掃作業を実行中の清掃条件である教示清掃条件とを、自律走行式床洗浄機100において決定された教示データ取得時間Tnにおいて取得するステップ。
◎教示位置情報と教示清掃条件とを、教示データ取得時間Tnと関連付けて記憶し清掃スケジュール500を作成するステップ。
以上、本発明の一実施形態について説明したが、本発明は上記実施形態に限定されるものではなく、発明の要旨を逸脱しない範囲で種々の変更が可能である。特に、本明細書に書かれた複数の実施形態及び変形例は必要に応じて任意に組み合せ可能である。
第1実施形態の自律走行式床洗浄機100において、教示清掃条件として、清掃条件教示部9003の設定状態がそのまま使用されていた。しかし、これに限られない。教示清掃条件は、センサなどの検出量に基づいて決定されてもよい。
このように、センサなどで検出される検出量を教示清掃条件とすることにより、実際の回転数や押圧力、流量などに基づいた教示データが取得できる。
第1実施形態の自律走行式床洗浄機100において、経過時間決定部5245は、位置推定部5145において推定された位置情報に基づいて、自律清掃モードの実行開始からの経過時間tnを決定(推定)していた。しかし、これに限られない。特に、主輪部1001と床面Fとのすべりなどをほとんど考慮する必要が無く、また環境に障害物が一切無く、デッドレコニングによる位置推定のみであっても、精度良く位置情報を推定できる場合など、エンコーダ1013又は前方検出器11及び後方検出器13の情報のみで精度良く位置の推定が可能な場合、位置推定部5145において推定された位置情報に基づいて、経過時間tnを決定する必要はない。
この場合、経過時間決定部5245は、制御部5を構成するマイコンシステムなどに備わる時計機能やクロック機能などを用いて、経過時間tnを決定してもよい。これにより、経過時間tnを決定(推定)するための計算を省ける。その結果、制御部5の計算負荷を減少でき、制御部5(自律走行式床洗浄機100)の処理速度が向上する。
第1実施形態において、自律走行式床洗浄機100の教示データ取得部5015は、手動操作教示モードの実行時に、教示データ取得時間Tnにおいて教示位置情報と教示清掃条件の両方を取得していた。しかし、これに限られない。教示データ取得部5015は、所定の教示データ取得時間Tnにおいてのみ、教示清掃条件を取得してもよい。
このような教示データの取得方法は、例えば、自律清掃モード実行時に、教示された走行経路上の走行部1(自律走行式床洗浄機100)の位置について詳細に確認しながら、自律走行式床洗浄機100を走行させて清掃作業を行う場合などに適用できる。又は、清掃条件を長い間変化させることがない場合などにも適用できる。
1 走行部
1001 主輪部
1003 走行モータ
1013 エンコーダ
1005 補助輪部
3 清掃部
3001 洗浄用部材
3011 洗浄用部材回転モータ
3021 洗浄用部材押圧アクチュエータ
3031 押圧部材
3041 固定部材
3003 洗浄液供給部
3013 洗浄液供給ポンプ
3023 洗浄液供給タンク
3033 パイプ部材
3005 吸引部
3015 吸引モータ
3025 回収部
3007 スキージ部
3017 スキージ部昇降アクチュエータ
3027 スキージ部固定部材
5 制御部
5001 清掃制御部
5011 清掃切替部
5031 清掃部制御部
5003 走行制御部
5013 走行切替部
5033 モータ制御部
5005 制御統括部
5015 教示データ取得部
5025 清掃スケジュール作成部
5035 清掃再現部
5045 SLAM部
5145 位置推定部
5245 経過時間決定部
5345 地図作成部
5007 記憶部
5009 清掃スケジュール修正部
7 走行経路教示部
7001a、7001b ハンドル
7003 筐体
7005 走行制御指令算出部
9 設定部
9001 切替部
9002 手動操作記憶スイッチ
9003 清掃条件教示部
9013 清掃条件調整部
9023 運転切替部
9005 表示部
9007 清掃制御指令算出部
9008 設定操作部
9009 設定変換部
11 前方検出器
13 後方検出器
500 清掃スケジュール
501−n 経過時間情報記憶領域
503−n 位置情報記憶領域
505−n 清掃条件記憶領域
A1 第1領域
F 床面
S1 空洞
S2 吸引口
Claims (9)
- 教示された清掃条件と走行経路とを再現することにより、自律的に走行し清掃を実行する自律走行式床洗浄機であって、
清掃条件に従って床面を清掃する清掃部と、
操作者の操作又は走行制御指令に従って走行する走行部と、
所定の座標上の、前記走行部の前記走行経路上の位置と姿勢に関する情報とを含む位置情報を推定する位置推定部と、
前記操作者による前記清掃条件の入力を受け付けて、前記清掃部に出力する清掃条件教示部と、
前記操作者による前記走行部の移動操作を受け付ける走行経路教示部と、
前記操作者の操作による前記清掃条件及び前記走行経路を教示する手動操作教示モードの実行時に、前記位置推定部において推定された前記位置情報である教示位置情報と、前記清掃条件教示部において教示されている前記清掃条件である教示清掃条件とを、教示データ取得時間において取得する教示データ取得部と、
前記教示位置情報と前記教示清掃条件とを、前記教示データ取得時間に関連付けて清掃スケジュールを作成し記憶する清掃スケジュール作成部と、
自律的に走行及び清掃を行う自律清掃モードの実行時に、前記清掃スケジュールに記憶された前記教示データ取得時間と前記教示清掃条件と前記教示位置情報とに基づいて、前記自律清掃モードの実行開始からの所定の経過時間における再現清掃条件と再現走行制御指令とを算出し、それぞれ、前記清掃部及び前記走行部に出力する清掃再現部と、
前記教示データ取得時間と前記所定の経過時間を決定する経過時間決定部と、を備え、
前記自律清掃モードの実行開始からの前記経過時間は、前記位置推定部にて推定された前記位置情報に基づき決定される、
自律走行式床洗浄機。 - 前記清掃部は、洗浄液を前記床面に供給する洗浄液供給部と、前記床面に押し付けられて回転しながら前記床面を洗浄する洗浄用部材を有する床面洗浄部と、前記床面の上の前記洗浄液を吸引する吸引部と、を有し、
前記洗浄液供給部から供給される前記洗浄液の供給量と、前記床面洗浄部による前記床面の洗浄力と、前記吸引部による前記洗浄液の吸引力とは、前記清掃条件として任意に設定可能である、請求項1に記載の自律走行式床洗浄機。 - 前記清掃条件を表示する表示部をさらに備える、請求項1又は2に記載の自律走行式床洗浄機。
- 前記床面上に接触するか、又は、前記床面から離れるかを任意に設定可能に取り付けられたスキージ部をさらに備え、
前記スキージ部は、バック走行時において前記床面から離れている、請求項1〜3のいずれかに記載の自律走行式床洗浄機。 - 前記清掃スケジュールの前記教示清掃条件と、前記教示位置情報と、前記教示データ取得時間とを修正する清掃スケジュール修正部をさらに備える、請求項1〜4のいずれかに記載の自律走行式床洗浄機。
- 前記自律清掃モードの実行開始からの前記経過時間は、前記位置推定部において推定された前記位置情報に最も近い前記教示位置情報に関連づけられた前記教示データ取得時間である、請求項1〜5のいずれかに記載の自律走行式床洗浄機。
- 前記自律清掃モードの実行開始からの前記経過時間は、前記位置推定部において推定された前記位置情報に最も近い2つの前記教示位置情報を線形補間することにより算出される時間である、請求項1〜5のいずれかに記載の自律走行式床洗浄機。
- 走行部と床面を清掃する清掃部とを備えた自律走行式床洗浄機を、操作者により教示された教示清掃条件及び前記操作者により教示された走行経路上の位置情報である教示位置情報を前記教示位置情報及び前記教示清掃条件を取得した教示データ取得時間に関連づけて記憶した清掃スケジュールに従って、自律的に走行させながら清掃を実行させる自律清掃方法であって、
前記自律走行式床洗浄機の位置を推定するステップと、
自律的に走行しながら清掃を実行する自律清掃モードの実行開始からの経過時間を、推定された前記自律走行式床洗浄機の位置に基づき決定するステップと、
前記教示データ取得時間と前記教示清掃条件と前記教示位置情報とに基づいて、前記経過時間における再現清掃条件と再現走行制御指令とを算出するステップと、
前記再現走行制御指令に基づいて前記走行部を制御し、前記再現清掃条件に基づいて前記清掃部を制御するステップと、
を含む自律清掃方法。 - 請求項8に記載の自律清掃方法をコンピュータに実行させるためのプログラム。
Priority Applications (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2013193320A JP6227948B2 (ja) | 2013-09-18 | 2013-09-18 | 自律走行式床洗浄機、清掃スケジュールのデータ構造、記憶媒体、清掃スケジュールの生成方法、及びプログラム |
US15/022,310 US9931010B2 (en) | 2013-09-18 | 2014-09-01 | Autonomously traveling floor washer, cleaning schedule data structure, storage medium, method for creating cleaning schedule, and program |
EP14845943.1A EP3047782B1 (en) | 2013-09-18 | 2014-09-01 | Autonomously traveling floor washer, cleaning schedule data structure, storage medium, method for creating cleaning schedule, and program |
PCT/JP2014/072918 WO2015041036A1 (ja) | 2013-09-18 | 2014-09-01 | 自律走行式床洗浄機、清掃スケジュールのデータ構造、記憶媒体、清掃スケジュールの生成方法、及びプログラム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2013193320A JP6227948B2 (ja) | 2013-09-18 | 2013-09-18 | 自律走行式床洗浄機、清掃スケジュールのデータ構造、記憶媒体、清掃スケジュールの生成方法、及びプログラム |
Publications (3)
Publication Number | Publication Date |
---|---|
JP2015058131A JP2015058131A (ja) | 2015-03-30 |
JP2015058131A5 JP2015058131A5 (ja) | 2016-10-06 |
JP6227948B2 true JP6227948B2 (ja) | 2017-11-08 |
Family
ID=52688690
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2013193320A Active JP6227948B2 (ja) | 2013-09-18 | 2013-09-18 | 自律走行式床洗浄機、清掃スケジュールのデータ構造、記憶媒体、清掃スケジュールの生成方法、及びプログラム |
Country Status (4)
Country | Link |
---|---|
US (1) | US9931010B2 (ja) |
EP (1) | EP3047782B1 (ja) |
JP (1) | JP6227948B2 (ja) |
WO (1) | WO2015041036A1 (ja) |
Families Citing this family (34)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP6136543B2 (ja) * | 2013-05-01 | 2017-05-31 | 村田機械株式会社 | 自律移動体 |
DE102014111217A1 (de) * | 2014-08-06 | 2016-02-11 | Vorwerk & Co. Interholding Gmbh | Bodenreinigungsgerät zur Trocken- und Feuchtreinigung sowie Verfahren zum Betrieb eines selbstfahrenden Bodenreinigungsgerätes |
DE102015110140A1 (de) * | 2015-06-24 | 2016-12-29 | Vorwerk & Co. Interholding Gmbh | Unterstützung einer Oberflächenreinigung |
US20170049288A1 (en) | 2015-08-18 | 2017-02-23 | Nilfisk, Inc. | Mobile robotic cleaner |
ITUB20153349A1 (it) * | 2015-09-02 | 2017-03-02 | Ip Cleaning S P A | Macchina di trattamento di superfici |
JP6708828B2 (ja) * | 2016-03-28 | 2020-06-10 | 国立大学法人豊橋技術科学大学 | 自律走行装置及びその開始位置判定プログラム |
CN109196436B (zh) * | 2016-03-31 | 2021-06-04 | 胡斯华纳有限公司 | 工业自动化真空吸尘器和用于施工工具自动化服务的方法 |
EP3439522B1 (en) | 2016-04-08 | 2023-06-07 | A&K Robotics Inc. | Autoscrubber convertible between manual and autonomous operation |
US10241514B2 (en) * | 2016-05-11 | 2019-03-26 | Brain Corporation | Systems and methods for initializing a robot to autonomously travel a trained route |
US20170329347A1 (en) | 2016-05-11 | 2017-11-16 | Brain Corporation | Systems and methods for training a robot to autonomously travel a route |
US9987752B2 (en) | 2016-06-10 | 2018-06-05 | Brain Corporation | Systems and methods for automatic detection of spills |
US9968234B2 (en) | 2016-06-15 | 2018-05-15 | Hobot Technology Inc. | Automatic cleaning machine |
US10282849B2 (en) | 2016-06-17 | 2019-05-07 | Brain Corporation | Systems and methods for predictive/reconstructive visual object tracker |
US10016896B2 (en) | 2016-06-30 | 2018-07-10 | Brain Corporation | Systems and methods for robotic behavior around moving bodies |
WO2018043033A1 (ja) * | 2016-08-31 | 2018-03-08 | 村田機械株式会社 | 自律走行式床洗浄機 |
US10274325B2 (en) | 2016-11-01 | 2019-04-30 | Brain Corporation | Systems and methods for robotic mapping |
US10723018B2 (en) | 2016-11-28 | 2020-07-28 | Brain Corporation | Systems and methods for remote operating and/or monitoring of a robot |
US10852730B2 (en) | 2017-02-08 | 2020-12-01 | Brain Corporation | Systems and methods for robotic mobile platforms |
CN108451447B (zh) * | 2017-02-17 | 2024-06-04 | 科沃斯机器人股份有限公司 | 清洁机器人 |
US10293485B2 (en) | 2017-03-30 | 2019-05-21 | Brain Corporation | Systems and methods for robotic path planning |
JP2018187035A (ja) * | 2017-05-01 | 2018-11-29 | リ・プロダクツ株式会社 | 床面洗浄機、及び床面洗浄方法 |
KR20220025250A (ko) | 2017-06-02 | 2022-03-03 | 에이비 엘렉트로룩스 | 로봇 청소 장치 전방의 표면의 레벨차를 검출하는 방법 |
JP2019047848A (ja) * | 2017-09-07 | 2019-03-28 | パナソニックIpマネジメント株式会社 | 自律走行掃除機、および、累積床面確率更新方法 |
KR20200058400A (ko) * | 2017-09-26 | 2020-05-27 | 에이비 엘렉트로룩스 | 로봇 청소 장치의 이동 제어 |
JP7100450B2 (ja) * | 2017-12-26 | 2022-07-13 | アマノ株式会社 | 操作装置、情報作成方法、プログラムおよび自律走行作業装置 |
CA3088155A1 (en) * | 2018-01-10 | 2019-07-18 | Simbe Robotics, Inc | Method for detecting and responding to spills and hazards |
CN110786790A (zh) * | 2018-08-03 | 2020-02-14 | 添可智能科技有限公司 | 清洁设备和清洁方法 |
JP2020036748A (ja) * | 2018-09-04 | 2020-03-12 | 東芝ライフスタイル株式会社 | 電気掃除装置 |
JP7324022B2 (ja) * | 2019-03-22 | 2023-08-09 | アマノ株式会社 | 自律走行作業装置 |
JP2020156962A (ja) * | 2019-03-28 | 2020-10-01 | 日立グローバルライフソリューションズ株式会社 | 電気掃除機 |
CN114798523B (zh) * | 2019-10-09 | 2023-08-01 | 添可智能科技有限公司 | 清洗机 |
DE102020114179A1 (de) * | 2020-05-27 | 2021-12-02 | Alfred Kärcher SE & Co. KG | Bodenreinigungssystem |
US20230135665A1 (en) * | 2021-11-03 | 2023-05-04 | Tennant Company | Torque assisted surface maintenance machine |
DE102021130326A1 (de) | 2021-11-19 | 2023-05-25 | Bayerische Motoren Werke Aktiengesellschaft | Verfahren zum Reinigen eines Bodens sowie Reinigungsmaschine |
Family Cites Families (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS6057409A (ja) * | 1983-09-08 | 1985-04-03 | Kobe Steel Ltd | 学習制御方法 |
FR2648071B1 (fr) * | 1989-06-07 | 1995-05-19 | Onet | Procede et appareil autonomes de nettoyage automatique de sol par execution de missions programmees |
US5634237A (en) * | 1995-03-29 | 1997-06-03 | Paranjpe; Ajit P. | Self-guided, self-propelled, convertible cleaning apparatus |
JPH08326025A (ja) * | 1995-05-31 | 1996-12-10 | Tokico Ltd | 清掃ロボット |
JP3568833B2 (ja) | 1999-08-27 | 2004-09-22 | アマノ株式会社 | 自走歩行式床面洗浄機 |
US7533435B2 (en) | 2003-05-14 | 2009-05-19 | Karcher North America, Inc. | Floor treatment apparatus |
US20120096671A1 (en) | 2010-10-26 | 2012-04-26 | Karcher North America, Inc. | Floor cleaning apparatus employing a combined sweeper and vaccum assembly |
US20060064844A1 (en) | 2003-05-14 | 2006-03-30 | Venard Daniel C | Floating deck for use with a floor cleaning apparatus |
DK2820993T3 (en) * | 2004-02-16 | 2017-01-23 | Kärcher North America Inc | Floor cleaning and treatment equipment |
JP2010017428A (ja) * | 2008-07-12 | 2010-01-28 | Nishi Nihon Kosoku Doro Maintenance Kansai Kk | 床面清掃ロボット |
JP2011030888A (ja) * | 2009-08-04 | 2011-02-17 | Panasonic Corp | 掃除機の制御装置及び制御方法、掃除機、掃除機の制御プログラム、及び、掃除機の制御用集積電子回路 |
-
2013
- 2013-09-18 JP JP2013193320A patent/JP6227948B2/ja active Active
-
2014
- 2014-09-01 EP EP14845943.1A patent/EP3047782B1/en active Active
- 2014-09-01 US US15/022,310 patent/US9931010B2/en active Active
- 2014-09-01 WO PCT/JP2014/072918 patent/WO2015041036A1/ja active Application Filing
Also Published As
Publication number | Publication date |
---|---|
EP3047782A4 (en) | 2017-05-31 |
JP2015058131A (ja) | 2015-03-30 |
US9931010B2 (en) | 2018-04-03 |
EP3047782B1 (en) | 2021-08-25 |
WO2015041036A1 (ja) | 2015-03-26 |
US20160287044A1 (en) | 2016-10-06 |
EP3047782A1 (en) | 2016-07-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6227948B2 (ja) | 自律走行式床洗浄機、清掃スケジュールのデータ構造、記憶媒体、清掃スケジュールの生成方法、及びプログラム | |
CN109640775B (zh) | 自主行进式地板清洗机 | |
JP6708828B2 (ja) | 自律走行装置及びその開始位置判定プログラム | |
JP2020116380A (ja) | 手動でのみ誘導される床処理装置と自動でのみ走行する床処理装置とからなるシステム及びそのシステムの動作方法 | |
CN101554306A (zh) | 主动驱动式真空吸尘器 | |
JP7342985B2 (ja) | 自律走行システム、自律走行方法、及び自律走行プログラム | |
JP7272461B2 (ja) | 自律走行台車、制御方法、及び、プログラム | |
JP7381240B2 (ja) | 自律走行作業装置 | |
JP6945144B2 (ja) | 掃除情報提供装置、および掃除機システム | |
JP2020194415A (ja) | 自律走行作業装置 | |
KR20190037632A (ko) | 로봇청소기 및 로봇청소기 청소 관리 장치 | |
JP2023155919A (ja) | 走行領域決定方法及び自律走行体 | |
JP2021096602A (ja) | 経路計画装置、経路計画方法及び自律走行台車 | |
WO2022097342A1 (ja) | 自律走行体の走行教示記憶方法、自律走行体、記録媒体 | |
WO2022097335A1 (ja) | 自律走行経路計画方法 | |
JP7078192B2 (ja) | 自律走行システム、自律走行方法、及び自律走行プログラム | |
WO2022038823A1 (ja) | 自律走行経路計画方法、自律走行方法、及び、プログラム | |
JP2023164760A (ja) | 自律走行経路計画方法 | |
JP2024093167A (ja) | 自律走行作業装置およびその自律走行作業方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20160823 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20160823 |
|
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: 20170926 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20171012 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 6227948 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |