ООО «Два Облака» Компания «Два Облака» представила свою продукцию на выставке Мир Климата 2016, проходившей 1-4 марта 2016 года в ЦВК «Экспоцентр». В течение четырех дней мы отвечали на вопросы посетителей и участников выставки на нашем стенде, а также провели два семинара в рамках выставки, посвященные продукции компании «Два Облака» и перспективным направлениям развития программного обеспечения в сфере ОВиК. Подробнее о нашем участии в выставке см. в разделе Мир Климата 2016 нашего сайта.

Курс «Промышленная математика»

Осокин В.В., Алимов Р.Ф.

Курс предназначен для выпускных курсов Механико-математического факультета (как математиков, так и механиков). Студентов, успешно прошедших курс в 2017 году, компания Два Облака готова взять на стажировку с начала 2018 года, а после защиты диплома – на работу.

В сентябре 2017 года будут прочитаны три вводные лекции для того, чтобы студенты глубже поняли тематику. Первая лекция состоится в четверг 14 сентября в 18:00, встреча у кафедры МаТИС Механико-математического факультета МГУ.

Для того, чтобы участвовать в данном курсе, необходимо подписаться на группу Курс "Промышленная математика" во ВКонтакте. Там мы сможем выбрать наиболее удобное всем время, когда читать курс в комментариях к заметке «Обсуждение: удобное время для проведения курса. Пишем время в комментариях.».

Курс читают к.ф.-м.н. Осокин Виктор Владимирович и выпускник Механико-математического факультета МГУ Алимов Рустамжон Фахриддинович.

Скачать программу курса

В сфере IT сейчас популярны роботы, машинное обучение, Big Data, мобильные приложения и прочие современные технологии. При этом многие хотят работать и открывать стартапы в этих сферах в отрыве от прочих областей их применения. В частности, во многом забыто огромное направление, очень близкое именно к Механико-математическому факультету МГУ – автоматизация при помощи современных веб и мобильных технологий производственных и коммерческих процессов на заводах России.

Одно из очень значимых направлений – строительство. Оно ведется в России всё большими темпами, соответственно нужно программное обеспечение, позволяющее как можно быстрее и точнее рассчитывать оборудование для различных объектов строительства.

Клиенты

При этом построить на объекте строительства стены и перекрытия – это лишь пол дела. Вторая половина – это провести всю инфраструктуру, а именно электричество, воду, отопление, сделать общую вентиляционную систему объекта и систему кондиционирования.

Последние направления объединены в общую сферу, которая носит название ОВиК (отопление, вентиляция и кондиционирование) / HVAC (heating, ventilation and cooling). Компания Два Облака исторически при разработке своих программных продуктов уделяет большое внимание сфере ОВиК и является лидером программного обеспечения России на этом рынке (см. список клиентов на рис.).

Клиенты

Данный курс (лекции + практикум) ставит целью познакомить слушателей с базовыми идеями создания программных продуктов на примере вентиляции. Курс будет интересен и математикам, и механикам Механико-математического факультета МГУ, поскольку в этой сфере требуются как знания и умение разобраться в алгоритмах (от банального задания кривых полиномами, поиска пересечения кривых, работы с координатами, до решения двумерных и трехмерных задач об упаковке, анализа Big Data объектов строительства), так и в программировании (рассказ будет вестись на примерах языков JavaScript, PHP, SQL), так и в физике процессов (будут рассказаны общие идеи и реализация расчета вентиляторов – ключевого оборудования в сфере вентиляции).

Задача 1 - Общая структура конфигуратора: поле секций, поле установки. Опросный лист

Необходимо подготовить верстку конфигуратора промышленного вентиляционного оборудования. Конфигуратор должен состоять из поля сбора конфигурации вентиляционной установки, поля со списком доступных секций в виде иконок и из опросного листа с формами для двух секций - для вентилятора (поля "Расход воздуха" и "Свободное давление") и для фильтра (поле "Потеря давления"). Кроме того в поле для сбора конфигурации необходимо собрать установку, состоящую из фильтра, водяного нагревателя и вентилятора.

Задача 2 - Сборка конфигурации приточной установки в конфигураторе

Необходимо реализовать перетаскивание секций в поле для сбора установки из поля со списоком секций, необходимо реализовать возможность удаления секций из конфигурации и перемещение секций внутри конфигурации установки. Для того, чтобы учесть необходимость дальнейшего открытия ранее сохраненных конфигураций, необходимо хранить конфигурацию установки в виде массива объектов-секций в JavaScript. Реализовать возможность передачи в конфигуратор заранее определенных конфигураций и их построение в конфигураторе. К каждой секции в установке необходимо приписывать уникальную строку (например, GUID) и хранить данную строку в конфигурации установки и в опросном листе.

Задача 3 - Генерация опросного листа. Расход, давление на вентиляторе. Потеря давления на остальных секциях

Необходимо реализовать генерацию опросного листа в соответствии с конфигурацией установки. У вентилятора форма должна содержать поля "Расход воздуха" и "Свободное давление", формы остальных секций должны содержать поле "Потеря давления". Формы должны располагаться в той очередности, в которой расположены секции в установке слева направо.

Задача 4 - Таблица установок. Список установок. Создание установки

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

Задача 5 - Сохранение конфигурации установки по мере ее изменения налету. Сохранение параметров с опросного листа налету. Проверка установки при нажании на кнопку «Рассчитать»

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

Задача 6 - Таблица вентиляторов. Задание кривой вентилятора полиномом

Необходимо создать таблицу моделей вентиляторов в базе данных, состоящую из следующих колонок: id, название, a0, a1, a2, a3, a4, a5, максимальное давление, максимальный расход.

Задача 7 - Запуск расчета после проверки установки. Сложение потерь на всех секциях. Подбор подходящего вентилятора упрощенной проверкой «Точка ниже полинома». Перевод установки в статус «Рассчитано»

Необходимо реализовать расчет установки, который подразумевает собой сложение потерь на всех секциях, добавление к ним свободного давления на вентиляторе (получили значение требуемого давления), взять значение расхода воздуха на вентиляторе и подобрать вентилятор, максимальное давление и максимальный расход больше, чем получившиеся требуемые расход и давление. Кроме того, необходимо, чтобы график вентилятора был выше требуемой точки. Вентиляторы необходимо отсортировать по максимальному расходу и по максимальному давлению по возрастанию и взять первыйх вентилятор из списка. Данные подобранного вентилятора и требуемую точку нужно записать в новый столбец в таблице установок (поле результатов расчета). Для того, чтобы понимать, установка рассчитана или нет, необходимо также создать столбец для статуса установки: рассчитана или нет. Учесть статус установки при ее открытии. Если статус "не рассчитана", то открывать конфигуратор, если статус "рассчитана", то просто написать надпись "Рассчитана".

Задача 8 - Вывод результата расчета. Упрощенная отрисовка установки в виде квадратов с помощью библиотеки GD. Переход обратно в статус «Конфигуратор»

Необходимо реализовать вывод результата расчета установок со статусом "рассчитано". Результаты расчета должны состоять из таблиц параметров-техданных для каждой из установок, аналогично тому, как был реализован опросный лист. В таблице техданных для вентилятора выводить требуемые расход, давление и название подобранного вентилятора. Для всех остальных секций выводить потери давления. Также добавить в расчет отрисовку установки в том виде, в котором она была собрана в конфигураторе. Каждая секция должна представлять квадрат с соответствующей данной секции иконкой. Кроме того, необходимо создать кнопку "Пересчитать установку" и по нажатии на нее переводить устанвоки в статус "не рассчитана".

Задача 9 - Отрисовка осей координат. Отрисовка точки

Реализовать вывод осей координат от нуля до максимального расхода и давления вентилятора с прибавлением 5% к данным максимальным значениям. Реализовать вывод требуемой точки на графике.

Задача 10 - Отрисовка графика вентилятора. Отрисовка параболы сети

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