2014年3月4日火曜日

Code Configuration Plugin

久々にPICを使おうかと思いMPLABXを最新版にしてMicrochipのページを見ている時に、このプラグインがあることを知った。


使ってみるとなかなか良い。

Device Resourcesから必要なものをProject Resourcesに追加しそれぞれの設定をしてGenerate Codeボタンを押すと、


という感じでファイルが生成される。

 PICは12F1822、サーボはかなり昔のFutaba製。残念ながらCapacitive Sensingは用意されていないが、CPSCON0、CPSCON1の2個のレジスタ設定とタイマー0、1のコード自動生成、判定コードを追加すれば良いので大して手間はかからない。ディバグ用にesuartを使ったがprintfを使うのもチェックボックス1つですごく簡単。Cファイル、ヘッダーファイルをみれば使用できる関数も簡単に理解できる。

試したものは、ラジコン用のサーボをトグル動作させるスイッチ的なもので、タッチ入力用にCapacitive Sensing、サーボの制御にPWM、サーボの電源オンオフにGPIOを使うというプログラムを作ってみたが、データシートを見ながらのレジスタ値の設定から開放される。大変ありがたい。

Capacitive Sensingは、AN1103にあるパーセンテージ判定を使用、PWMは、周期を15ms、ニュートラル位置を1.5msとしてタッチでトグル動作させて±に変化させるために使用、GPIOは、サーボの動作時のみ電源を供給するために使用。

ボタンは、薄い透明プラスチックと粘着アルミテープの間に字を書いた紙を挟んだもののアルミ側をブレッドボートの入力ピンの上に載せた。タッチしていない時の容量成分はブレッドボードを含む入力ピンとグランド間で決まっているかなと思う。

動作の様子。


2014年2月4日火曜日

Arduino Pro Mini Clone (続)


質問を契機にふと思った。

購入したものには最初からAREFとRESET間にキャパシタはなかった。思い出してみるとebayに出品されているものの中に、これが取り付けられていたものを見た記憶がある。関係ないが、「動かない」とお断りつきで出品されていたものもあった。

これがあるとADCに影響がある程度と深く考えなかったが、よく考えてみると、もし同じように間違えたPCBパターンのものならば、DTRによるオートリセットが上手く行かない可能性がある。どちらのキャパシタも同じ0.1uFである可能性が高い。

同じボードを使用する際は、ここにキャパシタ(赤枠の位置)付いていたら、取り外すか、若干はんだ付けテクニックを要するが、緑枠の位置にずらして付け直す必要がある。


2014年2月2日日曜日

Python CNC GCode Sender


何となく形が見えてきた、現在のGUIはこんな感じ。


Matplotlibでの描画が重いのでチューニング中。まだまだかな。

2013年12月22日日曜日

G-Code-Sender


Grbl、OSはUbuntu13.10前提で、GTK+3のGUIをGladeとPythonを使ってG-Code-Senderを作成。

こんな感じ。


Python、試行錯誤しながらのプログラミングにも最高。エディターはKomodo Edit 8.5、素晴らしい。Anjuta、Geanyも素晴らしいが不安定なことがある。

GUIに統一性がないとか、細かいところはのちのち、やるか・・・?

2013年11月23日土曜日

Open Source Circuit Boards at Home

この彼のやっていること、オートレベリング、基板の固定、両面基板の作成など手作り感満載のCNCですべてできている、大したもの。


Firmware


ファームウエアは、TeacupがよさそうだったのでAtmega328でいけると思い安っいArduinoを選んだが、試してみるとどうも高機能を望むとMerlinがいいよう。328ではだめっぽい、644以上なら間違いなく、Gen7のハード構成がよい感じ。

コントローラソフトは、CNCGcodeControllerがAutoleveingがついててよいけど、ファームはMerlinが標準みたい。Teacupでもいけるかも。ファームがGrblなら、Universal Gcode Senderがよさそう。Grbl Controllerは、リードバック位置のアップデートがスムーズじゃない。

Universal Gcode SenderはLook&FeelがNimbusでクロスプラットホームのためにはいいんだろうど、Ubuntuだと見た目がちょっと悲しいことになる。Pythonで探してみたがよさそうなのが見つけられない。

といことでちょっと書いてみよかと思い、まずは、OpenGLで3Dぐりぐりより楽そうな、2DのしょぼいGcodeビューアーを書いてみた。


すばらしいモジュール群のおかげで120行ほどで出来上がる。matplotlibはすごく便利。カラフルなのは色指定を指定なためで意図的ではないが綺麗なのでこのまま。いまだ道半ば。ヘルプを求めてHPにいくと開発者の方が若くして癌起因の合併症で亡くなられたらしい。寄付をしようと思ったが日本からはできないようだ。ご冥福をお祈りしたい。

2013年11月18日月曜日

GDN


GDNってなんだろうと一瞬考えたがGNDで間違いない。





多分中国製、変になるのは日本語だけじゃないんだ。