Перейти к публикации

Smith2007

ПРОФИ
  • Публикации

    185
  • Зарегистрирован

  • Посещение

  • Дней в лидерах

    13

Все публикации пользователя Smith2007

  1. Какой-то глюк на форуме. Вдруг фото продублировалось 3 раза. Поправьте если возможно. Мне уже не дает редактировать. Линзы на станке меняются часто. В зависимости от задачи. С фокусом от 73мм до 420мм. Сам датчик планирую разместить таким образом, что бы его ось совпадала точно с красным лучом. Ось лазера. Датчик будет выдвижным на штанге.
  2. На очереди автофокус. Застопорился на выборе датчика. Точнее на диапазоне измеряемых расстояний. Из того, что доступно на алике это: 65-135 мм (погрешность 0,1мм) 200-600 мм (погрешность 0,8 мм) Пока склоняюсь к первому. Хотя не очень удобно при работе с линзой F315 мм Что думаете?
  3. Приехал клапан и редуктор. Подключил, обновил прошивку.
  4. А это сам код. Нижняя строка не используется. Это прообраз будущей 3Д обработки
  5. Проект получил неожиданное продолжение. В процессе работы, бывают довольно длинные задания. Иной раз доходят до 40 минут. Безусловно сидеть на против станка и пялится на блуждающий огонек нет ни какого смысла. Можно заняться более продуктивным времяпровождением. При работе станка всегда включаю вытяжку, а иногда и дополнительное воздушное охлаждение заготовки. И вот уже не первый раз, когда после завершения задания я не сразу подхожу к станку, особенно если нахожусь в соседнем помещении. Но вытяжка продолжает молотить, компрессор накачивающий воздух продолжает качать воздух. В общем давно уже меня это не устраивало и все дума как бы сей процесс автоматизировать. Началось изучение возможностей контроллера управления маркером На разъеме DB15 нашел программируемые входы и выходы В настройках EzCad2 можно их сконфигурировать на вывод сигналов. Ну а далее завел эти сигналы на ПЛК, дописал 4 строки кода и задача решена! Для управления нагрузкой 220В - использовал твердотельное реле . Вот что получилось Меня не покидает желание запустить 3Д гравировку. Среди плагинов нашел "Гравировка по событию". В первом приближении это может помочь. Но я не смог с ним до конца разобраться. Так же в EzCad2 пристутствует пункт "Нарезка stl модели на слои". Но я так же не смог с ней разобраться как она работает либо у меня просто не подходящая версия EzCad 2.7.6. Предположим, что мы нарежем STL на слои с шагом 1 мм. Полученные вектора выгрузим в dxf и на их основе сформируем задания для маркера. По каждому слою задание сохраняем в отдельные файлы. Затем запускаем обработку первого файла и ждем окончания цикла. По окончании опускам Z на 1мм ниже (или на ту величину с которой нарезали stl) и запускаем следующий файл. И так далее. В идеале конечно это написать свой плагин для этого, но по предварительной информацией для этого потребуется не 1 тыс зеленых денег, что меня несколько огорчило. Может есть у кого идеи на этот счет?
  6. На такой объем нет смысла в станке. Согласен. Гораздо проще раз в месяц отправить на резку в компанию, что имеет соответствующее оборудование. Это будет наиболее эффективно. зы. это мое личное мнение.
  7. Вы серьезно? Но даже если это правда - 10 мм/сек - это слезы. И нержавка - это не чернуха и режется гораздо труднее. Если есть задача резать металл - нужно станок для резки металла. Я придерживаюсь такого мнения. В конечном счете цель - заработать. Но как можно зарабатывать когда у Вас себестоимость работы запредельная?
  8. Вам нужно 2 разных станка. Для резки неметаллов СО2 лазер. Для резки нержавки - волоконный лазер (1064 нм) И не верьте тем, кто говорит, что на СО2 можно резать металл. Себестоимость такого реза будет запредельной и не конкурентной даже близко к волоконным лазерам. Что бы резать с приемлемой скоростью 1 мм нержавки - достаточно 1 кВт лазера. зы. Сталь3 до 5мм можно порезать на 1 кВт в кислородной среде. Нержавку резать лучше в азотной среде.
  9. Дополню по опыту эксплуатации: Распределители бронзовые текут. При чем перепробовал разные. Все текут. Поставил краник как Павел приводил ссылку. Держит 3ий месяц. За время эксплуатации с апреля масло еще не доливал в бак. Примерно раз в 2 недели протираю направляющие от излишков масла. Вывод: Все получилось. Со смазкой теперь полный порядок.
  10. Smith2007

    Не сходится начало и конец реза

    Фрезер дергался сильно. Не понимал причину. Просто обнулил стартовую скорость. Стал плавно работать. Не думаю, что это сильно на производительность повлияет. Ускорения достаточно высокие. Так же и в этом случае, возможно поможет. Хотя у меня гибриды.
  11. Smith2007

    Не сходится начало и конец реза

    Вот еще можно попробовать. Но все же я больше склоняюсь к дефектным шкивам
  12. Smith2007

    Не сходится начало и конец реза

    Это что за дробление такое? При очень малых микрошагах, крутящего момента может просто не хватить преодолеть трение в кинематике. Или там сервошаговые?
  13. Smith2007

    Не сходится начало и конец реза

    Меня одного смущает это значение? Как его определили? Если автор уверяет, что геометрия станка норм, то эти значения нужно вычислить. Кроме того заявление о том, что в разных местах поля по разному ошибка проявляется - говорит все же о кривом портале. В 2Д можно проверить самим станком. Но нужны инструменты, что бы проверить параллельность направляющих. Я бы по сделал импульсы на фанере в точках прямоугольника с максимально возможными размерами (по размеру поля) и замерил диагонали. Сравнил их с вычисленными математически. Что касается значения "длина шага": Вычислить. ШД скорее всего 200 импульсов на оборот. Далее смотрим редуктор. Передаточное отношение можно посчитать по количеству зубьев. Умножить это все на дробление шага и рассчитать.
  14. Думаю не проще. Как минимум нужно было писать какой-то графический интерфейс, разбираться с форматом команд на модбас или uart. Я посчитал это лишней тратой времени. Тут все готовое. Только алгоритм дописать. Хотя возможно есть полноценные эмуляторы этих панелей. Я просто не интересовался.
  15. Постепенно подхожу к финалу... Как всегда - аппетит растет во время еды Жду MPG пульт. Когда тонко настраиваешь высоту не очень удобно использовать кнопки панели. Решил добавить управление с выносного пульта. А в будущем и координатный стол допилить X, Y и так же вывести на пульт. А там и до управления G кодами не далеко
  16. Всем привет! Есть идея добавить функцию автофокуса на автоматизированную колонну. Для точного определения расстояния, датчик (вероятно тоже лазерный) должен быть расположен строго перпендикулярно поверхности детали. Но перпендикулярно установить на линии центра сканатора не получится. Вопрос: Что если расположить датчик с некоторым смещением (X, Y относительно оси сканаторной головы)? Например на боковой стенка сканатора. Но в этом случае для определения высоты нужно будет сначала заготовку под этот датчик завести. Что думает сообщество?
  17. Эта проблема возникает на первом цикле выполнения программы Маркер M0 - при старте всегда False. Он не имеет памяти. Регистр D0 так же не имеет памяти. При страте = 0. Т.е если правильно читать код до D0 должен быть равен 0. Однако из-за ошибки первого цикла D0 = 1. И на последующих циклах D0 = 1 INC(EN, Var); - инкрементный счетчик. EN - сигнал разрешения инкремента Пример2 Синий INC(M8000, D3) M8000 - сигнал что ПЛК в режиме RUN Видно, что условие IF исполнилось на 1ом цикле. При этом D1 осталось равно 0, хотя тоже проверяет условия M0 D2 = 1 так ка на первом цикле маркер M8002 = true И последняя строка идет непрерывный инкремент
  18. Операторы IF, CASE при старте программы исполняются не верно. Следующий код, где условие равно FALSE - операция выполняется при старте программы IF (Условие) THEN Операция; END_IF; Но не все так плохо. Наличие различных функций содержащих встроенное условие позволяют практически отказаться от конструкций IF. Что собственно я и сделал. И пересобрал прошивку (******************************************************************************************* Входы/Выходы X0 - Сигнал датчику нуля оси Z Y0 - STEP. Выход на драйвер ШД Y4 - DIR. Выход на драйвер ШД Регистры M0 Bit Fix Запускает/останавливает движение по заданным координатам M1 Bit Act Ручное движение вверх M2 Bit Act Ручное движение вниз M3 Bit Fix Режим скорости ручного перемещения (0 - медленно S1, 1 - быстро S) M4 Bit Act Корректировка высоты заготовки M5 Bit Fix Поимк нулевой точки M8 Bit Fix Отключение лимитов при ручном движении D9 DWORD Уставка Z в импульсах D128 INT Высота стола (0.1 мм) D132 INT Высота заготовки (0.1 мм) D136 INT Количество импульсов на 1 мм перемещения по оси Z D140 INT Скорость движения по оси Z (мм/сек). Автоматический режим D142 INT Скорость движения по оси Z (мм/сек). Ручное управление D144 INT Текущая координата Axis Z (0.1 мм) D148 INT Текущая высота от заготовки до линзы Work Z (0.1 мм) D152 INT Текущий номер линзы Lens (1..4) D156 INT Фокусное расстояние линзы F1 (0.1 мм) D160 INT Фокусное расстояние линзы F2 (0.1 мм) D164 INT Фокусное расстояние линзы F3 (0.1 мм) D168 INT Фокусное расстояние линзы F4 (0.1 мм) D172 INT MaxZ. Максимальное значение Z D176 INT Фокусное расстояние выбранной линзы D8140 DWORD Текущее значение координаты Z в импульсах M8029 Bit Сигнал завершения позиционирования (в одном цикле) M8147 Bit 1 - происходит перемещение (Занято), 0 - ожидание команды ********************************************************************************************) (* Выполняется однократно при старте программы *) RST(M8002, M0); RST(M8002, M1); RST(M8002, M2); RST(M8002, M4); RST(M8002, M5); (* Вычисляем чатсоту импульсов *) dK := INT_TO_DINT(D136); (* K *) HiSpeed := INT_TO_DINT(D140); (* Hi Speed *) HiFreq := (dK * HiSpeed) / 10; LoSpeed := INT_TO_DINT(D142); (* Lo Speed *) LoFreq := (dK * LoSpeed) / 10; CASE D152 OF 1: (* Линза 1 *) D176 := D156; FLeanse := INT_TO_DINT(D156); 2: (* Линза 2 *) D176 := D160; FLeanse := INT_TO_DINT(D160); 3: (* Линза 3 *) D176 := D164; FLeanse := INT_TO_DINT(D164); 4: (* Линза 4 *) D176 := D168; FLeanse := INT_TO_DINT(D168); ELSE D176 := 0; FLeanse := 0; END_CASE; (* Вычисляем заданную координату Z в импульсах *) TableH := INT_TO_DINT(D128); (* Высота стола *) Mesure := INT_TO_DINT(D132); (* Высота заготовки *) MaxZ := INT_TO_DINT(D172 ); (* MaxZ смещение*) DestZ := MaxZ - (TableH + Mesure + FLeanse) ; (* Значение Z в 0,1 мм с учетом смещения MaxZ*) DestPulsZ := DestZ * (dK/10); (* Вычисляем количество импульсов для смещения *) DMOV( M8000, DestPulsZ , D9); (* Вычисляем текущую координату Z в 0,1 мм*) DMOV( M8000, D8140 , HardZ); AxisZ := MaxZ - (HardZ * 10) / dK; D144 := DINT_TO_INT(AxisZ); (* Вычисляем текущее расстояние от заготовки до линзы Z1 в 0,1 мм*) WorkZ := AxisZ - (TableH + Mesure); D148 := DINT_TO_INT(WorkZ); (* Soft Limit max *) RST((AxisZ > MaxZ), M0); (* Soft Limit min *) RST((AxisZ <= (TableH + Mesure)), M0); RST(((AxisZ <= (TableH + Mesure)) AND NOT M8), M2); (* По сигналам ручного управления отключить автоматическое M0 *) RST((M1 OR M2), M0); RST((M1 OR M2), M5); DDRVA( M0 , DestPulsZ, HiFreq, Y0 , Y4); (* Переключение скорости перемещения в ручном режиме *) IF M3 THEN HandSpeed := HiFreq; ELSE HandSpeed := LoFreq; END_IF; DDRVI( (M1 AND NOT X0) , -80000 , HandSpeed , Y0 , Y4 ); (* Если достигли датчика - прекратить движение вверх *) DDRVI( M2 , 80000 , HandSpeed , Y0 , Y4 ); Y7 := M8147; (* Поиск референтной точки/ мащинный 0 по датчику *) DZRN( M5 , HiFreq, MaxZ * dK, X0 , Y0 ); DMOV(X0, 0, D8140); RST(X0, M5); (* Корректировка высоты заготовки *) MOVP(M4, (D144 - D128 - D176), D132); (* Сброс M0 по оканчании позиционирования *) RST(M8029, M0); RST(M8029, M5); ============= END =============== Axis Z on fiber v8.gxw Axis Z on fiber7.dp2 Прикладываю файлы проекта в формате GXWorks2 для контроллера FX1N и OP320 Edit Tools для панели оператора OP320
  19. Изготовил панель приборов. Закрепил ее на дверце тумбы. Самое удобное для обслуживания место. Ни чему не мешает и доступ легкий. Закрепил элементы и подключил. Все завелось сразу. Теперь вопрос за монтажем панели оператора. А для этого придется переделать существующую на станке панель кнопок.
  20. Именно этим сейчас занимаюсь. Для электроники панель уже вырезал и покрасил. Сегодня монтировать буду. А вот для панели оператора буду вторую версию делать. Вырезал из 1 мм. Согнул и ..... не понравилось. Не эргономично и не красиво. Поэтому новую модель, новую развертку... Как завершу - сделаю фотки. Вам спасибо за консультацию в подборе комплектующих и за быструю доставку.
×
×
  • Создать...