Создание ЧПУ

Хорошая печатная плата - залог надежности устройства. Как сделать такую плату?
nhrib
Потрогал лапой паяльник
Сообщения: 339
Зарегистрирован: Пн апр 08, 2013 07:08:10
Откуда: Муравленко

Re: Создание ЧПУ

Сообщение nhrib »

А меня c платой 2560 ошибка долбала
ArduinoIDE 0017 — launch4j error
У вас её нет?
Но на входе Atmega8
Реклама
Аватара пользователя
Muzykant
Нашел транзистор. Понюхал.
Сообщения: 192
Зарегистрирован: Вт дек 24, 2013 17:22:18
Откуда: Ярославль

Re: Создание ЧПУ

Сообщение Muzykant »

По-моему, у меня такого нет, всего 4 светика: 2 горят при подаче питания и еще 2 RX и TX. Больше вроде не нашел.
Зато нашел еще инфу, что шить надо "Прошивалкой китайской usbasp"
Копну в эту сторону.
Реклама
Аватара пользователя
Sailanser
Друг Кота
Сообщения: 3126
Зарегистрирован: Ср фев 01, 2006 22:29:02
Откуда: г.Ростов-на-Дону

Re: Создание ЧПУ

Сообщение Sailanser »

Тогда посмотрите а я пока вам мануальчик по настройке допишу :))
nhrib
Потрогал лапой паяльник
Сообщения: 339
Зарегистрирован: Пн апр 08, 2013 07:08:10
Откуда: Муравленко

Re: Создание ЧПУ

Сообщение nhrib »

Некоторые китайские Фундуино требуют версии Arduino 1.0
http://ru.aliexpress.com/item/Promotion ... dVersion=1
Попробуйте.

О главном:
С праздником Радио всех!!!
Реклама
Эиком - электронные компоненты и радиодетали
Аватара пользователя
Sailanser
Друг Кота
Сообщения: 3126
Зарегистрирован: Ср фев 01, 2006 22:29:02
Откуда: г.Ростов-на-Дону

Re: Создание ЧПУ

Сообщение Sailanser »

Muzykant

Подготовил вам мануальчик для дальнейших плясок вокруг 3D принтера. :))
СпойлерИтак наигрались с тестовым файлом пора заняться делом и настроить принтер как положено.
После каждого изменения необходимо заново прошивать программу в контроллер Ардуино.
Приступим. Марлин вы скачали, распаковали в папку и открыли в среде Ардуино. Переходим на конфигурационный файл, вкладка Configuration.h ни чего более не трогаем.
Изображение
Первое что надо это

Код: Выделить всё

 #define BAUDRATE 250000 

Это скорость Виртуального ком порта, можно поменять, можно оставить и так. Идем дальше, доходим до указания платы драйверов, ту которую вы используете.

Код: Выделить всё

 #ifndef MOTHERBOARD
#define MOTHERBOARD 33
#endif 
Чуть выше этих строк в конфигурации идет описание типов плат и их названий, так же какие числа им соответствуют у меня к примеру RAMPS 1.4 сама плата, и я подключил один экструдер, один вентилятор и один столик соответственно по списку значение 33. Вы уже смотрите на тип своей платы и что будет в итоге на борту у нее.
Идем далее
Следующий пункт это что у вас в качестве измерителя температуры стоит

Код: Выделить всё

 #define TEMP_SENSOR_0 1
#define TEMP_SENSOR_1 -1
#define TEMP_SENSOR_2 0
#define TEMP_SENSOR_BED 1 
Перед этими строками так же идет описание того что можно воткнуть в качестве сенсора но я не стал выдумывать да городить просто купил термисторов в 100К +-1% они врут меньше и поставил их и в хот энд и на столик соответственно настройка этих пунктов у меня такая.
Идем далее и доходим до интересного пункта, а именно

Код: Выделить всё

 #define PREVENT_DANGEROUS_EXTRUDE 
Если она определена, то принтер будет игнорировать команды на подачу прутка, если температура экструдера ниже той, что определена константой EXTRUDE_MINTEMP. Возможность это, конечно, полезная, т.к. случайная подача прутка в холодный хотэнд ни к чему хорошему не приведет. Но для первоначальной калибровки экструдера будет необходимо подавать пруток без предварительного нагревания хотэнда, поэтому эту константу нужно закомментировать (и не забыть потом убрать комментарий, когда калибровка будет выполнена). в итоге делаем так

Код: Выделить всё

 //#define PREVENT_DANGEROUS_EXTRUDE 

После настройки экструдера не забыть вернуть как было.!!!!!!!!!!!!!!!!!!!
Идем дальше и подходим с самому интересному.
Настройка концевиков.

Код: Выделить всё

 // The pullups are needed if you directly connect a mechanical endswitch between the signal and ground pins.
//const bool X_MIN_ENDSTOP_INVERTING = true; // set to true to invert the logic of the endstop.
const bool X_MIN_ENDSTOP_INVERTING = false; // set to true to invert the logic of the endstop.
//const bool Y_MIN_ENDSTOP_INVERTING = true; // set to true to invert the logic of the endstop.
const bool Y_MIN_ENDSTOP_INVERTING = false; // set to true to invert the logic of the endstop.
const bool Z_MIN_ENDSTOP_INVERTING = false; // set to true to invert the logic of the endstop.
//const bool Z_MIN_ENDSTOP_INVERTING = true; // set to true to invert the logic of the endstop.
const bool X_MAX_ENDSTOP_INVERTING = true; // set to true to invert the logic of the endstop.
const bool Y_MAX_ENDSTOP_INVERTING = true; // set to true to invert the logic of the endstop.
const bool Z_MAX_ENDSTOP_INVERTING = true; // set to true to invert the logic of the endstop.
#define DISABLE_MAX_ENDSTOPS 

Код: Выделить всё

 #define INVERT_X_DIR true    // for Mendel set to false, for Orca set to true
//#define INVERT_X_DIR false    // for Mendel set to false, for Orca set to true
#define INVERT_Y_DIR true    // for Mendel set to true, for Orca set to false
//#define INVERT_Y_DIR false    // for Mendel set to true, for Orca set to false
//#define INVERT_Z_DIR true     // for Mendel set to false, for Orca set to true
#define INVERT_Z_DIR false     // for Mendel set to false, for Orca set to true
#define INVERT_E0_DIR false   // for direct drive extruder v9 set to true, for geared extruder set to false
#define INVERT_E1_DIR false    // for direct drive extruder v9 set to true, for geared extruder set to false
#define INVERT_E2_DIR false   // for direct drive extruder v9 set to true, for geared extruder set to false 
тут указываем где концевик стоит в минимуме или в макимуме.

Код: Выделить всё

 // Sets direction of endstops when homing; 1=MAX, -1=MIN
#define X_HOME_DIR -1
#define Y_HOME_DIR -1
#define Z_HOME_DIR -1 
Эти значения меняются в зависимости от того где у вас на столе ноль и в какой стороне стоит концевик. У меня к примеру так ноль это левый нижний угол. Концевик по икс стоит слева, по игреку спереди по зету внизу. Соответственно и настройка как выше. Просто когда настраивал продублировал строчки и потом какие надо включал а какие нет просто комментировал. Но настройку концевиков рекомендую делать на самом последнем этапе.
Так же если будут только три концевика то можно и включить

Код: Выделить всё

#define DISABLE_MAX_ENDSTOPS 
Идем далее и настраиваем размер столика в миллиметрах

Код: Выделить всё

#define X_MAX_POS 200
#define X_MIN_POS 0
#define Y_MAX_POS 200
#define Y_MIN_POS 0
#define Z_MAX_POS 200
#define Z_MIN_POS 0 
Тут думаю все понятно просто указать размер столика у меня он 20 на 20 сантиметров, вот так и написал.

Итак постепенно подошли к самому нудному а это настройка перемещения по осям и экструдера.
Итак строчка

Код: Выделить всё

 #define DEFAULT_AXIS_STEPS_PER_UNIT   {80,80,2560,442.478}  // default steps per unit for Ultimaker 
В скобках записаны значения через запятую X,Y,Z,E. Тут понятно это оси и экструдер. Начинаем настройку. Проще настроить так сначала оси потом экструдер. Оси настраивать лучше с оси Z т.е ее настроить проще там всегда обычно винтовая пара стоит и ее проще посчитать считается просто.

Берем количество шагов двигателя на один полный оборот в наличии двигатель Nema 17 с 1,8 гр и контроллер установленный на 1/16 шага значит за оборот получаем 3200 микрошагов. Далее у меня в качестве винтовой пары шпилька М8 и две гайки. Шаг резьбы у шпильки такой 1,25 мм В итоге подсчет приобретает такой вид 3200/1,25=2560 это значение для перемещения оси на 1мм что у меня и записано.

Следующий шаг это настройка движения по осям X и Y тут немного сложнее но все равно не так страшно. Первым делом смотрим какой ремень стоит на каждой оси и какая шпуля в идеале если на осях стоит все одинаковое и на каждую ось не надо будет индивидуально считать. Буду считать что на осях стоят одинаковые ремни и одинаковые шпули. Из данных нужно шаг ремня (ремень лучше метрический с дюймовым больше головняка) и количество зубов на шпуле. У меня к примеру ремень метрический с шагом 2,5 мм и шпуля с количеством зубов 16 формула для расчета тоже не сложная
Перемещение на 1 мм = Количество шагов двигателя / (Шаг ремня * Количество зубов на шпуле ремня )
Количество шагов двигателя 3200 из предыдущего расчета
Шаг ремня в мм у меня составляет 2,5мм
Количество зубов на шпуле ремня 16
Считаем 3200 / (2.5*16)=80 вот это значение 80 у меня и записано по другим двум осям.

Еще может быть случай когда стоит ремень а на вопрос самому себе, а какой ремень я нафиг туда то поставил тут же ответ приходит да вот снял по моему с той хрени об которую я тут блин спотыкался вечно а ее выкинул на фиг. :))

При таком положении дел можно поступить проще, вместо экструдера закрепить что то можно ручку можно иголку или еще что главное дабы рисовало, замерить шаг ремня как можно точнее и посчитать количество зубьев, после этого посчитать шаги как выше написал, записать эти значения и прошить. После этого положить на столик что по чему можно будет легко посчитать пройденное расстояние и в программе управления принтером дать команду к примеру G0 X100 после того как принтер отшагает с максимальной точностью замерить пройденное расстояние. Если оно ровно 100 то все великолепно и все замеры и подсчеты точны, если же нет то надо внести поправку в прошивку. Поправку можно посчитать просто итак.

Новое расстояние = Записанное в прошивке * 100мм / (фактически пройденное расстояние в мм) таким образом добиться точного перемещения по осям.

Теперь экструдер. В зависимости от его типа настройки его могут отличаться тут покажу как считал для своего с редуктором на борту.
Количество шагом на мм = количество микрошагов двигателя * соотношение количества зубьев в редукторе экструдера / (диаметр впадины толкающего винта * pi)

Тут расчет уже со своими числами приводить не буду у вас скорее всего при прямой подаче надо будет только указать количество шагов на один оборот.

В итоге после того как подсчет произведен записать, прошить.

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

Новое значение = Значение в прошивке в мм * 50 мм / на то что показал замер по факту после этого снова прошить и снова дать команду на протяжку 50 мм прутка. Это повторять до тех пор пока экструдер не будет протягивать ровно 50 мм прутка.

Уф надеюсь все понятно и не сумбурно объяснил. :))
Реклама
Аватара пользователя
mial
Друг Кота
Сообщения: 3254
Зарегистрирован: Ср янв 06, 2010 23:31:56
Откуда: Боровичи, Новг. обл.

Re: Создание ЧПУ

Сообщение mial »

Странно как то. Покупал 2 ардуины для принтера у китаез. Собрал 2 принтера, все заработало сразу. Ни каких танцев с бубном. Только конфиг марлина под себя настроил, спасибо Sailanser
Еще из ардуин покупал микро и мини, одна с юсб, другая ТхRx. Все шли со встроенным загрузчиком. Средой находились и шились на раз. Что то все же вы неправильно делали. Либо плата неисправна.
Прототипы печатных плат на заказ https://radiokot.ru/forum/viewtopic.php?f=54&t=122701
Реклама
Аватара пользователя
Muzykant
Нашел транзистор. Понюхал.
Сообщения: 192
Зарегистрирован: Вт дек 24, 2013 17:22:18
Откуда: Ярославль

Re: Создание ЧПУ

Сообщение Muzykant »

mial писал(а):Покупал 2 ардуины для принтера у китаез. Собрал 2 принтера, все заработало сразу. Ни каких танцев с бубном.
И драйвера встали родные ардуиновские? А не осталось в истории заказов именно этой платы? Интересно глянуть.
Sailanser писал(а):Подготовил вам мануальчик для дальнейших плясок вокруг 3D принтера.
Преогромнейшее спасибо!!! :beer:
Аватара пользователя
Sailanser
Друг Кота
Сообщения: 3126
Зарегистрирован: Ср фев 01, 2006 22:29:02
Откуда: г.Ростов-на-Дону

Re: Создание ЧПУ

Сообщение Sailanser »

:beer: Успехов в настройке.
Аватара пользователя
mial
Друг Кота
Сообщения: 3254
Зарегистрирован: Ср янв 06, 2010 23:31:56
Откуда: Боровичи, Новг. обл.

Re: Создание ЧПУ

Сообщение mial »

Muzykant писал(а):И драйвера встали родные ардуиновские? А не осталось в истории заказов именно этой платы? Интересно глянуть.
Все встало без вопросов. Лота такого уже нет, год почти прошел. Вот такая же плата один в один и у этого же продавца.
Прототипы печатных плат на заказ https://radiokot.ru/forum/viewtopic.php?f=54&t=122701
Аватара пользователя
Muzykant
Нашел транзистор. Понюхал.
Сообщения: 192
Зарегистрирован: Вт дек 24, 2013 17:22:18
Откуда: Ярославль

Re: Создание ЧПУ

Сообщение Muzykant »

Ну вот, у вас плата, про которую и говорит Sailanser: там мега 8-я и светодиод на 13-м выводе, короче копия итальянской ардуинки. А у меня какая-то поделка, сделанная наподобие... Ептить... Ну должна же она как-то прошиваться.. Будем искать)))
greatkaa
Родился
Сообщения: 16
Зарегистрирован: Чт фев 19, 2015 10:56:30
Откуда: Москва

Re: Создание ЧПУ

Сообщение greatkaa »

Пришел мне CNC 3020. Только теперь проблема как его подключить к компу:)
Купил плату PCI-E -> LPT, не соображу как настроить и как проверить, чего получилось.
Контроллер http://www.espada-tech.ru/pr_-38459.shtml на чипе Moschip MCS9900
Операционка: Win7 64

В настройках LPT:
Диапазон адресов 1 C000 - C005
Диапазон адресов 2 C007 - C015

Мне адрес порта 0xC000 ставить в Mach3?

И как потом посмотреть порт реагирует ли на команды с Mach3?

Еще в инструкции написано, что LPT должен работать в режиме EPP. На коробке платы написано, что поддерживает этот режим, но не понятно как на него переключиться.
Аватара пользователя
Boreaz
Встал на лапы
Сообщения: 149
Зарегистрирован: Вт мар 25, 2014 17:12:14

Re: Создание ЧПУ

Сообщение Boreaz »

greatkaa,
Если не ошибаюсь, Mach3 не работает корректно с Win7x64, я для него отдельную Win7x86 установил, работает нормально, желательно в обще XPx86 установить, но он зараза уже не на всех современных компах пашет, и главное чтобы в системе ничего больше не было установлено, из того что работает в фоновом режиме, ну и чтобы никаких кривых драйверов не было.
У меня два диапазона адресов C010-C017 и C000-C007 в матче установил порт 0xC010 сразу все заработало, насчет EPP в первый раз слышу. Как проверить порт не знаю, кроме осцилла в голову ни чего не приходит, может можно светики через резисторы подключить, но я не стал рисковать, есть еще прекрасная программа LPT 3D HARD ANALYZER но я не смог ей адрес порта скормить, хотя встроенные LPT она на ура тестирует.
greatkaa
Родился
Сообщения: 16
Зарегистрирован: Чт фев 19, 2015 10:56:30
Откуда: Москва

Re: Создание ЧПУ

Сообщение greatkaa »

Boreaz,
На форуме по Mach3 пишут, что под Win7 64 прекрасно пашет, если включить совместимость с XP. Сегодня вечером попробую:)
Аватара пользователя
mr_kot
Друг Кота
Сообщения: 4625
Зарегистрирован: Пт ноя 27, 2009 18:12:27
Откуда: Черкассы, UA
Контактная информация:

Re: Создание ЧПУ

Сообщение mr_kot »

mr_kot писал(а): Куплю, наверное, один на TB6600, посмотрю как работает и буду делать выводы.
Приехал драйвер на TB6600. Сегодня установил его на ось Z, отработал тестовую программку сверления около 300 отверстий - вернулся в ноль тютелька в тютельку :). Перед заменой специально запустил эту же программу на старом драйвере - уход по оси Z на 0,71 мм.
Программа работала примерно 15 минут, радиатор чуть тепленький (без обдува), пирометр показывает температуру 30 градусов, температура платы под чипом - 35 градусов. Ток установил 2,2 А (по лимбу подстроечного резистора), дробление шага 1/16.
Драйвер вроде нормальный, погоняю еще - посмотрю как в он работе. Да прикуплю, наверное, чипов TB6600 и запилю и на две другие оси такие же драйвера.
Изображение

В мире нет вредных веществ, в мире есть вредные количества © Д.И.Менделеев
Когда на форуме переходят на "Вы", в реальной жизни уже давно бьют морду © автор неизвестен.
Аватара пользователя
Muzykant
Нашел транзистор. Понюхал.
Сообщения: 192
Зарегистрирован: Вт дек 24, 2013 17:22:18
Откуда: Ярославль

Re: Создание ЧПУ

Сообщение Muzykant »

А у меня че-то плохо все. Через параллельный разъем мега программатором не определяется. Наверное все-таки дохлая плата(((
А на что же тогда драйвера встали? Этот CH340G всего лишь преобразователь USB-UART, типа как FT232. На него разве нужен драйвер?
Скорость, кстати, 115200 надо ставить. Если RX TX коротнуть, то через терминал значения возвращаются, тут все нормально. Значит точно дело в меге.... Печаль-беда... Новую заказывать - еще месяц ждать(((( Эх....
Аватара пользователя
Sailanser
Друг Кота
Сообщения: 3126
Зарегистрирован: Ср фев 01, 2006 22:29:02
Откуда: г.Ростов-на-Дону

Re: Создание ЧПУ

Сообщение Sailanser »

Muzykant писал(а):А у меня че-то плохо все. Через параллельный разъем мега программатором не определяется. Наверное все-таки дохлая плата(((
А на что же тогда драйвера встали? Этот CH340G всего лишь преобразователь USB-UART, типа как FT232. На него разве нужен драйвер?
Скорость, кстати, 115200 надо ставить. Если RX TX коротнуть, то через терминал значения возвращаются, тут все нормально. Значит точно дело в меге.... Печаль-беда... Новую заказывать - еще месяц ждать(((( Эх....
Еще не факт что мега сдохла, вполне вероятно что при перевозке могли кварц ушатать :( Попробуйте его проверить, либо заменить, И вполне вероятно что и бут лоадер запашет и не надо будет пляски делать около платы.

Изображение

upd

Еще посмотрите есть ли питалово меги, на этих платах обычно стоят хреновые преобразователи, вот он
Изображение
У самого такой вылетал не с того ни с сего, просто тупо бахнул и все. Да и по моему у mial то же было :))

В общем проверить есть ли напряжение, тактиться ли мега.
Аватара пользователя
mr_kot
Друг Кота
Сообщения: 4625
Зарегистрирован: Пт ноя 27, 2009 18:12:27
Откуда: Черкассы, UA
Контактная информация:

Re: Создание ЧПУ

Сообщение mr_kot »

Мегу убить не так-то просто :)))
Для этого выдающиеся способности нужны.
Надо проверить наличие всех питающих напряжений непосредственно на выводах меги, наличие генерации на выводах кварца (возможно сколота емкость с вывода кварца на землю - без нее может не завестись), отсутствие низкого уровня на выводе RESET.
Изображение

В мире нет вредных веществ, в мире есть вредные количества © Д.И.Менделеев
Когда на форуме переходят на "Вы", в реальной жизни уже давно бьют морду © автор неизвестен.
Аватара пользователя
Sailanser
Друг Кота
Сообщения: 3126
Зарегистрирован: Ср фев 01, 2006 22:29:02
Откуда: г.Ростов-на-Дону

Re: Создание ЧПУ

Сообщение Sailanser »

Точно. Еще попугаю котов :))
Вот к примеру (фотки с другого форума) как говориться бахнуло, так бахнуло, яркий пример херовых транзисторов на управление подогревом стола, и почему лучше подогрев столика сделать через автомобильное реле. И ни фига, мега живая и работатет штатно.

ИзображениеИзображениеИзображениеИзображение
Аватара пользователя
smacorp
Друг Кота
Сообщения: 3485
Зарегистрирован: Вт окт 22, 2013 04:37:23
Откуда: Казань

Re: Создание ЧПУ

Сообщение smacorp »

greatkaa писал(а):Еще в инструкции написано, что LPT должен работать в режиме EPP
А в какой такой инструкции? В поиске напротив куча примеров, что порт должен быть в ECP - вот, например, вызывающая доверие серьёзная ссылка - http://www.mib-tech.com/mach3_setup.html - пункт 3.
Платы для HLDI - установки лазерной засветки фоторезиста.
Фоторезист Ordyl Alpha 350
Жидкое олово для лужения плат (видео) - самое лучшее и только у меня.
Паяльные маски XV501T-4 и KSM-S6189 (5 цветов).
Заказ печатных плат - pcbsmac@gmail.com
greatkaa
Родился
Сообщения: 16
Зарегистрирован: Чт фев 19, 2015 10:56:30
Откуда: Москва

Re: Создание ЧПУ

Сообщение greatkaa »

Все заработало!
Под Win7 64 ничего не помогло, драйвера Mach3 отказывались устанавливаться.
Поставил еще одну винду 7 32bit. В настройках Mach3 поставил адрес порта из свойств PCI-E карты. И все сразу заработало:)
Ответить

Вернуться в «Изготовление PCB»