ステッピングモータを動かしてみた.
前々から3Dプリンタなんかが自作できればいいなとか思ってたりするので,とりあえず手持ちのマイコンとトランジスタでステッピングを回してみた.
これで制御とかをちゃんとPCからいれてあげれば3Dプリンタになったりするのかなと思う.
低速.Delayを長めにした.10msくらいだったかな.
ちょい早め.Delay1msくらいかな.
思い通り行ってよかった.
ちなみに,クロックを入れると1step駆動するプログラムを書いてみたので,参考にならないかもしれないけど一応載せておく.pic12f1822で動く.
実はかなり前に書いてたもので,ちょっと無駄が多かったりするところもあるけど,早く動かそうと思うと,コードの実行速度よりも先にステッピングが脱調すると思うのでさほど問題はないと思う.
while(1)の中に適当にrotate関係の関数をDelayかけながら呼んだりするとクロック入れなくても動く.コメントアウトしてる部分みたいに.
ちなみに1相励磁か2相励磁しかできない.
デフォでは2相励磁になっているけれど,stepping_stateの初期化のとこを変えてやれば1相励磁にもなる.
機会があれば1-2相励磁も実装したい.
PICのそれぞれの出力足に,余ってたダーリントントランジスタをつけて動かした.
ダーリントンはちょい発熱.放熱板はあってもいいかなくらい.
やっぱり電圧あげると強力なトルクが得られます.モータ発熱するしコイルにはあまり良くないとは思うけども.
3Dプリンタ程度だったらヘッドを動かすだけでいいのでそんなにトルクいらないような気がするのでできそうかも.
ハードウェアを作るのがめんどくさいし,回路もちょっとめんどくさいので,すぐにはできないけどいつかはやってみたいな〜〜.