- library/электрика_блоки.dxf — 4 блока (СВ_ВСТР, СВ_БРА, РОЗ_2, ВЫКЛ_3) для вставки - symbols/ + preview/ — по файлу и картинке на символ - docs/примитивы-электрики.md — разбор по примитивам, атрибутам, слоям, порядок сборки через MCP, грабли - docs/условные-обозначения.md, conventions/*.json — легенда из эталона (правило: на лист не ставить) - docs/электрические-планы-ГОСТ.md — накопленные правила оформления - scripts/build_symbols_mcp.py (проверен на живом MCP 1.6.0-ours, 0 анонимных блоков), scripts/inspect_dxf.py - examples/plan_el_final.dxf/.pdf/.png — пример применения (14 вставок)
15 KiB
Комплект чертежей по ГОСТ из данных — а не «картинкой от нейросети»
Класс задач: «получить комплект планов (электрика, полы, потолки, демонтаж) уровня рабочей документации, сгенерированный автоматически». Собран 01.10.2026 по поводу ролика Михаила Жилина (дизайнер интерьера, ТОП-100 AD) — «Я попросил GPT-6 Astra нарисовать чертежи электрики квартиры 100 м²» (https://www.youtube.com/watch?v=Sto1bDtOlY8, 26.09.2026, 15:18, 14 439 просмотров).
1. Что именно показал ролик (референс «планки качества»)
Автор дал модели 4 исходника: 2D-планировку, свою же 3D-модель, комплект визуализаций и пример рабочей документации как образец. Получил 4 согласованных листа по электрике за ≈35 минут (первые два — 9 мин 42 сек, вторые два — 27 мин).
| № | Лист | Содержание |
|---|---|---|
| 1 | План расстановки светового оборудования | световые точки с привязками + ведомость световых точек |
| 2 | План маркировки светового оборудования | спецификация типов светильников (споты, треки, бра, настольные лампы) |
| 3 | План выключателей и групп включения света | мастер-кнопка при входе + группы по зонам (обозначения V03) |
| 4 | План расстановки электрического оборудования | розетки, выводы под технику, ТВ, интернет (S40), драйверы (E08) |
Приёмы, которые стоит забирать (работают и без всякой Astra):
- «Сделай по образцу» — дать пример готовой РД, а не описывать словами. Это то, что дало состав и оформление листов.
- Опираться на промежуточный наглядный артефакт — модель «прочитала» свои же визуализации и расставила точки по ним. Аналог у нас: сначала растровая подложка/эскиз, потом координаты.
- Комплект, а не один лист. Ценность — в наборе из 4 согласованных листов (расстановка → маркировка → группы → розетки).
Косяки, которые у него остались (ровно то, что в AutoCAD ловится кодом): светильники «съехали» с оси в 2 местах; высота бра на листе (1 800) не бьётся с визуализацией; выключатель поставлен в угол вместо фартука; розетка над варочной поверхностью — лишняя; выключатели не размечены по расстоянию от проёма.
Экономика по словам автора: 35 минут и подписка $20/мес против 2 недель работы дизайнера студии и более 100 000 ₽. Год назад на этой задаче было «полный мрак».
Ключевое допущение (не цитата автора — вывод из ролика): DWG, слои, блоки и сохранённый файл в ролике не упоминаются ни разу; единственный способ правки — «попросить его в чате исправить». То есть листы — это растровые сгенерированные изображения, а не рабочая документация в открытом формате. Отсюда и весь разрыв с AutoCAD-подходом: у нас на выходе редактируемый DWG со слоями и блоками, где символ перетаскивается мышкой и атрибут правится в свойствах.
2. Норматив (что брать за основу символов и оформления)
| Документ | Что даёт | Ссылка |
|---|---|---|
| ГОСТ 21.210-2014 «СПДС. Условные графические изображения электрооборудования и проводок на планах» | таблицы изображений выключателей, переключателей, штепсельных розеток с размерами в мм — источник символов | docs.cntd.ru/document/1200115052 |
| ГОСТ 21.614-88 | заменён 21.210-2014 — применять новый | ruscable.ru/info/snip/Data1/3/3117/index.htm |
| ГОСТ Р 21.1101-2013 СПДС | основная надпись форма 3 (и 5, 6), оформление листов | mt-r.ru/upload/blok-skhemy/GOST_Р_21_1101-2013_SPDS.pdf |
| ГОСТ Р 21.101-2020 | актуальная редакция СПДС вместо 21.1101-2013 | fkr-spb.ru (PDF) |
⚠️ ГОСТ ≠ ISO. Встроенный в MCP titleblock_apply_iso_a3 — это ISO 7200, другая таблица. Для РФ нужен свой блок рамки со штампом по форме 3.
3. Пять технологий AutoCAD, которые дают результат
- Блоки с атрибутами (
BLOCK/ATTDEF/INSERT). Символ розетки — одна сущность с полями тип/высота/группа/монтаж. Для параметрики — динамические блоки (набор видимости: одинарная/двойная/скрытая). Через наш MCP —block_insertсattributes. - Извлечение данных
DATAEXTRACTION→ нативная таблица прямо в чертеже + выгрузка в Excel/CSV. Ведомость всегда сходится с чертежом, потому что считается из него. Документация Autodesk: help.autodesk.com, справка AutoCAD 2025 (GUID-D1433C93…). В ezdxf-мире аналог — обходINSERTиentity_create_table. - Слои и стили. Нужны свои:
СПДС-СО.Светильники,СПДС-СО.Выключатели,СПДС-ЭО.Розетки,СПДС-ЭО.Группы,АР.Подложка-мебель,Штамп,Размеры. Встроенныйtemplate_apply_layers(electrical)(7 слоёв, IEC-логика под схемы) для этого не годится. - Лист: Layout + Viewport + рамка со штампом; модель чертится 1:1, масштаб задаётся видовому экрану (
viewport_create(scale=1/50)). - Preflight кодом вместо «глаза проверяющего»: розетка в зоне варочной/мойки → ошибка; у каждого символа заполнены обязательные атрибуты; количество символов типа == строка ведомости; светильники одной группы на одной оси; нет символов «на слое 0».
Мелочь, дающая «то самое» ощущение чертежа: подложка мебели приглушённым цветом (ACI 250/8) на отдельном слое + порядок отрисовки.
4. Готовые решения (проверено 01.10.2026)
| Решение | Что даёт | Статус |
|---|---|---|
U-C4N/Autocad-MCP (autocad-mcp-pro) |
наш текущий сервер, 149 инструментов: блоки с атрибутами, нативные таблицы, листы, HATCH, размеры, preflight, system_run_lisp |
113★ / 34 форка / обновлён 24.09.2026 / MIT |
| Igualguana/AUTOCAD-ELECTRICAL-MCP | MCP прямо под AutoCAD Electrical: 46 инструментов — electrical (7), wires (5), components (6), reports (5), project (6); COM, нужен живой AutoCAD | 16★ / 1 форк / 15.04.2026 / AGPL-3.0 |
| harrissohail6/AutoCAD-Automation-Scripts | ezdxf-скрипты ровно под эту задачу: block_inserter (вставка символов по CSV координат), bom_generator (спецификация из блоков в Excel), layer_manager, cable_schedule, title_block_updater, symbol_library. Брать как образец вместо написания с нуля |
3★ / 1 форк / 05.12.2025 / MIT |
| dell4valt/gost_template | рамки и основные надписи по ГОСТ Р 21.1101-2013 (формы 3, 5, 6, титульные листы), PDF/PNG/SVG/Visio, шрифт ISOCPEUR | 25★ / 7 форков / 2020 / без лицензии |
| dwg.ru/dnl/15570 | динамический блок рамки со штампами уже по ГОСТ Р 21.101-2020 (актуальнее, чем 21.1101-2013) | dwg.ru |
| severin.su | шаблон ГОСТ Р 21.1101-2013 под AutoCAD: формы 3/4/5/6, масштаб А4–А0×3, атрибуты из подшивки | severin.su |
| AutoCAD Electrical (toolset) | автонумерация проводов, генерация обозначений компонентов, автоматические отчёты и спецификации. По блогу Hagerman (27.04.2026) отчёты/BOM на 97% быстрее, чем в чистом AutoCAD. Входит в подписку AutoCAD 2027 — стоит проверять, установлен ли toolset в AutoCAD 2023 RU на офисном ПК | Autodesk |
| Zoo Text-to-CAD | пример правильного подхода «текст → CAD»: на выходе редактируемые параметрические модели, а не картинки | для сравнения подходов |
5. Пайплайн: 5 слоёв
Слой 1 Библиотека символов по ГОСТ 21.210-2014 (разово)
один DXF с блоками + ATTDEF: ТИП, ВЫСОТА, ГРУППА, МОНТАЖ, ПРИМЕЧАНИЕ
↓
Слой 2 Модель данных объекта (JSON): rooms[], lights[], sockets[], switches[]
— НЕ «координаты линий», а описание объекта с привязками и группами
↓
Слой 3 Скрипт-сборщик (детерминированный, без участия LLM на этом шаге)
ГОСТ-слои → block_insert(+attributes) → dimension_* → таблица-ведомость
(строки считает КОД) → layout_create + viewport_create + свой ГОСТ-штамп
→ drawing_export_dxf / drawing_export_pdf
↓
Слой 4 Preflight-проверки (drawing_preflight + свои правила, см. §3.5)
↓
Слой 5 Живой AutoCAD на Windows-ПК: динамические блоки, .dwt, подшивка .dst
(ezdxf это не умеет) — через COM + system_run_lisp
Пример JSON-модели:
{
"object": "квартира 100 м2",
"rooms": [{"id": "R1", "name": "Кухня-гостиная", "poly": [[0,0],[6.2,0],[6.2,7.4],[0,7.4]]}],
"lights": [{"block": "LIGHT_SPOT", "room": "R1", "x": 1.2, "y": 1.4, "h": 0, "group": "3.1"},
{"block": "LIGHT_PENDANT","room": "R1", "x": 3.1, "y": 5.6, "h": 0, "group": "3.3"}],
"sockets": [{"block": "SOCK_DOUBLE", "x": 0.15, "y": 1.10, "h": 1100, "use": "фартук"}],
"switches":[{"block": "SWITCH_3G", "x": 6.05, "y": 1.05, "h": 900,
"groups": ["3.1","3.2","3.3"]}]
}
Группа включения обязана быть АТРИБУТОМ, а не текстом. Иначе не построить ни схему групп, ни автопроверку по зонам.
6. План внедрения (3 этапа — предлагать Павлу именно так)
| Этап | Что делаем | Результат |
|---|---|---|
| 1. Библиотека + один лист | библиотека символов по ГОСТ 21.210-2014 с атрибутами; сборщик строит один план расстановки света из JSON блоками вместо линий | DXF/DWG с блоками, высотами, подложкой мебели |
| 2. Ведомость и комплект | авто-ведомость из атрибутов + листы «маркировка», «выключатели и группы», «розетки»; рамка и штамп форма 3 | тот же комплект из 4 листов, но редактируемый |
| 3. Preflight и приёмка | правила проверок + приёмка на живом объекте | комплект без вычитки вручную |
7. Риски и ограничения (проговаривать честно)
- Библиотеку символов нельзя сгенерировать «на глаз» — она должна быть по ГОСТ 21.210-2014, иначе чертёж не примут. Это ручная работа один раз.
- Локальная модель (qwen3.8) не пишет длинный код (проверено 18.08.2026:
finish_reason='length', зацикливание). Расстановку планирует модель, а строит готовый скрипт. system_run_lispработает только на COM-бэкенде, т.е. при живом AutoCAD на Windows (192.168.50.91, AutoCAD 2023 RU) — из Docker недоступно.- ezdxf не создаёт динамические блоки с параметрами и не работает с подшивкой
.dst. - Штамп: ISO 7200 ≠ ГОСТ Р 21.1101 — встроенный инструмент MCP здесь не подойдёт.