Pull to refresh
180
0
Вячеслав @petuhoff

Моделирование сложных технических систем

Send message

Я вот не увидел ни грамма сложности в ваших схемах ПИДов. Они ОБЪЕКТИВНО НЕ СЛОЖНЫЕ - несколько однотипных блоков, простые операции да соединения. Пройтись по ним с карандашиком и прикинуть логику работы сможет и школьник.

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

У меня есть личный пример из внедрения, когда в тренажере на объекте у заказчика, логика работы правится коде, поскольку там на месте не средства разработки (и происходит это в Индии). Возратившись обратно разработчик правит диаграммы из которых код генерится автоматически. Я когда увидел удивился:

- А зачем ты правишь эти диаграммы, ты же говорили, что вы уже там на месте в коде все поправили и режим уже работает?

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

Но при этом я совершенно не могу найти в них потенциальные ошибки: например - бесконечные циклы без выхода или блоки, которые никогда не сработают. Такие вещи МНЕ ЛИЧНО гораздо быстрее и понятнее было бы искать в текстовом коде.

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

Мне кажется тут проблема вот в чем, то что вам ЛИЧНО легче и быстрее найти ошибке в текстовом виде, как многим программистам (хотя я думаю, искать ошибки всем проще в диаграмме, другое дело писать в виде текста код гораздо быстрее). Для отладки сложных систем, нужен не только и не столько программист, а технолог процесса. Если у меня алгоритм управления ядреным, тепловым или химическим процессом, то абсолютно правильная без бескончных циклов, всегда работающим блоками программа, это не совсем не то что надо. В первую очередь мне надо, что бы программа поддерживала параметры рабочего процесса, и правильно реагировала на отклонения. А здесь нужны занания не кодов, циклов и регулярных выражения, а физики, химии, конструкции и процессов.

Из последнего смешного. АЭС отваливатся по аврийной защите. Гигаваты мощность, куча денег потеряно. Оказывается сработала защита по повышению температуры в подшибнике подпятника главного циркуляционного насоса. Программа сработала иделаьно из без ошибок. Если температура превышена занчит проблемы с подшипником, нужно его выключать. В тексте все правильно и в диаграмее тоже было все правильно. Просто при штатном отключении насоса вал замедляется и перед полной остановкой, пленка масла исчезает и подшипник греется выше температуры уставки. Без знания этого процесса, написать и проверть программу, что в тексте, что в диаграмме невозможно. А поскольку знаниям о процессах обладают технологи, а не программисты, то для них и сделали язык FBD диаграмм, что мы с карандашиком пройтись и проверит.

И с гит интеграция есть прямо в среде

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

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

Графические схемы подходят для небольших линейных моделей, типа тех, которые вы показали. Попробуйте нарисовать на графической диаграмме, скажем, регулярное выражение. Или там - виртуальные конструкторы какие-нибудь. А после того, как нарисовали - попробуйте туда ещё правки вносить регулярно... Не уверен, что вы долго продержитесь 😁

Небольшие линейные модели в статье показаны, как пример модификации диаграмы для удобства читателя. Просто если взять натоящий ПИД регулятор, которые реально используется в ПО для управления АЭС, на него без подготовки, слабонервным, беременным женьщьнам и кормящим матерям лучше не смотреть. Например ПИД реальный с АЭС выглядит так:

ПИД в реальной АЭС
ПИД в реальной АЭС

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

Реуглятор температуры реальный
Реуглятор температуры реальный

Сравните с рисуноком 4 и почувствуйте разницу. И подобных листов в проекте ПО тысячи. Все это автоматической генерацией кода заливается в стойки управления АЭС и управляет ядерным реактором на Гигаваты мощности. После Чернобыля писать код руками и читать его стало как то стремена. А тут ничего работает модифицируется и поддерживается. Чернобыль вроде мы не повторяли. Вот например видео с простой модли системы управления ледоколом. Там одна система Шквал содержит 800 листов алгоритмов. И поддерживается и правки вносятся регулярно, поскольку это реально проектирующая организация и они постоянно дорабатывают проект. И ледоколы плавают.

Так что для меня вопрос како ПО более сложное, написаное на фремворках алфавитным язком СРМ или ПО для управления ядерным реактором с турбиной. Просто цена ошибки в СРМ, наверное меньше чем цена ошибки в САУ реакторного отделения. И тут графические языки выходят на первый план. Даже в стандарте МЭК 61131-3, половина языков - графическая

Если говорить про гидравлику то в трубопроводе, расчетная сетка 1D уравнения сохраннения энергии, массы, и импульса считаются вдоль оси трубопровода. Изменения в сечении игнорируются. Уравнения 1D

Но не всегда это удобно вот пример:

Хотелось бы так: нарисовал схемку - и жмешь кнопку: "дай код js", а рядом с ней "дай код VBA". Как дальнейшее развитие BPMN, только с формированием "всего кода" из схемы.

Так оно и работает, только для кода Си. И железных платформ, выбираешь кодогенератор и говоришь дай код Си под Линукс на АРМ или кода dll под Windows 64. Или дай код для Ардуино. Там список сейчас такой: Milandr, TI, ST Schnaider Electric, Ardiunо, Gigadevice, STM32, MK17 и еще что то постоянно в доработке

выбора таргета для генерации кода из схемы
выбора таргета для генерации кода из схемы

Семантический сахар, - это когда один образ (та же схема), а на выходе - различные вариации созданной логики, т.е. разные синтаксические представления (языки программирования) одного образа из разных компонент, склеенных семантическим сахаром. Например, в части визуализации алгоритмов: разные обертки \ представления \ графические нотации Одного алгоритма, см.

Так пример на рисунках 12 и 16 это и есть разные графические нотации одной и той же логики ПИД регулятора. Если сгенерировать код Си там похоже разницы в коде не будет

Круто напопробовать соорудить такое демо в SimInTech

ну дав то графических описано? Половина получается, сейчас поправлю

Бегают то они постоянно, и обратно они возращаются до сих пор. А сейчас это про АПЛ Казань

ВВП можно сравнивать для стран у кторых прочие равные условия, напирмер Францию Италию Германию. Если другие условия то это сравнение типа пол, потолок, палец. Как только наложили санкции на Иран, его нефть пошла за юани мимо статистики - ВВП упал. И поэтому эти в полтора раза меньше вобще не чем. Посмотрите на Ирак, после того как Хусейна разнесли ВВП там вырос. Поскольку в статитику под контролем США стали попадать все потоки. А на самом деле страна превратилась в поле боя. Одна Фалуджа чего стоит но ВВП увеличился? Хорошо такое увеличение? Или все таки лучеш как в Иране? А Афганистан кстати, там тоже ВВП начал расти как только США окупировали. И думаете там после окупации реально стало лучше? Сомневаюсь.

К тому же нельзя сравнивать Иран и Россию это разные экономики. Иран я привел только как пример споконйого обхода санкций.

Во первых ВВП считают в долларах и считают странновато. Во вторых данные Иранские скорее всего сильно занижены. На самом деле если нефть идет по серым схемам в обход долларовой системы откуда объективная информация? В третьих нужно в Иран сгонять и посмотреть на тамошние цены, там они ну очень смешные на все. Вон уже мировой банк сообщает что россия обогнала Германию и Японию и теперь 4 экономика мира по ППС - тоже какой то кривой показатель конечно но хоть что то

Да ладно любая компания работающая с США будет рубить прямые платежи из РФ, поскольку вторичные санкции. Но опыт Ирана говорит, что бабло всегда побеждает зло. Если ленивая жопа хотела платить как раньше через доллары и корсчета в банк оф нюйорк, то теперь она должан быдет шевелится и думать. Это только на пользу ленивой жопе.

Да пожалуй и нет, все ИТ жалуются на госкомпании. Сбербанк забрал у бабушек гробовые и вложил из умную колонку.

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

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

И Голладцы импортозамещали китайский фарфор, кстати королевская фабрика в городе Делфт которая импортозамещала китайцев до сих пор работает, и когда я там был на экскурсии они с городстью про свое импортозамещение рассказывают. Наш гжель это уже импортозамещение голладского фарфора, который импоротозамещение Китайского. А теперь круг замыкается Китайцы опять первая экономика мира и импортозамещают голандские литографы.

И Муссолини тут вообще не причем, так с боку припека. Просто причина санкций из за которых старина Гуччи начал импортозамещение. Не более того.

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

Еще раз предлагаю не мешать в кучу политику историю войну, статья про импортозамещение которое дает шанс нашим компаниям.

Тут у вас, что у Италии, что в СССР все это плохо закончилось для промышленности

Я бы так не сравнивал. Италия отличная страна на итальянских жигулях копейках ездил весь мир. До сих пор самая продаваемая в истории модель, не зрая СССР ее копировал. А Гуччи до сих пор бренд топовый по всему миру. Несмотря на то, что стоит в ботиниках для африканского корпуса Бенито Муссолини. Ньюго Босс - у меня половина пиджаков от них, то же не плохо себя чувствуют. Да и IBM продававшая машины для подсчета евреев в концлагерях, так же работает себе.

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

Ну а СССР просто развалился из-за отстутсвия конкуренции, когда такие долбоепы как Горби и Ельцин смогли занять должности. У нас сейчас в отличии от СССР капиталиьзьм и поэтому мы сейчас можем получать все ништяки от импортозамещения.

Если все подряд называть импортозамещением, то и шилдики на китайских компонентах - сродни бамбуковым ручкам.

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

да и это заметно частое явление, вспомнить американскую революцию.

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

Нет у нас влияния на чиновников, а раз нет, то и импортозамещение точно такое фиктивное как и раньше.

Вот тут не согласен, нигде в мире нет волшебного влияния на чиновников, мене лично занкомый француз плакал в жилетку, когда его компания ограничивала продажи из за санкций. Знакомый немец, жаловался на чиновников Германии и налоги. Это повсеместно и везде. Хотите что то менять? Идите в чиновник или в бизнес. Я так и сделал. Моя компания продавала французский софт, и одновременно развивала собственный продукт SimInTech. Раньше мы его продавали там где запданое не работало явно, теперь продаем больше. Работать надо и все получится

Information

Rating
Does not participate
Location
Москва, Москва и Московская обл., Россия
Registered
Activity