воскресенье, 9 октября 2016 г.

Гидравлика в Civil 3D - оказывается, это более чем возможно

Весьма продолжительное время я осуществлял попытки хоть как-то связать информационное моделирование трубопроводных сетей в AutoCAD Civil 3D с гидравлическими параметрами трубопровода. Но затея, только появившись, практически мгновенно исчерпывала саму себя.
Но наконец-то, я получил желаемый результат!
Коротко о задаче.

Дано:
Диаметр трубы (Ø)
Уклон трубы (i)
Наполнение трубы (h/D)
Найти:
Скорость потока (v)
Расход (Q)

Напомню, что при проектировании наружных инженерных сетей мало определить только планово-высотное положение объектов. На основании расходов (которыми задается проектировщик) необходимо провести гидравлический расчет - т.е., другими словами, определить диаметр трубопровода. Существуют также много косвенных факторов, допустим, минимальные значения скоростей и наполнений, препятствующих заиливанию труб.
Поэтому при использовании AutoCAD Civil 3D специалисту порой приходится выполнять свою работу дважды: 1) трассировать сеть и определять планово-высотное положение сети, выбрав примерный/условный диаметр и проводить гидравлический расчет;
2) изменить трубопроводную сеть (диаметры труб) на основании проведенного расчета.
Ввиду небольшого ограничения функционала Civil 3D по умолчанию - отсутствия возможности изменять диаметры одновременно у нескольких объектов (огромное спасибо хотелось бы сказать создателям Civil Geo Tools, который можно скачать здесь) задача становится еще сложнее.
Цель, на первый взгляд, может показаться вовсе невыполнимой ввиду огромного количества дополнительных параметров, таких как гидравлический радиус (R), площадь живого сечения (w), безразмерного коэффициента (k), в различной степени зависящих от наполнения и диаметра трубы. Также на моем пути встала вторая косвенная задача - вывести формулу для определения скорости потока (т.к. ни в одной из современных брошюр таковой найти не удалось - были сугубо предпосылки).
Но правильный подход к делу изменил развитие событий.
1) Настроив каталог трубопроводных сетей, добавив в него все недостающие параметры, стало возможным задавать каждому типоразмеру трубопровода нормативное значение заполнения (которое пользователь может в любой момент времени изменить). Градация, естественно, равна 0.1.

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


Теперь я могу сказать точно: "Гидравлика и Civil 3D - понятия совместимые".

5 комментариев:

  1. Здравствуйте, Эдуард! Интересная статья. Будут ли более подробные видео или статьи по теме гидравлического расчёта канализационных сетей? Имели ли вы опыт работы в Storm Sewers?

    ОтветитьУдалить
  2. Добрый вечер! Я безусловно планирую об этом написать в будущем.
    В Storm Sewers немного изменена методика расчета, опирающаяся на коэффициент Мэннинга. Поэтому сейчас я работаю над тем, как возможно совместить гидравлические расчеты на территории стран СНГ со Storm Sewers.

    ОтветитьУдалить
  3. эдуард, самое интересное как ты добился этого ? (уверен что ответа полного не будет, но результат потрясающий!))

    ОтветитьУдалить
    Ответы
    1. Леонид, приветствую!
      Если кратко, то процесс выглядел следующим образом:
      1) Выведена формула зависимости гидравлических характеристик от уклона, диаметра и наполнения (при этом каждому из диаметров назначено по умолчанию нормативное значение);
      2) Созданы дополнительные атрибуты у труб, отвечающие за наполнение и другие гидравлические характеристики;
      3) C помощью выражений настроена связь между геометрическими и гидравлическими характеристиками.

      Удалить
    2. Эдуард, приветствую. Осваиваю civil. Замыслил попытку "подружить" программу с методикой ВОДГЕО (расчет поверхностного стока).
      Например: чтобы инженеру осталось рассчитать параметр А, и вставить в расчеты недостающие параметры (n, mr, P и тд). А чтобы программа сама считала расход в коллекторе исходя из времени добегания (которая связана и с наполнением и скоростями).
      Вопрос: такое вообще технически возможно, или не стоит тратить свое время и считать по старинке в екселе? :)

      Удалить