本発明の実施形態について、図を参照しながら説明する。
本実施形態に係る電動工具10は、バネ力で駆動するバネ駆動式の打ち込み工具である。なお、本実施形態においては電動工具10の例として打ち込み工具を挙げているが、電動工具10としては打ち込み工具に限らず、モータ17を使用するものであればどのような工具であってもよい。例えば、電動ドライバや切断工具などであってもよい。また、電動工具10としては、バッテリ55を使用する充電式工具であってもよいし、外部電源によって作動する工具であってもよい。
本実施形態に係る電動工具10は、図1に示すように、ハウジングの内部にモータ17を備えており、モータ17によって駆動して工具の先端に設けられた射出口16からファスナを打ち出すように構成されている。
この電動工具10は、図1に示すように、内部に駆動機構20を収容した出力部11と、出力部11の先端側において出力部11に直交するように接続されたマガジン12と、出力部11の後端側において出力部11に直交するように接続されたグリップ13と、マガジン12の内側に沿って配置されたモータ収容部18と、を備える。
出力部11の先端には、被打込材に押し付けられるノーズ部15が設けられており、マガジン12に装填された先頭のファスナは、図示しない供給装置によってこのノーズ部15へと供給される。ノーズ部15へと供給されたファスナは、ドライバ31によってノーズ部15の先端に設けられた射出口16から打ち出される。
また、出力部11の内部には、図1に示すように、ファスナを打ち出すために射出口16に向けて摺動可能に設けられたドライバ31と、ドライバ31が連結されたプランジャ32と、プランジャ32を射出口16に向けて付勢するプランジャ付勢部材33と、プランジャ32の移動をガイドするガイド部材34と、プランジャ32を作動させるための駆動機構20と、プランジャ32の位置を検知するためのブレーキスイッチ41と、が配置されている。
本実施形態に係るドライバ31は、ファスナを打撃するためのプレートである。このドライバ31は、プランジャ32と一体的に連結されており、プランジャ付勢部材33の付勢力によってプランジャ32が作動したときに射出口16に向けて摺動し、これによってファスナを射出口16から打ち出すように構成されている。
プランジャ32は、図2に示すように、ガイド部材34によって摺動可能にガイドされており、圧縮バネからなるプランジャ付勢部材33によって常時射出口16に向けて付勢されている。
このプランジャ32は、後述する駆動機構20に隣接して配置されており、駆動機構20に臨む面には第1係合部32a及び第2係合部32bが突出形成されている。この第1係合部32a及び第2係合部32bは、駆動機構20と係合させるための突起であり、射出口16からの距離が互いに異なるように設けられている。具体的には、第1係合部32aは第2係合部32bよりも射出口16に近い位置に設けられている。
駆動機構20は、上記したプランジャ32をプランジャ付勢部材33の付勢力に抗して押し上げる機構である。この駆動機構20は、モータ17を動力源にプランジャ32を移動させて、プランジャ付勢部材33に付勢力を蓄積させるとともに、この付勢力を一気に開放することでプランジャ32を瞬間的に摺動させて打ち込み動作を実行させるようになっている。
この駆動機構20は、図7に示すような複数のギアを備えて構成されている。この複数のギアはモータ17の駆動力によって回転するものである。この駆動機構20は、ギアにプランジャ32を係合させた状態でギアを回転させ、これによってプランジャ32を押し上げる。そして、ギアとプランジャ32との係合を解除させることで、プランジャ32をプランジャ付勢部材33の付勢力で移動させ、プランジャ32に連結されたドライバ31を射出口16の方向に摺動させてファスナを打ち出す。
この駆動機構20は、図7(a)に示すように、出力部11のハウジングに固定されたトルクギアプレート21と、トルクギアプレート21に回転可能に軸支された第1トルクギア22と第2トルクギア23と、を備える。第1トルクギア22と第2トルクギア23とは、プランジャ32の摺動方向に並べて配置されており、第1トルクギア22は第2トルクギア23よりも射出口16側に配置されている。これにより、プランジャ32は、第1トルクギア22から第2トルクギア23へと順に係合することによって、徐々に持ち上げられるようになっている。
図7(b)は、プランジャ32が下死点位置にある状態(ドライバ31によるファスナの打ち出しが完了した状態)を示している。この状態から第1トルクギア22及び第2トルクギア23を回転させると、第1トルクギア22の偏心位置に設けられた第1トルクローラ22aがプランジャ32の第1係合部32aに係合する。
そして、図7(c)に示すように、そのまま第1トルクギア22によってプランジャ32が上方へと持ち上げられる。第1トルクローラ22aが最も上にくる位置まで第1トルクギア22が回転すると、第1トルクローラ22aと第1係合部32aとの係合が外れる。このとき、第1トルクローラ22aと第1係合部32aとの係合が外れる前に、第2トルクギア23の偏心位置に設けられた第2トルクローラ23aがプランジャ32の第2係合部32bに係合する。
そして、図7(d)に示すように、そのまま第2トルクギア23によってプランジャ32が上方へと持ち上げられ、プランジャ32は上死点位置にまで移動する。
その後、図7(e)に示すように、更にギアが回転して第2トルクローラ23aが最も上にくる位置まで第2トルクギア23が回転すると、第2トルクローラ23aと第2係合部32bとの係合が外れる。これにより、プランジャ32と駆動機構20との係合が解除され、プランジャ付勢部材33の付勢力が解放されるので、図7(b)に示す下死点位置まで瞬間的にプランジャ32が移動する。これにより、プランジャ32に連結されたドライバ31が射出口16の方向へと勢いよく摺動し、ファスナが打ち出される。
なお、本実施形態においては、打ち込み前のプランジャ32は、図7(c)に示す通常の待機位置(下死点から上死点に移動する途中の位置)にて待機するようになっており、後述する操作部14が操作されたことを契機として駆動機構20が作動し、図7(d)→図7(e)→図7(b)に示す状態を順次経て、再度図7(c)に示す通常の待機位置にて待機するように形成されている(後述する報知が行われる場合を除く)。
ブレーキスイッチ41は、図9に示すように、プランジャ32が上死点位置にきたときにプランジャ32に押下される位置に配置されている。このブレーキスイッチ41が押下されると、後述する制御装置100にブレーキ信号が出力されるようになっている。制御装置100は、このブレーキ信号をトリガにしてモータ17の駆動を停止する。
マガジン12は、上記したドライバ31によって打ち出されるファスナを装填するためのものである。本実施形態に係る工具においては、複数のファスナを並べて連結した連結ファスナがマガジン12に装填されている。
グリップ13は、電動工具10を使用する作業者が把持するための部位である。このグリップ13は、作業者が把持しやすいように棒状に形成されている。また、作業者がグリップ13を握ったときに作業者の人差し指がかかる位置には、人差し指で引き操作可能な操作部14が設けられている。この操作部14が操作されると、グリップ13の内部に配置されたトリガスイッチ40がオンになり、後述する制御装置100に操作信号が出力されるようになっている。制御装置100は、この操作信号をトリガにしてモータ17の駆動を開始する。
また、このグリップ13の後端部(出力部11の反対側の端部)には、バッテリ55を装着するためのバッテリ装着部13aが形成されている。本実施形態に係る電動工具10は、このバッテリ装着部13aに装着されたバッテリ55から供給された電力で駆動するようになっている。バッテリ55は、二次電池を内蔵しており、電動工具10から取り外して充電可能となっている。また、このバッテリ装着部13aの内部には、CPUやRAM等の部品を実装した基板50が配置されている。この基板50に実装されたCPUやRAMは、電動工具10の作動を制御するための制御装置100を構成している。
モータ収容部18は、モータ17を収容するための部位である。本実施形態に係るモータ収容部18は、マガジン12のグリップ13側にグリップ13と対向するように配置されている。また、このモータ収容部18の表面には、図1および図3に示すような導光部材44が配設されている。この導光部材44は、基板50に実装されたLED43の光を外部まで導くためのものである。LED43が点灯すると、この導光部材44の表面が発光するので、LED43の光を外部から視認しやすく構成されている。
なお、本実施形態に係るモータ17は、図5に示すように、モータケース17aの内部にロータ17bを収容したブラシ付きモータである。ロータ17bの整流子には、電流を流す巻線17cが巻き付けられている。
また、このモータ17の近傍には、モータ17の温度変化を検出するための温度センサ42が設けられている。本実施形態に係る温度センサ42は、図3および図4に示すように、モータケース17aの表面に取り付けられており、モータ17の表面温度を検出できるようになっている。温度センサ42が検出したモータ17の表面温度は、制御装置100に出力されて制御に使用される。なお、温度センサ42を取り付ける位置は、モータケース17aの表面に限らず、配線や内部レイアウトなどを考慮して適宜変更可能である。すなわち、本実施形態においては、温度センサ42で検出した測定値をそのまま用いるのではなく、測定値をもとに発熱部の温度を推定するため、モータ17の温度変化を測定可能な位置であれば、どこに温度センサ42を配置してもよい。例えば、モータ17に接触しない近傍の空間に温度センサ42を配置してもよいし、モータ17の周囲を覆う本体ハウジングに温度センサ42を取り付けてもよい。
ここで、上記したような電動工具10の動作は、制御装置100によって制御されるようになっている。この制御装置100は、CPUを中心に構成され、ROM、RAM、I/O等を備えている。そして、CPUがROMに記憶されたプログラムを読み込むことで、各種の入力装置及び出力装置を制御するように構成されている。
この制御装置100の入力装置としては、図6に示すように、トリガスイッチ40、ブレーキスイッチ41、温度センサ42などが設けられている。なお、入力装置としては、これらの入力装置に限定されず、他の入力装置を備えていてもよい。
また、この制御装置100の出力装置としては、図6に示すように、モータ17、LED43などが設けられている。なお、出力装置としては、これらの出力装置に限定されず、他の出力装置を備えていてもよい。
そして、制御装置100は、これらの各種装置を制御するものであり、予め設定されたプログラムを実行することで、モータ駆動制御部110や、温度判定部120として機能する。
モータ駆動制御部110は、モータ17の駆動を制御するためのものである。このモータ駆動制御部110は、操作部14が操作されたことを契機としてモータ17を駆動させる制御を行い、ブレーキスイッチ41の状態変化を契機としてモータ17を停止させる制御を行う。
具体的には、図8に示す通常の待機状態から操作部14が操作されると、トリガスイッチ40がオンになる。モータ駆動制御部110は、トリガスイッチ40からの操作信号を受信したことを契機として、モータ17の駆動を開始する。モータ17が回転すると、駆動機構20が作動してプランジャ32を徐々に上方に持ち上げる。
そして、図9に示すように、プランジャ32が上死点位置まで移動すると、プランジャ32がブレーキスイッチ41を押下する。その直後、駆動機構20とプランジャ32との係合が外れ、プランジャ付勢部材33に蓄積された付勢力によってプランジャ32及びドライバ31が射出口16の方向へ瞬間的に移動する。これにより、図10に示すように、プランジャ32が下死点位置まで移動することでファスナが打ち出される。
その後、図8に示す通常の待機状態に戻るまでモータ17が回転したら、モータ駆動制御部110がモータ17を停止させる。このとき、モータ17を停止させるタイミングは、ブレーキスイッチ41が図9に示す状態でオンになった後に、再びオフになってから所定時間を計測することで計られる。例えば、モータ駆動制御部110は、ブレーキスイッチ41がオフになってから0.5秒を計測し、0.5秒後にモータ17を停止させる。このように、ブレーキスイッチ41がオフになってから(ファスナが打ち込まれてから)所定時間経過後にモータ17を停止させることにより、プランジャ付勢部材33に所定の付勢力が蓄積される通常の待機位置までプランジャ32を移動させて停止させることができる。このようにプランジャ32を上死点の近くに停止させれば、次回の打ち込み操作時に操作部14が操作されてからファスナが打ち出されるまでの時間を短縮することができる。これにより、作業者に待ち時間を感じさせずにスムーズに連続して作業を行わせることができる。
温度判定部120は、モータ17の過熱を判定するためのものである。この温度判定部120は、モータ17の温度(推定温度)を予め設定された所定の閾値と比較することでモータ17の過熱を検知するようになっている。
本実施形態においては、図15に示すように、温度判定部120が使用する所定の閾値として、第1の閾値と、この第1の閾値よりも高く設定された第2の閾値と、が設定されている。第2の閾値は、モータ17が安全に使用できる上限温度を基に設定された固定値であり、本実施形態では110℃に設定されている。第1の閾値は、モータ17の温度が上限温度に近づいていることを作業者に報知するために第2の閾値よりも低く設定された固定値であり、本実施形態では100℃に設定されている。
本実施形態に係る温度判定部120は、温度センサ42が検出した温度(モータ17の表面温度)を補正することにより、モータ17の内部温度を推定し、この推定温度を上記した第1の閾値および第2の閾値と比較することで、モータ17の過熱を検知するようになっている。
ここで、モータ17の内部温度と表面温度との温度差は、作業者の作業ペースに影響を受けて変化する。すなわち、図16(a)に示すように、作業ペースが速い場合(打ち込み工具の場合、連続して休みなく打ち込みが行われた場合)には、モータ17の内部温度(巻線17cの温度)が急激に上昇するため、表面温度(モータケース17aの温度)が内部温度に追従できず、温度センサ42が検出した温度とモータ17の内部温度との温度差が大きくなる傾向がある。
一方、作業ペースが遅い場合(打ち込み工具の場合、中断をはさみながらゆっくりと打ち込みが行われた場合)には、モータ17の内部温度と表面温度とがほぼ等しくなるので、温度センサ42が検出した温度とモータ17の内部温度との温度差はそれほど大きくならない。
例えば、図16(a)に示すように、作業ペースが速い場合には、温度センサ42が検出した温度が第1の閾値に到達したときには、モータ17の内部温度は第2の閾値を大きく超えてしまっている。反対に、図16(b)に示すように、作業ペースが遅い場合には、温度センサ42が検出した温度が第1の閾値に到達したとしても、モータ17の内部温度は第2の閾値に到達していない。
このように、温度センサ42が検出した温度だけではモータ17の内部温度を精度よく推定することができないため、本実施形態に係る温度判定部120は、モータ17の駆動状況を基に作業ペースを算出し、この作業ペースと温度センサ42の検出結果とを基にモータ17の内部温度を推定するようにしている。なお、本実施形態においては、温度判定部120は、ドライバ31の駆動回数(ファスナの打ち込み回数)を基に作業ペースを算出している。
そして、温度判定部120が推定したモータ17の内部温度が第2の閾値を超えていると判断したときには、モータ17が過熱していると判断する。このように温度判定部120がモータ17の過熱を検知している状態では、操作部14が操作されたとしても、モータ駆動制御部110はモータ17が駆動しないように制御する。このため、高温状態では工具が作動しないようになっている。
また、温度判定部120が推定したモータ17の内部温度が第1の閾値を超えていると判断したときには、モータ17の温度上昇を作業者に報知するようになっている。本実施形態においては、モータ17の温度上昇を作業者に報知するときに、モータ17の駆動態様を変化させることで報知が実行されるようになっている。詳しくは、打ち込み動作を行った後にモータ17を停止させるタイミングを変化させることでモータ17の温度上昇を作業者に報知するようになっている。
具体的には、報知を実行しないとき(モータ17の温度が第1の閾値を超えていないと判断したとき)には、上記したように通常の待機位置までプランジャ32を移動させて停止する。一方、報知を実行するとき(モータ17の温度が第1の閾値を超えていると判断したとき)には、プランジャ付勢部材33に蓄積された付勢力が通常の待機位置よりも小さい報知用の待機位置までプランジャ32を移動させて停止するように構成されている。例えば、ブレーキスイッチ41がオフになった直後にモータ17を停止させることで、図9に示すような下死点位置(報知用の待機位置)でプランジャ32を停止させる。このようにプランジャ32の停止位置を変えることで、次回打ち込み操作時に操作部14が操作されてからファスナが打ち出されるまでの時間が変化するので、作業者に直観的な違和感を生じさせ、温度上昇を作業者に報知することができる。
なお、本実施形態においては上記のような報知方法を選択したが、これに限らず他の報知方法を使用してもよい。
例えば、操作部14が操作されてからモータ17が駆動するまでの時間を遅延させることで温度上昇を作業者に報知するようにしてもよい。すなわち、報知を実行しないときには、操作部14が操作されてすぐにモータ17を駆動するが、報知を実行するときには、操作部14が操作されても所定の時間が経過するまではモータ17を駆動しないようにしてもよい。
また、モータ17の回転数を非報知時よりも低下させることで温度上昇を作業者に報知するようにしてもよい。なお、モータ17の回転数を低下させる方法としては、モータ17をPWM制御し、デューティ比を変化させることでモータ17の回転数を変化させるようにしてもよい。または、モータ17に供給する電流値を変化させることでモータ17の回転数を変化させるようにしてもよい。
その他にも、例えばLED43やブザー、振動モータなどを使用して温度上昇を作業者に報知するようにしてもよい。
(高温検知処理について)
次に、高温検知処理の流れについて説明する。高温検知処理は、温度判定部120によって実行される処理であり、モータ17の内部温度を推定するための演算処理や、推定温度を閾値と比較してモータ17の過熱を判定する処理などを含んでいる。この高温検知処理のメインフローについて、図11を参照しながら説明する。
まず、図11に示すステップS100において、電動工具10の電源がオンになる。このとき、タイマーが計測を開始する。そして、ステップS110に進む。
ステップS110では、温度判定部120が温度センサ42の検出結果(AD)を取得する。そして、ステップS120に進む。
ステップS120では、不揮発性メモリに保存された高温エラーフラグ(後述のステップS420参照)を参照し、前回の電源オフ時に高温エラーフラグがセットされた状態であったかをチェックする。高温エラーフラグがセットされている場合、高温エラー状態で電源が入れ直された可能性がある(例えば、エラーを瞬間的に解消するために作業者がバッテリ55を着脱した可能性がある)ので、この場合は前回の推定温度を参照するためにステップS180に進む。一方、高温エラーフラグがセットされていない場合は、ステップS125に進む。
ステップS125に進んだ場合、タイマーが1分間を計測するまで待機する。タイマーの計測開始(ステップS100)またはタイマーのリセット(ステップS450)から1分間が経過したら、ステップS130に進む。
ステップS130では、1分前の温度を示す変数(Ta)に、温度センサ42の検出結果(AD)をセットする。そして、ステップS135に進む。
ステップS135では、再び温度判定部120が温度センサ42の検出結果(AD)を取得する。そして、ステップS140に進む。
ステップS140では、現在温度を示す変数(Tb)に、温度センサ42の検出結果(AD)をセットする。そして、ステップS145に進む。
ステップS145では、後述する温度差取得処理を実行する。温度差取得処理では、モータ17の内部温度と表面温度との温度差を補正するための温度差ΔTが演算される。そして、ステップS150に進む。
ステップS150では、現在温度(Tb)に温度差(ΔT)を加算して、推定温度(ET)を算出する。そして、ステップS155に進む。
ステップS155では、後述するエラー判定処理を実行する。エラー判定処理では、推定温度(ET)を所定の閾値と比較し、モータ17の過熱を判断する。これにより、1回の高温検知処理が終了するので、ステップS120に戻る。
一方、ステップS180に進んだ場合、再び温度判定部120が温度センサ42の検出結果(AD)を取得する。そして、ステップS185に進む。
ステップS185では、現在温度を示す変数(Tb)に、温度センサ42の検出結果(AD)をセットする。そして、ステップS190に進む。
ステップS190では、不揮発性メモリに保存された温度差ΔTが読み出されて復元される。そして、ステップS150およびステップS155に進み、この不揮発性メモリに保存された温度差ΔT(前回電源がオフになったときの温度差ΔT)を使用してエラー判定処理が実行される。これにより、1回の高温検知処理が終了するので、ステップS120に戻る。
(温度差取得処理)
温度差取得処理は、モータ17の温度を推定するために使用される温度差ΔTを算出する処理である。本実施形態に係る温度差取得処理においては、温度判定部120は、予め定められた一定期間(1分間)における作業ペース(ドライバ31の駆動回数、すなわちファスナの打ち込み回数)と、この一定期間(1分間)において温度センサ42が検出した温度変化と、を使用して、温度差ΔTを算出する。この温度差取得処理の詳細について、図12のフローを参照しながら説明する。
まず、図12に示すステップS200において、最近の一定期間(1分間)において温度センサ42が検出した温度上昇値(K)が算出される。温度上昇値(K)は「Tb-Ta」により求められる。そして、ステップS205に進む。
ステップS205では、温度上昇値(K)が負の値であるかがチェックされる。温度上昇値(K)が負の値である場合、ステップS210へ進む。一方、温度上昇値(K)が0よりも大きい場合には、ステップS215に進む。
ステップS210に進んだ場合、最近1分間で温度が低下しているので、温度上昇値(K)に「0」を設定する。そして、ステップS215に進む。
ステップS215では、最近の一定期間(1分間)においてドライバ31が駆動した回数(C)が取得される。このドライバ31の駆動回数(C)は、1分間ごとにクリアされ(ステップS450参照)、打ち込み動作が実行されるごとに1ずつカウントアップされるものである。ドライバ31の駆動回数(C)を取得したら、ステップS220に進む。
ステップS220では、1分間のドライバ31の駆動回数(C)が「0」であるかがチェックされる。駆動回数(C)が「0」である場合には、ステップS225へ進む。一方、駆動回数(C)が「0」でない場合には、ステップS230に進む。
ステップS225に進んだ場合、リセットカウントを1増加させる。なお、リセットカウントは、温度差ΔTをリセットするためのカウンタである。そして、ステップS240に進む。
ステップS230に進んだ場合、リセットカウントをクリアする(リセットカウントに「0」をセットする)。そして、ステップS240に進む。
ステップS240では、リセットカウントが「4」以上であるかがチェックされる。本実施形態においては、4分間以上打ち込みが行われなかった場合には、モータ17の内部温度と表面温度とが等しくなっていると判断するように設定されている。リセットカウントが「4」未満の場合には、ステップS245へ進む。一方、リセットカウントが「4」以上の場合には、4分間以上打ち込みが行われていないので、ステップS250へ進む。
ステップS245へ進んだ場合、後述する温度差演算処理を実行し、温度差ΔTを演算により求める。そして、温度差取得処理を終了する。
一方、ステップS250へ進んだ場合、一定時間以上モータ17が駆動していないことにより、モータ17の内部温度と表面温度との差が生じていないと判断し、温度差ΔTに「0」をセットする。そして、温度差取得処理を終了する。
(温度差演算処理)
温度差演算処理の詳細について、図13のフローを参照しながら説明する。なお、この温度差演算処理においては、演算に使用するいくつかの定数が規定されているが、これらの定数は、モータ17の特性、工具の形状や材質、温度センサ42の特性、温度センサ42の配置箇所などの条件によって変化するものであり、工具ごとに最適値が異なるものである。
まず、図13に示すステップS300において、最近の一定期間(1分間)においてドライバ31が駆動した回数(C)が20回以上であるかがチェックされる。20回以上の場合には、ステップS305に進む。一方、20回未満の場合には、ステップS310に進む。
ステップS305に進んだ場合、「600÷C」の計算式により作業ペース(P)を算出する。そして、ステップS315に進む。
ステップS310に進んだ場合、作業ペース(P)に固定値(本実施形態においては「30」)をセットする。そして、ステップS315に進む。
ステップS315では、モータ17の内部温度と表面温度との暫定温度差(M)を算出する。暫定温度差(M)は、温度上昇値(K)と作業ペース(P)とを基に算出される。具体的には、暫定温度差(M)は、「gK+aP^2-bP+c」(g、a、b、cは定数)の計算式で算出される。
なお、上記した定数は、モータ17の表面温度(温度センサ42が取り付けられるモータケース17aの表面温度)とモータ17の内部温度とを実測して決定されたものである。モータ17の内部温度を実測する方法としては、モータ17の回転をロックした状態でモータ17に使用状態と同じ大きさの電流を印加し、そのときの内部温度(巻線17cの温度など)を測定する方法が使用できる。
図17は、このように実測した結果を示すグラフである。このグラフの横軸は、1分ごとに取得した温度センサ42の検出結果において、1分間の温度上昇値(K=Tb-Ta)を示している。また、このグラフの縦軸は、実測したモータ17の内部温度と表面温度との温度差(ΔTの実測値)を示している。この図17が示すように、駆動開始直後はモータ17の内部温度の上昇に表面温度の上昇が追従できていない区間があるが、ある程度温度が上昇すると、温度上昇値と温度差とが一定の傾きで安定する。上記した定数g、a、b、cを求めるときには、この一定の傾きで安定した部分の近似式を使用する。すなわち、この近似式の傾きが、上記した計算式の定数gとして使用される。また、この近似式の切片は、作業ペースによって変化する。すなわち、図17に示すように、0.33本/秒のペースで打ち込みが行われた場合よりも、0.5本/秒のペースで打ち込みが行われた場合の方が、近似式の切片の値が大きくなる。また、0.5本/秒のペースで打ち込みが行われた場合よりも、0.67本/秒のペースで打ち込みが行われた場合の方が、近似式の切片の値が大きくなる。このように作業ペースによって切片の値が異なるため、作業ペースを基に切片を求めるようにしたものが上記した計算式の「aP^2-bP+c」の部分である。a、b、cの値は、実測した作業ペース(P)と切片との関係を基に求めることができる。
上記した計算式で暫定温度差(M)が算出されたら、ステップS320に進む。
ステップS320では、過去4回分の暫定温度差(M)の平均値を算出し、これを温度差を示す変数ΔTにセットする。もし、過去4回分のデータが存在しない場合には、存在する分のデータの平均値を温度差ΔTにセットする。このように平均値を使用することで、1分ごとのデータの偏りを均し、温度補正の精度を向上させている。このように温度差ΔTを演算により求めたら、温度差演算処理を終了する。
(エラー判定処理)
エラー判定処理の詳細について、図14のフローを参照しながら説明する。なお、このエラー判定処理において使用している閾値は例に過ぎず、使用するモータ17の特性などを考慮して適宜変更可能であることは言うまでもない。
まず、図14に示すステップS400において、ステップS150で得た推定温度(ET)が第1の閾値(本実施形態においては100℃)以上であるかがチェックされる。推定温度(ET)が第1の閾値以上である場合には、ステップS405に進む。一方、推定温度(ET)が第1の閾値未満である場合には、ステップS410に進む。
ステップS405に進んだ場合、高温報知フラグがオンにセットされる。高温報知フラグがオンにセットされると、所定の報知処理が実行される。本実施形態においては、この高温報知フラグがオンの状態で操作部14が操作されて打ち込み動作が行われると、打ち込み完了後にプランジャ32が報知用の待機位置に停止する。そして、ステップS415に進む。
ステップS410に進んだ場合、高温報知フラグがオンであれば、この高温報知フラグをオフにする。そして、ステップS415に進む。
ステップS415では、ステップS150で得た推定温度(ET)が第2の閾値(本実施形態においては110℃)以上であるかがチェックされる。推定温度(ET)が第2の閾値以上である場合には、ステップS420に進む。一方、推定温度(ET)が第2の閾値未満である場合には、ステップS430に進む。
ステップS420に進んだ場合、モータ17の推定温度が、モータ17の使用上限温度を超えているため、高温エラーフラグがオンにセットされる。また、高温エラーフラグがオンであることと、現在の温度差ΔTを不揮発性メモリに記憶する。これにより、一度電源がオフにされてから電源が入れ直された場合でも、高温エラーフラグがオンであることと、現在の温度差ΔTの値を復元することができる。なお、この高温エラーフラグがオンの状態では、操作部14が操作されてもモータ17は駆動しない。そして、ステップS425に進む。
ステップS425では、所定のエラー処理が実行される。例えば、LED43を点滅させるなどの処理が実行される。そして、ステップS450に進む。
一方、ステップS430に進んだ場合、高温エラーフラグがオンであれば、この高温エラーフラグをオフにする。また、高温エラーフラグや温度差ΔTが不揮発性メモリに記憶されているようであれば、これらの情報を消去する。また、LED43を点滅させるなどのエラー処理が実行されていれば、このエラー処理を停止する。そして、ステップS450に進む。
ステップS450では、タイマーをリセットし、1分間の計測を再び開始させる。また、ドライバ31の駆動回数(C)もリセットする。これにより、エラー判定処理が終了する。 (まとめ)
以上説明したように、本実施形態によれば、第1の閾値と、第1の閾値よりも高く設定された第2の閾値と、が設定されており、モータ17の温度が第1の閾値を超えていると判断したときには、モータ17の温度上昇をユーザに報知し、モータ17の温度が第2の閾値を超えていると判断したときには、操作部14が操作された場合でもモータ17が駆動しないように制御する。このような構成によれば、モータ17の温度が上昇したときに、まずユーザに報知が実行され、その後、更にモータ17の温度が上昇したときにモータ17の出力が制限される。よって、モータ17が高温になって工具が使用できなくなる場合でも事前に作業者に報知がなされるので、突然作業が中断するといった不都合を回避することができる。
また、このような作業者への報知は、モータ17の駆動態様を変化させることで実行される。このような構成によれば、モータ17の駆動によって作業者に違和感を生じさせることにより、モータ17温度の上昇に感覚的に気付かせることができる。
具体的には、射出口16からファスナを打ち出す打ち込み工具において、報知を実行しないときには、ドライバ31によってファスナを打ち出した後に、プランジャ付勢部材33に所定の付勢力が蓄積される通常の待機位置までプランジャ32を移動させて停止するようにし、報知を実行するときには、プランジャ付勢部材33に蓄積された付勢力が通常の待機位置よりも小さい報知用の待機位置までプランジャ32を移動させて停止するようにしている。すなわち、報知用の待機位置のプランジャ32の方が、通常の待機位置のプランジャ32よりも上死点位置までの距離が長くなっている。このような構成によれば、報知が実行されているときには、報知が実行されてないときよりも、作業者が操作部を操作してから実際にファスナが打ち出されるまでの時間が長くなる。このように打ち込みに時間がかかることで、作業者はモータ17温度の上昇に感覚的に気付くことができる。また、打ち込みに時間がかかるため、打ち込み作業の間隔も空くので、モータ17の負荷を低減させて温度上昇を抑制することができる。
なお、上記した実施形態においては、高温エラーフラグがオンであることを不揮発性メモリに記憶するようにしたが、これに加えて、高温報知フラグがオンであることを不揮発性メモリに記憶するようにしてもよい。これにより、高温報知フラグがオンの状態で電源がオフになり、再び電源が入れ直された場合でも、高温報知フラグの状態を復元し、報知状態が継続されるようにしてもよい。
また、上記した実施形態においては、温度センサ42でモータ17の表面温度を検出するようにしたが、これに限らない。例えば、温度センサ42は、電池や基板、FETなどの温度を検出するようにしてもよい。そして、電池や基板、FETなどの温度を検出するときに、電池や基板、FETなどの温度変化を測定可能な位置であれば、どこに温度センサ42を配置してもよい。例えば、これらの部品に接触しない近傍の空間に温度センサ42を配置してもよいし、これらの部品の周囲を覆う本体ハウジングに温度センサ42を取り付けてもよい。
また、温度検知手段として、サーミスタ等の温度センサ42を用いる事に代え、歪ゲージ等を用いて温度による変形量から温度変化を推定するようにしてもよい。
また、上記した実施形態においては、作業ペースによって異なる温度上昇を考慮してモータ17の発熱部位の温度を推定するようにしたが、温度を推定する代わりに閾値を変動させるようにしてもよい。すなわち、作業ペースによって温度センサ42の検出温度と実際の発熱部位の温度との間の温度差が変化するという知見に基づいて、予め定められた一定期間におけるモータ17の駆動状況によって判定閾値(第1の閾値や第2の閾値)を変動させ、この判定閾値と温度センサ42の出力とを比較して、モータ17が過熱状態であることを判定するようにしてもよい。このような処理は上記した実施形態と同様の計算により実現可能である。すなわち、上記した実施形態においては、計算により求めた温度差ΔTを温度センサ42の検出温度に加算しているが、これに代えて、計算により求めた温度差ΔTを判定閾値(第1の閾値や第2の閾値)から減算するようにすればよい。
なお、上記した実施形態においては、モータ17の温度が第2の閾値を超えていると判断したときにモータ17が駆動しないように制御するようにしたが、これに限らず、モータ17の出力を下げて駆動するようにしてもよい。この場合、モータ17の出力を下げて駆動する態様と、モータ17の温度上昇をユーザに報知する態様とが異なるように設定されていればよい。