Кремень КД Реклама
Кремень КМ Реклама

Переделка шилда CNC Nano.

Nick762
Идет загрузка
Загрузка
06.05.2019
36406
52
Разное

Подпишитесь на автора

Подпишитесь на автора, если вам нравятся его публикации. Тогда вы будете получать уведомления о его новых статьях.

Отписаться от уведомлений вы всегда сможете в профиле автора.

23
В интернете довольно много статей про подключение CNC шилда для Arduino UNO и его аналогов, но про его младшего брата Arduino Nano их намного меньше, а те что есть не учитывают некоторых нюансов китайского происхождения этих самых шилдов. Сам недавно стал владельцем платы CNC shield v3 for Arduino Nano. Вот такой:
Переделка шилда CNC Nano.
В 99% случаем при запросе CNC shield arduino nano появится именно она.

Проблемы этой платы заключаются в следующем, не работают установки микрошага с помощью джамперов, контакты отвечающие за шаг и направление контроллеров шаговых двигателей отличаются от таковых для Arduino Uno, питание силовой части идет напрямую на пин Vin контроллера.

Все описанные дальше манипуляции производятся исключительно на свой страх и риск.

Понадобится чуть-чуть поять, чуть-чуть паять и чуть-чуть изменять код.

Итак поехали.

Для начала разберемся с питанием.

Если ваш источник питания, от которого вы планируете запитать шаговые двигатели, выдает больше 12В, то рекомендую перерезать дорожку ведущую к контакту Vin как показано на картинке ниже.
Переделка шилда CNC Nano.
Далее вернем возможность выставлять микрошаг с помощью джамперов (тут конечно надо сначала убедиться что у вас эта функция не работает так-же как и у меня, при замкнутых джамперах на пинах MS1, MS2, MS3 контроллера шагового двигателя будет 0).

Здесь придется не только резать но и паять. Черным будет указано какие дорожки обрезать, а синим какие замкнуть.
Переделка шилда CNC Nano.
Переделка шилда CNC Nano.
В общем суть заключается в том чтобы подать на контакты джамперов высокий уровень (+5В), работа довольно кропотливая и довольно легко получить короткое замыкание, поэтому вооружитесь тестером и внимательно прозванивайте запаянные контакты во избежание замыкания питания на землю. Результатом должно стать то что при поданном напряжении и установленных джамперах на контактах 1, 2 и 3 должен установиться высокий уровень (равный поданному напряжению), а при разомкнутых джамперах соответственно 0.

Теперь очередь кода.

Пины отвечающие за шаг и направление отличаются у Arduino Nano и Arduino Uno, поэтому залитая в Arduino Nano прошивка GRBL работать не будет.

Для того чтобы она заработала надо внести изменения в файл cpu_map_atmega328p.h (для версии grbl 0.9 и ранее) или cpu_map.h (для версии 1.1f). Находим в них следующие строки:

#define X_STEP_BIT 2

#define Y_STEP_BIT 3

#define Z_STEP_BIT 4

#define X_DIRECTION_BIT 5

#define Y_DIRECTION_BIT 6

#define Z_DIRECTION_BIT 7

и приводим их в такой вид:

#define X_STEP_BIT 5

#define Y_STEP_BIT 6

#define Z_STEP_BIT 7

#define X_DIRECTION_BIT 2

#define Y_DIRECTION_BIT 3

#define Z_DIRECTION_BIT 4

Сохраняем файл и заливаем прошивку через Arduino IDE (ну или компилируем и прошиваем полученный бинарник, кому как больше нравится).

Надеюсь статься кому-то поможет.

Подпишитесь на автора

Подпишитесь на автора, если вам нравятся его публикации. Тогда вы будете получать уведомления о его новых статьях.

Отписаться от уведомлений вы всегда сможете в профиле автора.

23
Комментарии к статье