Как стать автором
Обновить
2

SCADA *

Программный пакет для сбора данных и управления

Сначала показывать
Порог рейтинга
Уровень сложности

Полезные возможности ST+Codesys 3, которые многие не замечают

Время на прочтение 8 мин
Количество просмотров 18K

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

Читать далее
Всего голосов 5: ↑4 и ↓1 +3
Комментарии 2

Запускаем стенд испытаний коробок передач

Время на прочтение 7 мин
Количество просмотров 11K

После просмотра «Форд против Феррари» мы с женой вышли из кинотеатра под первый снег ноябрьским вечером. Глаза у меня горели, руки чесались. И пронеслась мысль: «Вот это да! Вот бы что-то такое поизобретать. Всякое инженерное, чтоб рёв мотора, гарь бензина и масло во все стороны!».

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

Читать далее
Всего голосов 47: ↑47 и ↓0 +47
Комментарии 21

Как организовать flashing графического объекта на WinCC Unified V16

Время на прочтение 3 мин
Количество просмотров 2.2K

Disclaimer. Написанное относится к 16ой версии и публикуется очень запоздало. В версии 17 функционал был расширен, и добавлена возможность мигания как минимум динамическим диалогом свойства background color.

Читать далее
Всего голосов 2: ↑1 и ↓1 0
Комментарии 9

Безопасность ПЛК: 20) Ловите ложные срабатывания для критических предупреждений

Время на прочтение 4 мин
Количество просмотров 2.5K

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

Разбираем последние рекомендации по безопасному программированию ПЛК. Обсудим где, кому и зачем данные рекомендации нужны.

Всех неравнодушных прошу под кат.

Читать далее
Всего голосов 2: ↑1 и ↓1 0
Комментарии 9

Истории

Безопасность ПЛК: 16-19) Отслеживайте длительность циклов, потребление памяти, логируйте аварийные ситуации

Время на прочтение 5 мин
Количество просмотров 2.6K

Суммируйте время циклов каждые 2-3 секунды и направляйте на HMI для визуализации на графике.

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

Храните события неожиданной остановки ПЛК из-за сбоев или отключений для будущего извлечения системой мониторинга в HMI, чтобы проанализировать их перед перезапуском ПЛК. Синхронизируйте время для получения корректных данных.

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

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

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

Безопасность ПЛК: 13-15) Сетевые интерфейсы и безопасная перезагрузка ПЛК

Время на прочтение 6 мин
Количество просмотров 2.1K

Контроллеры ПЛК и модули сетевого интерфейса обычно поддерживают несколько протоколов связи, которые включены по умолчанию. Отключите порты и протоколы, которые не требуются для приложения.

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

Определите безопасные состояния для процесса в случае перезапуска ПЛК.

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

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

Безопасность ПЛК: 11, 12) Реализуйте механизмы для проверки достоверности измерений и входных значений

Время на прочтение 4 мин
Количество просмотров 1K

Организуйте процесс таким образом, чтобы обеспечить проверку достоверности путем перекрестной проверки различных измерений.

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

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

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

Безопасность ПЛК: 10) Разделите регистры по их назначению

Время на прочтение 4 мин
Количество просмотров 1.9K

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

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

Читать далее
Всего голосов 1: ↑1 и ↓0 +1
Комментарии 4

Начало конца Свободы выбора в промышленной автоматизации

Время на прочтение 6 мин
Количество просмотров 7.5K

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

Читать далее
Всего голосов 9: ↑8 и ↓1 +7
Комментарии 39

Безопасность ПЛК: 8,9) Проверяйте входные переменные, следите за косвенными обращениями

Время на прочтение 6 мин
Количество просмотров 2K

Доступ к переменным ПЛК должен быть ограничен. Значение с HMI, вышедшее за допустимые пределы, должно быть корректно обработано или оператор должен получить об этом сообщение.

Следите за обращением к элементам массива, чтобы избежать ошибку неучтённой единицы.

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

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

Безопасность ПЛК: 6,7) Проверяйте таймеры, счётчики и парные входы/выходы

Время на прочтение 4 мин
Количество просмотров 2.4K

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

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

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

Читать далее
Всего голосов 4: ↑4 и ↓0 +4
Комментарии 2

Безопасность ПЛК: 4,5) Используйте переменные-флаги, хеши и контрольные суммы для проверки целостности проекта

Время на прочтение 3 мин
Количество просмотров 2.1K

Добавляйте счётчики для флагов ошибок.

Используйте хеши или контрольную сумму (если хеши не могут быть использованы) для проверки целостности кода и выдачи предупреждения, если он был изменён.

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

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

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

Время на прочтение 49 мин
Количество просмотров 6.6K

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

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

Ближайшие события

Московский туристический хакатон
Дата 23 марта – 7 апреля
Место
Москва Онлайн
Геймтон «DatsEdenSpace» от DatsTeam
Дата 5 – 6 апреля
Время 17:00 – 20:00
Место
Онлайн

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

Время на прочтение 3 мин
Количество просмотров 3.6K

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

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

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

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

Время на прочтение 3 мин
Количество просмотров 3.7K

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

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

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

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

Время на прочтение 3 мин
Количество просмотров 4.6K

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

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

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

Изолированная программная среда – сферический конь в вакууме или …?

Время на прочтение 9 мин
Количество просмотров 5K

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

И что самое характерное – работает! Уравнение Менделеева-Клапейрона прекрасно описывает вполне реальный газ, а классическая механика великолепно справляется с расчетом движения тел различного масштаба (пока этот масштаб не уходит в микромир или наоборот – в область действия общей теории относительности).

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

Подобный подход применяется и в сфере информационной безопасности. Сегодня мы посмотрим на один из таких артефактов – изолированную программную среду и как эта среда позволяет решать задачи обеспечения ИБ в реальных системах.

Изучить подход
Рейтинг 0
Комментарии 3

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

Время на прочтение 3 мин
Количество просмотров 12K

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

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

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

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

Schneider Electric Exchange – маркетплейс, форум и уголок разработчика

Время на прочтение 3 мин
Количество просмотров 2K

В наш цифровой век качественное программное обеспечение – залог стабильного, устойчивого, безопасного и эффективного ведения бизнеса. Современный отель, агропромышленный комплекс, нефтеперерабатывающий завод, винодельня, рудник –хорошее ПО востребовано буквально в каждом бизнес-сегменте. Но найти подходящий софт среди изобилия предложений на рынке не так просто. Чтобы помочь компаниям выбрать наиболее удачное решение с учетом специфики их бизнесов, мы в Schneider Electric запустила платформу Exchange – маркетплейс, который помимо своей основной, обладает рядом дополнительных полезных функций.

Читать далее
Всего голосов 4: ↑1 и ↓3 -2
Комментарии 6

Управление бесколлекторными двигателями из Astra Linux

Время на прочтение 3 мин
Количество просмотров 4.6K

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

Astra Linux - это российский дистрибутив Линукс, который сертифицирован для специальных применений. В этом видео мы будем использовать версию Орел, Common Edition с hardened ядром.

Для сборки стенда будем использоваться бесколлекторный двигатель со встроенными датчиками Холла и встроенным квадратурным энкодером. Также есть небольшой бездатчиковый бесколлекторный двигатель и магнитный абсолютный энкодер положения вала.

Для подключения двигателей и энкодеров к компьютеру с Astra Linux будем использовать контроллеры бесколлекторных двигателей компании Сервосила. Контроллеры бывают прямоугольной или круглой формы. На контроллерах есть разъемы для подключения двигателей, энкодеров, датчиков Холла и питания.

Контроллерам двигателей требуется напряжение питания от 7 до 60 вольт DC. Я приспособил блок питания от старого ноутбука. Блок питания выдает напряжение 19.7 вольт. Я раздвоил кабель и плоскогубцами закрепил разъемы для подключения кабелей к контроллерам.

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

Читать далее
Всего голосов 16: ↑7 и ↓9 -2
Комментарии 6

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