M5StickC Plusとステッピングモーターで日本を応援する
私は彼から無人で動く搬送ロボットを作ります!
そこで今回は搬送ロボットの製作の第一歩としステッピングモーターを回したいと思います。
使用した材料
配線図
できたもの
卒業制作の第一歩としてステッピングモータを回してみました。#protoout #M5stack https://t.co/bB9LDn6VbR pic.twitter.com/LWDRWbjnIK
— Toshiki (@Hirasawa1987) October 15, 2020
ドライバの調整に苦戦
ステッピングドライバの調整時に参考にさせていただきました。
Arduino と A4988 でステッピングモーターを制御する方法
販売メーカが動画でも紹介されていてこちらも参考にしました(Youtube)
Setting the Current Limit on Pololu Stepper Motor Driver Carriers
コード
#include <M5StickCPlus.h>
const int DIR = 32;
const int STEP = 33;
void setup() {
pinMode(DIR, OUTPUT);
pinMode(STEP, OUTPUT);
digitalWrite(DIR, LOW);
digitalWrite(STEP, LOW);
}
void loop() {
digitalWrite(DIR, HIGH);
for (int i=0; i<200; i++) {
digitalWrite(STEP, HIGH);
delayMicroseconds(2000);
digitalWrite(STEP, LOW);
delayMicroseconds(2000);
}
delay(1000);
digitalWrite(DIR, LOW);
for (int i=0; i<200; i++) {
digitalWrite(STEP, HIGH);
delayMicroseconds(2000);
digitalWrite(STEP, LOW);
delayMicroseconds(2000);
}
delay(1000);
}
展開
#include <M5StickCPlus.h>
const int DIR = 32;
const int STEP = 33;
void setup() {
pinMode(DIR, OUTPUT);
pinMode(STEP, OUTPUT);
digitalWrite(DIR, LOW);
digitalWrite(STEP, LOW);
}
void loop() {
digitalWrite(DIR, HIGH);
for (int i=0; i<200; i++) {
digitalWrite(STEP, HIGH);
delayMicroseconds(2000);
digitalWrite(STEP, LOW);
delayMicroseconds(2000);
}
delay(1000);
digitalWrite(DIR, LOW);
for (int i=0; i<200; i++) {
digitalWrite(STEP, HIGH);
delayMicroseconds(2000);
digitalWrite(STEP, LOW);
delayMicroseconds(2000);
}
delay(1000);
}
搬送ロボットに使うモーターは4個なので、4個を同時に制御できるように作りこんでいきたい。プログラムに関してもピンの指定を替えただけなので、JSON形式で飛んできたもので制御するなど挑戦していく。
Author And Source
この問題について(M5StickC Plusとステッピングモーターで日本を応援する), 我々は、より多くの情報をここで見つけました https://qiita.com/Toshiki0324/items/574eac2ce5c196333fd2著者帰属:元の著者の情報は、元のURLに含まれています。著作権は原作者に属する。
Content is automatically searched and collected through network algorithms . If there is a violation . Please contact us . We will adjust (correct author information ,or delete content ) as soon as possible .