Лаборатория станков с ЧПУ

Контроллер ЧПУ


Arduino UNO

МикроконтроллерATmega328
Рабочее напряжение, В5
Напряжение питания, В7-12
Цифровые входы/выходы14
ШИМ выходов6
Каналов АЦП6
ППЗУ программы, кБ32
ППЗУ данных, кБ1
ОЗУ, кБ2
Частота шины, МГц16
Выбрать на AliExpress

Контроллер ЧПУ


Arduino Pro Mini

МикроконтроллерATmega328
Рабочее напряжение, В5
Цифровые входы/выходы14
ШИМ выходов6
Каналов АЦП6
ППЗУ программы, кБ32
ППЗУ данных, кБ1
ОЗУ, кБ2
Частота шины, МГц16
Выбрать на AliExpress

Контроллер ЧПУ


Arduino Nano

МикроконтроллерATmega328
Рабочее напряжение, В5
Напряжение питания, В7-12
Цифровые входы/выходы14
ШИМ выходов6
Каналов АЦП8
ППЗУ программы, кБ32
ППЗУ данных, кБ1
ОЗУ, кБ2
Частота шины, МГц16
Выбрать на AliExpress

Драйвер шагового двигателя


Н-мост на L9110S

Напряжение питания, В2.5-12
Максимальный ток на канал, А0,8
Выбрать на AliExpress

Драйвер шагового двигателя


Н-мост на L298N

Питание платы, В5
Напряжение питания ШД, В5-35
Максимальный ток на канал, A2
Максимальная мощность, Вт25
Выбрать на AliExpress

Подключение шаговых двигателей

Схема подключения шагового двигателя к драйверу микросхемы L298N (напряжение 6-12В)

Схема подключения шагового двигателя к драйверу микросхемы L298N (напряжение 5-35В)


Проверка работы шаговых двигателей



// Тестирование шагового двигателя

/* ---  Настройки  --- */
int n=1000; // количество шагов
int dir=0; // напрвление движения 0 - вперёд 1 - назад
int w = 10; // пауза в миллисекундах между шагами

#define A 2 // пин обмотки A
#define B 3 // пин обмотки B
#define C 4 // пин обмотки C
#define D 5 // пин обмотки D

//#define  half 1 // В случае полушагового режима раскоментировать


/* ---- Программа ------ */ 
#ifdef half // настройки полушагового режима 
  #define ms 8 // настройки шагового режима
  int8_t m[ ms ] = {1, 3, 2, 6, 4, 12, 8, 9}; 
#else
  #define ms 4
  int8_t m[ ms ] = {1, 2, 4, 8};
#endif

void setup() {                
  pinMode(A, OUTPUT);     
  pinMode(B, OUTPUT);     
  pinMode(C, OUTPUT);     
  pinMode(A, OUTPUT);     
}

void loop() {
  if (n>0) {
    int i = n%ms;
    if (dir) i = ms - i - 1;
    int j = m[ i ];
    digitalWrite(A, (j&1));
    digitalWrite(B, (j&2));
    digitalWrite(C, (j&4));
    digitalWrite(D, (j&8));
    n--;
  }
  delay(w);

}

Источник питания


Для питания шаговых двигателей подойдёт любой старый блок питания от компьютера. На борту находится 5 и 12 вольт напряжения достаточной силы тока.

Выходное напряжение (ток), В(А)5(20), 12(8)