Как стать автором
Обновить
42.72
Рейтинг

Промышленное программирование *

Все об АСУ ТП

Сначала показывать
  • Новые
  • Лучшие
Порог рейтинга
  • Все
  • ≥0
  • ≥10
  • ≥25
  • ≥50
  • ≥100

TbK — удобный, многофункциональный и бесплатный терминал для работы с COM-портами и поддержкой Modbus-протокола

Отладка *Промышленное программирование *Программирование микроконтроллеров *Производство и разработка электроники *Софт
Из песочницы

Думаю, что каждый из embeded-разработчиков хотя бы раз в жизни пользовался терминалом для работы с COM-портом ПК - простой программой, позволяющей персональному компьютеру через встроенный интерфейс RS-232 (или USB-переходник) общаться с внешними устройствами, например такими, как GSM-модем или просто обмениваться данными с микроконтроллером в процессе разработки и отладки прошивки.

Таких терминалов на данный момент создано довольно много, как говорится "на любой вкус". Однако, как часто бывает, когда начинаешь более-менее длительно работать в какой-либо программе, начинает постоянно не хватать то одной функции, то другой, то одно кажется сделано неудобно, то другое. Всё время ловишь себя на мысли: "это лучше сделать было бы так, а это - вот эдак" :)

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

Читать далее
Всего голосов 11: ↑11 и ↓0 +11
Просмотры 1.5K
Комментарии 15

Новости

Автоматические последовательности: как освободить оператора от ручного труда, ничего при этом не сломав

Блог компании Северсталь Промышленное программирование *

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

Но вернемся в реальность и рассмотрим применение АП на производстве. Меня зовут Константин Семаков, в «Северстали» я создаю и настраиваю автоматические последовательности для агрегатов. Хочу поделиться своим опытом: как мы создаем автоматические последовательности и настраиваем их, находим ошибки и ускоряем работу оборудования.

Настроить АП
Всего голосов 1: ↑1 и ↓0 +1
Просмотры 998
Комментарии 2

Как белка с ИИ сэкономила нам 100 миллионов на обогащении руды

Блог компании Группа НЛМК Анализ и проектирование систем *Промышленное программирование *Машинное обучение *

В последнее время у нас на СГОКе (это Стойленский горно-обогатительный комбинат) можно услышать фразы типа: «А что тебе белка сегодня советовала?» Со стороны странновато, но объясняется просто: мы запустили систему с ИИ, которая рекомендует операторам оптимальные настройки оборудования при любом из тысяч возможных сочетаний технологических параметров (все это для получения максимальной производительности обогатительной секции). Официальное название системы очень длинное, а неформально мы зовем ее «Белка» — по аналогии с названием компании, которая помогала нам в разработке, хотя многие сотрудники уверены, что название происходит от пушистого грызуна, которому, теоретически, может и руда по зубам.

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

Читать далее
Всего голосов 54: ↑54 и ↓0 +54
Просмотры 6.5K
Комментарии 20

Многомерные данные и оценка качества их визуализации

Блог компании ОЭЗ «Иннополис» — дом IT-компаний и специалистов Промышленное программирование *Визуальное программирование *
image

  • Многомерные данные — что они из себя представляют?
  • Зачем их визуализировать и что мы можем понять из визуализации?
  • Какими способами можно уменьшить размерность таким образом, чтобы сохранилась главная структура данных и какие свойства учитывать при проектировании?
Читать дальше →
Рейтинг 0
Просмотры 1.4K
Комментарии 1

Как сделать 240 килобайт исходников на ПЛК для управления одними рольставнями

Программирование *Совершенный код *Промышленное программирование *SCADA *Умный дом

Статья по ссылке напомнила мне один недавний проект. Статья отличная, но в ней не хватает какого-нибудь практического примера. От этого остаются неясными границы применимости в принципе неплохих советов автора. В своем проекте я полностью следовал рекомендациям из упомянутой статьи и вот что вышло.

Читать далее
Всего голосов 4: ↑4 и ↓0 +4
Просмотры 4.6K
Комментарии 15

Российские BIM-технологии: проектирование систем электроснабжения в Model Studio CS

Блог компании Нанософт Анализ и проектирование систем *CAD/CAM *Промышленное программирование *Софт

Российские BIM-технологии: проектирование систем электроснабжения в Model Studio CS

Эта статья цикла, посвященного российским BIM-технологиям, рассказывает об АРМ Электроснабжения. В основу АРМ положен программный продукт Model Studio CS Кабельное хозяйство, который может применяться при разработке разделов электроснабжения, электроосвещения, контрольно-измерительных приборов и автоматизации и предоставляет возможность сформировать трехмерную информационную модель объекта проектирования.

Читать далее
Всего голосов 6: ↑6 и ↓0 +6
Просмотры 1.3K
Комментарии 2

Безопасность ПЛК: 3) Вся логика процесса по возможности должна быть в ПЛК

Информационная безопасность *Программирование *Совершенный код *Промышленное программирование *SCADA *
Перевод
Tutorial

Оставьте логику процесса по возможности в ПЛК. HMI не лучшее решение для выполнения задач, таких как интегрирование, суммирование и прочее.

Разбираем рекомендации по безопасному программированию ПЛК, формируем список своих рекомендаций. Всех неравнодушных прошу под кат.

Читать далее
Всего голосов 2: ↑1 и ↓1 0
Просмотры 1.8K
Комментарии 5

Варим суп из стали: оптимизация логистики ковшей и как устроен цех КЦ № 2

Блог компании Группа НЛМК Анализ и проектирование систем *Промышленное программирование *Управление проектами *
Привет из конвертерного цеха металлургического комбината! Смотрите, у нас тут есть вот такой суп в ковше, стоящем на сталевозе:

image
Таких ковшей на 320 тонн стали в цехе 40 штук, и они медленно остывают. Этой стали грустно и одиноко, она подмерзает. Через эти ковши проходит 10 миллионов тонн стали в год, это 14% стали России

На входе в цех у нас жидкий чугун и металлолом, на выходе надо получить сляб — большой слиток стали. Контур системы диспетчеризации «Гефест» начинается с конвертера, где мы продуваем чугун кислородом, таким образом окисляем и удаляем ненужные нам примеси. После конвертера получается «стальной бульон» для супа, в который уже можно добавлять основные ингредиенты, чтобы получались разные марки стали. За смену мы выплавляем несколько заказов, и каждая сталь требует своего рецепта — это разные добавки, разные техпроцессы, разные температуры и разные последовательности действий.

image
На участке аргонной установки

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

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

Но давайте начну с, собственно, рассказа про то, что же именно оптимизируется в цехе.
Читать дальше →
Всего голосов 104: ↑104 и ↓0 +104
Просмотры 12K
Комментарии 37

Безопасность ПЛК: 2) Следите за режимом работы

Информационная безопасность *Программирование *Совершенный код *Промышленное программирование *SCADA *
Перевод
Tutorial

Держите ПЛК в режиме исполнения. Если ПЛК вышел из режима исполнения, то следует выдать предупреждение оператору.

Разбираем рекомендации по безопасному программироваю ПЛК, формируем список своих рекомендаций. Всех неравнодушных прошу под кат.

Читать далее
Всего голосов 1: ↑1 и ↓0 +1
Просмотры 1.6K
Комментарии 2

Безопасность ПЛК: 1) Модульность программы

Информационная безопасность *Программирование *Совершенный код *Промышленное программирование *SCADA *
Перевод
Tutorial

Разделите код на модули, рационально используйте программные организационные единицы. Тестируйте модули независимо.

Разбираем рекомендации по безопасному программироваю ПЛК, формируем список своих рекомендаций. Всех неравнодушных прошу под кат.

Читать далее
Всего голосов 3: ↑3 и ↓0 +3
Просмотры 2.1K
Комментарии 9

3. Частотные характеристики звеньев и систем автоматического управления. 3.9 Изодромное звено (изодром)

Анализ и проектирование систем *Математика *Промышленное программирование *Matlab *Визуальное программирование *
Tutorial

Лекции по курсу «Управление Техническими Системами» читает Козлов Олег Степанович на кафедре «Ядерные реакторы и энергетические установки» факультета «Энергомашиностроения» МГТУ им. Н.Э. Баумана. За что ему огромная благодарность!

Данные лекции готовятся к публикации в виде книги, а поскольку здесь есть специалисты по ТАУ, студенты и просто интересующиеся предметом, то любая критика приветствуется. В предыдущих сериях:

1. Введение в теорию автоматического управления.
2. Математическое описание систем автоматического управления 2.1 — 2.32.3 — 2.82.9 — 2.13.
3. ЧАСТОТНЫЕ ХАРАКТЕРИСТИКИ ЗВЕНЬЕВ И СИСТЕМ АВТОМАТИЧЕСКОГО УПРАВЛЕНИЯ РЕГУЛИРОВАНИЯ.
3.1. Амплитудно-фазовая частотная характеристика: годограф, АФЧХ, ЛАХ, ФЧХ.
3.2. Типовые звенья систем автоматического управления регулирования. Классификация типовых звеньев. Простейшие типовые звенья.
3.3. Апериодическое звено 1–го порядка инерционноезвено. На примере входной камеры ядерного реактора
3.4. Апериодическое звено 2-го порядка
3.5. Колебательное звено
3.6. Инерционно-дифференцирующее звено
3.7. Форсирующее звено
3.8. Инерционно-интегрирующее звено (интегрирующее звено с замедлением).

А в качестве примера мы рассмотрим изодромный регулятор для водяного нагревателя, что сейчас особенно актуально, поскольку наступила осень, и девушки раздеваются только на Бора-Бора или в душе.

А так же узнаем что такое "астатизм" и почему это не лечится.

Читать далее
Всего голосов 4: ↑4 и ↓0 +4
Просмотры 2.2K
Комментарии 32

Как я настраивал связь по ModBus

Промышленное программирование *
Tutorial

Про Модбас написано огромное количество статей и снято множество видео: казалось бы, настроить его и принимать по нему нужные данные не составит большого труда, но на практике оказывается не совсем так. Безусловно все это очень помогает, но все же есть несколько нюансов, способных сильно затормозить работу для новичка, впервые столкнувшего с этим, о чем я и хочу поведать на конкретном примере. Имеется измерительный преобразователь тока Е854ЭЛ c RS485 на борту и поддержкой протокола Modbus RTU (здесь и далее разговор ведется только за этот формат). Моя задача писать данные с токового трансформатора, подключенного к этому преобразователю, на удаленный сервер, у которого уже установлена и настроена программа для приема и записи сигналов, и у нее вроде как есть возможность подключения по Модбасу, но опыта настройки этого вида связи нет. Ну что же, будем пробовать. 

Для начала было бы интересно попробовать подключиться к прибору со своего компа, чтобы просто разобраться что и как там вообще работает. Для этого подойдет уже имеющийся в наличии адаптер USB to RS485. Подключаем адаптер USB кабелем к компу, и он конечно же требует драйвера: скачиваем их, устанавливаем и снова подключаем - в диспетчере устройств появляется новый COM порт. Это хорошо, все идет по плану. Теперь нужно запитать сам прибор и присоединить двумя проводами к адаптеру.

Читать далее
Всего голосов 8: ↑4 и ↓4 0
Просмотры 3.9K
Комментарии 16

Почти детективная история одной «кровавой» ошибки

Блог компании Timeweb Программирование *Промышленное программирование *Программирование микроконтроллеров *Производство и разработка электроники *
Tutorial


Дополнение статьи «Размещение кучи FreeRTOS в разделе CCMRAM для STM32», и в продолжение серии статей про различные полезности для STM32 (1, 2 и 3), хочу обратить внимание на одну особенность работы с CCM RAM памятью, которая может быть причиной совершенно не очевидных ошибок в работе устройств, одна из которых выпила у автора достаточно много крови, так что с чистой совестью её действительно можно назвать «кровавой».

А сама история такова. В логике алгоритма некого устройства засела трудноуловимая плавающая ошибка. И чтобы временно купировать её влияние, было принято решение периодически устройство перезагружать. Сам знаю, что это не очень хорошее решение, но как временный костыль пойдет.

Вот только костыль не помог. Помогало только физическое выключения питания, а программная перезагрузка микроконтроллера не помогала! Более того, даже перезагрузка с помощью кнопки RESET иногда не срабатывала! Устройство перезагружалось, но неправильное поведение устройства никуда не исчезало и в итоге все равно приходилось отключать питание физически.

Читать дальше →
Всего голосов 31: ↑29 и ↓2 +27
Просмотры 7.1K
Комментарии 28

Копируем файлы пачками в AWS S3

Python *Программирование *Amazon Web Services *Промышленное программирование *Разработка под Linux *

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

Чтобы понять, что пора начинать архивацию, зададим определенную структуру каталогов и будем просить пользователя загружать триггер-файлы с расширением .trigger когда он закончит. Этакая эмуляция кнопки Done. Структура каталогов будет такой:

<batch_name>/done.trigger
<batch_name>/files/<file_key_1>
<batch_name>/files/<file_key_2>
...
<batch_name>/files/<file_key_n>

Как видим, для каждой пачки создается свой каталог <batch_name> с подкаталогом files, в который и заливаются уже пользовательские файлы с каталогами и именами, которые он хочет. Триггер-файл загружается в <batch_name> и по ключу этого  файла можно понять какие конкретно файлы нужно отправить в архив. Но здесь есть один нюанс, мы хотим при копировании в архив вырезать каталог files. Т.е. файл <batch_name>/files/<file_key_1> скопировать в <batch_name>/<file_key_1>.

К счастью, S3 позволяет отслеживать загрузку файлов с определенным суффиксом и отправлять уведомления при наструплении этого события. В качестве получаетеля этих уведомлений можно указать аж 3 сервиса: SNS, SQS и Lambda-функцию. Но тут не без нюансов. Так, первые 2 типа поддерживают только стандартные очереди и SNS, а FIFO не поддерживают, увы.

Читать далее
Всего голосов 3: ↑0 и ↓3 -3
Просмотры 1.5K
Комментарии 4

[Антикейс] Прогнозирование и планирование потребления электроэнергии с помощью machine learning (эксперимент)

Промышленное программирование *Машинное обучение *Исследования и прогнозы в IT Инженерные системы
Из песочницы

Большинство статей на Хабре на тему ML прогноза - про применяемые алгоритмы, подходы, инструментарий, но без фокуса на практическое решение задач.

Мы решили поделиться своим опытом и результатами применения машинного обучения для прикладной задачи крупных промышленных предприятий, которые последние 15-20 лет прогнозируют электропотребление «ручным» способом.

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

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

Очевидный прямой эффект от повышения точности почасового прогнозирования дал старт нашей исследовательской работе. Всё просто: повышаем точность прогноза на n% → заказчик получает меньший счёт от сбытовой компании или рынка → мы «в одну строчку» защищаем бюджет на такие системы.

Однако, на то это и эксперимент, чтобы получить реальный, а не теоретический ответ на вопросы: где можно повысить точность и сложно ли это сделать? 1-2-3% - это сколько в рублях?

Читать далее
Всего голосов 8: ↑8 и ↓0 +8
Просмотры 2.3K
Комментарии 3

Все «тайны» настройки софта для плагинов и периферии OpenCPN

Настройка Linux *Программирование *C++ *Промышленное программирование *Прототипирование *
Tutorial

После публикации статьи Использование OpenCPN для автоматизации производства / Хабр (habr.com) в личной почте были вопросы по настройке программного обеспечения на собранном устройстве.

Это устройство размещается непосредственно в рабочей зоне на складе запасных частей. Чем больше диапазон дистанций для размещения этого устройства, тем лучше. Оптимальное соотношение цена-качество-дистанция у такого кронштейна NB North Bayou Gaming Monitor Stand NB45-B.

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

Цитаты кода на C++ под wxWidget также будут приведены.

Читать далее
Всего голосов 7: ↑7 и ↓0 +7
Просмотры 1.6K
Комментарии 2

Российские BIM-технологии: проектирование внутренних инженерных систем в Model Studio CS

Блог компании Нанософт Анализ и проектирование систем *CAD/CAM *Промышленное программирование *Софт

Эта статья цикла, посвященного российским BIM-технологиям, рассказывает о  продуманном процессе проектирования внутренних инженерных систем в программных комплексах Model Studio CS Отопление и вентиляция, Model Studio CS Водоснабжение и канализация и Model Studio CS Трубопроводы.

Читать далее
Рейтинг 0
Просмотры 1K
Комментарии 0

Еще раз о Code Review

Python *Программирование *ООП *Промышленное программирование *
Из песочницы

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

Читать далее
Всего голосов 17: ↑8 и ↓9 -1
Просмотры 3.8K
Комментарии 16

Как мы автоматизировали нефтедобычу, или немного о телемеханике

Промышленное программирование *SCADA *Разработка систем связи *Программирование микроконтроллеров *Инженерные системы

"Перед тем, как начинать автоматизацию, нужно избавиться от бардака. Иначе получится автоматизированный бардак."

А расскажу-ка я сегодня вам немного про АСУТП. Вернее, не совсем. Когда говорят "АСУТП", на ум обычно приходят какие-нибудь производственные площадки, "серьезные" ПЛК типа Siemens или Allen-Bradley с алгоритмами на МЭКовских языках программирования, мнемосхемы в SCADA-системах по всем правилам ГОСТ, и огромные тома проектов под все это дело... Нет, сегодня речь пойдет не о том. Сегодня мы поговорим о "неправильном" АСУТП. А именно, о системах радиотелемеханики.

Читать далее
Всего голосов 28: ↑28 и ↓0 +28
Просмотры 9.5K
Комментарии 44

Всё не то и всё не так — когда твой компьютер ПЛК

Ненормальное программирование *Программирование *Промышленное программирование *SCADA *Электроника для начинающих
Tutorial

Статья указывает на особенности разработки для промышленных контроллеров. Написана для объеденения программистов данного направления.

Если мем понял - добро пожаловать под кат, эта статья для тебя.

Если хочешь понять мем - смело жми ПУСК.

ПУСК
Всего голосов 17: ↑13 и ↓4 +9
Просмотры 6.2K
Комментарии 49

Вклад авторов