Практическое применение красного камня — различия между версиями

Материал из Playzone Minecraft Wiki
Перейти к: навигация, поиск
(Упрощенный замок)
 
м (1 версия)
 
(нет различий)

Текущая версия на 18:39, 1 февраля 2013

Книга и перо.pngЭту статью надо срочно до- или переписать!
Вы можете помочь проекту, исправив, обновив и дополнив ее.

Дверь, использующая AND Gate

Данная схема построена на логическом элементе AND Gate. Смысл в том, чтобы у вас была самооткрывающаяся/закрывающаяся дверь с возможностью заблокировать её. Нажимная пластина открывает дверь, но только в том случае, если "засов" выключен.

Напомню, что AND Gate на выходе дает 1 только в том случае, когда оба входа имеют 1.

Система имеет два состояния:

1. Вход-Выход. "Засов" (рычаг) включен (факел над ним не горит). В этом случае вы (и не только) спокойно можете входить и выходить из дома.

2. Засов. "Засов" (рычаг) выключен (факел над ним горит). В этом случае нажатие нажимной пластины дверь не откроет.

Эта схема исключает вторжение мобов к вам в дом через дверь.

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

Внутри дома
Снаружи дома
Монтаж под полом
Схема на практике
Схема

Двойная Дверь на Рычагах с возможностью блокировки

Вид снаружи
Вид изнутри

1. Структура:

  • Инвентор
  • Метод поднятия провода "вверх" и "вниз"
  • Два рычага (основной и запирающий)
  • Железные двери

2. Принцип работы:

2.1 Внешний рычаг, при нажатии, открывает первую железную дверь.
2.2 Сигнал от внешнего рычага ретранслируется вниз
2.3 Сигнал проходит через инвертор (инвертируется)
2.4 Сигнал ретранслируется вверх, активируя вторую дверь

3. Постройка:

Структура механизма
3.1 Находим нужную стену дома, также необходимо пространство под будущей дверью (2х2х4)
3.2 Блоками стали обозначены значимые элементы механизма, строим так, как показано на рисунке
3.3 Закрываем свободное место и ставим рычаг - засов
Плюсы: Минусы:
Нужно мало места Изнутри не эстетичен
Есть система блокировки Требует железную дверь, так как деревянная открывается по ПКМ.
Снаружи выглядит эстетично


Переключатели

В MineCraft'е уже есть достаточный набор различных кнопок, но все они умеют только "включать" или "выключать" элементы вашей электросети. А что если нужно переключаться между дверьми шлюза например?

Простой переключатель

Собственно ничего сложного. Рычаг либо включает факел и выключает нижний провод, либо наоборот.

Но в этом случае хотя бы один из выходов будет включен.

Простой переключатель

Переключатель сигнала

Данный вид переключателей сложнее, но и технологичнее. Суть в том, что вы не просто переключаете 1 между выходами, а переключаете сигнал на входе ( in ) между выходами ( 0 и 1 ).

Для примера возьмем двери шлюза. Двери открываются выходами 0 и 1 , а рычаг переключения находится между ними. Рычаг in выполняет роль "засова". Если "засов" не подает сигнал, двери не откроются. Если "засов" подает сигнал, то с помощью переключателя можно выбрать, какую из дверей открыть.


В схеме используются два элемента: AND Gate и простой переключатель. Напомню, что AND Gate на выходе имеет 1 , если на входе получено две 1 . Сигнал in подается на один вход на каждый AND Gate, а сигналы на выходе из простого переключателя идут на два оставшихся входа AND Gate.


Схемы, реализующие подобную систему представлены во врезке в двух вариантах: "Толстый" и "Длинный", и отличаются только в размерах.

Переключатель сигнала (длинный)
Схема (длинный)
Переключатель сигнала (толстый)
Схема (толстый)

Компактный переключатель сигнала

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

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

Переключатель сигнала (компактный)
Схема (компактный)

Кодовые замки

С помощью красного камня можно делать довольно сложные схемы. Например кодовый замок! Давайте разбираться.

Условия для замка:

  • Если "засов" включен, то дверь не откроется даже с правильным кодом.
  • Если хотя бы один неправильный рычаг включен, то дверь не откроется.
  • Если хотя бы один правильный рычаг не включен, то дверь не откроется.

Простой замок

На входы AND Gate подается две 1 и дверь откроется. Один вход отвечает за "слежкой" над правильными кодами (на схеме справа-сверху первые три рычага), второй следит за не правильными кодами (на схеме справа-снизу первые два рычага) и "засовом" (оставшийся рычаг).

Все просто. Если рычагов вам не хватает, то их можно добавить по аналогии с остальными (на схеме места добавления обозначены знаком "-//-"). Но не забывайте о максимальной длине провода (15 клеток).

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

Простой кодовый замок
Простой кодовый замок
Простой кодовый замок (схема)

Плюсы:

  • Плюс этой системы в том, что на нее не нужно много ресурсов.
  • Расширяемая.

Минусы:

  • Сложно "перемешать" правильные и не правильные рычаги.
  • Если нужно поменять код, то придется практически полностью перестраивать систему.

Замок с изменяемым кодом

Этот замок технологичнее и сложнее предыдущего, но и более интересен в применении. Помимо уже известного нам AND Gate мы можем наблюдать еще и XOR/XNOR Gate (напомню, что на выходе он выдает 1 тогда, когда на вход он получает разные сигналы: 0 и 1 ).

Через рычаги 0 (на схеме) будет вводиться код для открытия двери (я пишу про дверь, потому что это одна из двух вещей, на которую можно взаимодействовать током). Рычаги 1 определяют какие из рычагов 0 будут "правильными". Рычаг 2 - это "засов" (если факел над "засовом" горит, то он "задвинут"). А 3 - выход идущий к двери.

Если рычагов вам не хватает, то их можно добавить по аналогии с остальными (на схеме места добавления обозначены знаком "-//-"). Но не забывайте о максимальной длине провода (15 клеток).

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


Плюсы:

  • Не нужно перестраивать систему для изменения кода.
  • Просто "перемешать" правильные и не правильные рычаги.
  • Расширяемая.

Минусы:

  • Более громоздка по сравнению с простой версией.
  • Ресурсоемка.
Замок с изменяемым кодом
Замок с изменяемым кодом (схема)

Упрощенный замок

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

Давайте попробуем это построить! На блоках с "правильными" рычагами ставим красные факелы, неправильные же просто замыкаем напрямую к цепи. Дальше ставим инвертор и дальнейший сигнал подводим к AND Gate, на втором входе которого стоит "засов". Вот и все, ставим дверь и готово.

Плюсы:

  • Компактно
  • Требуется малое количество ресурсов
  • Легко расширять и менять код переставляя факелы красного камня

Минусы:

  • Если играть в мультиплеере, то зайдя внутрь вас могут закрыть (сбив код снаружи). Чтобы избежать такого недоразумения, подключите к первому входу (куда подключен код) кнопку и проведите ее внутрь помещения. Это будет экстренная кнопка.

Шаг 1

1. Строим стену высотой в 2 блока, на которой через 1 размещаем рычаги (произвольное количество).
2. Определяем будущую комбинацию. Например:
1й вниз
2й вниз
3й вверх
4й вверх
5й вниз

Шаг 2

3. Обходим нашу схему с тыльной стороны и на тех блоках, где у нас установлены рычаги в нижнем положении, вешаем красные факелы. Они сразу должны потухнуть. Это будет значить, что вы поставили их верно
4. В тех местах, где установлены рычаги с положением "вверх" к тыльной стороне ставим блоки на землю вплотную к стенке, так как показано на рисунке.

Шаг 3

5. Протягиваем под стенкой дорожку редстоуна и проводим ее поверх наших блоков (там, где они есть).
6. В конце нашей дорожки делаем отверстие в 2 блока и ставим красный факел.

Шаг 4

7. Выводим из нашего отверстия дорожку. Это и будет выходной сигнал. Он будет выдавать "1", когда будет выставлена правильная комбинация. Уже можно подключить к выходу дверь, поршень или другой элемент. Например, можно поставить раздатчик.
8. Теперь каждый, кто введет правильную комбинацию получит печеньку.

Видео инструкция

На видео подробно описывается процесс построения кодового замка{{#ev:youtube|v-Sj8IDVNxc}}

Счетные машины

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

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

Простой оператор сложения

Складывает два сигнала на входе и выдает результат (на выходе старший разряд внизу (схема)). В основе лежит XOR/XNOR Gate (в основе которого лежит AND Gate).

Простой оператор сложения
Простой оператор сложения

Работает это так:

  • Младший разряд на выходе горит, если на входе имеем два разных сигнала.
  • Старший разряд на выходе горит, если на входе оба сигнала 1 .

На схеме присутствуют два слоя 0 и 1 и находятся они на разных (соседних) плоскостях.

Простой оператор сложения (схема)

Сложение многоразрядных чисел

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

Сложение многоразрядных чисел

Давайте разбираться как это работает:

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

Система расширяемая до бесконечности (без ограничения по длине провода). На схеме показана символом "-//-".

Сложение многоразрядных чисел (схема)

Простой оператор вычитания

Вычитает из первого входа второй.
Состоит из двух схем: проверка текущего разряда:

ВХОД 1 ВХОД 2 ВЫХОД (ВХОД 1 - ВХОД 2)
1 1 0
1 0 1
0 1 0
0 0 0


И проверка вычитания из старшего:

ВХОД 1 ВХОД 2 ВЫХОД ( (ВХОД 1-ВХОД 2)<0 )
1 1 0
1 0 0
0 1 1
0 0 0


См. схему.
Расширять(для вычитания многоразрядных чисел) по-аналогии со схемой сложения многоразрядных чисел.

Простой оператор вычитания

Многоразрядный вычитатель

Рассмотрим таблицу истинности:

Ввод Вывод
Вход 1 Вход 2 Z(N-1) Выход Z(N+1)
0 0 0 0 0
0 0 1 1 1
0 1 0 1 1
0 1 1 0 1
1 0 0 1 0
1 0 1 0 0
1 1 0 0 0
1 1 1 1 1

На первом входе - уменьшаемое.
На втором - вычитаемое.
Z(N-1) - бит займа из предыдущего разряда.
Z(N+1) - бит займа из следующего разряда.

Хорошо виден сам механизм
Не самая компактная версия механизма - между выходами 8 блоков

Два раза применив "исключающее или"(XOR) можно понять,что результат на выходе равен XOR(XOR(Вход1,Вход2),Z(N-1))
А также:

  • Если число на 1-м входе равно числу на втором входе(XNOR(Вход1,Вход2)=1),то Z(N+1)=Z(N-1).
  • В противном случае Z(N+1)=Вход2.
Механизм целиком
Группы золотых блоков - XOR-гейты
Синие блоки - группа инверторов
Расстояние между выходами - 5 блоков

Основываясь на этих данных,строим многоразрядный вычитатель.
Начинать строительство нужно с наименьшего разряда - он находится справа.
Бит займа(Z(N-1)) для наименьшего разряда равен нулю.


  • Зеленый блок - бит займа из предыдущего разряда;
  • Желтый блок - уменьшаемое;
  • Оранжевый блок - вычитаемое.


Простой счетчик

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

Осторожно:

Обратите внимание на значение повторителя на схеме (1-ый режим работы). Дело в том, что значение задержки на повторителе должно быть равным продолжительности входного сигнала (тот, что для прироста). Для Clock-генератора представленного на картинке (горит только один повторитель подряд) значение задержки будет равно 0.1 секунда (1-ый режим повторителя). Для кнопки задержка должна составлять 1 секунду (2 повторителя с 4-ым режимом, и один с 2-ым).

Простой счетчик (схема)
Clock - генератор (повторитель)

Счетчик для многоразрядных чисел

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

Счетчик для многоразрядных чисел
Счетчик для многоразрядных чисел
Счетчик для многоразрядных чисел (схема)

Мигалка на основе Clock generators

Данный механизм может использоваться во многих строениях, будь то посадочная полоса аэропорта, вывеска магазинчика на вашем любимом SMP сервере, станция метро. Даже ваше эпичное строение будет по особому выделятся ночью переливанием факелов редстоуна. Факелы будут по очереди зажигаться "волной". Схема простейшая и основана на повторителях и Clock generators. Приступаем к монтажу.

  • Строим элементарный (из 5 инверторов, также можно использовать любое нечетное число) сlock generator.
Clock-generator
  • Проводим сигнал от Clock generator'a, устанавливаем повторитель, и сразу перед ним устанавливаем любой непрозрачный блок, поверх которого ставим красный факел. Данный механизм будет служить "диодом" для системы.
"Диод"
  • Повторяем прошлый пункт несколько раз. Можно изменить расстояние между диодами, просто удлинив провод между ними (главное: не ставить провод между повторителем и блоком, иначе система не будет работать!). Также, можно менять скорость и длину волны, регулируя мощность повторителей и частоту Clock-generator'a.
Система в действии
  • Данную систему можно компактно спрятать под землю. Ниже приведён вид подземного варианта сбоку.
Механизм, спрятанный под землю

Другие редстоун-схемы

Игровые автоматы

Игровой автомат типа "Слот-машина".

Игровой автомат типа "Слот-машина".

Простой игровой автомат.

Простой игровой автомат.

Пример ещё одного игрового автомата: {{#ev:youtube|za2pWXWiBnE}}

Фермы

Автоматическая тростниковая ферма.

Автоматическая тростниковая ферма.

Полуавтоматическая тростниковая ферма.

Полуавтоматическая тростниковая ферма.

Схема поддерживания сигнала

В качестве примера использования задержки рассмотрим поршневые двери:
300px

В такой схеме нужно нажать на кнопку и успеть пробежать двери за одну секунду. Вместо этого между кнопкой и дверью можно установить схему задержки:
Longing chain.png

В такой схеме сигнал на выходе появляется практически сразу при подаче на вход, а исчезает спустя некоторое время после снятия входного. Каждые два повторителя представляют собой звено, которое может поддерживать сигнал до 0,4 с. Повторители, идущие в одну линию, настраиваются для достижения нужной длительности поддерживания сигнала, поперечные - в режиме минимальной задержки. Необходимо также помнить о правиле 15 клеток для выходной линии (той, что идет после поперечных повторителей).

Одноимпульсная кнопка

В некоторых случаях нужно сделать так, чтобы переключателем (например, кнопкой) можно было воспользоваться только один раз. Для этого можно воспользоваться комбинацией триггера и гейта AND:
One-act button 3.png One-act button 4.png
Слева, на блоке красной шерсти, находится кнопка включения. Повторители нужны для определения предыдущего состояния триггера (два повторителя по 0,4 - 0,8 секунды назад). Без них система всегда будет считать, что нажатие уже произошло. Для сброса нужно прикрепить к нижнему блоку синей шерсти кнопку и активировать ее.

Смотрите также