Моделирование ферм в Revit требует выбора между системными семействами и пользовательскими компонентами в зависимости от стадии проекта и требований к спецификации. Ошибка на этапе выбора метода приводит к потере параметричности, некорректным ведомостям или невозможности координации с конструкторами. Ожидаемый результат — параметрическая модель фермы, корректно отображающаяся в спецификациях, разрезах и на 3D-виде, готовая к передаче в расчетную программу.

Цена ошибки проявляется в переработке черновиков на стадии КД, расхождении объемов металла 15–30% и конфликтах при выгрузке в IFC. Ситуация усложняется, когда архитектурная сетка не совпадает с расчетной схемой фермы, либо при необходимости показать сборные узлы с болтами и швайными швами. Граница применимости стандартных инструментов — фермы с постоянным сечением панели и прямыми поясами; для скошенных, ломаных или пространственных ферм требуется адаптивная геометрия.

Глава 01

Определение типа фермы и выбор инструмента

Первым действием является классификация фермы по геометрии: параллельные пояса, однокатная, двухскатная, полигональная или пространственная. Для параллельных и однокатных ферм с постоянным шагом панели достаточно системного семейства «Ферма» (Truss). Двухскатные и полигональные фермы требуют адаптивных точек на каждом узле. Пространственные фермы (сфероиды, купола) собираются только через Adaptive Component с 3D-точками размещения.

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

Глава 02

Подготовка профилей и материалов

Перед созданием фермы загрузите в проект профили стальных сечений (I-балки, уголки, трубы, двутавры) в формате RFA с правильными параметрами: ProfileName, Height, Width, WebThickness, FlangeThickness. Назначьте материал «Сталь» с плотностью 7850 кг/м³ для корректного расчета массы. Если профилей нет в библиотеке, создайте их через Family → New → Profile, замкнув контур полилинией без самопересечений.

Для сборных ферм подготавливайте отдельные семейства узлов: гусеницы, плиты с швами, болтовые соединения. Размещайте их как вложенные компоненты в основной семействе фермы с привязкой к опорным плоскостям узлов. Контрольный признак — при изменении шага панели узлы перемещаются синхронно с поясами и стойками.

Глава 03

Создание фермы через системное семейство

В проекте перейдите на вкладку Structure → Truss. В свойствах выберите тип «Параллельные пояса» или «Односкатная». Нажмите «Edit Type» → «Truss Type Properties» → добавьте типоразмер под проектное название (например, «Ферма_П-24_6м»). Задайте профили верхнего и нижнего пояса, стойк и строп через выпадающие списки профилей. Установите шаг панелей (Panel Spacing) и высоту фермы (Truss Height).

Разместите ферму кликом по двум точкам: начало и конец оси. Revit построит геометрию по заданным правилам. Проверьте в 3D-виде: пояса должны быть ориентированы полками вверх/вниз, стойки и стропы — перпендикулярно поясам. Если ориентация неверна, в типе фермы измените параметр «Chord Orientation» или поверните профиль в семействе профиля на 90°.

Глава 04

Создание адаптивной фермы для нетиповых схем

Создайте новое семейство: File → New Family → Metric Generic Model Adaptive. В режиме Family Editor разместите адаптивные точки (Adaptive Points) в узлах фермы: верхний пояс, нижний пояс, промежуточные узлы. Нумеруйте точки последовательно по ходу фермы. Соедините точки линиями (Model Lines) или создайте сплайн через точки для скошенных поясов.

На каждой линии разместите профиль через «Create Form» → «Sweep» → выберите профиль и путь. Для стойк и строп создайте отдельные Sweep-формы между соответствующими парами точек. Добавьте параметры типа: «PanelCount» (integer), «TrussHeight» (length), «TopChordProfile», «BottomChordProfile», «WebProfile» (family types). Привяжите геометрию к параметрам через формулы в Family Types.

Глава 05

Параметризация и формулы управления

В Family Types создайте параметр «PanelSpacing» с формулой: TrussLength / PanelCount. Для адаптивных точек задайте координаты X через формулы: Point1_X = 0, Point2_X = PanelSpacing, Point3_X = 2 * PanelSpacing и так далее. Координаты Y верхнего пояса: для параллельных — константа TrussHeight, для скошенных — линейная функция от X. Добавьте параметр «FlipChords» (yes/no) для инверсии ориентации профилей через формулу if(FlipChords, -90°, 0°) в угле вращения профиля.

Обязательное условие: все размерные параметры должны быть типа Instance, если ферма уникальна, или Type — для типовых изделий. Наблюдаемый признак рабочей параметризации — изменение PanelCount перестраивает всю геометрию без ошибок «Constraints not satisfied». Если появляются ошибки, проверьте замкнутость контуров профилей и отсутствие нулевых длин сегментов.

Порядок создания адаптивной фермы

  1. 01
    Создать семейство Metric Generic Model AdaptiveКонтроль: Появилась среда Family Editor с 3D-точками
  2. 02
    Разместить адаптивные точки в узлах схемыКонтроль: Точки пронумерованы последовательно без пропусков
  3. 03
    Построить пути поясов и решетки через Model LinesКонтроль: Линии соединяют соответствующие пары точек
  4. 04
    Нанести профили через Sweep на каждый путьКонтроль: Профили следуют за путями при движении точек
  5. 05
    Добавить параметры типа и формулы координатКонтроль: Изменение PanelCount перестраивает геометрию без ошибок
  6. 06
    Загрузить в проект и разместить по 3D-точкамКонтроль: Ферма привязана к осям и уровням проекта
Глава 06

Размещение адаптивной фермы в проекте

Загрузите семейство в проект. На вкладке Structure → Component → Model In-Place или Place Component выберите семейство фермы. Revit запросит размещение адаптивных точек: кликните в последовательности, соответствующей нумерации в семействе (обычно: левый нижний узел, левый верхний, правый верхний, правый нижний, промежуточные). Для ферм с большим количеством панелей удобнее разместить точки по осям сетки через «Place by Points» на виде 3D или плане крыши.

После размещения проверьте свойства экземпляра: PanelCount, TrussHeight, профили должны читаться и редактироваться. Если ферма «перевернута» — измените порядок точек при размещении или используйте параметр FlipChords. Для привязки к уровням задайте высоту точек через параметр «Elevation» или привяжите к уровням проекта через «Associated Level».

Глава 07

Сборные узлы и детализация

Для стадии КД в семействе фермы добавьте вложенные компоненты узлов: гусеничные плиты, швы, болты. Создайте семейство узла (Metric Structural Connection) с параметрами: толщина плиты, диаметр шва, класс болтов. В основной ферме разместите узел на каждой адаптивной точке через «Component» → «Place Instance» с привязкой к точке. Настройте видимость узлов через параметр «ShowConnections» (yes/no) для переключения между видами АР и КД.

Альтернатива — моделирование узлов в проекте через инструмент Steel Connections после размещения фермы. Это дает доступ к библиотеке типовых узлов (пластинчатые, гусеничные, болтовые) и автоматической спецификации крепежа. Ограничение: соединения не переносятся при копировании фермы в другой проект без переноса базы данных соединений.

Частые проблемы и исправления

СимптомПричинаЧто сделать
Ферма не строится: "Constraints not satisfied"Профиль не замкнут или имеет самопересеченияОткрыть семейство профиля, проверить контур на замкнутость и отсутствие пересечений
Профили ориентированы неверно (полки вбок)Угол вращения профиля в семействе или параметр Chord OrientationВ семействе профиля повернуть контур на 90° или в типе фермы сменить Chord Orientation
При изменении PanelCount геометрия ломаетсяФормулы координат ссылаются на несуществующие точки или деление на нольПроверить формулы: PanelCount > 0, индексы точек в допустимом диапазоне
Спецификация не показывает массу фермыМатериал не назначен или плотность = 0Назначить материал "Сталь" с плотностью 7850 кг/м³ в типе профиля или семействе фермы
Глава 08

Спецификация и выгрузка в IFC

Для получения ведомости ферм создайте спецификацию: View → Schedules → Schedule/Quantities → Category: Structural Framing (если ферма системная) или Generic Models (если адаптивная). Добавьте поля: Type Mark, Length, Volume, Material, Mass (рассчитывается как Volume × Density). Для адаптивных ферм добавьте общие параметры: TrussMark, PanelCount, TrussHeight — и включите их в спецификацию.

При выгрузке в IFC системные фермы попадают в класс IfcMember с типом IfcMemberType.USERDEFINED и атрибутом Truss. Адаптивные фермы выгружаются как IfcBuildingElementProxy. Для корректной передачи в расчетные комплексы (SCAD, LIRA, Robot) назначьте в свойствах семейства параметр «Analytical Model» → «Enable Analytical Model» и проверьте, что аналитическая ось проходит по центроиде сечения поясов.

Контроль готовой модели

  • Геометрия фермы перестраивается при изменении PanelCount без ошибок
  • Профили ориентированы полками в вертикальной плоскости
  • Спецификация выдает длину, объем и массу по каждому типоразмеру
  • Адаптивные точки привязаны к осям и уровням проекта
  • Узлы соединений отображаются на разрезах и в 3D-виде
  • IFC-выгрузка содержит класс IfcMember с атрибутами профилей
Глава 09

Границы применимости и альтернативы

Системное семейство «Ферма» покрывает 80% типовых случаев: параллельные, однокатные, двухскатные фермы с постоянным шагом. Адаптивные компоненты нужны для скошенных поясов, переменного шага панелей, пространственных ферм и интеграции с Dynamo/Grasshopper. Для параметрического генератора типовых ферм используйте Dynamo-скрипт, создающий экземпляры системного семейства по таблице Excel — это быстрее ручного размещения и исключает опечатки в параметрах.

Если проект требует детализации до каждого шва и болта на стадии КМ — моделируйте ферму в Advance Steel или Tekla, а в Revit оставьте только оболочку для координации. Revit не является инструментом конструкторской детализации металла; его роль — координационная модель и базовая спецификация. Граница перехода — появление требования к чертежам узлов с позициями деталей и сборочными чертежами.

Глава 10

Работа с Dynamo для пакетного создания

Для серии типовых ферм (например, 50 ферм с разной длиной и шагом) настройте Dynamo-граф: чтение Excel-таблицы с параметрами (Mark, Length, Height, PanelCount, Profiles) → цикл создания экземпляров System Family Truss через узел StructuralFraming.ByCurveAndLevel. Ключевой узел — TrussType.ByParameters для создания типоразмеров на лету. Проверка: после запуска графа в проекте появляются фермы с заполненными параметрами и корректной геометрией.

Ограничение Dynamo: не может создавать адаптивные компоненты с переменным количеством точек. Для таких ферм генерируйте семейство с максимальным числом точек, а лишние точки схлопывайте в нулевые сегменты через формулы. Альтернатива — Python-скрипт внутри Dynamo, создающий семейство программно через Revit API.

Глава 11

Координация с конструкторами и смежными разделами

Передайте конструктору IFC-файл с фермами и таблицу соответствия марок: Revit Mark ↔ Расчетная марка. Требуйте обратную выгрузку расчетных нагрузок в общие параметры фермы (N_max, M_max) для проверки профилей. С вентиляцией и трубопроводами координируйте пролеты в панелях фермы: минимальная световая высота под нижним поясом и проходы между стропами. Наблюдаемый признак разрешенного конфликта — отсутствие пересечений в Navisworks с допуском 50 мм.

Для архитектурного отображения создайте вид «Крыша_Фермы» с фильтром видимости: только Structural Framing, переопределение графики — тонкие линии, без закраски. Настройте аннотации: марки ферм, размеры между осями, отметки верха поясов. Это база для чертежей КЖ и КМ без дублирования модели.

Выбор подхода по условиям задачи

  • Ферма типовая, параллельная или однокатная, стадия КЖСистемное семейство Truss + Dynamo для серии
  • Ферма двухскатная, полигональная, переменный шаг панелейAdaptive Component Generic Model
  • Требуется детализация узлов до швов и болтов (КМ)Моделирование в Advance Steel / Tekla, в Revit — только оболочка
  • Пространственная ферма (купола, арка)Adaptive Component с 3D-точками или Dynamo + Geometry.Translate
  • Нужна быстрая спецификация металла без детализации узловСистемная ферма с материалами и параметром Mass
Глава 12

Часто задаваемые вопросы

Почему ферма не появляется в спецификации стальных конструкций?

Системная ферма попадает в категорию Structural Framing только если её тип назначен в семействе Truss. Адаптивная ферма — в Generic Models. Проверьте категорию семейства и настройте спецификацию под соответствующую категорию.

Как изменить ориентацию профиля пояса после размещения фермы?

В типе системной фермы измените параметр Chord Orientation. В адаптивной — параметр экземпляра FlipChords или поверните профиль в исходном семействе профиля на 90° и перезагрузите.

Можно ли сделать ферму с разными профилями стойк в разных панелях?

В системном семействе — нет, профиль строп единый для всех панелей. В адаптивном — да, создайте параметр массива профилей или используйте вложенные адаптивные компоненты для каждой панели с собственным типом профиля.

Как привязать адаптивную ферму к осям сетки, чтобы она двигалась с ними?

При размещении кликайте точно на пересечения осей. После размещения выделите ферму → Edit Adaptive Points → привяжите каждую точку к ближайшей оси через иконку привязки (значок зажима). При движении оси точка последовает за ней.

Почему масса в спецификации показывает 0 или неверное значение?

Проверьте материал профиля: должен быть назначен материал с плотностью (Steel — 7850 kg/m³). В свойствах типа профиля параметр Material не должен быть «By Category» без материала в категории. Для адаптивных ферм включите расчет объема в параметрах формы (Volume = True).

Как выгрузить ферму в IFC с правильным классом IfcTruss?

В настройках экспорта IFC (File → Export → IFC → Modify Setup) в таблице Category Mapping для категории Structural Framing задайте IFC Class = IfcMember, Predefined Type = TRUSS. Для адаптивных ферм в Generic Models задайте IfcBuildingElementProxy с пользовательским типом.