今月は暇だったので、AutoCADの勉強をしていた。
もともとはMICRO CADAM使いなのだが、フリーで仕事をするとどうしてもAutoCADを使わざるを得ない場面が生じる。
今までは変換ソフトを使いDWGやDXFに変換していたが、変換ソフトによって結果が大幅に異なるときがある。
そんなときは直さないとならないが、AutoCADは10年以上前にちょっとさわったっきり。
すっかり忘れているし、これでは仕事に差し支えるので本気でトレーニングすることにした。
こんな仕事をしているので、ソフトは幸い持っている。
正式に講習とかを受けていないので、機能は知っていても実際に作図はできない。
コマンドがすべて頭に入り、書きたい図形を思い浮かべただけで、すべての手順が頭に浮かぶくらいにならないと、手が動かないのだ。
再勉強のために本を買おうとも思ったが、持っているバージョンは10年以上前のものなので現行の参考書ではほとんど役に立たない。
幸い近所に科学・工学系の図書館があるので、古い本を6冊ほど借りてきた。
入門書とはいえ、機能が多いために一冊では説明が行き届かない。
3冊目で、やっと全体像が頭に入り、いわば開眼した。
AutoCADは古い方に属するので、操作性がお世辞にもいいとはいえない。
その最たることは、とにかくマウス操作とキーインが多い。
MICRO CADAMの優れているところは、ファンクションキーボードがあるめ、コマンドのたびにマウスを大きく動かす必要が無く、高速に作画できること。
AutoCADでもキーボード入力という手があるが、逆に入門者にとっては煩雑である。
このままでは右手ばかりに負担が大きくかかり、腱鞘炎の元になってしまう。
で、ふと考えた。
無ければ作ってしまおう。
シェアウエアではMICRO CADAMのファンクションキーボードを、AutoCADに使えるソフトもあるが、それを使うのはどうにも悔しい。
このファンクションキーボードはシリアル接続なのだが、普通にターミナルソフトで受信してもなにも起きない。
いちいち解析するのは後回しにして、作ってしまおうかと思い立った。
ネットでいろいろ調べると、シリアル入力からのアスキーコードを、アクティブなウインドウにキー入力として取り入れるフリーウエアがあった。
最近始めたVBでも、そのような機能があり、試しにプログラムを作ってみると実現できた。
ソフトはこれでいい。
次は、ハードの方だ。
最初は、市販のUSBテンキーのようなキーボードを自作し、PICでシリアル出力をしようと思った。
だが、なかなか思ったような商品が無く、あってもバラ部品だったり高価だったりして、購入にちょっと躊躇していた。
ならば、市販品をばらして部品を流用しようかとジャンクをあさっていると、以前ハードオフで仕入れてきた中古のビデオ用リモコンが出てきた。
さあ、ばらして解析だと思ったが、考えてみると自分は赤外線リモコンが使える。
このリモコンのコード解析はすんでいて、すでに解読プログラムもできている。
このまま使えばいいではないか、ということで、解読結果でいろいろな文字列をシリアル通信するプログラムを作ってみた。
このリモコン、ボタンが31個もあり、コマンド登録にはとても都合がいい。
なぜか2つのボタンのコードが一致していたが、うまいこと配置されていたので、逆に都合が良かった。
作図関係のボタンは一番大きいグループ、コントロールキーでキャンセル系は一番上の列。
チャンネル選択はテンキーとして、数字入力もできるように。
カンマはよく使う割に、キーボードではテンキーに割り振られていないが、リモコンではテンキー部に納められた。
側面にはテレビ用のボタンがあるので、こちらは部品図作成用の寸法関係を配置。
ひたすらテストを繰り返し、安定して入力されるように信号をチューニングする。
よっしゃ、プログラムが完成した。
大げさなMICRO CADAM用のものと違って片手で持って操作できるし、なによりワイヤレスなのでストレスが少ない。
赤外線は部屋の中なら反射が多いので、しかり狙わなくても十分使える。
今度は受光側が気になってきた。
ここまでは、以前作った40ピンのチップを使った、汎用に近い基板でプログラムを作っていた。
かさばるし、冗長な機能だらけだし、なにより基板がむき出しで取り扱いが煩雑。
だったらということで、専用の受信機を作ることにした。
この程度なら8ピンのチップでもいいが、将来メモリを多く必要とするときに備え、PIC16F1827を選択した。
部品的にはマイコン以外は赤外受信ICだけあればいいのだが、受信確認のLEDを1個と、機能切り換え用にスイッチを1個付け、ICSPとシリアル用のコネクタを2個。
これを、フリスクのケースに収まるような基板で組み上げる。
画像ではケースをスライドさせて素子を露出しているが、ケースは薄いのでフタを閉めても赤外線が貫通して動作するし、LEDの光も透けて見える。
電源についてはUSB供給しても良かったが、最終的にはBluetoothなどでワイヤレス化するつもりなので、一応電池駆動としてある。
そのうちに、下にドッキングできるような専用の電池ケースを作ってあげよう。
プログラムについては、コンフィグと初期設定を変更して、無事移植を完了。
さあ、これで作図のストレスはだいぶ減ってきた。
あとは通信機能を生かして、PCからボタンごとのプラグラム内容を書き替えられるようにしよう。
EEP-ROMを内蔵しているので電池を切っても記憶は消えない。
これはマイコンとPCの両方のプログラムを作らないといけないので、そのうちに。
もともとはMICRO CADAM使いなのだが、フリーで仕事をするとどうしてもAutoCADを使わざるを得ない場面が生じる。
今までは変換ソフトを使いDWGやDXFに変換していたが、変換ソフトによって結果が大幅に異なるときがある。
そんなときは直さないとならないが、AutoCADは10年以上前にちょっとさわったっきり。
すっかり忘れているし、これでは仕事に差し支えるので本気でトレーニングすることにした。
こんな仕事をしているので、ソフトは幸い持っている。
正式に講習とかを受けていないので、機能は知っていても実際に作図はできない。
コマンドがすべて頭に入り、書きたい図形を思い浮かべただけで、すべての手順が頭に浮かぶくらいにならないと、手が動かないのだ。
再勉強のために本を買おうとも思ったが、持っているバージョンは10年以上前のものなので現行の参考書ではほとんど役に立たない。
幸い近所に科学・工学系の図書館があるので、古い本を6冊ほど借りてきた。
入門書とはいえ、機能が多いために一冊では説明が行き届かない。
3冊目で、やっと全体像が頭に入り、いわば開眼した。
AutoCADは古い方に属するので、操作性がお世辞にもいいとはいえない。
その最たることは、とにかくマウス操作とキーインが多い。
MICRO CADAMの優れているところは、ファンクションキーボードがあるめ、コマンドのたびにマウスを大きく動かす必要が無く、高速に作画できること。
AutoCADでもキーボード入力という手があるが、逆に入門者にとっては煩雑である。
このままでは右手ばかりに負担が大きくかかり、腱鞘炎の元になってしまう。
で、ふと考えた。
無ければ作ってしまおう。
シェアウエアではMICRO CADAMのファンクションキーボードを、AutoCADに使えるソフトもあるが、それを使うのはどうにも悔しい。
このファンクションキーボードはシリアル接続なのだが、普通にターミナルソフトで受信してもなにも起きない。
いちいち解析するのは後回しにして、作ってしまおうかと思い立った。
ネットでいろいろ調べると、シリアル入力からのアスキーコードを、アクティブなウインドウにキー入力として取り入れるフリーウエアがあった。
最近始めたVBでも、そのような機能があり、試しにプログラムを作ってみると実現できた。
ソフトはこれでいい。
次は、ハードの方だ。
最初は、市販のUSBテンキーのようなキーボードを自作し、PICでシリアル出力をしようと思った。
だが、なかなか思ったような商品が無く、あってもバラ部品だったり高価だったりして、購入にちょっと躊躇していた。
ならば、市販品をばらして部品を流用しようかとジャンクをあさっていると、以前ハードオフで仕入れてきた中古のビデオ用リモコンが出てきた。
さあ、ばらして解析だと思ったが、考えてみると自分は赤外線リモコンが使える。
このリモコンのコード解析はすんでいて、すでに解読プログラムもできている。
このまま使えばいいではないか、ということで、解読結果でいろいろな文字列をシリアル通信するプログラムを作ってみた。
このリモコン、ボタンが31個もあり、コマンド登録にはとても都合がいい。
なぜか2つのボタンのコードが一致していたが、うまいこと配置されていたので、逆に都合が良かった。
作図関係のボタンは一番大きいグループ、コントロールキーでキャンセル系は一番上の列。
チャンネル選択はテンキーとして、数字入力もできるように。
カンマはよく使う割に、キーボードではテンキーに割り振られていないが、リモコンではテンキー部に納められた。
側面にはテレビ用のボタンがあるので、こちらは部品図作成用の寸法関係を配置。
ひたすらテストを繰り返し、安定して入力されるように信号をチューニングする。
よっしゃ、プログラムが完成した。
大げさなMICRO CADAM用のものと違って片手で持って操作できるし、なによりワイヤレスなのでストレスが少ない。
赤外線は部屋の中なら反射が多いので、しかり狙わなくても十分使える。
今度は受光側が気になってきた。
ここまでは、以前作った40ピンのチップを使った、汎用に近い基板でプログラムを作っていた。
かさばるし、冗長な機能だらけだし、なにより基板がむき出しで取り扱いが煩雑。
だったらということで、専用の受信機を作ることにした。
この程度なら8ピンのチップでもいいが、将来メモリを多く必要とするときに備え、PIC16F1827を選択した。
部品的にはマイコン以外は赤外受信ICだけあればいいのだが、受信確認のLEDを1個と、機能切り換え用にスイッチを1個付け、ICSPとシリアル用のコネクタを2個。
これを、フリスクのケースに収まるような基板で組み上げる。
画像ではケースをスライドさせて素子を露出しているが、ケースは薄いのでフタを閉めても赤外線が貫通して動作するし、LEDの光も透けて見える。
電源についてはUSB供給しても良かったが、最終的にはBluetoothなどでワイヤレス化するつもりなので、一応電池駆動としてある。
そのうちに、下にドッキングできるような専用の電池ケースを作ってあげよう。
プログラムについては、コンフィグと初期設定を変更して、無事移植を完了。
さあ、これで作図のストレスはだいぶ減ってきた。
あとは通信機能を生かして、PCからボタンごとのプラグラム内容を書き替えられるようにしよう。
EEP-ROMを内蔵しているので電池を切っても記憶は消えない。
これはマイコンとPCの両方のプログラムを作らないといけないので、そのうちに。