以下に、本発明の好適な実施形態を図面に基づいて説明する。なお、本発明は、下記の実施形態に示された具体的手段や構造等に限定されるものではなく、本発明の要旨を逸脱しない範囲において種々の形態を採り得る。例えば、下記の実施形態の構成の一部を、同様の機能を有する公知の構成に置き換えたり、他の実施形態の構成に対して付加、置換等したり、課題を解決できる限りにおいて省略したりしてもよい。また、下記の複数の実施形態を適宜組み合わせて構成してもよい。
[第1実施形態]
(1)電動工具1の全体構成
図1に示す電動工具1は、本発明の電動機械器具の一例であり、木材や金属などの被加工材を切断するいわゆるジグソーとして構成されている。
電動工具1は、工具本体2と、バッテリ3とを備えている。工具本体2の端部は、バッテリ3を着脱可能に構成されている。図1は、工具本体2にバッテリ3が装着された状態を示している。
工具本体2は、把持部4と、ベース5と、ブレード6と、トリガ7と、ロックオフボタン8と、モータ9と、伝達機構10と、モータ駆動回路11とを備えている。このうちモータ9、伝達機構10、およびモータ駆動回路11は、工具本体2の筐体内部に収容されている。
把持部4は、電動工具1を使用する使用者がその使用の際に手で握り持つ部分である。ベース5は、被加工材の切断等の作業を安定的に行えるようにするための平板状の部材である。被加工材の切断等の作業時、ベース5を被加工材の上面に当接させた状態で作業を行うことで、切断作業等を安定的、効率的に行うことができる。
ブレード6は、被加工材を切断するための長尺細板状の金属部材であり、一方の端辺(図1(b)においては図中右側の端辺)に鋸刃が形成されている。ブレード6は、モータ9の回転力によって、上下方向(図1(b)、(c)における図中上下方向)に往復移動する。即ち、図1(b)に示すように上死点から下死点の間を往復駆動される。ブレード6が往復駆動されている状態で、ブレード6の鋸刃側を被加工材に押し当てることで、ブレード6により被加工材を切断することができる。
トリガ7は、ブレード6の往復駆動を操作するために使用者により操作されるスイッチである。使用者がトリガ7を引き操作すると、トリガスイッチ12(図1では図示略。図2参照。)がオンし、モータ9が回転してブレード6が作動(往復駆動)する。ロックオフボタン8は、トリガ7の引き操作を許可又は禁止するためのボタンである。ロックオフボタン8をロック側の状態にするとトリガ7を引き操作できなくなり、ロックオフボタン8を非ロック側の状態にするとトリガ7を引き操作できるようになる。
モータ9は、バッテリ3からの電力により回転する。モータ9の回転力は、伝達機構10を介してブレード6に伝達される。伝達機構10は、モータ9の回転運動を直線運動に
変換してブレード6に伝達する。ブレード6の駆動速度とモータ9の回転数とは略線形関係にあり、モータ9の回転数が高いほどブレード6の駆動速度も高くなる。なお、モータ9の回転数とは、単位時間あたりの回転数、即ち回転速度(角速度)を意味する。
モータ駆動回路11は、モータ9の回転駆動を制御するものであり、ひいてはブレード6の往復駆動を制御するものである。
(2)電動工具システムの説明
次に、電動工具1及び携帯通信端末30により構成される電動工具システムについて、図2を用いて説明する。電動工具1は、基本的には、当該電動工具1単体で使用されるものであるが、電動工具1の動作にかかわるいくつかのパラメータや機能の有効・無効設定については、携帯通信端末30から無線通信にて設定することができる。図2は、電動工具1及び携帯通信端末30のそれぞれの電気的構成を概略的に示している。
電動工具1のモータ駆動回路11は、図2に示すように、MCU(Micro Control Unit)21と、駆動回路22と、誘起電圧測定回路23と、電流測定回路24と、電圧測定回路25と、レギュレータ26と、通信部27と、トリガスイッチ12とを備えている。
なお、図2に示す電動工具1は、バッテリ3が工具本体2に装着されて両者が電気的に接続された状態を示している。この状態では、バッテリ3の正極がモータ9の一端に接続され、モータ9の他端が、駆動回路22及び電流測定回路24を介してバッテリ3の負極に接続されている。モータ9には、モータ9の通電オフ時に誘発する逆方向の電力を回生するためのダイオード(いわゆるフライホイールダイオード)が並列接続されている。
MCU21は、CPU21a、メモリ21b、AD変換器21cなどを備え、CPU21aがメモリ21b等に記憶されている各種プログラムを実行することにより、モータ9の駆動制御を含む各種制御が実現される。メモリ21bは、より詳しくは、ROMやRAM、フラッシュメモリ等の電気的に書き換え可能な不揮発性メモリなどを含む。メモリ21bには、後述するメイン処理(図5)を含む各種プログラムや各種制御データ等が記憶されている。
駆動回路22は、モータ9の他端からバッテリ3の負極に至る通電経路(以下「負極側電源ライン」ともいう)上に設けられている。より具体的には、駆動回路22は、負極側電源ライン上に設けられてこの負極側電源ラインを導通・遮断するための半導体スイッチ(例えばMOSFET)と、MCU21からの制御信号に従ってこの半導体スイッチをオン・オフさせる駆動部とを備えている。
MCU21からの制御信号は、所定のデューティのパルス信号である。MCU21は、後述するメイン処理において、モータ9の目標回転数を演算し、その目標回転数に応じたデューティを示す指令値(そのデューティで変化するパルス信号)を制御信号として出力する。駆動回路22は、MCU21から入力される制御信号のデューティに基づき、そのデューティで半導体スイッチをオン・オフさせる。これにより、モータ9には、制御信号のデューティに応じた電流が流れ、モータ9はそのデューティに応じた回転数で回転可能となる。
誘起電圧測定回路23は、モータ9の他端に生じる誘起電圧を検出してMCU21へ出力する。この誘起電圧は、モータ9の回転数に対応しているため、誘起電圧に基づいてモータ9の回転数を検出することができる。MCU21は、誘起電圧測定回路23から入力される誘起電圧の検出信号に基づいて、モータ9の実際の回転数を検出する。
電流測定回路24は、負極側電源ライン上に設けられ、この負極側電源ラインを流れる
電流(つまりモータ9に流れる電流)を検出してMCU21へ出力する。この電流は、モータ9の負荷に対応し、モータ9の負荷が大きいほど電流値も大きくなる。MCU21は、電流測定回路24から入力される電流の検出信号に基づいて、モータ9に流れる電流を検出する。さらに、MCU21は、その電流値に基づいて、後述するように、モータ9の負荷の有無(無負荷状態かそれとも負荷状態か)を検出する。
電圧測定回路25は、バッテリ3の正極からモータ9の一端に至る通電経路(以下「正極側電源ライン」ともいう)に接続されている。電圧測定回路25は、正極側電源ラインの電圧、即ちバッテリ3の電圧(バッテリ電圧)を検出し、MCU21へ出力する。MCU21は、電圧測定回路25から入力されるバッテリ電圧の検出信号に基づいて、バッテリ電圧検出する。
レギュレータ26は、正極側電源ラインに接続され、バッテリ3から電源供給を受けて、モータ駆動回路11内の各部の動作用電源電圧(直流定電圧)を生成する。MCU21をはじめ、モータ駆動回路11内の各部は、レギュレータ26からの動作用電源電圧を電源として動作する。
通信部27は、携帯通信端末30との無線通信を行うための無線通信モジュールを有する。携帯通信端末30から送信された電波は、電動工具1において通信部27で受信され、デジタルの受信データに変換されてMCU21へ入力される。電動工具1から携帯通信端末30へのデータ送信も、通信部27を介して行われる。
トリガスイッチ12は、トリガ7の操作状態を検知してMCU21へ伝達する。具体的には、トリガスイッチ12は、トリガ7が引き操作されているか否かを検知する操作検知部と、トリガ7が引き操作されている場合にその操作量を検知する操作量検知部とを有する。MCU21は、トリガスイッチ12からの各種検知信号により、トリガ7が引き操作されているか否か、引き操作されている場合にその操作量(引き量)はどの程度かを検知することができる。
電動工具1と無線通信可能な携帯通信端末30は、MCU31と、操作部32と、表示部33と、メモリカードインタフェース34と、通信部35とを備えている。MCU31は、図示しないROMやメモリ、I/Oなどを備えている。
操作部32は、使用者による操作入力を受け付ける。この操作部32は、使用者によって押し操作されるハードキーや、接触操作によって入力を受け付けるタッチパネルなどを有している。
表示部33は、各種情報や画像を表示するための表示デバイス(例えば液晶ディスプレイ)を有している。なお、表示部33における、各種情報等が表示される表示領域には、上述したタッチパネルが重畳して配置されている。
メモリカードインタフェース34は、図示しないメモリカードを挿抜可能であって、メモリカードが挿入されているときに、MCU31からの指令に従ってメモリカードに対するデータの読み書きを行う。通信部35は、電動工具1との無線通信を行うことが可能な無線通信モジュールを有する。
既述の通り、電動工具1の動作にかかわるいくつかのパラメータや機能の有効・無効の設定については、携帯通信端末30から無線通信で設定することができる。携帯通信端末30には、その無線通信による電動工具1の設定を可能とするためのアプリケーションソフトがインストールされている。
(3)ソフトノーロード制御
本実施形態の電動工具1は、モータ9の制御機能として、ソフトノーロード制御機能を備えている。ソフトノーロード制御(以下、単に「ノーロード制御」ともいう)とは、モータ9が無負荷状態か負荷状態かを判断して、無負荷時にはモータ9を低回転数で回転させ、負荷時には高回転数で回転させるという制御方法である。具体的には、後述するように、無負荷時には目標回転数がノーロード作動中回転数に設定され、負荷時には目標回転数がノーロード解除中回転数に設定される。ノーロード解除中回転数は、ノーロード作動中回転数よりも高い値である。
なお、無負荷時(無負荷状態)とは、モータ9に負荷がかかっていない状態、即ち、ブレード6が被加工材に触れておらずブレード6が空転している状態を意味する。一方、負荷時(負荷状態)とは、モータ9に負荷がかかっている状態、即ち、ブレード6が被加工材等の他の物体に接触している状態を意味する。
本実施形態では、ノーロード制御を有効とするか否かを任意に選択可能となっている。具体的には、携帯通信端末30のアプリケーションソフトで、ノーロード制御を有効とするか否かの選択入力を行ってその情報を電動工具1へ送信することで、選択できる。ノーロード制御を有効とすべき旨の選択入力が行われた場合、携帯通信端末30から電動工具1へ、ソフトノーロード制御有効要求が送信される。逆に、ノーロード制御を無効とすべき旨の選択入力が行われた場合、携帯通信端末30から電動工具1へ、ソフトノーロード制御無効要求が送信される。
MCU21は、設定された目標回転数でモータ9を回転させるべく、設定された目標回転数に応じたデューティの指令値を駆動回路22へ出力する。ただし、ノーロード制御が有効に設定されている場合、無負荷状態のときは、単に目標回転数に応じた一定のデューティ指令値を出力するのではなく、実際の回転数が目標回転数に一致するようにフィードバック制御を行う。そのため、ノーロード制御が有効の場合における無負荷時には、目標回転数自体は一定のノーロード作動中回転数に設定されるものの、MCU21から駆動回路22へ出力されるデューティ指令値は、実際の回転数と目標回転数との差に応じて変動する。
ただし、このように無負荷時にフィードバック制御を行うことは必須ではなく、無負荷時もオープン制御を行うようにしてもよい。逆に、無負荷時だけでなく負荷時においてもフィードバック制御を行うようにしてもよい。
ノーロード制御有効時に用いられるノーロード作動中回転数及びノーロード解除中回転数は、携帯通信端末30からアプリケーションソフトを利用して無線通信により設定可能となっている。つまり、無負荷時及び負荷時にそれぞれどの程度の回転数で回転させるかを、使用者等が任意に設定できるようになっている。ただし、ノーロード作動中回転数及びノーロード解除中回転数は、前者が後者よりも高い値となるような範囲内で設定可能となっている。
なお、携帯通信端末30を介した設定入力がされていない場合、及び、一旦設定入力されたもののその後その設定を解除する旨の設定入力が携帯通信端末30からなされた場合は、上記各回転数は、それぞれ所定のデフォルト値に設定される。例えば、ノーロード作動中回転数についてはデューティ50%に対応した回転数がデフォルト値であり、ノーロード解除中回転数についてはデューティ100%に対応した回転数がデフォルト値である。
ノーロード制御が有効に設定されている場合は、トリガ7の引き操作量にかかわらず、無負荷状態か負荷状態かに応じて目標回転数が上記二種類の回転数の何れかに設定される。一方、ノーロード制御が無効に設定されている場合は、無負荷状態か負荷状態かにかかわらず(またその判断も特に行わず)、トリガ7の引き操作量に応じた目標回転数(デューティ)に設定される。
ノーロード制御が有効に設定されている場合、無負荷状態から負荷状態に変化すると、目標回転数がノーロード作動中回転数からノーロード解除中回転に切り替わるが、この切り替わりは、デューティ指令値を、ノーロード作動中回転数に対応したデューティから一定量ずつ段階的にノーロード解除中回転数に対応したデューティまで増加させていくことにより行われる。つまり、デューティを一定の時間をかけて徐々に上昇させていってノーロード解除中回転数に対応したデューティに到達させる。段階的に増加させる量やタイミングは適宜決めることができる。本実施形態では、後述する制御周期毎に一定量ずつ(例えば数%ずつ)デューティを増加させる。なお、起動時のデューティも、起動後すぐに目標回転数のデューティに設定するのではなく、0%から徐々に目標回転数のデューティまで上昇させていく。
ノーロード制御が有効に設定されている場合、モータ9の起動後、モータ9が無負荷状態のときはノーロード作動中回転数を目標回転数としてフィードバック制御され、その後負荷状態が検出されると、ノーロード解除中回転数を目標回転数とするオープン制御に切り替わる。なお、以下の説明では、ノーロード作動中回転数でのモータの駆動を「無負荷時低速駆動」ともいい、ノーロード解除中回転数でのモータの駆動を「負荷時高速駆動」ともいう。
そして、本実施形態では、一旦負荷状態に切り替わった後、モータ9が再び無負荷状態に変化した場合に、目標回転数を再び無負荷状態に対応したノーロード作動中回転数に戻すか(即ち無負荷時低速駆動に戻すか)、それとも負荷状態に対応したノーロード解除中回転数をそのまま維持させるか(即ち負荷時高速駆動をそのまま維持させるか)を、任意に選択可能となっている。
具体的には、携帯通信端末30のアプリケーションソフトで、負荷状態検出以後の無負荷状態検出(ひいては無負荷時低速駆動への復帰)を有効とするか否かの選択入力を行ってその情報を電動工具1へ送信することで、選択できる。無負荷時低速駆動への復帰を有効とすべき旨の選択入力が行われた場合、携帯通信端末30から電動工具1へ、ソフトノーロード復帰有効要求が送信される。逆に、無負荷時低速駆動への復帰を無効とすべき旨の選択入力が行われた場合、携帯通信端末30から電動工具1へ、ソフトノーロード復帰無効要求が送信される。
図3に、無負荷状態で起動後、負荷状態となって再び無負荷状態になる場合の、目標回転数(デューティ)の設定値の変化、及びモータ9の電流値の変化の一例を示す。時刻t1でトリガ7が引かれ始めることによりトリガスイッチ12がオンすると、ノーロード制御が有効の場合、目標回転数がノーロード作動中回転数に設定されて無負荷時低速駆動が開始される。なお、ノーロード制御が無効の場合は、図中破線で示すように、トリガ7の引き操作量に応じて目標回転数が変化していく。
その後時刻t2でブレード6が被加工材に当接することにより負荷状態になり、時刻t3でノーロード解除条件(詳細は後述)が成立すると、目標回転数がノーロード解除中回転数に切り替わり、負荷時高速駆動が開始される。
その後時刻t4でブレード6が被加工材から離れることにより無負荷状態になり、時刻
t5でノーロード復帰条件(詳細は後述)が成立すると、目標回転数が再びノーロード作動中回転数に切り替わり、無負荷時低速駆動に切り替わる。ただし、ノーロード復帰条件の成立により無負荷時低速駆動に切り替わるのは、無負荷時低速駆動への復帰を有効とすべき旨の選択設定がなされている場合、即ち携帯通信端末30からソフトノーロード復帰有効要求がなされている場合である。ソフトノーロード復帰有効要求がなされていない場合は、負荷状態から無負荷状態に変化しても、負荷時高速駆動が継続される。
次に、ノーロード解除条件について説明する。一般に、回転中のモータに流れる電流は、周期的に変動する。特に、本実施形態のようにブレード6を往復駆動させるモータ9の場合、モータ9に流れる電流は、ブレード6の往時と復時とで異なる。
具体的には、ブレード6が上死点から下死点へ移動する際は相対的に負荷が軽く、下死点から上死点へ移動する際は相対的に負荷が重くなる。ブレード6の移動方向による負荷の違いは、モータ9に流れる電流の違いとなって現れ、よって、ブレード6の上下移動に伴ってモータ9の電流も増減変動する。
さらに、その電流の増減変動の幅(以下「電流振幅」という)は、モータ9が無負荷状態か負荷状態かによって異なる。本実施形態のブレード6は、鋸刃の刃先が上方向へ向いている。そのため、ブレード6が被加工材に当接すると、下死点から上死点へ移動する際の負荷はより重くなり、往時と復時とで負荷量の差が大きくなる。つまり、電流振幅が、無負荷時よりも負荷時の方が大きくなる。
そこで、本実施形態の電動工具1では、モータ9に流れる電流の電流振幅に基づいて、負荷状態及び無負荷状態を検出する。なお、電流振幅としては、電流が増減変動する過程における極大値から極小値への減少区間の各極値の差、及び極小値から極大値への増加区間の各極値の差の双方を扱えるが、本実施形態では、極大値から極小値への減少区間の各極値の差を電流振幅として負荷状態及び無負荷状態の検出に用いる。
具体的には、本実施形態では、次の2つの条件(A1,A2)の何れか一方が成立した場合に、負荷状態になったものと判断する。
条件A1:電流振幅が電流幅閾値以上であることを所定回数(検出回数閾値)以上検出すること。
条件A2:電流の変動がない(電流振幅が0又は0に近い)状態が所定時間継続すること。
なお、条件A1については、本実施形態では、既述の通り、電流値が極大値から極小値へと減少する区間での電流振幅が検出対象となる。ただし、そのように減少区間の電流振幅のみ検出対象とするのは必須ではなく、増加区間の電流振幅も検出対象としてもよいし、増加区間の電流振幅のみを検出対象としてもよい。また、電流振幅が電流閾値以上であることが検出される度に、その検出回数(負荷検出回数)が累積加算されていくが、電流幅閾値以上とならない状態が所定時間継続した場合は、負荷検出回数は0にクリアされる。
電流幅閾値及び検出回数閾値は、携帯通信端末30から無線通信により任意に設定することも可能である。携帯通信端末30からの設定入力がない場合、及び各閾値の設定入力を解除する旨の設定入力が携帯通信端末30からなされた場合は、電流幅閾値及び検出回数閾値はそれぞれ所定のデフォルト値に設定される。
また、電流幅閾値及び検出回数閾値は、携帯通信端末30から任意に設定された場合及びデフォルト値が用いられる場合のいずれにおいても、バッテリ3の状態が考慮される。
具体的には、本実施形態では、上記各閾値がバッテリ3の電圧に応じて補正される。例えば電流幅閾値については、バッテリ3の電圧が規定範囲内にある場合は設定された値がそのまま用いられるが、バッテリ3の電圧が規定範囲を下回った場合は、設定された値よりも小さい値に補正される。検出回数閾値についても同様である。なお、バッテリ3の電圧に応じて上記各閾値を具体的にどのように補正するかについては適宜決めることができる。また、例えばバッテリ3の温度などの、バッテリ3の電圧以外の他の情報(バッテリ3の状態を示す情報)を用いて、上記各閾値を補正するようにしてもよい。
負荷状態から無負荷状態への切り替わりの検出についても、電流振幅を用いる。さらに、負荷状態から無負荷状態への切り替わりの検出は、無負荷状態から負荷状態に切り替わった際のデューティ上昇過程における所定のタイミングでの電流値も用いる。即ち、無負荷状態のときに負荷状態が検出されると、MCU21からのデューティ指令値は、ノーロード作動中回転数に対応したデューティからノーロード解除中回転数に対応したデューティへと徐々に(段階的に)上昇していくが、その上昇過程における所定タイミングで、モータ9の電流を検出し、その検出値を復帰閾値として保持しておく。そして、その保持した復帰閾値を、負荷状態から無負荷状態への切り替わりの検出に用いる。
上昇過程におけるどのタイミングの電流値を復帰閾値として保持するかについては適宜決めることができる。例えばデューティを50%から100%まで上昇させる場合は、その中間の75%近傍になったところで電流値を検出して保持するようにしてもよい。
本実施形態では、次の2つの条件(B1,B2)の双方が成立した場合に、負荷状態から無負荷状態へ切り替わったものと判断する。
条件B1:モータ9に流れる電流が復帰閾値以下になっていること。
条件B2:電流振幅が電流幅閾値を下回ったことを所定回数(検出回数閾値)以上検出すること。
なお、条件B2については、本実施形態では、条件A1と同様、電流値が極大値から極小値へと減少する区間での電流振幅が検出対象となる。もちろん、条件B2についても、減少区間の電流振幅のみ検出対象とするのは必須ではなく、増加区間の電流振幅も検出対象としてもよいし、増加区間の電流振幅のみを検出対象としてもよい。
負荷状態から無負荷状態になったことが検出されると、モータ9の駆動は、ノーロード作動中回転数を目標回転数とする無負荷時低速駆動に復帰する。ただし、負荷状態から無負荷状態になった場合にモータ9の駆動方法が無負荷時低速駆動に復帰するのは、携帯通信端末30からソフトノーロード復帰有効要求がなされている場合である。ソフトノーロード復帰有効要求がなされていない場合は、一旦負荷状態が検出されて負荷時高速駆動に切り替わった後は、無負荷状態になっても負荷時高速駆動が継続される。
起動後、無負荷状態から負荷状態へと変化する際の具体的な動作例を、図4に示す。図4は、起動後、無負荷状態がしばらく継続した後に負荷状態に切り替わる場合における、モータ9の電流値(AD変換後の値)、MCU21から駆動回路22へ出力されるデューティ指令値のデューティ、及び電流振幅が電流幅閾値以上であることが検出された回数(負荷検出回数)の変化を示している。また、図4では、4000msあたりで無負荷状態から負荷状態に切り替わっている。
起動後、無負荷状態の間は、電流振幅は比較的小さく、通常は電流幅閾値以上とはならない。ただし、例えばノイズやその他の何らかの要因によって、一時的に電流振幅が電流閾値以上となる可能性もある。図4では、3800msの直前に何らかの要因で電流が大きく変動している様子が図示されている。この変動時における電流振幅が電流幅閾値以上
となったことから、負荷検出回数が0から1にカウントアップされる。しかし、その後は電流振幅が電流幅閾値を下回る状態が継続し、3900msを過ぎたあたりで負荷検出回数が0にクリアされる。
そして、4000msあたりで負荷状態になると、電流振幅が大きくなり、負荷検出回数がカウントアップされていく。図4の例では、検出回数閾値が2に設定されている。そのため、4100msあたりで負荷検出回数が2にカウントアップされると、負荷状態であることが検出され、ノーロード制御が解除される。即ち、無負荷時低速駆動から負荷時高速駆動へと切り替わる。
ノーロード制御の解除後は、既述の通り、モータ9の駆動デューティは、無負荷時低速駆動の際のデューティ(図4の例では25%)から、負荷時高速駆動に対応したデューティ(図4の例では100%)に向けて徐々に上昇していく。そしてその上昇過程における所定タイミング(図4の例ではデューティ70%時)で、そのタイミングでの電流値を取得して、復帰閾値として確保する。この確保した復帰閾値は、既述の通り、負荷状態から再び無負荷状態に変化した場合にその無負荷状態を検出する際(具体的には上記条件B1の検出)に用いられる。
(4)メイン処理の説明
電動工具1のMCU21が実行するメイン処理について、図5〜図11を用いて説明する。電動工具1のMCU21において、CPU21aは、動作を開始すると、メモリ21bから図5のメイン処理のプログラムを読み込んで実行する。なお、CPU21aは、図5のメイン処理において、S120〜S160の処理を所定の制御周期で繰り返し実行する。
CPU21aは、図5のメイン処理を開始すると、S110で各種の初期設定を行い、S120でWDT(ウォッチドッグタイマ)をクリアする。後述する各種フラグやカウンタは、S110の初期設定において全てクリアされる。S130では、トリガスイッチ12からの信号を確認する。即ち、トリガ7の操作状態を確認する。S140では、AD変換確認処理を行う。具体的には、電圧測定回路25からの検出信号、電流測定回路24からの検出信号、トリガスイッチ12からの検出信号、及び誘起電圧測定回路23からの各検出信号をそれぞれAD変換器21cでAD変換し、その変換後の各データ、即ちバッテリ電圧、モータ9の電流、トリガ7の引き量、及びモータ9の誘起電圧の各データを取得する。
S150では、外部機器との通信処理を行う。具体的には、例えば携帯通信端末30とのデータ通信を行うことにより、携帯通信端末30のアプリケーションソフトで設定された情報を取得する。携帯通信端末30から取得可能な情報としては、ソフトノーロード制御の有効/無効要求、ソフトノーロード復帰の有効/無効要求、ノーロード作動中回転数、ノーロード解除中回転数、電流幅閾値、及び検出回数閾値がある。
S160では、S130〜S150の各処理で確認、取得した各種情報に基づいて、モータ制御処理を実行する。S160のモータ制御処理の具体的内容は、図6に示す通りである。
CPU21aは、モータ制御処理に移行すると、S200で、外部機器設定反映処理を行う。なお、S200では、 図6に括弧書きで示しているように、外部機器設定反映処
理に代えて(又は外部機器設定反映処理に加えて)操作入力反映処理を行うようにしてもよいが、この操作入力反映処理については、第2実施形態として後で説明する。
S200の外部機器設定反映処理の詳細は、図7に示す通りである。CPU21aは、図7の外部機器設定反映処理に移行すると、S211で、携帯通信端末30からソフトノーロード制御有効要求があったか否か判断する。ソフトノーロード制御有効要求があった場合は、S213で、ノーロード制御有効フラグをセットして、S219に進む。
S211でソフトノーロード制御有効要求がなかった場合は、S215で、ソフトノーロード制御無効要求があったか否か判断する。ソフトノーロード制御無効要求があった場合は、S217で、ノーロード制御有効フラグをクリアして、S219に進む。ソフトノーロード制御無効要求がなかった場合は、そのままS219に進む。
S219では、携帯通信端末30からソフトノーロード復帰有効要求があったか否か判断する。ソフトノーロード復帰有効要求があった場合は、S221で、ノーロード復帰有効フラグをセットして、S227に進む。
S219でソフトノーロード復帰有効要求がなかった場合は、S223で、ソフトノーロード復帰無効要求があったか否か判断する。ソフトノーロード復帰無効要求があった場合は、S225で、ノーロード復帰有効フラグをクリアして、S227に進む。ソフトノーロード復帰無効要求がなかった場合は、そのままS227に進む。
S227では、携帯通信端末30で設定入力されたノーロード作動中回転数を取得する。なお、携帯通信端末30で設定入力されていない場合、又は設定が解除された場合は、このS223では、ノーロード作動中回転数としてデフォルト値を設定する。本例では、ノーロード作動中回転数として例えばデューティ50%に対応した回転数が携帯通信端末30で設定入力されて送信されてきたものと仮定して説明を続ける。
S229では、携帯通信端末30で設定入力されたノーロード解除条件、即ち電流幅閾値及び検出回数閾値を取得する。なお、携帯通信端末30で設定入力されていない場合、又は設定が解除された場合は、このS229では、電流幅閾値及び検出回数閾値としてそれぞれデフォルト値を設定する。
S231では、S229で取得又は設定した電流幅閾値及び検出回数閾値に対してバッテリ状態を考慮する。即ち、上記各閾値を、既述のようにバッテリ3の電圧に応じて補正する。
S233では、携帯通信端末30で設定入力されたノーロード解除中回転数を取得する。なお、携帯通信端末30で設定入力されていない場合、又は設定が解除された場合は、このS233では、ノーロード解除中回転数としてデフォルト値を設定する。本例では、ノーロード解除中回転数として例えばデューティ100%に対応した回転数が携帯通信端末30で設定入力されて送信されてきたものと仮定して説明を続ける。
図6に戻り、S200の外部機器設定反映処理の後は、S300で、ソフトノーロード判定処理を実行する。S300のソフトノーロード判定処理の具体的内容は、図8に示す通りである。CPU21aは、図8のソフトノーロード判定処理に移行すると、S310で、ノーロード制御有効フラグがセットされているか否か、即ちノーロード制御が有効に設定されているか否か判断する。
ノーロード制御有効フラグがセットされていない場合(即ちノーロード制御が無効の場合)は、S390で、ノーロード解除フラグをクリアすると共に、電流振幅無カウンタ、電流振幅小カウンタ、負荷検出カウンタ及び無負荷検出カウンタを全てクリアする。
S310で、ノーロード制御有効フラグがセットされている場合は、S320で、使用者等がトリガ7を引いているか否か判断する。トリガ7が引かれていない場合はS390の処理を実行するが、トリガ7が引かれている場合は、S330で、電流振幅演算処理を行う。
既述の通り、本実施形態では、電流振幅のうち、電流が極大値から極小値へ減少する減少区間の電流振幅が無負荷検出および負荷検出に用いられる。そのため、S330では、今回の制御周期(制御タイミング)を含む直近の複数の制御タイミングでの各電流検出値に基づき、極大値から極小値への変化が検出されたか否かを判断して、検出された場合にその極大値と極小値との差を電流振幅として演算する。
S340では、S330で電流振幅が算出されたか否か判断する。S330で電流振幅が算出されなかった場合は、S345で、所定の振幅演算期間が経過したか否か判断する。この振幅演算期間は、このS345で肯定判定される毎にクリアされて計時が開始されるものである。振幅演算期間がまだ経過していない場合はこのソフトノーロード判定処理を終了する。
S340で電流振幅が算出されたと判断した場合、及びS340では電流振幅が算出されたと判断されず且つS345で振幅演算期間が経過したと判断された場合(つまり電流振幅が算出されない状態が振幅演算期間継続した場合)は、S350のノーロード解除判定処理に進む。
S350のノーロード解除判定処理の詳細は、負荷状態を検出するための処理であり、その詳細は図9に示す通りである。CPU21aは、図9のノーロード解除判定処理に移行すると、S351で、ノーロード解除フラグがクリアされているか否か判断する。ノーロード解除フラグがセット中の場合(即ち既に負荷状態である場合)はこのノーロード解除判定処理を終了するが、ノーロード解除フラグがクリアされている場合(即ち無負荷状態であるとの判定が継続している場合)は、S352に進む。
S352では、電流振幅があるか否か、即ち、図8のソフトノーロード判定処理においてS330で電流振幅が算出されたことによりS340で肯定判定されたか、それとも電流振幅が算出されることなく振幅演算期間が経過したことによりS345で肯定判定されたか否かを判断する。
電流振幅があると判断した場合は、S353で、電流振幅無カウンタをクリアする。S355では、電流振幅が電流幅閾値以上であるか否か判断する。電流振幅が電流幅閾値以上の場合は、S356で、負荷検出カウンタを1つ加算し、電流振幅小カウンタをクリアして、S360に進む。
S352で、電流振幅が無いと判断した場合は、S354で電流振幅無カウンタを1つ加算して、S357に進む。また、S355で電流振幅が電流幅閾値より低いと判断した場合も、S357に進む。
S357では、電流振幅小カウンタを1つ加算する。S358では、電流振幅小カウンタのカウンタが所定時間経過したか否か、即ち、電流振幅小カウンタのカウンタ値が示す経過時間が所定時間以上となったか否かを判断する。電流振幅小カウンタがまだ所定時間経過していない場合はS360に進む。電流振幅小カウンタが所定時間経過した場合は、S359に進む。S359では、負荷検出カウンタ及び電流振幅小カウンタをクリアして、S360に進む。
S360では、電流振幅無カウンタが所定時間経過したか否か、即ち、電流振幅無カウンタのカウンタ値が示す経過時間が所定時間以上となったか否かを判断する。電流振幅無カウンタがまだ所定時間経過していない場合は、S361に進み、負荷検出回数(負荷検出カウンタの値)が検出回数閾値以上か否か判断する。負荷検出回数が検出回数閾値以上の場合は、負荷状態になったものと判断し、S362に進む。S360で電流振幅無カウンタが所定時間経過した場合も、負荷状態になったものと判断し、S362に進む。
S362では、ノーロード解除フラグをセットすると共に、電流振幅無カウンタ、電流振幅小カウンタ、及び負荷検出カウンタをクリアする。ノーロード解除フラグがセットされるということは、負荷状態になっていることを意味する。
図8に戻り、S350のノーロード解除判定処理の後は、S370で、ノーロード復帰判定処理を実行する。S370のノーロード復帰判定処理は、負荷状態から無負荷状態への変化を検出するための処理であり、その具体的内容は図10に示す通りである。CPU21aは、図10のノーロード復帰判定処理に移行すると、S371で、ノーロード復帰有効フラグがセットされているか否か判断する。ノーロード復帰有効フラグがクリアされている場合はこのノーロード解除判定処理を終了するが、ノーロード復帰有効フラグがセットされている場合は、S372に進む。
S372では、ノーロード解除フラグがセットされているか否か判断する。ノーロード解除フラグがクリアされている場合(即ち既に無負荷状態である場合)はこのノーロード復帰判定処理を終了するが、ノーロード解除フラグがセットされている場合(即ち負荷状態であるとの判定が継続している場合)は、S373に進む。
S373では、復帰閾値生成タイミングか否か判断する。復帰閾値生成タイミングとは、無負荷状態のノーロード作動中回転数に対応したデューティから負荷状態のノーロード解除中回転数に対応したデューティへの上昇過程における、復帰閾値を取得すべき所定のデューティに到達するタイミングである。この復帰閾値生成タイミングは、ノーロード作動中回転数及びノーロード解除中回転数の各々に対応したデューティに基づく所定の演算方法で決められるタイミング(図4の例ではデューティが70%となるタイミング)である。
復帰閾値生成タイミングでない場合は、S375に進む。復帰閾値生成タイミングである場合は、S374で復帰閾値生成処理を実行して、S375に進む。S374の復帰閾値生成処理は、現在のモータ9の電流値(図5のS140で取得した電流値)を復帰閾値として生成(設定)する処理である。
S375では、駆動回路22に出力している現在のデューティ指令値が、ノーロード解除中回転数に対応した値まで上昇しているか否か判断する。例えば無負荷状態から負荷状態に切り替わったばかりでデューティがまだ上昇の過程にある場合は、S375では否定判定される。一方、無負荷状態から負荷状態に切り替わった後、時間が経過して、デューティ指令値がノーロード解除中回転数に対応したデューティに到達している場合は、S376に進む。
S376では、電流値が復帰閾値以下か否か判断する。電流値が復帰閾値より大きい場合は、S379で無負荷検出カウンタをクリアして、S380に進む。電流値が復帰閾値以下になっている場合は、S377で、電流振幅が電流幅閾値を下回っているか否か判断する。電流振幅が電流幅閾値以上の場合は、S379で無負荷検出カウンタをクリアしてS380に進むが、電流振幅が電流幅閾値を下回っている場合は、S378で無負荷検出カウンタを1つ加算してS380に進む。
S380では、無負荷検出回数(無負荷検出カウンタの値)が検出回数閾値以上か否か判断する。そして、無負荷検出回数が検出回数閾値以上の場合は、無負荷状態になったものと判断し、S381に進む。S381では、ノーロード解除フラグをクリアすると共に、無負荷検出カウンタをクリアする。
図6に戻り、S300のソフトノーロード判定処理の後は、S400で、速度指令値設定処理を実行する。S400の速度指令値設定処理の具体的内容は、図11に示す通りである。CPU21aは、図11の速度指令値設定処理に移行すると、S411で、ノーロード制御有効フラグがクリアされているか否か判断する。
S411で、ノーロード制御有効フラグがクリアされている場合、即ち、ノーロード制御が無効に設定されている場合は、S413に進み、トリガ7の引き量に対応したデューティのデューティ指令値を設定する。
S411で、ノーロード制御有効フラグがセットされている場合、即ち、ノーロード制御が有効に設定されている場合は、S415で、ノーロード解除フラグがクリアされているか否か判断する。ノーロード解除フラグがクリアされている場合は、S417で、無負荷状態の目標回転数であるノーロード作動中回転数に対応したデューティのデューティ指令値を設定する。なお、S417では、より詳しくは、ノーロード作動中回転数と実際の回転数の差に基づくフィードバック演算からデューティ指令値を演算する。
S415で、ノーロード解除フラグがセットされている場合は、S419で、負荷状態の目標回転数であるノーロード解除中回転数に対応したデューティのデューティ指令値を設定する。
図6に戻り、S400の速度指令値設定処理の後は、S500で、モータ駆動/停止処理を実行する。具体的には、CPU21aは、S400の速度指令値設定処理で設定したデューティ指令値の制御信号を駆動回路22へ出力する。これにより、モータ9は、設定したデューティ指令値のデューティにて通電され、そのデューティに応じた回転数で回転する。
(5)第1実施形態の効果等
以上説明した本実施形態の電動工具1によれば、モータ9の電流振幅に基づいてモータ9の無負荷状態及び負荷状態が検出されるため、モータ9の無負荷状態及び負荷状態を精度良く検出することが可能となる。
より具体的には、電流振幅が電流幅閾値以上と判断された回数(負荷検出回数)が検出回数閾値以上となった場合、又は電流振幅のない状態が所定時間継続した場合に、負荷状態と判断される。そのため、負荷状態の誤検出が抑制され、負荷状態を高い精度で検出できる。
また、電流振幅が電流幅閾値より小さい状態が所定時間継続した場合は、負荷検出カウンタがクリア(初期化)される。そのため、無負荷状態時における意図しない(一時的、瞬間的な)電流変動の発生によって誤って負荷状態と判断されてしまうことを抑制でき、負荷状態の検出精度をより高めることができる。
また、いくつかの設定項目やパラメータについては、携帯通信端末30から無線通信にて任意に設定することができる。そのため、使用者等は、電動工具1の状態や使用状況、使用環境等に応じて上記設定項目やパラメータを所望の値に設定することが可能となる。
また、負荷状態や無負荷状態の検出感度を任意に変更することも可能となる。特に、本実施形態では、無線通信により遠隔操作で上記設定が可能であるため、使い勝手のよい電動工具1の提供が可能となる。
また、無負荷時低速駆動から負荷時高速駆動への切り替え後、無負荷状態になった場合に無負荷時低速駆動へ復帰させるか否かを、任意に設定できるように構成されている。つまり、負荷状態から無負荷状態に変化する度に逐一駆動出力を無負荷時低速駆動へ戻すのか、それとも一旦負荷状態になったらその後たとえ無負荷状態になっても負荷時高速駆動を維持させるかについて、使用者が選択できる。そのため、使用者の使い勝手をさらに向上させることができる。
なお、本実施形態において、ブレード6は本発明の器具要素の一例に相当し、伝達機構10は本発明の駆動機構の一例に相当し、電動工具1のMCU21は本発明の制御部の一例に相当し、携帯通信端末30は本発明の外部機器の一例に相当し、電圧測定回路25は本発明の電圧検出部の一例に相当し、通信部27は本発明の通信入力対応部(閾値設定入力部、回転数設定入力部、選択入力受付部)の一例に相当し、電流幅閾値は本発明の変動発生検出閾値の一例に相当し、検出回数閾値は本発明の変動検出回数閾値の一例に相当し、ノーロード作動中回転数は本発明の無負荷時回転数の一例に相当し、ノーロード解除中回転数は本発明の負荷時回転数の一例に相当し、図9のS358の判断処理で用いる所定時間は本発明の第1の判断期間の一例に相当し、図9のS360の判断処理で用いる所定時間は本発明の第2の判断期間の一例に相当する。
[第2実施形態]
次に、第2実施形態の電動工具50について、図12を用いて説明する。図12に示す本実施形態の電動工具50は、図1に示した第1実施形態の電動工具1と比較して、主に、操作・表示パネル53を備えている点で異なる。即ち、図12に示すように、本実施形態の電動工具50は、把持部4における端部側(バッテリ3側)の上面に、操作・表示パネル53が設けられている。
操作・表示パネル53の具体的構成は、図13に示す通りである。図13に示すように、操作・表示パネル53は、第1操作スイッチ61と、第2操作スイッチ62と、ノーロード有効/無効LED61aと、高閾値LED61bと、低閾値LED61cと、復帰有効/無効LED62aとを備えている。各LED61a,61b,61c,62aは、周知の半導体発光素子(発光ダイオード)である。MCU52は、各スイッチ61の操作入力に応じて、各LEDの点灯・消灯を制御する。
電動工具50の使用者等は、操作・表示パネル53を操作することで、ノーロード制御の有効/無効の設定、及び、負荷時高速駆動から無負荷時低速駆動への復帰(ノーロード制御への復帰)の有効/無効の設定を行うことができる。更に、電流幅閾値及び検出回数閾値についても、それぞれ相対的に高い所定値(高閾値)又は相対的に低い所定値(低閾値)の何れかに選択的に設定することができる。
つまり、第1実施形態では、上記各設定項目が携帯通信端末30から無線通信で設定できる構成であったのに対し、本実施形態では、上記各設定項目については操作・表示パネル53を介して行うことができる。
なお、操作・表示パネル53を介した設定と携帯通信端末30からの設定の双方が可能な構成であってもよい。また、操作・表示パネル53で設定可能な項目は適宜決めることができる。例えば、ノーロード制御有効時における、ノーロード作動中回転数及びノーロード解除中回転数の少なくとも一方を操作・表示パネル53から選択・設定できるように
してもよい。
操作・表示パネル53を用いた上記各設定項目の設定方法、及び各LEDの点灯状態について、図14を用いて説明する。電動工具50の起動後の初期状態では、ノーロード制御は無効に設定され、ノーロード制御時における負荷時高速駆動から無負荷時低速駆動への復帰も無効に設定される。そのため、初期状態では、操作・表示パネル53内の各LEDは、図14における左側の状態図に示すように、全て消灯している。
この初期状態において、例えば第1操作スイッチ61が押し操作されると、ノーロード制御が有効に設定されると共に、電流幅閾値及び検出回数閾値がそれぞれ高閾値に設定される。このとき、図14の右側中段の状態図(状態A)に示すように、操作・表示パネル53内の各LEDのうち、ノーロード有効/無効LED61a及び高閾値LED61bが点灯する。
この状態Aからさらに第1操作スイッチ61が押し操作されると、ノーロード制御の有効設定が維持された状態で、電流幅閾値及び検出回数閾値がそれぞれ低閾値に切り替わる。このとき、図14の右側上段の状態図(状態B)に示すように、操作・表示パネル53内の各LEDのうち、ノーロード有効/無効LED61a及び低閾値LED61cが点灯する。
この状態Bからさらに第1操作スイッチ61が押し操作されると、ノーロード制御が無効に設定される。つまり、初期状態に戻り、各LEDが全て消灯する。
状態Aから第2操作スイッチ62が押し操作されると、ノーロード制御の有効設定及び高閾値への設定が共に維持された状態で、更に、ノーロード制御時におけるノーロード解除状態からノーロード制御状態への復帰(負荷時高速駆動から無負荷時低速駆動への復帰)が有効に設定される。つまり、第1実施形態において携帯通信端末30からノーロード復帰有効要求が送信された状態と同じ状態となる。このとき、図14の右側下段の状態図(状態C)に示すように、操作・表示パネル53内の各LEDのうち、ノーロード有効/無効LED61a、高閾値LED61b、及び復帰有効/無効LED62aが点灯する。
なお、この状態Cからさらに第2操作スイッチ62が押し操作されると、ノーロード解除状態からノーロード制御状態への復帰が無効に設定され、状態Bに切り替わる。
本実施形態でも、電動工具50のMCU52は、図5のメイン処理を実行する。ただし、図5のメイン処理におけるS150は、本実施形態では、操作・表示パネル53の操作入力を受け付ける処理となる。また、図6のモータ制御処理におけるS200は、本実施形態では、操作・表示パネル53で操作入力された結果を反映する操作入力反映処理となる。この操作入力反映処理の詳細は、図15に示す通りである。
図15に示す操作入力反映処理において、S611〜S625の処理は、図7に示した外部機器設定反映処理におけるS211〜S225の処理と同じであるため、その説明を省略する。
MCU52は、図15の操作入力反映処理において、S627で、ノーロード解除条件、即ち電流幅閾値及び検出回数閾値を取得する。具体的には、操作・表示パネル53の操作入力内容に基づき、各閾値がそれぞれ高閾値又は低閾値のどちらに設定されているかについての情報を取得する。なお、高閾値及び低閾値のいずれにも設定されていない場合、即ちノーロード制御が無効に設定されている場合は、S627の処理は実質的に行わずに次のS629へ進む。
S629では、S627で取得した電流幅閾値及び検出回数閾値に対してバッテリ状態
を考慮する。即ち、図7のS231と同じように、各閾値をバッテリ3の電圧に応じて補正する。
以上説明した本実施形態の電動工具50によっても、第1実施形態の電動工具1と同等の作用効果が得られる。
特に本実施形態では、いくつかの設定項目やパラメータについて、工具本体2に設けられた操作・表示パネル53を操作することで任意に設定することができる。つまり、第1実施形態で説明した携帯通信端末30がなくても、電動工具50単体で、上記設定項目やパラメータを所望の値に設定することが可能となる。
なお、本実施形態において、操作・表示パネル53は本発明の操作入力対応部(閾値設定入力部、回転数設定入力部、選択入力受付部)の一例に相当し、第1操作スイッチ61及び第2操作スイッチ62は本発明の操作部の一例に相当する。
[他の実施形態]
(1)電流振幅に基づいて負荷状態の検出を行う方法はあくまでも一例であって、電流以外の、モータ9の動作状態を直接又は間接的に示す他の状態量の増減変動幅に基づいて負荷状態の検出を行うようにしてもよい。
例えば、モータ9の実際の回転数、モータ9に印加されている電圧、バッテリ電圧、フィードバック制御時におけるデューティ指令値などの増減変動幅に基づいて負荷状態の検出を行うことができる。
負荷状態から無負荷状態への変化の検出についても、電流や電流振幅以外の他の状態量に基づいて行うようにしてもよい。
(2)モータ9の回転数を、トリガ7以外の他の手段、例えばダイヤル操作等によって連続的又は段階的に設定できるようにしてもよい。ダイヤルを設ける場合、ダイヤルの操作位置に応じて、ノーロード作動中回転数やノーロード解除中回転数も変化するように構成してもよい。
(3)負荷検出の際に用いる電流幅閾値(図9のS355)と、無負荷検出の際に用いる電流幅閾値(図10のS377)は、それぞれ個別に設定可能であってもよい。負荷検出の際に用いる検出回数閾値(図9のS361)と、無負荷検出の際に用いる検出回数閾値(図10のS380)についても、それぞれ個別に設定可能であってもよい。また、図9のノーロード解除判定処理において、電流振幅小カウンタに対する所定時間(S358)と、電流振幅無カウンタに対する所定時間(S360)は、同じ時間であってもよいし、異なる時間であってもよい。
(4)図9のノーロード解除判定処理において、S352の判断は、電流の増減変動が全くない状態のみを振幅無しと判断してもよいが、わずかな変動があっても実質的に(本発明の作用効果上)変動がないと見なせる場合は振幅無しと判断するようにしてもよい。例えば、変動がないと見なせる振幅の上限値を閾値(本発明の無変動閾値に相当)に設定し、電流振幅がその閾値以下ならば振幅無しと判断するようにしてもよい。
(5)電動工具に対して各種設定を行うための外部機器は、携帯通信端末30に限定されるものではない。また、外部機器との通信は、無線通信に限らず、有線通信であってもよい。
(6)上記実施形態では、電動工具のMCUがマイクロコンピュータにより構成されているものとして説明したが、MCUは、マイクロコンピュータに限らず、例えばASIC
やFPGA、その他の各種IC、ロジック回路等により構成してもよい。
(7)上記実施形態のモータ9はブラシ付きDCモータであったが、ブラシ付きDCモータ以外の他のモータ(例えばブラシレスモータ、各種ACモータなど)を備えた電動機械器具に対しても本発明を適用可能である。
(8)上記実施形態では、本発明を電動工具(具体的にはジグソー)に適用した例を示したが、本発明は、電動工具に限らずあらゆる種類の電動機械器具に適用可能である。例えば、ジグソーと同様、モータによりブレードを往復駆動させて被加工材を切断可能なレシプロソーにも適用可能である。なお、本発明の適用は、ジグソーやレシプロソーなどのように器具要素を往復駆動させる構成の電動機械器具に限定されるものではない。