「らくらくマウス もどき」を作ってみました
投稿者:マーチン 2019年7月15日
カテゴリ:上肢障碍者向け
カテゴリ:上肢障碍者向け
「らくらくマウス存続の危機」というWeb記事を見て、困る人もいるだろうと思いました。この製品が開発された頃(1990年代)は、専門的な知識と、専用の道具がなければ、開発・製造ができなかったかもしれませんが、今では、ネット上にあらゆる情報が流れているし、通販で様々な部品が入手できるし、ネットサービスやFabLabを利用して機械加工をすることもできるし、プログラミング環境の構築も簡単など、個人がモノ作りしやすい環境が整っています。なので、自作できるのではないかと思い、挑戦してみました。
●使用マイコン
「らくらくマウス」は、実際に見たことも使ったことのないので、間違えていたらゴメンナサイ。「こことステップ」のダウンロードページ(http://www.kktstep.org/support/download.html)の資料を参考にしています。
PIC16F84(8ビットマイコン)と74HC165(パラレル-シリアル変換回路)が使われています。いわゆるPICマイコンのプログラムを直すには、専用の書き込み装置(それほど高価ではない)が必要となります。
今では、Arduino Leonardやその互換機であれば、ライブラリを使って容易にキーボードやマウスの代替品を作ることができます。プログラムの書き換えはUSB接続したPCから転送します。
その他にも、mbed(エンベッド)の一部の機種でもキーボードやマウスを作れます。micro:bitはmbedの一種です。インストールが不要なオンライン開発環境でプログラムを作成し、書き換えはファイルのドラッグ&ドロップでできます。今回は、秋月電子で見つけた安価な mbed 互換機を使ってみました。(情報が少なくて苦労しました)
PIC16F84(8ビットマイコン)と74HC165(パラレル-シリアル変換回路)が使われています。いわゆるPICマイコンのプログラムを直すには、専用の書き込み装置(それほど高価ではない)が必要となります。
今では、Arduino Leonardやその互換機であれば、ライブラリを使って容易にキーボードやマウスの代替品を作ることができます。プログラムの書き換えはUSB接続したPCから転送します。
その他にも、mbed(エンベッド)の一部の機種でもキーボードやマウスを作れます。micro:bitはmbedの一種です。インストールが不要なオンライン開発環境でプログラムを作成し、書き換えはファイルのドラッグ&ドロップでできます。今回は、秋月電子で見つけた安価な mbed 互換機を使ってみました。(情報が少なくて苦労しました)
●購入品
品目 | 金額 | |
---|---|---|
【マルツ】タカチ電機工業:ネットワークケース W200×H40×D135mm [PF20-4-13W] | 788円 | 他でも買えます |
【マルツ】ASR型貼付ボス ASR-5 2個 | 334円×2/10 | |
【マルツ】EM型タッピングネジ EM-3-6 2個 | 210円×2/50 | |
【マルツ】LEDブラケット 円筒型 取付孔φ5.1mm 赤 | 108円 | |
【マルツ】LEDブラケット 円筒型 取付孔φ5.1mm 橙 2個 | 216円 | |
【千石】三和電子 Φ20押ボタンSW 赤1個、青8個、緑3個、黄2個、白2個 | 2,688円 | |
【秋月】LPC11U35マイコンボードキット | 850円 | |
【秋月】ブレッドボード配線パターン ユニバーサル基板 | 90円 | |
【Amazon】uxcell ジャンプワイヤ JST XH コネクターセット | 723円×6/10 | |
抵抗 180Ω:3個 | ||
2P ディップスイッチ | ||
約 5,700円 |
●開発中の様子
まずは、大小2枚のブレッドボードを使って、プログラミングの目途を立てました。
●製作方法
◆筐体加工
図面通りに穴を開けます。スイッチの丸穴には、回転止めの切り欠きも必要なので、ここがちょっと面倒。
こんな道具(+電動ドリル)を使いました。
こんな道具(+電動ドリル)を使いました。
◆結線
回路は、マイコン内部のプルアップ抵抗を使用していることと、ソフト的にチャタリング対策をしていることで、とてもシンプルです。はんだ付けは、38か所。
◆基板
ブレッドボード配線パターンのユニバーサル基板に、ジャンパー線、抵抗、マイコン基板、ディップスイッチ、コネクタをはんだ付けします。はんだ付けは、96か所。
◆プログラム
mbed のオンライン開発環境で作成しました。以下のライブラリを使用しています。まだ修正したいので、しばらくは未公開とします。
・PinDetect
・USBDevice
プログラムを書き換えるには、
・PinDetect
http://developer.mbed.org/users/AjK/code/PinDetect/
DigitalInのバウンスやノイズを解除し、立ち上がり・立ち下がり・長押しなど任意の状態に変化したときに割り込みをかけてくれるライブラリ。Andy Kirkham氏作成
DigitalInのバウンスやノイズを解除し、立ち上がり・立ち下がり・長押しなど任意の状態に変化したときに割り込みをかけてくれるライブラリ。Andy Kirkham氏作成
・USBDevice
http://developer.mbed.org/users/mbed_official/code/USBDevice/
マウス、キーボード、MIDI、シリアルなどUSBデバイスを作成するための mbed 2 用ライブラリ。
マウス、キーボード、MIDI、シリアルなどUSBデバイスを作成するための mbed 2 用ライブラリ。
プログラムを書き換えるには、
(1)基板上のSW1,SW2 を押しながら、PCとUSBケーブルで接続
(2)SW1を押したまま、SW2を離す。
(3)PC上に firmware.bin が表示されるので、これを削除
(4)開発環境のコンパイルを実行して、”CRP DISABLED”に保存
(5)基板上のリセットボタンを押す。
(2)SW1を押したまま、SW2を離す。
(3)PC上に firmware.bin が表示されるので、これを削除
(4)開発環境のコンパイルを実行して、”CRP DISABLED”に保存
(5)基板上のリセットボタンを押す。
◆組み立て
貼付ボスと2個のネジで、基板を裏蓋に固定。ケースに付属の4本のネジを締めて、ゴム足を付ければ完成。
●使い方
・青色の8個のボタンで、マウス移動。押し続けると移動速度は加速します。
・白色2個のボタンで、スクロールアップ、スクロールダウン。
・下段緑色のボタンで、左クリック、右クリック。
・中段黄色のボタンで、左ボタン、右ボタンのドラッグ。LEDが点灯。解除は、中段黄色のボタンまたは下段緑色のボタン。
・上段緑色のボタンで、左ボタンのダブルクリック。
・赤色のボタンで、マウスの移動速度を変更。速度は6段階で、デフォルトは3。1回押すと1段早くなり、6段目の次は1段目になる。設定は、LEDの点滅回数で確認。
・基板上のディップスイッチ1は、OFFにするとボタンを離したときに反応し、ONにすると押したときに反応するように、切り替えられる。
・ディップスイッチ2は、未使用。
・白色2個のボタンで、スクロールアップ、スクロールダウン。
・下段緑色のボタンで、左クリック、右クリック。
・中段黄色のボタンで、左ボタン、右ボタンのドラッグ。LEDが点灯。解除は、中段黄色のボタンまたは下段緑色のボタン。
・上段緑色のボタンで、左ボタンのダブルクリック。
・赤色のボタンで、マウスの移動速度を変更。速度は6段階で、デフォルトは3。1回押すと1段早くなり、6段目の次は1段目になる。設定は、LEDの点滅回数で確認。
・基板上のディップスイッチ1は、OFFにするとボタンを離したときに反応し、ONにすると押したときに反応するように、切り替えられる。
・ディップスイッチ2は、未使用。
●筐体の機械加工
今回は手作業で加工をしましたが、タカチ電機工業の製品は、加工を施したカスタム製品(https://www.takachi-el.co.jp/custom)も発注が可能です。図面を提出すれば、機械加工からロゴの印刷までやってくれます。
あるいは、以下のサイトでも、タカチ電機工業のケースへの追加工サービスを行っています。
あるいは、以下のサイトでも、タカチ電機工業のケースへの追加工サービスを行っています。
●継承先
「企業や団体など事業の継承先を探している。」とのことだが、はんだ付けさえできれば、市販の部品を購入して筐体加工を外作すれば製造できてしまうので、障碍者の作業所での製造、販売も可能だと思います。希望があれば、カバー図面やソースコードは提供できます。
●最後に
まだまだ改善点はありますが、頑張れば自作可能なことは確認できました。ジョイスティック版やキーガードも時間があれば作りたい。