Поворотный стол для 3D макросъемки, платформа от старого HDD, несколько деталей от струйного принтера и шаговый двигатель 28BYJ48 с драйвером «EasyDriver» на A3967.
Код из видео
Пример работы
код
#define STEP A1 #define DIR A2 #define circle 72000 // шагов на оборот #define SpeedStep 400 // скорость движка #define shotPin 12 // пин на затвор #define led 13 void setup() { Serial.begin(9600); pinMode(STEP, OUTPUT); pinMode(DIR, OUTPUT); pinMode(led, OUTPUT); pinMode(shotPin, OUTPUT); } void stepper(unsigned int Step, int Speed, boolean Set) { digitalWrite(DIR, Set); for (int i = 0; i < Step; i++){ digitalWrite(STEP, HIGH); delayMicroseconds(Speed); digitalWrite(STEP, LOW); delayMicroseconds(Speed); } } void loop(){ if (Serial.available() > 0){ int val = Serial.parseInt(); unsigned int st = circle / val; Serial.println("start"); Serial.println(st); for (int i = 1; i <= val; i++){ stepper(st, SpeedStep, 1); // крутим движек Serial.print("shot: "); Serial.println(i); delay(500); // дергаем затвор камеры digitalWrite(shotPin, HIGH); delay(200); digitalWrite(shotPin, LOW); delay(1000); } Serial.println("END"); Serial.flush(); } digitalWrite(led, HIGH); //показываем готовность. delay(1); digitalWrite(led, LOW); delay(100); }