Jeffrey Cross
Jeffrey Cross

Преврати коды в вещи: Кокопелли и Сурьма

Fab Boom Box, спроектированный до кокопелли в Fab Modules. Он воспроизводит музыку со стандартной SD-карты, работает от одной батареи 9 В и может быть изготовлен менее чем за 100 долларов.

Kokopelli и сурьма - это параметрические, сравнительные, неявные рамки для автоматизированного проектирования, которые выросли из моей магистерской диссертации в Центре битов и атомов MIT, основанной на предыдущей работе, как там, так и в более широком исследовательском сообществе, и были протестированы в Fab. Академия и машины, которые делают MIT класса. На данный момент kokopelli подходит для 2D и 3D моделирования (а некоторые даже используют его для проектирования печатных плат!). Он может экспортировать .pngs, .svgs и .stls, и есть базовая встроенная CAM для 2-, 3- и 5-осевой вычитающей обработки. Сурьма, призванная стать духовным преемником Кокопелли, является экспериментальной и активно развивается.

В kokopelli основные формы можно плавно смешивать для получения необычных эффектов.

ЗАГРУЗИТЬ Приложения и источники кокопелли и сурьмы доступны через GitHub Мэтта Китера. Kokopelli также доступен в виде приложения для Mac. Все примеры кода, показанные здесь, включая слайдеры и другие графические элементы, включены.

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

Как OpenSCAD, но со встроенным CAM

CAM-интерфейс kokopelli делает планирование пути для черновой обработки на ShopBot.

В настоящее время пути Cokopelli CAM можно экспортировать на лазерные резцы Universal и Epilog, мини-мельницу Roland Modela, трех- и пятиосевые станки Shopbot и обычный G-код. Модульный рабочий процесс позволяет легко добавлять новые машины. На снимке экрана (выше) показан CAM-интерфейс kokopelli, который выполняет планирование пути для черновой обработки в ShopBot.

Эти инструменты построены на необычной парадигме моделирования твердого тела: объекты представлены в виде математических выражений, а не в виде наборов полигонов и ребер (аналогично OpenSCAD). Каждый объект является функцией x, y и z; если функция оценивается меньше нуля в конкретной точке пространства, эта точка находится внутри тела.. Например, сфера радиуса 1 может быть представлена ​​как «f (x, y, z) = pow (x, 2) + pow (y, 2) + pow (z, 2) - 1». Эта парадигма делает конструктивную твердую геометрию (например, соединения, пересечения, вырезы, смешивание) очень легкой. Недостатком является то, что некоторые традиционные операции САПР (такие как снятие фаски с определенного края) становятся сложными для выражения, поскольку функции объекта являются неявными, а не явными.

Сложный образец модели, этот DIY фрезерный станок основан на дизайне MTM A-Z Джонатана Уорда.

Солвер

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

Дизайнерский Python

CAD система Кокопелли построена на этом фундаменте. Вместо черчения и моделирования на основе объектов объекты проектируются как скрипты Python. Многие дизайнеры и креативные программисты уже знакомы с Python, поэтому кривая обучения не такая крутая, как для предметно-ориентированного языка. Кроме того, пользователи имеют доступ ко всем своим любимым библиотекам Python.

Дно формы «Tippy Top» со срезанной стороной. Отображается как в 2D (вверху), так и в 3D сетке (внизу) в режиме разделенного экрана kokopelli 2D / 3D.

Пользовательский интерфейс вдохновлен «Изобретением по принципу» Бретта Виктора. На левой панели показан исходный код Python; правая панель показывает визуализированную модель (в виде карты высот, сетки или обоих). Модели обновляются в режиме реального времени по мере изменения кода.

Элементы пользовательского интерфейса: слайдеры и многое другое!

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

Параметрический пример живой петли, включенный в кокопелли.

ПАРАМЕТРИЧЕСКАЯ ЖИВАЯ ПЕТЛЯ QUICKSTART В живые петли? Хотите создать свой собственный дизайн с ЧПУ для различных форматов обработки? Анна Казюнас Франция создала краткое руководство по созданию и изготовлению собственной параметрической жилой петли на примере встроенного кокопелли.

Пример параметрической коробки Кокопелли

сурьма

Сурьма использует ту же основу, что и kokopelli, но сочетает в себе скрипты Python и композицию на основе графов (аналогично расширению Grasshopper для Rhino). Объекты, преобразования и пользовательские сценарии представлены в виде узлов с набором входов и выходов. Эти узлы отображаются как интерактивные элементы, накладываемые на визуализированные модели; пользователи могут щелкнуть и перетащить, чтобы изменить свои свойства. Затем разработчики соединяют входы и выходы в графы, представляющие операции с набором примитивов.

Скриптовый интерфейс сурьмы. Скачать с github.com/mkeeter/antimony

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

Выдавливание текста в сурьме

Приложение Mac и источник Mac / Linux для сурьмы и кокопелли находятся по адресу github.com/mkeeter/kokopelli) и содержат примеры с графическими интерфейсами. Чтобы проверить включенные примеры, после установки используйте меню файла kokopelli, чтобы открыть файл «.ko» из папки примеров, чтобы включить CAD.

Поделиться

Оставить комментарий