少し前に、最初に買った3DPが壊れた。(というかいじっていて壊した。)こわれたものはiUSEとかかいてある格安のやつ。(写真内から同じもののブログ記事)
ステッピングモーターを一つ外したところXY42STH40-1684Aというものがついていた。(XYSLDJがブランド名?)
6pinのコネクターがついている。6ピンあるけど2番ピンと5番ピンは使用していない。
1,3番ピンと4,6番ピンがセットで使用する物。
コネクターの種類はモーター側は6ピンのJST-XHコネクター、プリンター側は4ピンのJST-XHコネクターだった。ケーブルの色は黒1番ピン、緑3番ピン、赤4番ピン、青6番ピンだった。
元々の3DPはモータードライバーがA4988だったのでアリでこちらのモジュールを購入
ステッピングモータの(コイルが内部でつながっている)1&3番ピンをモジュールのA1/B1のペア、4&6番ピンをA2/B2のペアに接続。
モーターの動作用に12Vの外部電源を接続。
モジュールの大まかな使い方イメージはこちら参考
以下のソースで動作確認。12Vの外部電源でパルスが5000マイクロセカンド未満だと、早すぎてうまく回ってくれなかった。
const int DIR = 8;
const int STEP = 9;
const int SLEEP_PIN = 7;
const int ENABLE_PIN = 6;
const int pals = 5000;
void setup() {
Serial.begin(115200);
pinMode(DIR, OUTPUT);
pinMode(STEP, OUTPUT);
digitalWrite(DIR, LOW);
digitalWrite(STEP, LOW);
}
void loop() {
digitalWrite(DIR, HIGH);
Serial.println("HIGH");
for (int i=0; i<200; i++) {
digitalWrite(STEP, HIGH);
delayMicroseconds(pals);
digitalWrite(STEP, LOW);
delayMicroseconds(pals);
}
delay(1000);
digitalWrite(DIR, LOW);
Serial.println("LOW");
for (int i=0; i<200; i++) {
digitalWrite(STEP, HIGH);
delayMicroseconds(pals);
digitalWrite(STEP, LOW);
delayMicroseconds(pals);
}
delay(1000);
}