CraftDuino v2.0
  • - это CraftDuino - наш вариант полностью Arduino-совместимой платы.
  • CraftDuino - настоящий конструктор, для очень быстрого прототипирования и реализации идей.
  • Любая возможность автоматизировать что-то с лёгкостью реализуется с CraftDuino!
Просто добавьте CraftDuino!

Изготовление шагового двигателя при помощи 3D-печати


Пример, как можно сделать шаговый двигатель, используя 3D-печать, один подшипник, 8 гвоздей, 6 магнитов и моток медной проволоки.
Чтобы заставить этот двигатель шевелиться, разумеется, используется контроллер Arduino.

Схема включения:
Схема подключения шагового двигателя к Arduino

Скетч:

/*
01010000011100100110111101110100011011110010000001000111

3D Printed Stepper Motor

Created August 15, 2015
Modified August 15, 2015
by Anthony Garofalo (Proto G)

Visit my YouTube channel here: https://www.youtube.com/channel/UCpTuKJrXFwybnpOG7HpTpZw
Visit my Instructables page here: http://www.instructables.com/member/Proto+G/

  _____   ______  _____  _______  _____        ______
 |_____] |_____/ |     |    |    |     |      |  ____
 |       |    \_ |_____|    |    |_____|      |_____|
  
01010000011100100110111101110100011011110010000001000111
*/



int Delay;
int reverseSwitch;

void setup() {
  // initialize digital pin 13 as an output.
  pinMode(9, OUTPUT);
  pinMode(10, OUTPUT);
  pinMode(11, OUTPUT);
  pinMode(12, OUTPUT);
  
  pinMode(13, OUTPUT);   //led pin for visual
  pinMode(6, INPUT);     //toggle switch is connected to digital pin 6 for reversing direction
  
}


void loop() {

  reverseSwitch = digitalRead(6);
  
  if(reverseSwitch == HIGH){//if the reverse switch is high, spin the rotor counter clockwise
   
  Delay = analogRead(0);
  Delay = map(Delay, 0, 1023, 60, 2000);
    
  digitalWrite(12, HIGH);
  digitalWrite(13, HIGH);     
  delay(Delay);           
  digitalWrite(12, LOW);
  digitalWrite(13, LOW); 
  delay(5);
  
  Delay = analogRead(0);
  Delay = map(Delay, 0, 1023, 60, 2000);
  
  digitalWrite(11, HIGH); 
  delay(Delay);           
  digitalWrite(11, LOW); 
  delay(5);
  
  Delay = analogRead(0);
  Delay = map(Delay, 0, 1023, 60, 2000);
  
  digitalWrite(10, HIGH); 
  digitalWrite(13, HIGH);  
  delay(Delay);           
  digitalWrite(10, LOW);
  digitalWrite(13, LOW); 
  delay(5);
  
  Delay = analogRead(0);
  Delay = map(Delay, 0, 1023, 60, 2000);
  
  digitalWrite(9, HIGH); 
  delay(Delay);           
  digitalWrite(9, LOW); 
  delay(5);
    
  }
  
  else{//if the reverse switch is not high, spin the rotor clockwise


  Delay = analogRead(0);
  Delay = map(Delay, 0, 1023, 60, 2000);
    
  digitalWrite(9, HIGH);
  digitalWrite(13, HIGH);     
  delay(Delay);           
  digitalWrite(9, LOW);
  digitalWrite(13, LOW); 
  delay(5);
  
  Delay = analogRead(0);
  Delay = map(Delay, 0, 1023, 60, 2000);
  
  digitalWrite(10, HIGH); 
  delay(Delay);           
  digitalWrite(10, LOW); 
  delay(5);
  
  Delay = analogRead(0);
  Delay = map(Delay, 0, 1023, 60, 2000);
  
  digitalWrite(11, HIGH); 
  digitalWrite(13, HIGH);  
  delay(Delay);           
  digitalWrite(11, LOW);
  digitalWrite(13, LOW); 
  delay(5);
  
  Delay = analogRead(0);
  Delay = map(Delay, 0, 1023, 60, 2000);
  
  digitalWrite(12, HIGH); 
  delay(Delay);           
  digitalWrite(12, LOW); 
  delay(5);
  
  }
  
} 


UPD 2015-08-27
Если добавить колечко сигнальных светодиодов — работа шагового двигателя станет ещё нагляднее:


Ссылки:
3D Printed Stepper Motor
3D Printed Stepper Motor V1.1

По теме:
LogoBot — простой робот для изготовления при помощи 3D-печати
Arduino позволяет вскрыть навесной замок за несколько секунд
  • 0
  • 18 августа 2015, 14:57
  • admin

Комментарии (0)

RSS свернуть / развернуть

Только зарегистрированные и авторизованные пользователи могут оставлять комментарии.