Аптекарская банка с конфетами
Процесс в реальном времени. Таймлапс тут.
Базовое освещение - HDRI-карта. Для наполнения банки использована физика твёрдых тел.
Процесс в реальном времени. Таймлапс тут.
Базовое освещение - HDRI-карта. Для наполнения банки использована физика твёрдых тел.
Решил я тут хоть что-то написать, как раз закончил свой маленький проект самообучения. Вот и расскажу как это было.
А то уж больно давно не пишут здесь ничего интересного. Скукотень да и только.
Значиться написал я тут недавеча постпроцессор для станочка и некоторые глюки оного заставили меня задуматься над тестированием его при помощи модельки станка и Cse драйвера.
(Примерно здесь должен быть мем про "сказочного долбаеба")
И так, что я имею:
1. Станок - Haas Super Mini Mill
2. Модель этого же станка (взял с сайта производителя)
3.Постпроцессор, предварительно написанный мной, который необходимо подключить к сборке и использовать во время симуляции.
4. Явно "потекшая крыша" ибо обычный человек такой херней заниматься не станет. А так же, в добавок, огромное желание охватить как можно больше знаний и профессиональных навыков.
"Ну что народ, погнали нахуй!"
И так, для начала необходимо пересобрать сборку модели станка. Имеющаяся сборка в формате step, а компоненты в stl. В добавок ко всему сборка была собрана в дюймах. В моем случае необходимо собрать в православных милиметрах. И хотелось бы все же в формате с которым Nx работает нативно, а именно prt.
У меня получилась следующая "шляпа".
Красавец, правде же? Жаль не без глюков. Видно один прямо в центре скрина.
Но как по мне:
Кожух мне не пригодится, да и магазин тоже(по крайней мере я так думал)
И так, теперь ищем информацию как заставить это все двигаться.
Облазил весь интернет и информации оказалось что-то крайне мало..
Обидно, досадно но ладно.
Ну да, о чем это я? ЧПУшники крайне не охотно делятся знаниями.
Единственное что нашел так это видео, какого-то поляка, на ютубе. Не особо информативное, к тому же пришлось смотреть совсем без звука на рабочем компе. Блин, говорю и не верю прям, как будто звук мне бы помог...
И вот я 40 минут смотрю как парень создаёт всю кинематику модели с нуля.
Ну что же, у него, все работает, нужно повторить.
Значит порядок такой
1. В модуле генератора модели станка создаем виртуальные компоненты станка и связываем их с компонентами сборки
2. Создаем виртуальные оси и настраиваем их ограничения, а так же задаём пределы перемещений и вектор направления. Часть информации берём из кинематической схемы станка, или гуглим(как в моем случае). А вот вектор и направление я мог бы посмотреть на самом станке, но куда мне? Я же, как и любой другой русский человек, поступаю по инструкции только когда когда все варианты закончились.
3. Производим замену файлов постпроцессора в папке с файлами станка библиотеки nx. Есть вариант просто кинуть постпроцессор в папку библиотеки, но тогда придётся прописать к нему путь.
И так, схему виртуальной кинематики видно на скрине. Постпроцессор успешно закинул в директорию библиотеки Nx.
А вот со вторым пунктом пришлось повозиться. По факту есть два варианта прикотором на проверке, в генераторе станка, все будет двигаться как нужно, а вот на симуляции модель сломается, но выдаст ошибку всего лишь о пределах перемещения осей. Иными словами направление задал не в ту сторону.
В общем сделал все как на видео.
К сожалению все что я получил, так это возможность добавить модель станка в файл обработки детали.
А при попытке симуляции Nx шлет меня нахрен и говорит что-то про оси и каналы…
Твою ж на лево, но у поляка все работает
Снова пришлось прибегнуть к старому доброму интернету, только результата 0.
Ладно, не буду томить.
Пару деньков ковырялся с моделью и все же нашел что нужно сделать.
При создании кинематики модели Nx’у нужно объяснить с какими осями работать в каких каналах на случай работы с многоканальными станками. Эх, повидать бы такие станки в живую. Классно работают, прямо загляденье.
И менюшку эту случайно нашел, чистое везение.
Ну что ж, создаём канал и обзываем его как душе угодно. Добавляем в единственный канал все имеющиеся оси станка и разумеется указываем что ось "S" воспринимать как главный шпиндель.
Далее снова идем в файл детали. Загружаем станок и тыкаем симуляцию станка.
И тут «бам», работает нахуй.
Радости маленького мальчика нет предела, чуть штаны не намочил.
На симуляции траектории станок двигается как надо, но мне же не нужны полумеры. Нужна симуляция, на основе cse драйвера станка, всего g кода, а не траектории которую рисует Nx.
Что же, самое время попробовать. Тыкаем симуляцию программы ЧПУ и сразу сыпятся куча окошек с текущим положением всех осей, непосредственно самой УП которую выдал мой пост и еще какая-то хрень. Не особо вдавался в подробности но уже что-то.
Вот тут то и не работает.
Говорит иди ты, друг, к черту и выдает ошибку во время выполнения кадра со сменой инструмента.
А я уже обрадовался...
Вот тут то меня снова пробрало до дрожи от испытанных эмоций ярости и разочарования.
Ну что ж, ругается на операцию смены инструмента. Нужно снова ковыряться. Судя по всему придется докинуть модель магазина и ковыряться с ней.
Ну, у меня же есть моделька с сайта производителя.. но блин, она не детализирована и идет целым телом.
Похоже нужно рисовать новую.
Спойлер: можно не париться с магазином, а просто заменить операцию смены инструмента драйвера фанука на операцию общего драйвера. Там магазин не используется, голова поднимается на безопасное расстояние и в ней магическим образом появляется следующий инструмент.
Ну кое что получилось, это второй вариант.
В первом я нарисовал на две ячейки больше чем есть(вечно мне всего мало).
Он немного детализирован внутри, чего нет в модели от ребят из хаас.
А так же я не парился над достоверностью модели, в первый раз, выглядело крайне убого.
Ладно, тут мы снова упираемся в кинематику
Нужно прописать все оси для магазина и соответственно выставить оси для ячеек магазина, что бы там в правильном положении был отрисован инструмент.
Без этого никуда.
Заодно и добавил лишнюю ось что бы анимировать крышку магазина. А чего бы и нет? В станке же она открывается, вот и я хочу что бы все было как положено.
Вот что вышло в генераторе станка в итоге.
Попутно откопал операцию cse драйвера по смене инструмента(да да.. Ту самую на которую ругался Nx во время симуляции). Ее тоже нужно редактировать, она отвечает за все передвижения станка при вызове инструмента в программе симуляции.
По хорошему нужно писать драйвер под свой станок с нуля. Но во первых, такими знаниями я не обладаю. А во вторых Хаас это FanucFamily. Иными словами все от фанука подходит к хаасу, и на оборот. Ну или почти все. Вот тут то я могу и схалтурить взяв драйвер от модели станка с поставки Nx.
Так как я в программировании не «бум бум» пришлось повозиться. Хорошо что она написана в перемешку с Macro B, синтаксисом фанука. И вот это очень помогло.
Пришлось непосредственно прописать условие, при котором голова перемещается выше магазина если нет инструмента в шпинделе.
И соответственно если имеется то нужно опуститься ниже и вернуть инструмент перед вызовом нового.
Ну что ж, вроде бы все, nx во время симуляции ни на что не ругается.
При запуске симуляции станка, nx постпроцессирует операции моим постпроцессором и сразу же воспроизводит передвижения на основе cse драйвера фанука. Иными словами все циклы и подпрограммы выполняются так как это будет происходить на станке. Эдакий Vericut. Вот только с ним я не умею работать, но думаю что собирать станок там нужно примерно так же.
И так, это дело ещё можно долго полировать. Добавить недостающие детали станка, которые я выбросил из сборки. Поправить несколько, замеченых мной, глюков во время симуляции. Но в общем и целом это мой первый проект такого рода. Я никогда не настраивал модели станков для симуляции. Работал на множестве предприятий и никто не занимался такой херней. Есть, конечно, люди которым стимуляция такого рода очень необходима, но мне путь в работу с такими людьми закрыта. Да и не очень то я там нужен.
Не стал закидывать видео полной симуляции, там всего две операции и смена инструмента для наглядности. Я ведь и так уже затянул пост.
В ообщем и целом это не мануал, гайд или призыв к действию. Расписывая я это дело подробно, растянул бы текст в 4-5 раз длиннее. Это было бы слишком утомительно для первого поста. Это эдакий пилотный выпуск, коль будет интерес то может ещё что напишу.
P.S. Благодарю за внимание, досыпте ,,,,, куда следует. Редачить пост и переписывать его по нескольку раз крайне утомительно. Уверен что ошибок будет в тексте достаточно.
Моделирование в реальном времени. Таймлапс тут
История нестандартного заказа. Здесь подробно расписано то, что сжато показано в видео в конце поста. Последнее время попёрли босоножки.
Заказчица купила босоножки немецкого бренда Gabor.
Поносила их разок - отломился каблук. Ну бывает. Отнесла в сервис - ей хорошо поставили на подпяточник и три самореза.
Поносила их ещё разок - подошва начала трескаться и рассыпаться прямо на глазах.
И уже не один сервис не берёт. Причина - подошва чашеобразная. Плюс обшита декоративной кожаной бейкой по периметру. Подошвы такой у российских поставщиков не найти. Я взялся за заказ чисто из спортивного интереса - попробовать сформовать подошву из необработанной кожи растительного дубления. Да и заказчица надавила на жалость - у неё 35 размер. Сложно найти хорошую удобную обувь. У моей жены тоже 35 - мне её беда хорошо знакома. Взялся.
Посмотрел в интернете цены на обувь этого бренда GABOR - около 15-18тысяч рублей. И действительно, качественный верх, не из кожзама - натуральная кожа. Хорошая подкладка. Проблема подошвы - крошится, как размокшее печенье. Такое видел на полиуретанах. Иногда внезапно материал деградирует, но он бы стал вязким, пластилинообразным. Растрескиваться он бы не смог. Ещё вариант - слышал, есть материал из полиуретана в смеси с кожаной крошкой мелкой фракции. Вполне возможно, что в партии такого материала оказался брак - слишком много кожаной крошки и слишком мало связующего - полиуретана. Это выгледело похоже на картину дефекта.
Первым делом разобрал частично оба босоножка. Снял остатки подошвы, снял каблук, снял мягкую стельку (для доступа к креплению каблука). Так как у меня жена дюймовочка, то колодка 45 размера у меня была, правда, на более высокий каблук, но всё равно получилось стабилизировать пучковую часть верха при обтяжке.
Сама формовка - очень простая. Вырезал с запасом необработанный некрашенный краст растительного дубления толщиной 3мм. Толщина совпадала с раскрошившейся подошвой. Босоножек на колодке обернул стретч-плёнкой, чтобы не отсыревал кожкартон стельки и кожа верха. Размочил кожаные заготовки в воде, дал им немного стечь и подсохнуть. Приложил к стельке босоножка и замотал всё эластичным бинтом. Очень рекомендую. Бинт дышит - через него хорошо уходит влага. Его можно замотать по любым криволинейным поверхностям любого порядка. Фиксируется очень просто - своими штатными скобами с крючками. Кстати, от бинта на поверхности кожи остаётся текстильный рисунок. В моём случае это можно было записать в декоративный эффект. Если нужна гладкая поверхность - надо думать, как это сделать.
Оставил сохнуть до утра. Утром размотал бинт, снял подошвы с форм. Кожа уже схватилась, но была ещё чуть сырой. Оставил без формы досушиваться до вечера. Обрезал лишнее. Подогнал под край старой приклейки, который был хорошо виден на верхе босоножка. Далее - брусовка под обшивку декоративной бейкой. Вырезал из чёрной гладкой кожи две полоски, приклеил их на найрит на край подошвы, пробил круглым пробойником с шагом 6мм (всё как на старой подошве), прошил седельным швом ниткой 1мм Дафна. По сути всё. Подошва готова.
Подогнал подошву под сборку с каблуком. Поставил подошву на найрит - как раз его тема. Новая подошва - бахтармяная сторона кожи, вторая деталь - кожа и кожкартон. Найрит будет стоять хорошо. Поставил каблуки. Как положено - с подпяточниками, на саморезы. Торчащие части головок саморезов зачистил на наждаке. Сверху наклеил пенолатекс. На него штатные кожаные стельки.
В идеале кожаную подошву надо было бы немного поносить, притереть, а потом поставить профилактику. Но повторной встречи уже не предполагалось. Поэтому профилактику поставил сразу. Взял прозрачную полиуретановую профилактику Silk и прозрачным десмоколом её наклеил. Нюанс только в том, что у подошвы нет чёткого обреза плоскости. Налепил лекальную профилактику на пятно контакта подошвы. С запасом, конечно. Вот и всё. Занимаюсь я этим по вечерам, после работы. Заняло всё вместе около 10 часов работы. С заказчицы взял 2500р. Естественно, работа такая экономически не выгодна. Просто хотел попробовать сделать что-то нестандартное.
Ну этот, который в народе неприличным словом называют :)))
Моделирование в реальном времени. А здесь таймлапс