Поворотная платформа для фотосъемки №2

Исходный код

photoTurntable.ino
// Характеристика двигателя,
// количество шагов на один оборот вала
#define MOTOR_STEPS_REVOLUTION 200
 
// Передаточный коэффициент шестерёнок
#define GEAR_COEFFICIENT 2
 
// Итоговое количество шагов на один оборот столика
#define STEPS_REVOLUTION GEAR_COEFFICIENT * MOTOR_STEPS_REVOLUTION
 
// Необходимое количество кадров за один оборот
#define SHOTS 40
 
// Количество шагов двигателя между снимками
#define STEPS_ON_SHOT STEPS_REVOLUTION/SHOTS
 
// Выдержка времени между шагами.
// Чем больше это число, тем медленнее вращается двигатель
#define DELAY_TIME 8
 
// Назначим пины
// Troyka-Stepper:
// Шаг двигателя
#define STEP 5 
// Направление вращения
#define DIR  6 
// Включение двигателя
#define EN   7 
 
// Реле. При срабатывании включает затвор фотоаппарата
#define SHOT 8
 
void setup() {
  // Настроим все необходимые пины на выход
  for (int i = STEP; i <= SHOT; ++i) {
    pinMode(i, OUTPUT);
  }
}
 
void loop() {
  // Включаем мотор
  digitalWrite(EN, HIGH);
 
  // Для каждого из необходимого количества снимков...
  for (int i = ; i < SHOTS; ++i) {
    // Ждём 500 мс, чтобы столик остановился
    delay(500);
 
    // Замыкаем реле, происходит съёмка
    digitalWrite(SHOT, HIGH);
    delay(200);
    // Размыкаем реле
    digitalWrite(SHOT, LOW);
 
    // Выдержка, чтобы фотоаппарат успел записать снимок на карту
    delay(1000);
 
    // Поворачиваем столик на необходимое количество шагов
    for (int i = ; i < STEPS_ON_SHOT; ++i) {
 
      // Один шаг
      digitalWrite(STEP, HIGH);
      delay(DELAY_TIME);
      digitalWrite(STEP, LOW);
      delay(DELAY_TIME);
    }
  }
 
  // После завершения съёмки отключаем двигатель
  digitalWrite(EN, LOW);
 
  // Завершаем работу.
  // Чтобы возобновить работу нужно нажать кнопку RESET
  while (true) {
    ;
  }
}

Как это собрать?

  1. Установите в боковые отверстия стойки для печатных плат и закрепите их винтами M3×10. Эти стойки будут выполнять роль ножек.
  2. Установите винты M3×15 в Arduino Uno. Закрутите на них гайки, чтобы получилась подставка между Arduino Uno и акриловым корпусом. Установите Arduino Uno в предназначенные для платы отверстия в акриле. Крайний винт закрепите стойкой для печатных плат, на оставшиеся винты закрутите гайки.

  3. Установите Troyka-модули в предназначенные для них отверстия. Закрепите их винтами M3×10.

  4. Установите на Arduino Uno Troyka Shield. В пин Vin вставьте красный провод «папа-папа», а в пин GND — чёрный. Второй конец красного провода установите в колодку «+» Stepper’а. Второй конец чёрного провода установите в колодку «-» Stepper’а. Зафиксируйте контакты в колодке винтами. Установите 3-х проводные шлейфы в тройки контактов 5, 6, 7 и 8 Troyka Shield’а. Вторые концы шлейфов просуньте в отверстие рядом с Arduino и обмотайте вокруг перешейка, чтобы избавиться от болтающихся проводов.

  5. Соедините шлейфы с Troyka-модулями. Troyka-Stepper: 5 пин — step, 6 пин — direction, 7 пин — enable. Troyka-Реле — 8 пин.

  6. Слегка отшлифуйте большое отверстие в корпусе столика и два маленьких круга мелкой шкуркой. Немного смажьте отверстие смазкой. Возьмите большой акриловый круг с тремя отверстиями под винт. С помощью сверла или крестовой отвёртки снимите в отверстиях фаску под винты с потайной головкой. Вставьте винты M3×25 с потайной головкой в отверстия и наденьте на них два маленьких круга. Переверните столик, в большое отверстие проденьте получившийся бутерброд и наденьте сверху большую шестерёнку. Затяните винты гайками.

  7. Прикрутите к маленькой шестерёнке втулку мотора винтами M3×10.

  8. Установите шаговый мотор в предназначенное для него отверстие валом вниз. Зафиксируйте мотор одним винтом M3×15 так, чтобы он мог с натяжкой ходить в отверстии.

  9. Наденьте на вал мотора маленькую шестерёнку и отрегулируйте положение мотора таким образом, чтобы шестерёнки были прижаты друг к другу. Придерживая мотор, снимите маленькую шестерёнку и окончательно закрепите мотор в нужном положении винтами.

  10. Закрепите маленькую шестерёнку на валу мотора на высоте большой шестерёнки при помощи шестигранного штифтового ключа, идущего в комплекте с втулкой.

  11. Соедините провода мотора с колодками «1234» Troyka-Steppera. Белый и жёлтый провода мотора нам не понадобятся, ведь мы используем униполярный шаговый двигатель в биполярном режиме. Поэтому их можно просто откусить и заизолировать.

  12. Необходимо прикрутить провода, отвечающие за автоспуск к колодкам Troyka-Реле. Провода нужно присоединить к контакту «COM» и «NO».

  13. Готово! Теперь наш вращающийся столик выглядит вот так:

Рейтинг
( Пока оценок нет )
Денис Серебряков/ автор статьи
Понравилась статья? Поделиться с друзьями:
Добавить комментарий

;-) :| :x :twisted: :smile: :shock: :sad: :roll: :razz: :oops: :o :mrgreen: :lol: :idea: :grin: :evil: :cry: :cool: :arrow: :???: :?: :!: