Цели: Президент РФ поставил задачу минимум на порядок увеличить степень автоматизации и роботизации отечественных предприятий. Основными препятствиями на пути применения автоматизированный и робототехнических систем являются большая стоимость, большое время реализации проектов и неопределенность результата. Поскольку основные затраты в таких проектах приходятся на статьи, связанные с проектированием и разработкой, то необходимо оптимизировать именно их. Уменьшить оплату труда инженеров и программистов мы не можем, иначе они «разбегутся» в более прибыльные отрасли экономики, остается только один путь: стандартизация процесса проектирования с целью минимизации времени проектирования. Стоимость аппаратной составляющей не так высока, в первую очередь ее следует сделать полностью суверенной, для нивелирования рисков враждебного влияния со стороны различных «партнеров».
Задачи:
· Создать стандартный, одинаковый для всех, путь проектирования. Получить свободное ПО плюс набор регламентирующих документов (ГОСТ) для проектирования, цифрового моделирования, отладки и прочее.
· Решить проблему с имеющимся зоопарком малотиражного и несовместимого между собой оборудования. Наиболее оптимальным будет строить всю систему на основе одного типа модуля, к которому уже подключать различные типы датчиков.
· Заменить все типы сетей (цифровых линий связи) на один тип. Физический уровень может быть любым, главное, чтобы это различие не затрагивало логику работы ПО.
· В максимальной степени виртуализовать, отделить решение задачи от физической реализации автоматизируемого (роботизируемого) оборудования. Разделить общую задачу на как можно большее число более простых составляющих с контролируемым числом связей, что позволит увеличить число привлекаемых для проектирования разработчиков и уменьшит срок разработки. Кроме того, структурирование проекта уменьшает риск «обрушения» из-за неконтролируемого роста сложности.
Решение плюс минимизация числа «сущностей»:
· В качестве архитектурной основы выбрать стандарт МЭК 61499. Полностью согласен с выбором представителей компании «Северсталь». Данный стандарт позволяет создавать распределенные системы управления и разделять большую задачу на иерархию из множества относительно независимых подзадач.
· Заменить все типы цифровых линий связи на разрабатываемую сеть ССИ (Синхронная Символьная Иерархия), которая идеально сочетается с архитектурными особенностями стандарта МЭК 61499. Сеть ССИ соответствует всем требованиям для перспективных сетей связи описанных в документах МСЭ-Т группа ИК-13 «Сети 2030». Предлагаемая сеть является единственной полноценно детерминированной сетью цифровой связи, есть гарантии предоставляемой скорости, постоянства задержки передачи данных, отсутствия взаимного влияния клиентов сети друг на друга. Кроме того, предоставляется множество других сервисов, существенно повышающих надежность сети.
· Заменить множество различных процессорных архитектур на процессоры входящие в семейство RISC-V. Данные процессоры свободны от каких-либо лицензионных обязательств, имеют множество версий от микроконтроллера и до серверных реализаций. Есть отечественный разработчик ядер («YADRO»), есть уже готовые среды разработки (компиляторы), в том числе совместимые с выбранной представителями «Северсталь» IDE «4diac». Кроме того, RISC-V уже поддержан правительством РФ.
· Заменить «зоопарк» различного несовместимого оборудования отечественного и зарубежного аппаратного обеспечения одним модулем «ASU_TP_SOM» (размер 50х30 мм и ценником по комплектующим менее 2тр), содержащим в себе вычислительную (процессор RISC-V), сетевую (контроллер сети ССИ на четыре порта) и контроллер цифрового интерфейса (для подключения внешней периферии). Такая замена позволит достичь полного единообразия в проектировании, кроме того, сделает базовое оборудование для АСУ ТП и робототехники максимально дешевым из-за высоких тиражей и потенциального превращения предлагаемого модуля в специализированную микросхему с ценником как у микроконтроллера (300р).
· Предлагаемый модуль, совместно с сервисами сети ССИ, аппаратно реализует большинство составляющих стандарта МЭК 61499 и не требует наличия операционной системы. Множество модулей «ASU_TP_SOM», превращаются в распределенную вычислительную систему с внушительной производительностью (один модуль содержит минимум один 32х разрядный процессор RISC-V с частотой от 100 МГц).
· При таком подходе от существующей АСУ ТП останутся только уровень датчиков, «актуаторов» и сервера верхнего уровня не входящие в состав аппаратуры работающей в жестком реальном времени.
Реализация стандарта МЭК 61499 с использованием модуля «ASU_TP_SOM»
· ПО для МЭК 61499 состоит из множества функциональных блоков. Предлагаемая архитектура АСУ ТП должна состоять состоит из множества одинаковых модулей «ASU_TP_SOM», в составе которые есть вычислительный блок на основе процессора RISC-V (100МГц 8МБ памяти). В процессе компиляции можно задать какие функциональные блоки в какие модули помещать. Промежуточных вычислителей (ПЛК) не предусмотрено, каждый модуль непосредственно управляет относительно небольшим числом непосредственно подключенной периферии. Если получившегося числа вычислительных ядер не хватает, то можно подключать модули без периферии.
· В процессе работы, функциональные блоки обмениваются данными. Модуль «ASU_TP_SOM» в своем составе содержит контроллер сети ССИ, которая позволяет создавать множество независимых виртуальных каналов с гарантией скорости и задержки передачи. Виртуальный канал имеет один источник и один или более приемников (ациклический направленный граф). Создаваемые виртуальные каналы не влияют друг на друга (от загруженности и прочего) и никак не изменяют свои свойства. Функционально виртуальный канал представляет собой цепочку FIFO, данные передаются в последовательно, переполнения буферов невозможны (кроме приемного буфера у получателя). Каждое FIFO имеем свой уникальный номер в адресном пространстве процессоров.
· Передаваемые данные аппаратно разделены на два типа (данные, заголовок). При появлении заголовка в принимаемых данных можно установить выполнение прерывания, кроме того, заголовок используется для структурирования данных в пределах одного виртуального канала. В МЭК 16499 активация вычислений происходит посредством служебных входов (Event Execution Control), реализацию данного механизма можно завязать на прерывание (30 свободных прерываний). Наиболее оптимальным было бы иметь несколько прерываний: Цикловая синхронизация, начальная инициализация, переходы между типами функционирования. Думаю, не стоит использовать данный механизм для рядовых событий, почему этого не стоит делать можно почитать в методах проектирования цифровых схем, тут много общего.
· Для подключения периферийных устройств служит цифровой интерфейс из 80 свободно программируемых ног и отдельный процессор RISC-V. Данные, принимаемые из виртуальных каналов, дополнительно обрабатываются (для превращения битовую последовательность нужного формата) и на выходах цифрового интерфейса формируется нужная последовательность импульсов. Формально все тоже самое, как и при работе функционального блока. Совместимость достигается через использование в качестве промежуточного «устройства» цифрового двунаправленного интерфейса с числом ног 80. Требуемые скорости относительно небольшие и встроенный процессор сможет справиться с этой задачей.
· Возможно редактирование структуры связей и ПО функциональных блоков прямо в процессе работы.
· В итоге получаем полностью одинаковую сетевую и вычислительную составляющую для всех проектов АСУ ТП и гибкий механизм «драйверов» для управления внешними устройствами.
Типовой сценарий работы АСУ ТП
· Производится создания карты меж-соединений, «заливка» ПО функциональных блоков.
· В части блоков происходит генерация тактовых, в сеть передаются слова типа «заголовок», которые при приеме вызывают прерывания, инициализирующие исполнение ПО соответствующих функциональных блоков.
· В момент наступления события, производится передача данных подготовленных в предыдущем цикле и начинается вычисление данных для следующего цикла. Такая последовательность позволяет получить максимальную частоту цикла, передача данных и вычисление следующих данных происходят фактически в один момент времени (параллельно).
· Для управляемой аппаратуры все примерно так же, в момент наступления события происходит запись ранее подготовленных данных и начало подготовки новых.
· Можно сделать более сложные типы последовательностей работы. Например, всегда включать прерывание (запуск ПО функциональных блоков), в таком случае получим полноценную DataFlow вычислительную машину. Заголовочные данные предваряют прием обычных пользовательских данных необходимых для обработки. В каждом прерывании проверяем наличие всех необходимых для вычисления данных и если они есть, то выполняем ПО функционального блока.
Балыбердин Андрей Леонидович Rutel@Mail.ru

Комментарии
Это точно ?
Не на покупку всего оборудования и софта, не на весь процесс внедрения, монтажа, запуска и отладки, не на обучение кадров, а именно на проектирование ?
Непосредственно вычислительное железо стоит копейки.
Следующее по сумме затрат - провода, шкафы (слаботочка).
Обучение кадров это и составляющая проектирования.
В стоимости всего этого большая часть - это стоимость разработки. Эта стоимость будет уменьшаться с увеличением серийности покупаемых изделий и проектов, к чему и ведут.
Самое главное в серийности проектов. Интеграторы будут использовать в своей работе части старых проектов, вот это и будет самым большим драйвером повышающим эффективность проектов автоматизации и роботизации. Кроме уменьшения стоимости, число проектов будет подстегивать и большой объем "удачных" реализаций проектов автоматизации производства.
АСУ ТП и робот на производстве должен быть дешевле и эффективней самого дешевого гастарбайтера.
Сверхценная идея приводит к смирительной рубашке. Переизобретение АТМ с стаффингом это само по себе не страшно, но вот требование заменить им все-все-все...
Тут даже больше. С датчиками, даже простейшими тоже по ATM будем общаться? PCIEx пытался решить эту проблему в свое время на писюках.
Повторюсь, где вы нашли АТМ ?
Тогда растележьте.
АТМ это пакетная сеть, ну разве что имеет фиксированный и относительно небольшой размер пакета.
Буква А означает "Асинхронная"
ССИ это сеть с коммутацией каналов (пакетов в ней нет) и она синхронна
https://habrastorage.org/r/w780/webt/rp/ea/d8/rpead8qzz8iivxsmdqfwpohumfg.jpeg
Это не совсем конечно ATM, но самое близкое к описанному из традиционного телекома. На мой взгляд, проблема в том что предлагается заменить все-все-все крайне нишевым решением, подходящим для связи коммутаторов внутри узла связи или компонентов суперкомпьютера.
Система исходит из того, что лучший канал связи это постоянный. Но это верно только для очень узкого круга абонентов. Попытка посадить на такую связь файловую систему или того хуже электросчетчик с 256 битами (из которых полезная нагрузка 32) данных в месяц...
Это безумие.
Это совсем не АТМ, это раз.
Все существующие типы сетей являются частными случаями данной технологии.
Не знаю где вы нашли, что канал постоянный навсегда.
Виртуальный канал связи создается (без предварительного уведомления) мгновенно (примерно как и пакетная связь - захотел отправить отправил) и закрывается в момент завершения сеанса связи. Мало того, так еще и вся незадействованная в каждый момент пропускная способность используется. Именно поэтому данная технология связи может прозрачно инкапсулировать даже пакетную связь.
Глупость приводит к бедности и это в лучшем случае.
Можно вопрос, где вы нашли АТМ ?
Просветите меня, а то я текст написал, но где АТМ так и не нашел.
Изложение рваное. Навскидку:
1"не требует наличия операционной системы": на выходе имеем - архитектурное разрушение архитектуры.
2. "При появлении заголовка в принимаемых данных можно установить выполнение прерывания": ддос-атака?
3. "цифровой интерфейс из 80 свободно программируемых ног и отдельный процессор RISC-V": этот отдельный процессор будет выполнять роль процессора ввода/вывода и реализовывать все проколы io(i2c,spi итд)? или же и на этом уровне atm svc?
1. Для АСУ ТП нет необходимости в операционной системе.
2. Для сети ССИ ддос атака невозможна.
3. Это локальное решение для АСУ ТП, предназначено для решения вопроса совместимости простых устройств или датчиков.
1. Отложим.
2. Почему невозможна?
3. Отложим.
Невозможна по причине отсутствия взаимного влияния уже созданных каналов друг на друга.
Асинхронность (непредсказуемость) в данной сети проявляется только на этапе запроса на создание канала.
Так что если сайт имеет возможность в процессе диалога отличать спамера от нормального пользователя,
то он просто закроет канал. Если канал создан, то никакое влияние на него внешнего злоумышленника невозможно.
Даже если предположить, что будет идти спам на создание канала, то нормальный пользователь хоть и с задержкой но получит доступ, произойдет соединение и влияние злоумышленника исчезнет. И это только самый нижний уровень.
Маловато инфы. Есть документ?
Rutel@Mail.ru
Это от дудоса не помогает.
Пример: Имеем условно 100 злоумышленников (взломанных устройств) которые честно читают дудосимый сайт. Отличить их поведение от 100 честных пользователей принципиально невозможно, так как они не просто открывают канал и молчат, а что-то делают. Емкость провода от стойки в которой хостится сайт до стойки с коммутатором - условно 10 каналов обеспечивающих человеку комфортную работу. Все, сайт задудосен (скрость работы в 10 раз ниже комфортной) хотя уже созданные каналы никак друг на друга не влияют...
Даже в таком состоянии вероятность получить успешный коннект у добросовестного пользователя 10%.
Процесс создания и закрытия канала практически мгновенен.
Дальше все зависит от умения "маскироваться".