Top > ステッピングモータードライバ 広告
*バイポーラ用ステッピングモータードライバの作製 [#p47e47fb] ユニポーラの物は「[[ステッピングモーター]]」のページを参照してバイポーラ化して使う。 **買う物 [#gaba0c87] -ドライバチップ --[[Allegro MicroSystems:http://www.allegromicro.com/]]の[[A3983:http://www.allegromicro.com/en/Products/Part_Numbers/3983/]] ---[[サンケン電気のリスト:http://www.sanken-ele.co.jp/prod/semicon/pic/ic_u/ic_12.htm]]を参照 ---マイクロステップ対応、パルス駆動 -プリント基板 -抵抗、コンデンサたち -ステッピングモーター -[[ステッピングモーター]] --秋月で売っている物を[[バイポーラ化する>ステッピングモーター]] **回路 [#y4b23cc1] [[A3983:http://www.allegromicro.com/en/Products/Part_Numbers/3983/]]は便利なチップで、最低ステップパルスと方向の2つ信号を与えれば動くので[[PIC>PIC関連]]でも簡単に使える。~ マイクロステップも設定可能。スリープなどの機能もある。35V,2AまでOKなので個人で使うモーターなら十分なもの。 以下に簡単な[[KiCAD]]で描いた回路図を示す。 #ref(step_motor_sche.png) [[PIC>PIC関連]]の12F629(または12F675)でコントロールするようにしている。~ R1は100k、R4、R5は電流を制限するための抵抗なので使うモータによって変える必要がある。だいたい0.5Ωぐらいでワット数に注意が必要。~ コンデンサは0.1uF程度の物を多用。C7はでかいのを付けておく。 A3983は小さくてピンピッチも狭いのでハンダ付けに注意が必要。抵抗などチップ部品を使うと全体的に小さくできる。 見えにくいけどR6〜R9はプルアップ抵抗 P3にモーターをつなぐ。OUT1A、OUT1Bが一つのコイル、OUT2A、OUT2Bがもう一つのコイルにつなぐ。 スリープもできるようにしているが使わないならつながなくてもいい。その時はプルアップしておく。ただし、スリープしないと止まっている時も電流が流れるため、消費電力を抑えたい場合はスリープする必要がある。その位置で保持したい場合はスリープしないほうがいい。 MS1とMS2でマイクロステップの設定を行う。両方Highにしておくと一番細かい **プリントパターン [#t9a7eb52] [[KiCAD]]で描いた上の回路のプリントパターン。実寸大 #ref(step_motor.png) 印刷用 #ref(step_motor_driver.pdf.tgz) このようにチップ自体が小さく、部品点数も少ないので小さくプリント基板を作ることができる **テストプログラム [#yea8abe6] PIC12F675用のただ回すだけのプログラム。gpasmでアセンブルできる。 list p=12f675 include p12f675.inc __CONFIG _CP_OFF & _CPD_OFF & _BODEN_OFF & _MCLRE_OFF & _WDT_OFF & _PWRTE_ON & _INTRC_OSC_NOCLKOUT __IDLOCS H'0100' CBLOCK H'20' CNT ENDC ;----Initial setting BCF STATUS,RP0 ;Bank 0 CLRF GPIO ;Init GPIO MOVLW 07h MOVWF CMCON ;digital IO BSF STATUS,RP0 ;Bank 1 CLRF ANSEL ;Digital I/O MOVLW B'00111000' ;ポート0,1,2を出力、ポート3,4,5を入力 MOVWF TRISIO ; BCF STATUS,RP0 ;Bank 0 BSF GPIO,0 ;DIR BSF GPIO,2 ;SLEEP L1: ;Drive loop CALL W100 BSF GPIO,1 ;STEP ON CALL W100 BCF GPIO,1 ;STEP OFF GOTO L1 ;---wait W100: MOVLW D'200' MOVWF CNT WL100: DECFSZ CNT,F GOTO WL100 RETURN END 広告 |