Вторник, 26.11.2024
Мой сайт
Меню сайта
Статистика

Онлайн всего: 55
Гостей: 55
Пользователей: 0
Главная » 2017 » Ноябрь » 16 » Рисование запчастей -1
20:45
Рисование запчастей -1

Рисование запчастей -1

Я не зря вчера написала про «варежки». Вспомнился эпизод про то как военные принимали какое-то оборудование для связистов. И для его настройки требовалось что-то сложное. Не приняли с формулировкой «Полуграмотный солдат в варежках на морозе этого не сможет». Даже рабочие перчатки довольно сильно снижают ловкость рук и у меня возникло подозрение что в виртуальных «варежках» будет та же проблема.
Наверное надо попытаться понять, что хочется и уже под это подбирать инструментарий. Подумалось, что в компьютере на самом деле руками (как в жизни) ничего стараются не крутить. А потому что трудоёмко как это ни делай. И даже варежки не снимут вопроса «А почему он (компьютер) сам всё это не расставит и не соединит?»
Вот, например, сборочный чертёж крышки головки цилиндров:
http://www.elcats.ru/hyundai/Parts.aspx?Model=22d47211-d6cd-48f0-be17-afa4db705791&Unit=acbb9887-363c-40c6-a836-035c5cec9991&Title=02%2F05+


Понятно, что меня  в нем не устраивает, даже если я не собираюсь печатать на 3d –принтере деталь «26510  КОЛПАЧОК В СБОРЕ-МАСЛ.».
Для печати мне бы потребовались точные размеры, которых тут тоже нету.
Во-первых, тут мелковато. Во-вторых, нет возможности покрутить и посмотреть как это выгладит с разных сторон. В третьих хотелось бы чтобы по кнопке «Собрать» всё это собиралось вместе, а по кнопке разобрать рисовалось бы так как нарисовано на чертеже. Потому что не руками без варежек а машиной тут всё делается. Не хочу я эти детали соединять. Я же вижу по чертежу как они должны быть соединены значит это известно. А раз известно пусть сам соединяет а не я хоть мышкой хоть сложным джойстиком хоть варежкой.
Следующий этап – более сложные вещи. Вот эта крышка неизвестного размера:
 

А вот крышка от другой машины:
http://www.japancats.ru/Toyota/Parts.aspx?Model=c4eb087c-6963-4897-a8a3-ba80da62e74d&Unit=4762c8af-ecd0-465c-9274-52306596fba0


Вот 12108:
 

Если я хочу проверить подходит или нет я могу попытаться вкрутить руками. Но ведь машина тоже может это сделать. Только она совместит эти объекты и вычислит объем их пересечения. Если объем велик значит крышка не лезет в горловину, если пересечения нет значит крышка меньше горловины. А вот если есть малое пересечение порядка объема резьбы значит можно предположить что деталь подходит. Может и не подойти, но машина способна выбрать то, что хоть как-то подходит по геометрии и что, может имеет смысл проверить уже руками.
Вчера я написала что любой чертёж для машины это набор линий. Чтобы удобно было с этим работать, над коллекцией линий нужна ещё логическая надстройка.
Ещё раз на примере медицинской базы. Это список объектов:

Все строки тут это ничего для машины не значащий набор букв (также как чертежи это набор линий). А вот принадлежность к группам (хотя бы группы «Родитель» в справочнике) позволяет выделить те самые отдельные группы, с которыми можно как-то отдельно работать. Это те самые настройки, которые позволяют запустить какие-то машинные действия (для конкретной группы).
Вот так выглядит крышка двигателя с крышкой, которую я быстренько нарисовала:

Особо обращаю внимание на то, что она у меня нарисована вверх ногами, что видно по указателю осей в левом нижнем углу. Это потому что я рисовала «корыто» и привычно нарисовала его бортами вверх. Развернуть легко. Но как только я начинаю что-то разворачивать по таким соображениям абстрактное «корыто» становится крышкой двигателя имеющей вполне определённый верх низ, лево и право (если нос машины впереди). Это первая логическая надстройка над набором линий. Я ведь хочу чтобы мне что-то нарисовали на экране. Вот я и задам информацию о том, что я хочу видеть сверху, а что справа.

Пусть это так будет:

Этих «булавок» конечно нет в настоящих железных запчастях. Они – дополнительная по отношению к чертежу информация. А поскольку тут вообще вся информация в виде линий, то и это стало линиями и сферами. Каждая деталь – блок (block в смысле объекта AutoCAD-а). При вставке AutoCAD может проанализировать содержимое блока, найти эти линии и уже по ним определить как запчасть должна быть нарисован на экране. Эти лини могут быть скрыты (это делается отключением видимости слоя, на котором они расположены). Но нужная информация есть и она может быть использована при автоматическом рисовании.
Если есть эта информация, то при наличии всех деталей сборочного чертежа (первого рисунка) машина вполне справится с задачей расположить их всех вдоль одной линии, примерно так:

Нарисовано будет всё, что нужно и ничего не будет нарисовано вверх ногами. Уже неплохо. Дальше хоть мышкой хоть «варежками» можно это куда-то перетаскивать. Но на самом деле не всё хорошо. Почему так, а не так например:

В машине есть разные по размеру детали и выбранные для всех случаев, например, 10 сантиметров могут быть не всегда удобны. Потому имеет смысл обзавестись ещё одной дополнительной информацией – габаритными линиями, чтобы нарисовать рядом означало соединить «ящики» или расположить эти «ящики» на неком расстоянии.
Как-то так уже лучше:

… но расположение по прямой это немного не то, что хотелось бы.
А чтобы получить больше, т.е чтобы машина нарисовала это как-то иначе придётся ей ещё добавить информации сделав запчасти не просто как-то ориентированными в пространстве «ящиками» а связанными между собой объектами.  Для этого где-то придётся хранить тип запчасти, т.е ту самую группу (типа «родителя» и прочего) которая позволяет выбирать для объектов этой группы какие-то конкретные действия.
Машина это вполне конкретный объект. Такая запчасть как верхняя крышка двигателя есть в ней всегда и только одна. И этой конкретной крышке полагается как минимум низ двигателя и нарисованная тут закрывающая крышка. А у закрывающей крышки есть вполне понятная точка внутри крышки, которая должна быть (в закрытом состоянии) по верху поверхности. Нарисовать проще чем написать. Вот так это:

а у дырки это так:

Теперь у меня машина знает, где находится точка сборки двух деталей. А это означает что собранный вариант она уже нарисует запросто. Надо просто совместить две точки этих блоков и направления (верх-низ, лево-право):

Точно также без «варежек», только по этим точкам должен собраться весь узел. С разобранным вариантом сложнее. В данном случае очевидно что крышка должна улететь вверх на какое-то расстояние.
Подозреваю, что направление «вылета» тоже придётся задавать в явном виде. Ничего умнее в голову не приходит (при рисовании вылетающих в одном направлении надо будет только следить чтобы они не пересеклись габаритными «ящиками») . Если вместе с чертежом есть вся эта информация, то уже можно запускать какое-то автоматическое рисование. А нарисованное уже можно крутить и приближать чтобы рассмотреть деталь подробнее. У меня только слой «Чертёж» содержит чертёж:

… Всё остальное слои с той самой дополнительной информацией.
Если слои скрыть, то всё выглядит так как полагается выглядеть чертежу:

… но информация внутри есть и машина может её читать и использовать.
Здесь ещё заводских времён пример программы для AutoCAD-а:
http://akostina76.ucoz.ru/blog/2015-12-13-2361

В примере на дуге располагаются буквы введённой строки. Точно также можно нарисовать что угодно, например детали, номера которых перечислены в запрашиваемой строке через запятую. Т.е каждый блок (деталь) будет проанализирован и нарисован в конкретной точке. Другие запускаемые макросы могут их собирать и разбирать (для удобства просмотра чтобы руками это не делать). Но для начала нужны сами нарисованные блоки.

 

Просмотров: 307 | Добавил: akostina76 | Рейтинг: 0.0/0
Всего комментариев: 0
Имя *:
Email *:
Код *:
Форма входа
Поиск
Календарь
Архив записей
Друзья сайта
  • Официальный блог
  • Сообщество uCoz
  • FAQ по системе
  • Инструкции для uCoz
  • Copyright MyCorp © 2024
    Бесплатный конструктор сайтов - uCoz