(57)【要約】【課題】外部機器を使って動作条件を設定可能な電動工具用装置において、設定可能項目や設定可能範囲を調べることなく、動作条件を設定変更できるようにする。【解決手段】モータの制御部（２０）、設定変更が可能な動作条件を表す設定可能項目及びその設定可能範囲が記憶された記憶部（２７）、及び、外部機器との間で通信を行う通信部（３０）を備えた電動工具において、制御部は、通信部にて受信された外部機器からの要求に従い、記憶部から設定可能項目及び設定可能範囲を読み出し、通信部を介して外部機器に送信する。【選択図】図２
2015223638.tif 000002
【特許請求の範囲】
【請求項１】
電動工具、該電動工具に装着されるバッテリ、又は、該バッテリを充電する充電器にて構成される電動工具用装置であって、
予め設定された動作条件に従い電動工具用装置の動作を制御する制御部と、
前記動作条件の内、設定変更が可能な動作条件を表す設定可能項目及び該動作条件の設定可能範囲が予め記憶された記憶部と、
外部機器との間で通信を行う通信部と、
を備え、前記制御部は、前記通信部にて受信された前記外部機器からの要求に従い、前記記憶部から前記設定可能項目及び設定可能範囲を読み出し、前記通信部を介して前記外部機器に送信することを特徴とする電動工具用装置。
【請求項２】
前記制御部は、
前記通信部にて前記外部機器から送信された前記動作条件の変更要求が受信されると、該変更要求が、前記記憶部に記憶された設定可能項目及び設定可能範囲に対応するか否かを判断し、前記変更要求が前記設定可能項目及び設定可能範囲に対応する場合には、当該変更要求に従い前記動作条件を設定変更し、当該変更要求が前記設定可能項目及び設定可能範囲に対応しない場合には、前記動作条件の設定変更を禁止、または、当該変更要求を修正して設定変更、することを特徴とする請求項１に記載の電動工具用装置。
【請求項３】
前記制御部は、
前記変更要求が、前記記憶部に記憶された設定可能項目に対応していて前記設定可能範囲外にある場合には、当該変更要求に従い、前記動作条件を前記設定可能範囲内で前記変更要求に最も近い上限値若しくは下限値に設定することを特徴とする請求項２に記載の電動工具用装置。
【請求項４】
前記制御部は、前記変更要求が前記設定可能項目及び設定可能範囲の少なくとも一方に対応しない場合には、その旨を、報知部を介して報知することを特徴とする請求項２又は請求項３に記載の電動工具用装置。
【請求項５】
前記記憶部には、前記設定可能項目及び前記設定可能範囲に加え、前記動作条件を設定変更する際の最小単位である設定可能ステップ値が記憶されており、
前記制御部は、前記外部機器からの要求に従い、前記設定可能項目及び設定可能範囲を前記外部機器に送信する際には、前記設定可能ステップ値も送信することを特徴とする請求項１〜請求項４の何れか１項に記載の電動工具用装置。
【請求項６】
前記制御部は、
前記通信部にて前記外部機器から送信された前記動作条件の変更要求が受信され、該変更要求に従い前記動作条件を設定変更する際、該変更要求により指定された前記動作条件の変更値が前記設定可能ステップ値に対応しない場合には、当該変更値を前記設定可能ステップ値に対応した変更値に補正し、前記動作条件を設定変更することを特徴とする請求項５に記載の電動工具用装置。
【請求項７】
前記制御部は、当該電動工具用装置の動作制御時に、前記通信部にて前記外部機器から送信された前記動作条件の変更要求が受信されると、前記電動工具用装置の動作を停止させることを特徴とする請求項１〜請求項６の何れか１項に記載の電動工具用装置。
【請求項８】
前記通信部は、前記外部機器との間で近接無線通信を行うように構成されていることを特徴とする請求項１〜請求項７の何れか１項に記載の電動工具用装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、動作条件の設定変更が可能な電動工具用装置に関する。
【背景技術】
【０００２】
電動工具においては、ねじの締め付けトルクの最大値、最小値、トリガスイッチの操作量に対するモータ回転数の立ち上がり特性、等の動作条件を、パーソナルコンピュータ等の外部機器を介して、設定変更できるようにしたものが知られている（例えば、特許文献１、２参照）。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１３−８７４号公報
【特許文献２】特開２０１３−１８４２６６号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
ところで、上記電動工具において、動作条件を設定変更するには、使用者は、設定可能項目や設定可能範囲を把握している必要がある。
そして、このためには、電動工具のマニュアルや製造会社のホームページ等で設定可能項目や設定可能範囲を調べる必要があり、動作条件設定前の準備が面倒であるという問題があった。
【０００５】
本発明は、こうした問題に鑑みなされたものであり、外部機器を使って動作条件を設定可能な電動工具若しくはその周辺装置において、使用者が設定可能項目や設定可能範囲を調べることなく、簡単且つ適正に動作条件を設定変更できるようにすることを目的とする。
【課題を解決するための手段】
【０００６】
本発明の電動工具用装置（電動工具、電動工具に装着されるバッテリ、若しくは、バッテリを充電する充電器）においては、制御部が、予め設定された動作条件に従い装置の動作を制御する。
【０００７】
また、制御部が制御に用いる動作条件の内、設定変更が可能な動作条件については、その動作条件の設定可能項目及び設定可能範囲が予め記憶部に記憶されている。
そして、制御部は、通信部にて受信された外部機器からの要求に従い、記憶部から設定可能項目及び設定可能範囲を読み出し、通信部を介して外部機器に送信する。
【０００８】
このため、外部機器を使って電動工具用装置の動作条件を設定変更する際、使用者は、電動工具用装置のマニュアル等を使って、動作条件の設定可能項目や設定可能範囲を調べることなく、動作条件の設定可能項目及び設定可能範囲を簡単に把握することができる。
【０００９】
また、動作条件の設定可能項目や設定可能範囲は、電動工具用装置から直接案内されるので、使用者は、これらのパラメータを正確に把握することができ、電動工具用装置の動作条件を誤設定するのを抑制できる。
【００１０】
ところで、制御部は、動作条件の設定可能項目や設定可能範囲を送信するだけでなく、通信部にて外部機器から送信された動作条件の変更要求が受信された際には、その変更要求が、記憶部に記憶された設定可能項目及び設定可能範囲に対応するか否かを判断するようにしてもよい。
【００１１】
この場合、制御部は、変更要求が設定可能項目及び設定可能範囲に対応する場合には、その変更要求に従い動作条件を設定変更し、変更要求が設定可能項目及び設定可能範囲に対応しない場合には、動作条件の設定変更を禁止するか、または、当該変更要求を修正して動作条件を設定変更することができる。
【００１２】
従って、このようにすれば、動作条件が誤設定されるのをより確実に防止できる。
また、制御部は、外部機器からの変更要求が、設定可能項目に対応していて設定可能範囲外にある場合には、その変更要求に従い、動作条件を、設定可能範囲内で変更要求に最も近い上限値若しくは下限値に設定するようにしてもよい。
【００１３】
このようにすれば、使用者が、外部機器を介して、設定可能範囲から外れた動作条件への変更要求を誤って入力した際、変更要求に対応した動作条件が、設定可能範囲内で変更要求に最も近い動作条件に自動で変更されることになる。
【００１４】
よって、この場合、電動工具用装置の動作条件を、使用者の意図に応じて設定変更することができ、電動工具用装置の使い勝手を向上できる。
また、制御部は、外部機器からの変更要求が、設定可能項目及び設定可能範囲の少なくとも一方に対応しない場合に、その旨を、報知部を介して報知するようにしてもよい。このようにすれば、使用者は、動作条件の誤設定を検知して、動作条件を再設定することができる。
【００１５】
一方、記憶部には、更に、動作条件を設定変更する際の最小単位である設定可能ステップ値を記憶しておき、制御部は、外部機器からの要求に従い、設定可能項目及び設定可能範囲を外部機器に送信する際には、設定可能ステップ値も送信するようにしてもよい。
【００１６】
このようにすれば、例えば、モータの回転数の設定可能範囲が「20000rpm〜5000rpm」であり、設定可能ステップ値が「1000rpm」である場合に、使用者は、その設定可能ステップ値を確認して、モータの回転数を「1000rpm」刻みで設定できる。
【００１７】
つまり、使用者は、動作条件を設定変更する際、設定可能ステップ値単位で動作条件を設定変更できるようになり、動作条件の設定作業を、簡単に且つ正確に行うことが可能となる。
【００１８】
また、制御部は、外部機器からの変更要求に従い動作条件を設定変更する際、その変更要求により指定された動作条件の変更値が設定可能ステップ値に対応しない場合には、その変更値を設定可能ステップ値に対応した変更値に補正し、動作条件を設定変更するようにしてもよい。
【００１９】
このようにすれば、例えば、モータの回転数の設定可能範囲が「20000rpm〜5000rpm」であり、設定可能ステップ値が「1000rpm」である場合に、使用者が、モータの回転数の変更値として「7800rpm」を指定したとしても、モータの回転数は、設定可能ステップ値に対応した「8000rpm」に設定変更されることになる。
【００２０】
従って、この場合、使用者から変更要求に従い動作条件を変更する際、その変更要求が設定可能ステップ値に対応していなくても、動作条件を、使用者の意図に応じて、適正値に設定変更できることになる。
【００２１】
次に、制御部は、電動工具用装置の動作制御時に、通信部にて外部機器から送信された動作条件の変更要求が受信されると、電動工具用装置の動作を停止させるようにしてもよい。
【００２２】
このようにすれば、電動工具用装置の動作中に、外部機器からの変更要求に従い動作条件が変更されることにより、電動工具用装置が正常動作しなくなるのを防止できる。
また、本発明において、通信部は、外部機器との間で近接無線通信を行うように構成するとよい。
【００２３】
つまり、近接無線通信としては、国際規格ISO/IEC 14443、日本工業規格JISX6319-4、等に準拠したＩＣカード用の通信方式であるＮＦＣ（Near Field Communication）が知られている。
【００２４】
この通信方式は既に実用化されており、携帯電話やスマートフォン等の携帯端末にも組み込まれていることから、通信部を近接無線通信（ＮＦＣ）用のものにすれば、通信部の小型化・低コスト化を図ることができる。
【００２５】
またこの場合、外部機器として、携帯端末を利用できるので、使用者は、所有する携帯端末を利用して、電動工具の動作条件を設定変更できるようになる。
【図面の簡単な説明】
【００２６】
【図１】実施形態の電動工具（充電式スクリュードライバ）の外観を表す斜視図である。
【図２】電動工具の回路構成を表すブロック図である。
【図３】外部端末からの読み出し／書き込み要求に対する通信回路及び制御回路の動作を表す動作説明図である。
【図４】外部装置と電動工具との間で送受信されるデータのフォーマットを表す説明図である。
【図５】外部端末から送信されるコマンドの一例を表す説明図である。
【図６】図５のコマンドに対し電動工具から送信されるデータの一例を表す説明図である。
【図７】外部装置と電動工具との間で送受信される工具情報を説明する説明図である。
【図８】電動工具の制御回路（ＭＣＵ）にて実行される制御処理を表すフローチャートである。
【図９】図８に示す報知制御処理を表すフローチャートである。
【図１０】図８に示す通信処理を表すフローチャートである。
【図１１】図１０に示す通信サブ処理を表すフローチャートである。
【発明を実施するための形態】
【００２７】
以下に本発明の実施形態を図面と共に説明する。
図１に示すように、本発明が適用された実施形態の充電式スクリュードライバ２は、長尺状の本体４と、本体４の長手方向一端側に着脱可能に取り付けられるアングルヘッド６と、本体４の長手方向他端側に着脱可能に取り付けられるバッテリパック８とを備える。
【００２８】
アングルヘッド６が取り付けられる本体４の一端側には、アングルヘッド６を回転駆動するためのモータ１２（図２参照）が内蔵されている。そして、アングルヘッド６は、内部のギヤ機構を介してモータ１２の回転を、その回転軸とは異なる軸方向に変換して先端工具に伝達する。
【００２９】
また、本体４の中央には、使用者が外部操作によってモータ１２の駆動指令を入力するための操作部１４が設けられている。そして、操作部１４とバッテリパック８の装着部との間には、使用者が本体４を把持した状態で、人差指等で操作部１４を操作できるように、把持部１６が形成されている。
【００３０】
一方、本体４内には、モータ１２に加えて、図２に示す制御回路２０、及び、通信回路３０が収納されている。
制御回路２０は、バッテリパック８から電力供給を受けて動作し、操作部１４からの指令に従いモータ１２を駆動制御するためのものである。
【００３１】
すなわち、制御回路２０は、モータ１２（本実施形態ではブラシレスモータ）へ通電することによりモータ１２を駆動するモータ駆動部２２、モータ１２に流れる電流を検出する電流検出部２４、及び、ＭＣＵ(Micro Control Unit)２６を備える。
【００３２】
ＭＣＵ２６は、モータ１２に設けられた回転センサ１２ａ及び電流検出部２４からの検出信号に基づき、モータ１２が操作部１４からの指令に応じた回転状態となるよう、モータ駆動部２２を介して、モータ１２を制御する。
【００３３】
また、この制御のために、ＭＣＵ２６には、充電式スクリュードライバ２によってねじ締め作業を行う際の動作条件（モータ１２の回転速度（speed）や回転量（turns）等）やその設定変更可能範囲（上限値、下限値、設定可能ステップ値等）を記憶するための不揮発性メモリ２７が設けられている。
【００３４】
なお、この不揮発性メモリ２７は、本発明の記憶部に相当し、制御回路２０は、本発明の制御部に相当し、通信回路３０は、本発明の通信部に相当する。
また、制御回路２０には、バッテリパック８から電力供給を受けて、ＭＵＣ２６に電源電圧（直流定電圧）を供給するレギュレータ部２８が備えられている。また、ＭＣＵ２６には、各種動作状態を使用者に知らせるための報知部１８が接続されている。なお、報知部１８は、ブザー、ＬＥＤ等にて構成される。
【００３５】
一方、通信回路３０は、スマートフォン等、外部端末５０との間で、上述したＮＦＣ方式の近接無線通信を行うためのものであり、アンテナ部３２、通信制御部３４、及び、これら各部を接続するＲＦインターフェース３６を備える。
【００３６】
また、通信回路３０には、外部端末５０との通信に必要な各種情報を記憶するメモリ３８、及び、制御回路２０のＭＣＵ２６との間でデータ通信を行うためのシリアルインターフェース３９も設けられている。
【００３７】
そして、通信制御部３４は、メモリ３８に記憶された通信用の情報をＲＦインターフェース３６とシリアルインターフェース３９との間で通信を行うためにデータの制御を行っている。これにより、通信制御部３４は外部端末５０との間で近接無線通信を行うと共に、その近接無線通信により外部端末５０との間で送受信されるデータをＭＵＣ２６との間でやりとりすることで、ＭＣＵ２６と外部端末５０との間の通信を中継する。
【００３８】
制御回路２０及び通信回路３０は、それぞれ、異なる回路基板に電子部品を実装することにより構成されており、これら各部は、コネクタ４０を介して接続されている。
つまり、コネクタ４０は、ＭＣＵ２６の通信ポートと通信回路３０のシリアルインターフェース３９との間の通信線、及び、レギュレータ部２８から通信制御部３４へ電源供給を行うための電力線、を接続する。
【００３９】
通信回路３０の回路基板は、本体４の把持部１６の内側に収納されており、外部端末５０を把持部１６に接近させることで、外部端末５０と通信回路３０との間の通信が可能になる。
【００４０】
ＮＦＣ方式の近接無線通信は、ＩＣカードからのデータの読み出し、及び、ＩＣカードへのデータの書き込みを行うための技術である。
このため、本実施形態では、外部端末５０を利用して、図３に示す手順で、不揮発性メモリ２７に記憶されたモータ１２の動作条件の読み出し、及び、書き込みを行うことができる。
【００４１】
すなわち、外部端末５０を利用して、制御情報を読み出す際には、まず、外部端末５０を把持部１６にかざすことで、通信相手となる通信回路３０を補足させ、外部端末５０から通信回路３０に向けて、不揮発性メモリ２７の所定アドレスに記憶された所望のデータ（所定アドレスデータ）の読み出し要求を送信させる（手順１）。
【００４２】
すると、通信回路３０の通信制御部３４は、その読み出し要求を受信し、シリアルインターフェース３９を介して、制御回路２０に出力（転送）する（手順２）。
この結果、制御回路２０側では、ＭＣＵ２６が、外部端末５０からの読み出し要求を取得し、その読み出し要求に対応した所定アドレスデータを不揮発性メモリ２７から読み出し、通信回路３０へ出力する（手順３）。
【００４３】
すると、通信回路３０では、通信制御部３４が、制御回路２０から所定アドレスデータを取得し、その取得した所定アドレスデータを外部端末５０に送信する（手順４）。
この結果、外部端末５０では、要求した所定アドレスデータを取得できる（手順５）。
【００４４】
また、外部端末５０を利用して、制御情報を書き込む際には、上記と同様に通信回路３０を補足させた後、外部端末５０から通信回路３０に向けて、所定アドレスへのデータの書き込み要求を、書き込みデータと共に送信させる（手順１）。
【００４５】
すると、通信回路３０の通信制御部３４は、その書き込み要求／データを受信し、シリアルインターフェース３９を介して、制御回路２０に出力（転送）する（手順２）。
この結果、制御回路２０側では、ＭＣＵ２６が、外部端末５０からの書き込み要求／データを取得し、取得したデータを不揮発性メモリ２７の所定アドレスに書き込み、書込結果を表すＡｃｋ／Ｎａｃｋ情報を出力する（手順３）。
【００４６】
すると、通信回路３０では、通信制御部３４が、制御回路２０からＡｃｋ／Ｎａｃｋ情報を取得し、その取得したＡｃｋ／Ｎａｃｋ情報を外部端末５０に送信する（手順４）。
この結果、外部端末５０では、Ａｃｋ／Ｎａｃｋ情報を受信し、書き込み要求と共に送信したデータが正常に書き込まれたか否かを確認できる（手順５）。
【００４７】
また、ＮＦＣ方式の近接無線通信では、こうしたデータの読み出し及び書き込みを行う際に送受信するデータのフォーマットが規定されているため、本実施形態では、その規定に対応した図４に示すデータフォーマットにて、外部端末５０−通信回路３０−制御回路２０間での送受信を行う。
【００４８】
但し、ＮＦＣ方式の近接無線通信では、外部端末５０から読み出し要求／書き込み要求を行う際には、送信データの先頭の２バイト（図４に示す「AddressL」、「AddressH」）を使って記憶媒体のアドレスを指定するようになっている。そして、指定可能なアドレスは、実質、２バイトの２分の１の領域、つまり８ビットとなるため、データの読み出し／書き込みができる記憶媒体の記憶エリアが極めて狭い。
【００４９】
そこで、本実施形態では、データフォーマットを変更することなく、書き込み要求時に送信データに付与する書き込み用のデータ領域（図４に示す「Data0」〜「Data15」の１６バイト）を利用して、データの読み出し若しくは書き込みを行うアドレスを指定できるようにしている。
【００５０】
具体的には、図５の（１）に示すように、外部端末５０からは、図４に示す書き込み要求時の送信データのデータ領域（「Data0」〜「Data15」）を、２バイト単位で利用することで、所定アドレスの情報の読み出し若しくは書き込み要求を行う最大６個のコマンド（図５に示すＣ１〜Ｃ６）と、コマンド数と、認証キーとを送信する。
【００５１】
なお、本実施形態では、このコマンドＣ１〜Ｃ６は、不揮発性メモリ２７からの読み出し若しくは書き込みを行うデータのアドレスを指定するのに利用される。
また、このコマンド送信により、制御回路２０のＭＣＵ２６は、受信した複数のコマンドＣ１〜Ｃ６を記憶し、通信回路３０を介して、図６の（１）に示すように、そのコマンドを受信したことを表すＡｃｋ／Ｎａｃｋ情報を返信する。
【００５２】
次に、外部端末５０は、図５の（２）〜（７）に示すように、先に送信した複数のコマンド（Ｃ１〜Ｃ６）に対応したデータの読み出し指令又は書き込み指令を順次送信する。
つまり、先に送信したコマンドが、不揮発性メモリ２７から読み出す情報のアドレスであれば、図５の（２）〜（６）に示すように、図４に示す書き込み要求時の送信データのフォーマットを使って、先に指定したアドレスのデータの読み出し指令を送信する。
【００５３】
すると、制御回路２０のＭＣＵ２６は、図６の（２）〜（６）に示すように、先に受信したコマンドに対応したアドレスの情報を不揮発性メモリ２７から読み出し、図４に示した読み出しデータ返信時のデータフォーマットを使って、読み出しデータを返信する。
【００５４】
また、外部端末５０は、先に送信したコマンドが、不揮発性メモリ２７に書き込む情報のアドレスであれば、図５の（７）に示すように、図４に示す書き込み要求時の送信データのフォーマットを使って、書き込みデータを送信する。
【００５５】
すると、制御回路２０のＭＣＵ２６は、先に受信したコマンドに対応した不揮発性メモリ２７のアドレスに、受信データを書き込み、図６の（７）に示すように、その書込結果（Ａｃｋ／Ｎａｃｋ情報）を返信する。
【００５６】
この結果、本実施形態によれば、ＮＦＣ方式の近接無線通信を行う一般的な通信回路３０を利用して、不揮発性メモリ２７のアドレスをより広範囲に指定し、不揮発性メモリ２７からの情報の読み出し若しくは書き込みを実行することができるようになる。
【００５７】
なお、図５から明らかなように、本実施形態では、不揮発性メモリ２７から読み出す情報として、コマンドＣ１〜Ｃ５を利用して、電動工具の固有情報、動作条件として設定可能な上限値情報、動作条件として設定可能な下限値情報、動作条件を設定変更する際の最小単位である設定可能ステップ情報、及び、現在設定されている動作条件である現工具設定情報を指定できる。
【００５８】
また、不揮発性メモリ２７に書き込む情報として、コマンドＣ６により、動作条件を更新するための新工具設定情報を設定することができる。
そして、使用者は、新工具設定情報を設定する場合、不揮発性メモリ２７から読み出した上限値情報、下限値情報、設定可能ステップ情報を確認することで、新工具設定情報を適正に設定することができる。
【００５９】
また、図６から明らかなように、コマンドＣ１により取得可能な電動工具の固有情報は、製品名、モータの種類、定格電圧、制御仕様、シリアル番号等である。
また、コマンドＣ２〜Ｃ５により読み出し、コマンドＣ６により書き込むことができる動作条件は、ねじ締め開始直後のモータ１２の回転速度（First speed）及び回転量（First turns）、ねじ締め途中のモータ１２の回転速度（Rundown speed）及び回転量（Rundown turns）、及び、ねじ締め終了時のモータ１２の回転速度（Final speed）及び回転量（Final turns）である。
【００６０】
つまり、例えば、製造工場等で、充電式スクリュードライバ２を利用して、所定のねじ締めを行う場合、図７に示すように、時点ｔ０でねじ締めを開始してから、ねじが所定回転する時点ｔ１までは、所定の低速でモータ１２を回転させる。
【００６１】
そして、その後は、モータ１２を高速回転させて、ねじ締めを行い、ねじ締めが概ね完了すると（時点ｔ２）、ねじの締め付けのために、ねじが更に所定回転する時点ｔ３まで、モータを低速回転させる。
【００６２】
このため、本実施形態の充電式スクリュードライバ２では、こうしたねじ締め作業を適正に行うために、上記各動作条件（First speed、First turns、Rundown speed、Rundown turns、Final speed、Final turns）が規定されている。
【００６３】
また、これら各動作条件を、外部端末５０を使って設定変更できるようにするために、これら各動作条件と、その設定可能範囲（上限値、下限値、設定可能ステップ値）が、不揮発性メモリ２７に記憶されている。
【００６４】
一方、図５に示した外部端末５０からの送信データにおいて、２バイトの先頭フレーム（「AddressL」、「AddressH」）は、アドレス指定に利用されない。
そこで、本実施形態では、図５の（１）に記載のように、この先頭フレームの３ビット（ｂ５，ｂ６，ｂ７）を使って、後述の通信処理にて使用されるフラグＦ_T1、Ｆ_T2、及び、送信データが書き込み要求であるのか読み出し要求であるのかを表すフラグＦ_writeを、外部端末５０から送信する。また、この先頭フレームには、外部端末５０の固有の４ビットの認証キーも付与される。
【００６５】
次に、モータ１２の駆動制御や、外部端末５０からの要求に基づく不揮発性メモリ２７に対する情報の読み出し及び書き込みを行うために、制御回路２０のＭＣＵ２６にて実行される制御処理を、図８〜図１１のフローチャートを用いて説明する。
【００６６】
図８に示すように、ＭＣＵ２６は、Ｓ１１０（Ｓはステップを表す）にて、所定の制御周期が経過したか否かを判断し、所定の制御周期が経過していなければ、再度Ｓ１１０の判定処理を実行することで、所定の制御周期が経過するのを待つ。
【００６７】
そして、所定の制御周期が経過すると、Ｓ１２０以降の処理を実行する。つまり、ＭＣＵ２６は、所定の制御周期で、Ｓ１２０以降の処理を周期的に実行する。
Ｓ１２０では、ウォッチドッグタイマ（ＷＤＴ）をクリアするＷＤＴクリア処理を実行し、続くＳ１３０にて、操作部１４に設けられた操作スイッチからの信号（スイッチ信号）を確認する。
【００６８】
また、続くＳ１４０では、操作部１４の操作量、電流検出部２４にて検出される電流やバッテリパック８から供給されるバッテリ電圧、モータ１２に設けられた回転センサ１２ａや図示しない温度センサ等からの検出信号を、Ａ／Ｄ変換して取り込むＡ／Ｄ変換処理を実行する。
【００６９】
そして、続くＳ１５０では、Ｓ１４０でのＡ／Ｄ変換結果に基づき、バッテリ電圧の低下、モータ１２の過熱、といった異常を確認する異常確認処理を実行し、続くＳ１６０に移行して、モータ１２を駆動制御するモータ制御処理を実行する。
【００７０】
なお、モータ制御処理では、異常確認処理にて異常が検出されると、モータ１２の駆動を停止し、その後、使用者による操作部１４の操作が終了するまで、駆動停止状態を保持する。また、モータ制御処理では、後述の通信処理にてセット／リセット（クリア）されるフラグＦ_Mstopがセットされている場合にも、モータ１２の駆動を停止する。
【００７１】
次に、Ｓ１７０では、通信回路３０を介して入力される外部端末５０からの書き込み要求又は読み出し要求を受信し、書き込み結果若しくは読み出し情報を返信する通信処理を実行する。
【００７２】
また、続くＳ１８０では、Ｓ１７０での通信処理に基づく不揮発性メモリ２７へのデータの書き込み、若しくは、不揮発性メモリ２７からのデータの読み出しを行うメモリ操作処理を実行する。
【００７３】
そして、最後に、Ｓ１９０に移行して、異常確認処理にて検出された異常や、通信処理で取得した書き込みデータの異常を、報知部１８を介して使用者に報知する、報知制御処理を実行し、Ｓ１１０に移行する。
【００７４】
なお、図９に示すように、この報知制御処理では、Ｓ１９１にて、通信処理にてセット／リセット（クリア）されるフラグＦ_setoverがセットされているか否かを判断することにより、通信処理で取得した動作条件の更新データが、図６に示した上・下限値情報若しくは設定可能ステップ情報にて規定される更新可能範囲内にあるか否かを判断する。
【００７５】
そして、フラグＦ_setoverがセットされていれば、Ｓ１９２に移行し、報知部１８を駆動することにより、その旨を報知する。なお、上述したように、報知部１８はブザー、ＬＥＤ等にて構成されることから、Ｓ１９２では、ブザーの鳴動、ＬＥＤの点灯（若しくは点滅）により、更新データが更新可能範囲から外れていること（つまり、更新データによる更新不可）を、使用者に通知する。
【００７６】
また、フラグＦ_setoverがセットされていなければ、報知制御処理を終了する。
次に、本発明に係る主要な処理である通信処理（Ｓ１７０）について説明する。
図１０に示すように、通信処理では、Ｓ２１０にて、フラグＦ_T1が値０にクリアされているか否かを判断する。このフラグＦ_T1は、後述の処理や、外部端末５０からの送信データにより、図５の（１）に示した複数のコマンドＣ１〜Ｃ６を表す最初の送信データを受信して、その受信処理（つまり返信）が完了するまではクリア状態に設定される。
【００７７】
このため、Ｓ２１０では、図５の（１）に示した最初の送信データを受信して受信処理（つまり返信）が完了するまで、肯定判断され、処理はＳ２２０に移行する。
Ｓ２２０では、フラグＦ_setoverをクリアし、Ｓ２３０に移行して、フラグＦ_S1はクリアされているか否かを判断する。
【００７８】
このフラグＦ_S1は、Ｓ５００の通信サブ処理にて、外部端末５０からの書き込み又は読み込み要求（以下、これらを総称して通信要求ともいう）に対する返信までの一連の処理が完了したときにセットされ、その後、次の通信要求の待機状態になるとクリアされるフラグである。
【００７９】
このため、Ｓ２３０では、Ｓ２１０と同様、図５の（１）に示した最初の送信データを受信して受信処理（つまり返信）が完了するまでは肯定判断され、Ｓ５００の通信サブ処理を実行する。なお、通信サブ処理の実行後は、通信処理を終了する。
【００８０】
通信サブ処理は、図５の（１）〜（７）に示した外部端末５０からの通信要求に従い不揮発性メモリへのデータの読み出し、若しくは、書き込みを行い、その結果（図５の（１）〜（７）に示した情報）を返信するまでの一連の処理を実行するための処理であり、図１１に示す手順で実施される。
【００８１】
すなわち、通信サブ処理では、通信回路３０を介して外部端末５０からの通信要求が入力されたか否かを判定し、通信要求がなければそのまま通信サブ処理を終了し、通信要求があれば、Ｓ５２０に移行する。
【００８２】
Ｓ５２０では、モータ１２の駆動を停止させるために、フラグＦ_Mstopをセットし、続くＳ５３０にて、外部端末５０からの通信要求の全データの受信が完了したか否かを判断する。
【００８３】
そして、通信要求の全データの受信が完了していなければ、通信サブ処理を終了し、通信要求の全データの受信が完了していれば、Ｓ５４０に移行する。
Ｓ５４０では、その受信データの先頭フレームのフラグＦ_writeから、今回受信した通信要求は、書き込み要求であるのか読み込み要求であるのかを判定する。
【００８４】
そして、今回受信した通信要求が書き込み要求であれば、Ｓ５５０に移行して、受信内容をデータ保持バッファへ書き込み、続くＳ５６０にて、書き込みデータを正常に受信できたことを返信するための送信内容（図６の（１）、（７）に示したＡｃｋ／Ｎａｃｋ情報）を準備し、Ｓ６００に移行する。
【００８５】
一方、今回受信した通信要求が読み出し要求であれば、Ｓ５７０に移行し、その読み出し要求に従い不揮発性メモリ２７から読み出すべきデータのアドレス（つまり、図５に示したコマンドＣ１〜Ｃ５にて特定されるアドレス）を、読み出しバッファへ書き込む。
【００８６】
すると、Ｓ１８０のメモリ操作処理にて、読み出しバッファに書き込んだアドレスのデータが不揮発性メモリ２７から読み出されるので、続くＳ５８０では、その読み出しデータを、外部端末５０へ返信する送信内容（図６の（２）〜（６）に示した情報）を準備し、Ｓ６００に移行する。
【００８７】
Ｓ６００では、Ｓ５６０又はＳ５８０にて準備した情報を通信回路３０に出力することで、通信回路３０から外部端末５０に送信（返信）させる、送信処理を実行する。
そして、Ｓ６１０では、Ｓ６００の送信処理が完了したか否かを判断し、送信処理が完了すると、フラグＦ_S1をセットし、通信サブ処理を終了する。また、Ｓ６１０にて、送信処理が完了していないと判断されると、通信サブ処理を一旦終了する。
【００８８】
このように、通信サブ処理にて、フラグＦ_S1がセットされると、Ｓ２３０では、否定判断されるようになり、続くＳ２４０が実行される。
そして、Ｓ２４０では、フラグＦ_S1をクリアし、Ｓ２５０にて、Ｓ５００の通信サブ処理で得られた送信データ（ここでは、図５の（１）に示した最初の送信データ）から、通信コマンド数及び通信コマンドを取得する。
【００８９】
また続くＳ２６０では、フラグＦ_T1をセットし、Ｓ２７０にて、通信サブ処理での通信要求の検出状態をクリアし、当該通信処理を終了する。
このように通信コマンド数及び通信コマンドを取得すると、フラグＦ_T1がセットされるので、その後、通信処理では、Ｓ２１０にて、否定判断されることになる。そして、Ｓ２１０にて、否定判断されると、Ｓ２８０に移行し、フラグＦ_T2が値０にクリアされているか否かを判断する。
【００９０】
このフラグＦ_T2は、後述の処理や、外部端末５０からの送信データにより、外部端末５０から最初に送信されてきた複数のコマンドＣ１〜Ｃ６を全て完了するまで、クリア状態に設定される。
【００９１】
このため、Ｓ２８０では、その複数のコマンドが完了するまで肯定判断され、Ｓ２９０に移行する。Ｓ２９０では、Ｓ２５０にて取得した通信コマンド数分の通信が未完了であるか否か、つまり、最初に取得した複数の通信コマンドに対する処理が残っているか否かを判断する。
【００９２】
そして、通信コマンド数分の通信が未完了であり、実行すべきコマンドが残っていれば、Ｓ３００に移行して、フラグＦ_S1がクリアされているか否かを判断し、フラグＦ_S1がクリアされていれば、Ｓ５００の通信サブ処理を実行する。
【００９３】
なお、このとき実行される通信サブ処理では、外部端末５０からの最初の送信データの受信（つまり、通信コマンド数及び通信コマンドの受信）は終了している。
従って、Ｓ３００にて肯定判断されたときに実行される通信サブ処理では、最初の送信データに含まれるコマンド毎の実行指令を通信要求として受信し、その実行指令に対応して不揮発性メモリ２７への情報の書き込み若しくは読み出しを行うことになる。
【００９４】
但し、最初の送信データにて複数のコマンドを取得した後、Ｓ５１０にて通信要求があったか否かを判断する際には、最初の送信データの先頭フレームに付与されていた認証キーと、今回受信した通信要求の先頭フレームに付与されている認証キーとを比較し、これらが一致している場合に、コマンドの実行指令を受信したと判断する。
【００９５】
これは、最初に複数のコマンドを送信してきた外部端末５０とは異なる外部装置からの送信信号にて、誤動作するのを防止するためである。
次に、Ｓ３００にて、フラグＦ_S1がセットされていると判断された場合には、通信サブ処理により、一つのコマンドに対する通信が完了した直後であるので、Ｓ３１０に移行し、今回受信したデータの先頭フレームのフラグＦ_writeがクリアされているか否か、つまり、通信要求は、読み出し要求であったか否かを判断する。
【００９６】
そして、フラグＦ_writeがクリアされていて、通信要求が読み出し要求であった場合には、Ｓ３６０に移行して、次に実行すべき通信コマンドを設定する。なお、通信コマンド数分の通信が完了していて、次の通信コマンドを設定できないときは、Ｓ２９０の判定処理のために、その旨を記憶する。
【００９７】
また、続くＳ３７０では、フラグＦ_S1をクリアし、Ｓ３８０にて、通信サブ処理での通信要求の検出状態をクリアし、当該通信処理を終了する。
次に、Ｓ３１０にて、フラグＦ_writeがセットされていると判断された場合には、通信要求は、書き込み要求であるので、Ｓ３２０に移行する。
【００９８】
Ｓ３２０では、通信サブ処理でデータ保持バッファに記憶した書き込みデータ（本実施形態では、図５の（７）に示す新工具設定情報）は、設定可能範囲（上・下限値）内にあり、且つ、設定可能ステップ値に対応しているか否かを判断する。
【００９９】
そして、Ｓ３２０にて、書き込みデータは、設定可能範囲内にあり、設定可能ステップ値に対応していると判断されると、Ｓ３４０に移行する。
また、Ｓ３２０にて、書き込みデータは、設定可能範囲外にあるか、或いは、設定可能ステップ値に対応していないと判断されると、Ｓ３３０に移行する。
【０１００】
そして、Ｓ３３０では、データ保持バッファに記憶された書き込みデータが設定範囲外にあれば、設定可能範囲の上下限値の内、今回受信した書き込みデータに近い方の値となるよう、書き込みデータを補正し、Ｓ３４０に移行する。
【０１０１】
また、書き込みデータが設定可能ステップ値に対応していない場合には、設定可能ステップ値にて設定可能な値の内、今回受信した書き込みデータに最も近い値となるよう、書き込みデータを補正し、Ｓ３４０に移行する。
【０１０２】
Ｓ３４０では、データ保持バッファ内の書き込みデータを、書き込みバッファへ移動させ、Ｓ３５０にて、フラグＦ_flashをセットし、Ｓ３６０に移行する。
なお、このフラグＦ_flashは、Ｓ１８０のメモリ操作処理にて、書き込みバッファ内の書き込みデータが、コマンドに対応した不揮発性メモリ２７の所定のアドレスに書き込まれたときに、クリアされる。
【０１０３】
また、Ｓ３３０の補正処理では、外部端末５０からの書き込み要求に対応した設定値を書き込むことができないので、その旨を使用者に通知するために、フラグＦ_setoverがセットされる。
【０１０４】
この結果、図９に示した報知制御処理により、書き込み要求に対応した設定値を書き込むことができなかったことが、報知部１８を介して、使用者に通知され、使用者は、その旨を検知できる。
【０１０５】
次に、Ｓ２９０にて、通信コマンド数分の通信が完了していると判断されると、Ｓ３９０に移行して、フラグＦ_T2をセットし、当該通信処理を終了する。
また、Ｓ２８０にて、フラグＦ_T2がセットされていると判断された場合には、Ｓ４００に移行して、フラグＦ_flashがクリアされているか否か、つまり、Ｓ１８０のメモリ操作処理にて書き込みデータの不揮発性メモリ２７への書き込みが完了しているか否かを判断する。
【０１０６】
そして、Ｓ４００にて、フラグＦ_flashはセットされていると判断されると、不揮発性メモリ２７への書き込みが完了していないので、そのまま当該通信処理を終了する。
一方、Ｓ４００にて、フラグＦ_flashはクリアされていると判断された場合には、外部端末５０から送信された複数のコマンドに対する処理を全て完了したことになるので、Ｓ４１０に移行して、フラグＦ_Mstopをクリアすることで、モータ制御処理によるモータ１２の駆動を許可する。
【０１０７】
そして、続くＳ４２０では、外部端末５０からの通信要求に対応した一連のメモリ操作を実行できるようにするために、フラグＦ_T1及びＦ_T2をクリアし、当該通信処理を終了する。
【０１０８】
以上説明したように、本実施形態の充電式スクリュードライバ２においては、不揮発性メモリ２７に、設定変更可能な動作条件（First speed、First turns、Rundown speed、Rundown turns、Final speed、Final turns）、その設定可能範囲（上限値、下限値）、及び、設定可能ステップ値）が記憶されている。
【０１０９】
そして、これら各パラメータは、近接無線通信にて、外部端末５０から読み出し要求を行うことで、外部端末５０側で取得できる。
このため、使用者は、外部端末５０を介して、設定変更可能な動作条件、設定可能範囲及び設定可能ステップ値を確認することができ、動作条件の変更要求（新工具設定情報の書き込み要求）を行う際には、新たな設定値として、設定可能範囲内で、設定可能ステップ値に対応した適正な値を指定することができる。
【０１１０】
また、本実施形態では、動作条件の変更要求として送信されてきた書き込みデータが、動作条件の設定可能範囲外にあるか、設定可能ステップ値に対応していない場合には、書き込みデータが、設定可能範囲内で設定可能ステップ値に対応した値に補正されて、不揮発性メモリ２７に記憶される。このため、動作条件を、使用者の意図に応じた適正な値に設定変更することができるようになり、使い勝手を向上できる。
【０１１１】
また、本実施形態では、動作条件の変更要求として送信されてきた書き込みデータが、動作条件の設定可能範囲外にあるか、設定可能ステップ値に対応していない場合には、報知部１８を介して、使用者に報知する。このため、使用者は、動作条件の誤設定を検知して、動作条件を再設定することもできる。
【０１１２】
また、本実施形態では、外部端末５０から通信要求（換言すれば、動作条件の変更要求）があった場合には、フラグＦ_Mstopをセットすることで、モータ制御処理によるモータ１２の駆動を停止させる。このため、モータ１２の駆動中に動作条件が変更されて、モータ１２を安定して駆動できなくなるのを防止できる。
【０１１３】
以上、本発明の実施形態について説明したが、本発明は、上記実施形態に限定されるものではなく、本発明の要旨を逸脱しない範囲内にて、種々の態様をとることができる。
例えば、上記実施形態では、動作条件の変更要求として送信されてきた書き込みデータが、動作条件の設定可能範囲外にあるか、設定可能ステップ値に対応していない場合には、書き込みデータを、適正値に補正するものとして説明したが、この場合には、動作条件の変更を禁止するようにしてもよい。
【０１１４】
そして、このためには、例えば、Ｓ３２０にて、書き込みデータが設定可能範囲外にあると判断された際には、Ｓ３３０にて、フラグＦ_setoverをセットした後、Ｓ３６０に移行するようにすればよい。
【０１１５】
また、上記実施形態では、通信回路３０は、外部端末５０との間で近接無線通信を行うものとして説明したが、通信回路３０は、ＮＦＣ方式とは異なる通信方式にて無線通信を行うものであってもよく、或いは、ＬＡＮケーブル等の通信線を介して通信を行うものであってもよい。
【０１１６】
また、通信回路３０と通信を行う外部機器についても、携帯電話やスマートフォン等の携帯端末とは異なる無線通信機器であってもよく、或いは、パーソナルコンピュータのような情報処理装置であってもよい。
【０１１７】
また、上記実施形態では、本発明を充電式スクリュードライバ２に適用した場合について説明したが、本発明は、充電式スクリュードライバに限らず、各種電動工具に適用することができる。また、本発明は、電動工具に電力供給を行うバッテリパックやその充電器にも適用できるし、これら電動工具用装置とは異なる装置であっても適用できる。
【０１１８】
また，本発明を電動工具に適用する場合、ブラシ付きのＤＣモータを備えたものであっても、商用電源等の交流電圧を整流してモータを駆動するものであっても、或いは、交流電圧にてユニバーサルモータを駆動するように構成されたものであってもよい。
【符号の説明】
【０１１９】
２…充電式スクリュードライバ、４…本体、６…アングルヘッド、８…バッテリパック、１２…モータ、１２ａ…回転センサ、１４…操作部、１６…把持部、１８…報知部、２０…制御回路、２２…モータ駆動部、２４…電流検出部、２７…不揮発性メモリ、２８…レギュレータ部、３０…通信回路、３２…アンテナ部、３４…通信制御部、３６…ＲＦインターフェース、３８…メモリ、３９…シリアルインターフェース、４０…コネクタ、５０…外部端末。
【図１】
2015223638.tif 000003
【図２】
2015223638.tif 000004
【図３】
2015223638.tif 000005
【図４】
2015223638.tif 000006
【図５】
2015223638.tif 000007
【図６】
2015223638.tif 000008
【図７】
2015223638.tif 000009
【図８】
2015223638.tif 000010
【図９】
2015223638.tif 000011
【図１０】
2015223638.tif 000012
【図１１】
2015223638.tif 000013