Corvet C6 0 30 января, 2017 Опубликовано 30 января, 2017 · Жалоба "Конь в Вакууме" - это аппаратно - программный комплекс, умеющий работать как со всеми существующими, так и с перспективными интерфейсами и выполнять уже существующие и ещё нет задания. Собственно, нужно сделать контроллер для станка и программу для контроллера. В интерфейсе LPT есть 12 пинов, работающих на выход. Обычно управление станком с компьютера осуществляется сигналами шаг-направление и есть 6 осей, которые могут рабтать одновременно, или практически одновременно. На вход могут работать 5 пинов. Задача состоит в том, что бы расширить возможности станка путём последователиной передачи данных через LPT в контролер. Из 12-и пин выхода LPT, 6 пинов остаются работать в режиме "шаг". 4 пина задают адрес, 1-данные, 1-синхро импульс. Из 16-и адресов 6 задают смену направления оси, 1 начало и конец введения адреса, 1 предназначен для введения адреса, 1-команда " адрес + 1" с записью данных в ячейку памяти по каналу данных; 1 адрес - обнуление отсчёта "адрес + 1" Все данные изначально записываются в ячейки в 1-битном формате. Одна ячейка может быть предназначена для включения опроса концевика, включения/выключения реле, установления деления шага/кратности шагов для ускоренного режима серводвигателя. В случае когда 1-го бита не хватает, используется несколько с соседними адресами. Для разработки программы предполагается найти исходники чего-либо или заказать дополнения в программу разработчикам мач4. При этом вроде как раньше можно было купить исходники Mach 3, а в линуксе (для линукс ЦНЦ) вообще исходники должны быть открытыми. Выбор порта LPT, не в пользу остальных, обусловлен двумя факторами: высокой скоростью работы (на практике) и его простотой, пониманием его устройства. Со временем можно добавить возможность работы через USB 2-3, ethernet. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
HardEgor 81 30 января, 2017 Опубликовано 30 января, 2017 · Жалоба Наверное вам сюда Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Eddy_Em 1 30 января, 2017 Опубликовано 30 января, 2017 · Жалоба Зачем так усложнять, если есть USB? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Corvet C6 0 30 января, 2017 Опубликовано 30 января, 2017 (изменено) · Жалоба Возможно и не стоит усложнять. При вращении стандартного шагового двигателя 200 имп/об в полушаговом режиме со скоростью 50 об/с частота импульсов составит 50*200*2=20 000 имп/с. Вопрос: USB выдаст стабильно 20 000 имп/с по 6-и осям одновременно? Обеспечит ли USB обработку 1000 ячеек памяти по 1-му биту? На сколько стабильно это будет работать? Может там обратную связь получится сделать и обрабатывать её в реальном времени? Как это в железе реализовать? Есть плата rs485, может через неё можно управление станком сделать? Изменено 30 января, 2017 пользователем Леонид Григорьевич Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Eddy_Em 1 31 января, 2017 Опубликовано 31 января, 2017 · Жалоба 1) Вообще-то, импульсы микроконтроллер выдавать должен, а USB нужно только для его общения с ПК. 2) Где вы видели шаговик, который умеет 50*200=10000 шагов в секунду? Пределом, который я встречал (на потере мощности в 50%) было 600-800 шагов в секунду! Даже при делении шага на 16 это достаточно мало, чтобы одновременно можно было 3-5 шаговиками с одного МК управлять. Справится даже копеечный STM8S003. Хоть я больше STM32 уважаю, но и для STM8 делал управлялку шаговиками. В случае станка помех может быть очень много, поэтому — да, там предпочтительней RS-485 или CAN для связи с компутером. Ну или сразу компутер в станок пихать, благо, какие-нибудь убогие "малинки" стоят рублей 600! Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Corvet C6 0 31 января, 2017 Опубликовано 31 января, 2017 · Жалоба 1. Компьютер нужен для обеспечения линейной/круговой интерполяции одновременно по 3-м осям. Пример- нарезание конусной резьбы. Если это будет делать контроллер, он будет почти полностью дублировать функции компьютера. На практике такие устройства стоят порядка 100-200 тыс. руб. Типа НЦ201-НЦ400 Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
novikovfb 19 31 января, 2017 Опубликовано 31 января, 2017 · Жалоба 1. Компьютер нужен для обеспечения линейной/круговой интерполяции одновременно по 3-м осям. Пример- нарезание конусной резьбы. Если это будет делать контроллер, он будет почти полностью дублировать функции компьютера. На практике такие устройства стоят порядка 100-200 тыс. руб. Типа НЦ201-НЦ400 посмотрите платы управления для 3D принтеров, порядок цен от 2 до 10 тыр, линейная и круговая интерполяция по 2 осям + подача по еще 2 осям + стабилизация температуры двух нагревателей. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Corvet C6 0 31 января, 2017 Опубликовано 31 января, 2017 · Жалоба 2. Расчёт 20 000 шагов в секунду сделан для обозначения предельных параметров системы. Были американские программы, которые не выдавали достаточной частоты, и на этом фоне Mach начал заметно выигрывать. Возможно, в станке будут стоять серводвигатели, и они будут управляться так же сигналом шаг/направление. Может быть с разными коэффициентами - 100, 1000, 10 000 имп/оборот. 3. Перечисленные контроллеры буду изучать. Сомнения в быстродействии системы на USB связано ещё с тем фактом, что прошивка контроллеров через порт LPT проходит в 2 раза быстрее, чем по USB. По этому было бы хорошо обеспечить возможность работы как по USB, так и по LPT. Начать лучше с LPT. Вопрос по rs485 наверное придётся выделить в отдельную тему. Пока нет программы для работы станка через rs485 и ответных устройств, таких как серводвигатели rs485, реле rs485, концевики rs485. В природе возможно это есть, нужно искать. Или создавать. 4. Можно подробнее про "малинки" по 600 р? Плата от 3d принтера даёт ограниченные возможности. Суть вопроса о создании контроллера с расшимяемыми возможностями. Например, плата с двумя rs485 обеспечивает обмен информацией с 254 устройствами, из них 64 физических. Был станок, который работал через rs232 (com порт). Работать он начал после устранения всех контакторов и замены на тиристоры. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Eddy_Em 1 31 января, 2017 Опубликовано 31 января, 2017 · Жалоба Сомнения в быстродействии системы на USB связано ещё с тем фактом, что прошивка контроллеров через порт LPT проходит в 2 раза быстрее, чем по USB Это еще что за фантастика? USB даже в режиме CDC обеспечивает как минимум мегабит в секунду! А уж если полноценный FS поднять, так совсем хорошо будет. А LPT — жутко тормозящий интерфейс. Не говоря уже о том, что параллельные порты уже давно вымирают. Все меньше шансов встретить материнку с аппаратным LPT. В природе возможно это есть, нужно искать. Или создавать. Ничего сложного. И совсем недорого будет по железу. Можно подробнее про "малинки" по 600 р? aliexpress, ebay И вообще, лучше начать с реального чего-то, а потом расширять функционал. Если сразу строить наполеоновские планы, так можно и закончить ни с чем... Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Corvet C6 0 1 февраля, 2017 Опубликовано 1 февраля, 2017 · Жалоба Ну у меня станина уже готова и посадочные места под двигатели и ШВП http://www.16b16t1.ru С прошивкой контроллера тормозит программатор, сделанный на таком же контроллере. Время уходит на преобразование сигналов. Я не думаю, что у меня получится лучше устройство сделать и оно такой эффект не выдаст. Есть супер-интерфейс EtherCAT. 10 КГц частота тактирования сервы по 100 осям. Но мне все таки кажется реальные сделать устройство на базе LPT, потому что проще LPT нет ничего. А по ресурсам - 6 одновременно работающих осей хватает за глаза. С частотой шагов тоже справляется, даже под Winds. Про малинки так и не понял, это нетбуки малинового цвета или что искать нужно? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Eddy_Em 1 1 февраля, 2017 Опубликовано 1 февраля, 2017 · Жалоба "Малинки" — это "raspberry pi" и им подобные армовские одноплатники. Довольно компактные и недорогие. В самый раз, чтобы внутрь прибора засунуть — наружу только ethernet разъем торчит (а то и вообще по wifi). Запускаешь браузер, выходишь на веб-морду и дергаешь что нужно. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Vasily_ 54 1 февраля, 2017 Опубликовано 1 февраля, 2017 · Жалоба Есть супер-интерфейс EtherCAT. 10 КГц частота тактирования сервы по 100 осям. Сделали-бы сначала на том что есть и отлажено, а потом-бы мечтали. http://purelogic.ru/ Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Александр77 1 1 февраля, 2017 Опубликовано 1 февраля, 2017 · Жалоба 1. Компьютер нужен для обеспечения линейной/круговой интерполяции одновременно по 3-м осям. Пример- нарезание конусной резьбы. Если это будет делать контроллер, он будет почти полностью дублировать функции компьютера. А где гарантия что вовремя рассчитанное компьютером новое значение попадет на исполнительное устройство (т.е. пройдет весь путь от ПК до двигателя) без задержек? Если на ПК вертится операционка типа винды или линукса - то время между тем когда команда была послана и тем когда она физически уйдет в МК может плыть с большущей вариантностью. Так что может пусть МК дублирует полностью работу ПК - в таком случае шансы получить неожиданную деталь снизятся. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Raven 11 1 февраля, 2017 Опубликовано 1 февраля, 2017 · Жалоба Это еще что за фантастика? USB даже в режиме CDC обеспечивает как минимум мегабит в секунду! А уж если полноценный FS поднять, так совсем хорошо будет. А LPT — жутко тормозящий интерфейс. Ну, вообще-то LPT вовсе не тормозящий, особенно в сравнении с USB LS и даже FS. И особенно для задач, где важно время отклика удаленной системы (пример - любой JTAG адаптер или, скажем, SPI программатор, в общем, любая задача с BitBang'ом). Время чтения или записи регистра данных LPT - порядка длительности цикла ISA-шины, а это порядка 1 мкс в худшем случае. Считая время формирования реакции на запись в подключенном устройстве =0 (чтобы получить крайнюю оценку), имеем время отклика tResponse = 2 * 1us = 2 us, что дает оценку теоретического предела частоты воздействий fControl = 1 / 2us = 0.5 MHz. Теперь учтем время реакции управляемого объекта - пусть это будет еще 2 мкс (что, согласитесь, весьма расслабленно для современной электроники). В результате имеем: tResponse = 2 us + 2 us = 4 us fControl = 1/tResponse = 1/(4E-6) = 250 kHz А что у нас в USB системе? Воздействия/отклики USB device привязаны к хождению по USB их фреймов, период следования которых для LS/FS 1 ms. В результате имеем : tResponse = 1ms + 1 ms = 2 ms fControl = 1 / 2 ms = 500 Hz И в любом случае частота считывания параметра, на который мы воздействуем, будет не лучше 1000 Hz (=1/1ms). Вывод: если подключать через USB - надо хотя бы часть функционала, ту, которая требует быстрого отклика на воздействие, переносить на устройство, локализовывать. С LPT (если он есть еще под рукой :-), конечно) - можно попробовать чем-то поуправлять, вычисляя все необходимое на PC. Не говоря уже о том, что параллельные порты уже давно вымирают. Все меньше шансов встретить материнку с аппаратным LPT. Это да. С перспективной точки зрения надо смотреть на варианты с локализованной частью функционала, который может бегать на, скажем, подходящем контроллере с USB интерфейсом. Но если ТС имеет LPT под рукой, и он ему ближе и понятнее, то первую реализацию можно и на LPT сделать. Только декомпозировать фунционал надо сразу с оглядкой на будущую локализацию процедур быстрой реакции на устройстве непосредственного управления. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
MrYuran 24 1 февраля, 2017 Опубликовано 1 февраля, 2017 · Жалоба LPT окончательно умер 10 лет назад, 232 готовится следом. Нет никакого смысла гальванизировать. Ещё через несколько лет отомрут последние динозавры, и встретить LPT можно будет только в музее. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться