Решил продолжить трактат чертятины после
этой темы.
В той теме я рассуждал о том, насколько реалистичны моды. А если бы были реалистичны?
Понятное дело, что большинство физических, химических, гидравлических, пневматически процессов довольно сложны - это целая тонна дифференциальных уравнений, сложных взаимосвязей.
А иногда и вовсе установить конкретные законы изменения параметров - слишком сложно или невозможно.
Например, чтобы создать систему управления химического процесса, сначала:
1) исследуют изменение его параметров - то есть снимают тренды (графики) различных технологических параметров, которые определяют основные особенности протекания процесса. Обработка этих данных. Вообще снять таких данных, для их точности, надо 100 раз, что невозможно на реальном заводе, поэтому прибегают к различным методам приближения, аппроксимации;
2) либо, что будет конечно менее точно, это теоретическая разработка модели - то есть лезешь в учебники, научные статьи и ищешь там все необходимые уравнения.
Полученные уравнения затем приводятся к общему виду в виде нелинейного дифференциального уравнения, которое можно перевести в изображение Лапласа с помощью оператора Лапласа. По сути, временную часть и дифференциалы заменяют на
p (у пендосов и в Matlab
s) - оператор Лапласа.
И это упрощает запись этих уравнений и их использование для синтеза систем управления.
Главная суть любой системы автоматического управления это обратная связь - обычно отрицательная. По сути, на вход системы подаётся сигнал уставки - параметр, который нужно поддерживать в системе в таком-то диапазоне/значении. А отрицательная связь вычитает из этой уставки текущее значение параметра в системе. Так система будет повторять, пока вычитание не даст 0.
Это замкнутые системы регулирования. Есть и разомкнутые - без обратной связи. Такие используются, например, когда программируются ЧПУ-станки.
И для этого есть много методов, но используют в основном ПИД-регулятор
(ПИДр), даже скорее не ПИД, а ПИ.
То есть это алгоритм, который содержит:
1) П - пропорциональную часть, которая по сути усиливает и умножает сигнал на соответствующий коэффициент. Эта составляющая ускоряет протекание изменение величины до нужного значения.
2) И - интегрирующая часть, эта часть замедляет, но уменьшает накопление статической ошибки, то есть делает систему управления более устойчивой (robust), более сглаженной, меньше колебания изменения величины;
3) Д - дифференцирующая часть, эта часть очень быстрая и вообще самая быстрая (agressive), она дифференцирует сигнал. Её редко используют, так как она сильно усиливает шумы от измерительных приборов и неизвестные на объекте возмущения параметров.
В целом ПИД-регуляторы настолько универсальны, что используются даже на таком сложном объекте, как ядерный реактор (если не ошибаюсь).
В итоге, чтобы технологические моды стали реалистичными, в Minecraft надо встроить Matlab и Simulink?
Что конечно звучит страшно, учитывая насколько и так у игры плохая оптимизация, а такой аппарат конечно же всё добьёт.
Но я думаю сделать другое интересное решение в своей сборке:
1) вообще по сути некоторая динамика, хоть и упрощенная, есть во многих модах:
а) давление в PneumaticCraft изменяется и даже трубы при переизбытке могут взорваться;
б) теплота из того же мода, либо из Mekanism;
в) ядерные реакторы довольно динамичны в модах - вот даже была (да всплыла

)
древняя программа, реализующая ПИД-регулятор для мода ComputerCraft. (P. S. не обратил внимание, но тут речь про регулирование оборотов паровой турбины, но тем не менее)
г) электричество в моде Electrodynamics - у него есть сила тока, сопротивление, напряжение и мощность. Не уверен, насколько это соответствует реализму, но по крайней мере у цепей реально есть потери и аппараты при неверном напряжении взрываются/сгорают.
2) Учитывая, насколько гибок Multiblocked2, можно сделать машины вполне себе динамическими:
а) переполнение уровня - значит бак с жидкостью начинает прорывать и разрушать;
б) неверное давление - значит гидроудар и взрыв трубы;
в) избыток температуры в химической реакции, неверное давление и др. - бабах;
и др.
3) SCADA-система для реакторов из Mekanism на компах мода ComputerCraft, похожая на реальные промышленные системы
от MikaylaFischler.
Вот такая идея. Думаю реализовать в своей сборке систему измерительных приборов, чтобы иммерсивно снимать нужные показатели и игроку надо будет их придерживаться.
Для передачи сигналов можно использовать 16-битную шину из мода ProjectRed/MoreRed - 16 бит очень даже хватает в реальности для преобразования и передачи данных с датчиков. Но придётся разработать протокол передачи для мода ComputerCraft - можно назвать его RedBus, как пародия на промышленный протокол передачи данных ModBus RTU

.
Сообщение отредактировал Сегодня, 16:10