Кодовый замок
Эту статью нужно срочно переписать!
Вы можете помочь, исправив и дополнив еë.
|


## Двери

### Двери использующая логический элемент AND

#### Одинарная дверь

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

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

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

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

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

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

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

Монтаж подпольный, рычаг настенный |
---|


#### Двойная дверь

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

- Метод спуска «вниз»
- Два рычага (основной A1 и запирающий A2)
- Железные двери

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

- 2.1 Рычаги A1 и A2, при нажатии, ретранслируется сигнал вниз.
- 2.2 Сигнал от рычага отключает факелы(под дверью).
- 2.3 Двери за отсутствием сигнала закрываются.


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

- 3.1 Необходимо очистить пространство под будущей дверью (3х6х3)
- 3.2 Строим так, как показано на рисунке
- 3.3 Закрываем свободное место и ставим рычаг — засов

Плюсы: | Минусы: |

Нужно мало места . | Требуются железные двери, так как деревянные открываются по ПКМ.
|

Есть система блокировки. | Вас могут запереть. |

Снаружи и внутри выглядит эстетично. |


Сложная схема с защитой от запирания | ||
---|---|---|

| ||

| ||

Плюсы: | ||

Есть система блокировки. | ||

Есть кнопка на случай запирания. Откроется только когда засов открыт. | ||

Снаружи и внутри выглядит эстетично. | ||

Минусы: | ||

Требует много места. | ||

Затратно по ресурсам. | ||

Сложен в постройке. |




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

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

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

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

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

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

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

Плюсы:

- Не нужно много ресурсов.
- Расширяемая.


Минусы:

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


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

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

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

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

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


Плюсы:

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




Минусы:

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




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

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



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

Плюсы:

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

Минусы:

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

** Шаг 1 **

** Шаг 2 **

** Шаг 3 **

** Шаг 4 **

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

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

## Простой переключатель[]Собственно ничего сложного. Рычаг либо включает факел и выключает нижний провод, либо наоборот. A если добавить AND вентиль, то возможна блокировка. |


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


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


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

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

Для начала вам необходимо познакомиться с булевой алгеброй (если коротко, это алгебра основанная на чётных числах. Если кто-то не понял, это сборник формул с чётными числами во главе. Если хочется поподробней, но не хочется истезать себя формулами, можно прочитать только эту, эту, ну и можно эту части, но сама статья лёгкая и маленькая, можете прочитать полностью, говорю как гуманитарий-полуполиглот-литературовед) и с двоичной системой счисления (опять же если коротко, эта система похожа на подбор по порядку. Примеры десятичное-двоичное, 0-0, 1-1, 2-10, 3-11, 4-100, 5-101, 6-110 и т. д.. Более подробно, на примере 6. 6 это 4+2, и в двоичной системе также 110 это 100+10. Просто разделите число на чётные множители и сложите их, а если число нечётное нужно добавить к получившимся чётным числам 1, к примеру 7=4+2+1 и 111=100+10+1. Что-бы читать двоичный код, нужно запомнить запись хотя бы до 8, а лучше до 16. Ошибку в вычислениях можно заметив если у вас получилось 6=2+2+2 и уж тем более 110=10+10+10). В отличие от предыдущих разделов, эти знания вам необходимы хотя бы поверхностно.

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

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

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

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

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



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

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

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

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

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


Самый компактный оператор

угольная руда 1 слагаемое алмазная 2 то есть складывается (3+2=5)

с другой стороны

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

Вычитает из первого входа второй.

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


ВХОД 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) — бит займа из следующего разряда.


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

А также:

- Если число на 1-м входе равно числу на втором входе(XNOR(Вход1,Вход2)=1), то
**Z(N+1)=Z(N-1)**. - В противном случае
**Z(N+1)=Вход2**.

Основываясь на этих данных, строим многоразрядный вычитатель.

Начинать строительство нужно с наименьшего разряда — он находится справа.

Бит займа(Z(N-1)) для наименьшего разряда равен нулю.


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

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

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

**Осторожно:**

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

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

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

Усовершенственный вариант.

## Мигалка на основе тактовых генераторов

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

- Строим элементарный (из 5 инверторов, также можно использовать любое нечетное число) тактовый генератор.

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

- Повторяем прошлый пункт несколько раз. Можно изменить расстояние между светодиодами, просто удлинив провод между ними (главное: не ставить провод между повторителем и блоком, иначе система не будет работать!). Также, можно менять скорость и длину волны, регулируя мощность повторителей и частоту тактового генератора.

- Данную систему можно компактно спрятать под землю. Ниже приведён вид подземного варианта сбоку.

## Другие схемы

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

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

### Фермы

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

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

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

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

Файл:Autodoor3*2.png

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


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

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

В некоторых случаях нужно сделать так, чтобы переключателем (например, кнопкой) можно было воспользоваться только один раз. Для этого можно воспользоваться комбинацией триггера и гейта AND:


Слева, на блоке красной шерсти, находится кнопка включения. Повторители нужны для определения предыдущего состояния триггера (два повторителя по 0,4 — 0,8 секунды назад). Без них система всегда будет считать, что нажатие уже произошло. Для сброса нужно прикрепить к нижнему блоку синей шерсти кнопку и активировать её.

Вариант проще без гейта (левая кнопка — вкл правая — сброс)

## Итог

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

## См. также

- Схемы из красного камня — обязательно проверьте, ибо у вас точно возникли вопросы насчёт слов AND, XOR, XNOR да и к большей части терминов. Все ответы здесь.