Перейти к содержимому
eu_tomat

Микроконтроль ядерных реакторов IC2exp

Рекомендуемые сообщения

Приветствую всех любителей ядерки в индастриале!

 

Это экспериментальная тема. В ней я предлагаю делиться своими мыслями о микроконтроле ядерных реакторов с помощью OpenComputers и совместными усилиями найти интересные решения.

 

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

 

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

 

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

 

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

 

Что такое микроконтроль ядерных реакторов Industrial Craft и зачем он нужен?

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Тема микроконтроля ядерных реактров уже всплывала на форуме. Например, периодическое отключение и включение ядерного реактора  является простейшей формой микроконтроля. Выполнять его можно и вручную, и с помощью компьютера, и с помощью мода NuclearControl. Есть и более интересные применения микроконтроля реакторов. Например, здесь и здесь.

 

Кстати, кому-нибудь удалось разобраться, при каких условиях работает эта схема?

image.png.87a524c93cf8fe24123d1ef1fc55fc80.png

Изменено пользователем eu_tomat
поправил ссылки

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
5 часов назад, eu_tomat сказал:

Кстати, кому-нибудь удалось разобраться, при каких условиях работает эта схема?

Прогнал данную схему на быстром тесте. Все куллеры что черные, тоесть они не работают, заменил на реакторные пластины, чтоб добавить себе немного времени на реакцию (в случае аварии чтоб успел снести контроллер).

Вырабатывает данная схема 600Eu/t максимальное время работы 66 секунд, время охлаждения 40 секунд.

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

Тестировал при помощи программы:

local c = require("component")
local tr = c.transposer
local red = c.redstone

local time = 0
local vr = tr.getStackInSlot(1,4)
local dam = vr.maxDamage - 1000
print('Куллер: '..vr.label)
print('Прочность куллера: '..vr.maxDamage)
red.setOutput(0,255)

while true do
  vr = tr.getStackInSlot(1,4)
  if vr then
    if vr.damage >= dam then
      print('Переход в режим охлаждения')
      red.setOutput(0,0)
      print(time)
      break
    end
  else
    print('BUM! Бегии....')
    red.setOutput(0,0)
    break
  end
  time = time + 0.5
  os.sleep(0.5)
end

time = 0

while true do
  vr = tr.getStackInSlot(1,4)
  if vr then
    if vr.damage == 1 then
      print('Охлаждение завершено')
      --red.setOutput(0,0)
      print(time)
      break
    end
  else
    print('BUM! Бегии....')
    red.setOutput(0,0)
    break
  end
  time = time + 0.5
  os.sleep(0.5)
end

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

Немного протестировал с различными типами куллеров:

  • Теплоотвод: работа - 32 сек; охлаждение - 102 сек
  • Реакторный теплоотвод: работа - 31 сек; охлаждение - 168 сек
  • Разогнанный теплоотвод: работа - 67 сек; охлаждение - 42 сек
  • Улучшенный теплоотвод: работа - 40 сек; охлаждение - 69 сек

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

P.S. Пробовал менять самые греющиеся куллеры на охлаждающий стержень (10к) время работы выросло до 247 сек, но реактор этого не выдержит. Уже на 210 секунде все остальные куллеры начали перегорать.

Изменено пользователем Asior
Уехал код

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

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

 

1 час назад, Asior сказал:

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

Вырабатывает данная схема 600Eu/t максимальное время работы 66 секунд, время охлаждения 40 секунд.

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

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

 

Даю наводящий вопрос: почему планировщик перестаёт подкрашивать фон кулеров чёрным, если задать стартовую температуру реактора?

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
1 час назад, eu_tomat сказал:

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

Всмысле в каждой позиции работают? Не работают они, вообще никак.

Хмм, щас попробовал выкинуть с 1 стержня все куллеры, и удивительно, но оно не нагревается. Правда греться стали другие куллеры, но возникает вопрос, как это вообще так?

Короче врубаю реактор на режим разноса. До этого на контроле ОС только работал.

Так, запуск прогнал, это было довольно занимательно если б не пластины то была бы еще одна дырка на карте. Хотя нет, дырка теперь уже есть.

1 час назад, eu_tomat сказал:

И реактор не простаивает. Никогда.

Именно так! Около 2 минут он может быть и выдержит, а потом большой бум. Я незнаю как это никогда не простаивает? Данная схема работает только под контролем ОС и никак иначе. Ну или на системе таймеров.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
5 минут назад, Asior сказал:

Данная схема работает только под контролем ОС и никак иначе.

Совершенно верно. OC в этой схеме играет ключевую роль.

5 минут назад, Asior сказал:

Ну или на системе таймеров.

Таймеры тут не помогут. У таймеров нет всех возможностей OC. И это тоже намёк на разгадку. Но с этой стороны будет трудно зайти без подготовки. Есть более логичный вход.

 

9 минут назад, Asior сказал:

Всмысле в каждой позиции работают? Не работают они, вообще никак.

А это возвращает нас к наводящему вопросу. В предварительно разогретом реакторе разогнанные телоотводы работают даже не касаясь ТВЭЛ'ов. И работают они потому что...

 

Почему же  они работают?

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Я забыл прокомментировать этот момент:

14 часа назад, Asior сказал:

Так, запуск прогнал, это было довольно занимательно если б не пластины то была бы еще одна дырка на карте. Хотя нет, дырка теперь уже есть. 

Этого следовало ожидать. Я выложил лишь одну схему, без обвязки, без скрипта, без описания. Использованные тобой пластины способны лишь ненадолго отстрочить неизбежное. А надо попытаться отсрочить еще сильнее, постепенно доводя срок до бесконечности. Но не отключая реактор. Отключенный реактор будет простаивать, а схема нацелена на его максимальную эксплуатацию: если сборка, то счетверённая, и если теплоотвод, то разогнанный. И никаких пустых слотов – это преступление против экономики, как и отключение реактора.

 

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

 

13 часа назад, Asior сказал:

Хмм, щас попробовал выкинуть с 1 стержня все куллеры, и удивительно, но оно не нагревается. Правда греться стали другие куллеры, но возникает вопрос, как это вообще так?

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

 

Поэтому, когда ты убрал кулеры вокруг одного из ТВЭЛ'ов, тепло через корпус ушло на другие, ранее незадействованные. Да и на задействованные тоже ушло, с этой механикой мы попробуем разобраться позже. Своим экспериментом ты воспроизводишь ситуацию из наводящего вопроса. Теплоотводы могут работать даже не прикасаясь к ТВЭЛ'ам. И для того, чтобы они работали, достаточно лишь одного условия.

 

Каково же минимальное условие для того, чтобы теплоотвод отводил тепло в атмосферу?

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

А у нас на форуме ещё кто-то остался из ядерщиков? Или только я и @Asior?

 

У меня есть вопрос к тем, кто всё-таки пытается решить эту головоломку. Дать вам следующую подсказку? Или дать время на размышления? Ставьте под этим постом смайлик "Грусть", если нужна подсказка, и смайлик "в шоке", если требуется время. Эти смайлики выбраны из тех, что не влияют на мой рейтинг.

 

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

 

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

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
В 26.09.2019 в 10:17, eu_tomat сказал:

Каково же минимальное условие для того, чтобы теплоотвод отводил тепло в атмосферу?

Нужен приток тепла, а в этой схеме его нет. Что дальше?

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
1 минуту назад, monkey сказал:

Нужен приток тепла, а в этой схеме его нет. Что дальше?

Чтобы продвинуться дальше, надо правильно ответить на вопрос.

 

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

 

Так каково же минимальное и достаточное условие требуется соблюсти для работы теплоотводов?

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Я уже подзабыл, неактивные компоненты продолжают просчитываться, если нет прямого контакта?

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

Еще проблемы были с транспозерами, они иногда не перемещали предметы в какую-то сторону, поэтому я юзал адаптер, пока не починили всякие дубли в API.

 

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

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

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

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Ну, что ж, друзья. @Doob, похоже, раскрыл секрет этой схемы.

 

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

 

Но у заядлых ядерщиков возникает вопрос, откуда возьмётся тепло в теплоотводе, если в теплоотвод тепло не поступает. Зато при жарке картофеля в сковороде таких вопросов ни у кого не возникает. Нижние слои сильно нагреваются и могут пригореть. Верхние слои охлаждаются воздухом и могут сильно остыть, а зимой могут даже заледенеть. Но периодическое помешивание готовящейся картошки позволяет приготовить её равномерно.

 

Как верно заметил @Doob, транспозер способен менять компоненты как внутри реактора, так и между несколькими реакторами. Теплообменники, распределяющие тепло между компонентами, перестают быть нужными, т.к. тепло можно переносить непосредственно внутри компонентов. И теперь реакторную схему можно составить только из самых эффективных компонентов, приносящих максимальную пользу.

 

Пользуясь этой идеей, можно посчитать тепловой баланс моей схемы. Она немного греется. Но теперь вы уже догадываетесь, как перевести схему в режим охлаждения, не выключая реактор. Схема вырабатывает 600 eu/t в режиме небольшого перегрева и 540 eu/t в режиме относительного охлаждения. Среднее значение выработки в 558.62 eu/t вычисляется по соотношению времени нагрева и охлаждения реактора.

 

Реактор не выключается никогда. Лишь тасуются компоненты с некоторой периодичностью. В сундуке лежит запас урана и дополнительный теплоотвод для режима охлаждения.

 

Какие ещё есть вопросы по этой схеме?

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
4 часа назад, Doob сказал:

Я уже подзабыл, неактивные компоненты продолжают просчитываться, если нет прямого контакта?

Просчитываются все компоненты. Каждый реакторный тик. Реакторный тик равен двадцати майнкрафтовским тикам (одной секунде). Реакторы тикают несинхронно, это зависит то ли от момента постройки реактора, то ли от момента включения, этот вопрос ещё подлежит исследованию.

 

4 часа назад, Doob сказал:

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

Больше чем эта схема от @whiskas?

4 часа назад, Doob сказал:

Топливом забивался до предела, проводилась постоянная ротация компонентов из трех схем.

А вот, про это попрошу рассказать подробнее. Что за три схемы? Три дополнительных реактора?

4 часа назад, Doob сказал:

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

Да, печаль. Способ пофиксить сломанные конденасторы в ic2exp уже обсуждался.

4 часа назад, Doob сказал:

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

А зачем нам инжектор, если есть транспозеры?

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Не нашел в сохранениях, схемы сходу тоже не вспомнил. Фактически это два реактора, один рабочий, другой - отстойник из одного блока. Я зачем-то сильно намудрил с распределением температуры, поэтому компоненты гонялись туда-сюда.

Где-то 16000 Eu/t в среднем он выдавал, можно было даже еще поднять.

 

Инжекторы нужны, чтобы заправлять кондеры, работают они только с 1.8

 

P.S. Нашел на форуме IC2 более совершенную схему:

erp=XOtLO+cgw5ngBpMTOPmQcivzrxfR4XwxC4Qp/AZMftJSLk5dumYnK+9C7F2kCCCcAQ==

MGbzpIb.png

 

При температуре 9000 выдает 17480 Eu/t, это 486 Eu/t на каждую пачку МОХ. Не совсем рационально расходуется топливо, но зато никаких плясок с бубном - доливай себе редстоун и греби материю ведрами.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
15 часов назад, Doob сказал:

P.S. Нашел на форуме IC2 более совершенную схему:

erp=XOtLO+cgw5ngBpMTOPmQcivzrxfR4XwxC4Qp/AZMftJSLk5dumYnK+9C7F2kCCCcAQ==

...

При температуре 9000 выдает 17480 Eu/t, это 486 Eu/t на каждую пачку МОХ. Не совсем рационально расходуется топливо, но зато никаких плясок с бубном - доливай себе редстоун и греби материю ведрами.

Да, хороший результат. Но если кто-то захочет её использовать, то существует упомянутая выше схема от @whiskas на 14% производительнее этой. 4340 eu/t на уране против 3800 eu/t в этой схеме. На MOX получится то же самое соотношение. Конкретное значение выработки зависит от температуры реактора. Позже я надеюсь обсудить в этой теме и алгоритмы быстрого разогрева реактора до теоретически возможного безопасного максимума.

 

Одно непонятно. Зачем этой схеме реактор отстойник? Или речь шла про другую схему?

15 часов назад, Doob сказал:

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

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Схема от @whiskas  при температуре 9000 выдает 19961 Eu/t и всего один отражатель нейтронов а не 6

Скрытый текст

DldjSHK.png

erp=XOtLO+cQ8F5RxrTzVb1poupQY4ZuFlaZ8/l82hlmTl5x6zpHCx3lRX9fgQcXiTL4AQ==

Ic2ExpReactorPlanner

Изменено пользователем serafim

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
2 часа назад, eu_tomat сказал:

Зачем этой схеме реактор отстойник? Или речь шла про другую схему?

Конечно, схема не стабильна, поэтому приходится жонглировать горячими элементами, не останавливая реактор.

 

Вот идеал, к которому надо стремиться:

gGMIMgI.png

 

Эффективность схемы почти на 35 уровне, пределе. В среднем выдает 611 Eu/t. 139,424,220 Eu за цикл.

Многотактные реакторы редко выдают эффективность больше 31го уровня, оно и понятно, моментально снять тепло с корпуса можно только заняв больше половины камеры.

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

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
24 минуты назад, Doob сказал:

Вот идеал, к которому надо стремиться:

Скрытый текст

gGMIMgI.png

 

Эффективность схемы почти на 35 уровне, пределе. В среднем выдает 611 Eu/t. 139,424,220 Eu за цикл.

Для сжигания MOX с эффективностью около 35 (фактический предел 34.9972) не нужен второй реактор. Тут вполне сгодится метастабильная схема, которую надо будет сначала аккуратно разогреть, а потом вовремя заменять топливо и отражатели, чтобы схема не остывала ни на сотую градуса.

 

Но даже это решение не будет идеалом ядерной энергетики, если гнаться за эффективностью. Приближением к идеалу будет полный отказ от теплоотводов в схеме сухого реактора и перенос тепла транспозерами для утилизации в жидкостном реакторе. Это позволит утилизировать как электрическую, так и тепловую энергию топлива. По крайней мере, это будет идеалом для обычного урана. А MOX, если исхитриться, можно будет сжигать в двух реакторах с эффективностью (внезапно!) 1344. Но там работоспособность схемы будет полностью зависеть от микроконтроля на всех этапах работы реактора, а не только на стадии разогрева и в моменты замены топлива.

 

Возможно, даже эффективность 1344 не будет пределом. Эти реакторы ещё можно тормошить и тормошить. С помощью OpenComputers, разумеется.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

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

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
19 минут назад, Doob сказал:

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

Согласен, для таймера хорошая схема. Для транспозера, конечно, можно сделать лучше.

 

2 минуты назад, Doob сказал:

Я и не говорил, что нужен второй реактор.

Тут какое-то недопонимание произошло. Про второй реактор ты говорил ранее:

В 28.09.2019 в 15:47, Doob сказал:

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

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

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Присоединяйтесь к обсуждению

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

Гость
Ответить в тему...

×   Вы вставили отформатированное содержимое.   Удалить форматирование

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отобразить как ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.


×
×
  • Создать...