【教程】原版按键密码门(4码5位+改进10码5位)的建造+新手解析

据说1楼要留给百度。

楼主 jianghr  发布于 2012-05-05 13:07:00 +0800 CST  
本帖内容我初次发在iailum的红石研究贴中(http://tieba.baidu.com/p/1507968109?pn=31),那贴的确很长很长(快要1000L了,不知到时有没有人抢),里面已经成型了很多红石作品,愿意翻你一定有收获的。

基础构型基本上是我自己原创的,当然还要感谢以iailum为首一批大神的长期指点,特别感谢weixingl888的译码器结构(见http://tieba.baidu.com/p/1497462078)对我验码部分电路的启发。这里想让更多的人看到就另开一帖了。

其实此种构建形式位数可无限扩展,码数在改进型上不加中继最多可到14位,不过大家应该都习惯10位的就没进一步扩建了。

原型机"4码5位密码门"存档发在这一楼。即下图,这是一张内涵图,下载图片后把后缀名改为rar即可解压出存档。

不过可能有人实在“打开的方式不对”,我也放出115地址,提取码【http://115.com/file/an0xqfje#】。
补充下存档中4号输入位侧面的按钮是调试用的,请无视。

======
后来和iailum讨论又出了部分改进的新型机"改进10码5位密码门",也在这里放出吧,以后可能还有改进机放出
=内涵图=


=115= 【http://115.com/file/beckhsks#】
解说会以原型机为主,改进型在改进部分我会简单介绍下的。

另外说明下存档都是1.2.5版本的,不过其他版本用转换下应该就可以了

楼主 jianghr  发布于 2012-05-05 13:10:00 +0800 CST  
这一楼先说一下玩红石最最基本的一些东西,包括需要注意的一些细节,大神级的请无视这些楼。
0、先说下演示用具红石灯,这玩意是只要被充上红石信号(简称充能)就能亮的东东。不过它可以接受临近方块弱充能,演示起来稍有麻烦。


然后方块有上下+周围共6个面,这个听起来很NC但是还是要说一下。
充能有强弱之分,强充能方块可对周围6个方块弱充能,这里先不深入详解,看后面就懂了,下文若没特别说明那就强弱均可。
下述红石线、红石火把、开关、按钮无论怎么附着其实都要占用一个方块的空间,属于非实体方块(非实体方块还包括玻璃树叶半砖楼梯栏杆火把空气等),计算充能距离要从所在方块开始计算。
游戏中时间单位为tick(又称t、刻),1tick=1/20秒。
1、红石线
红石粉可以涂在实体方块的上表面,相邻的可以相互连接形成红石线,相差1格高的相邻红石可以自动爬墙连接,不过爬墙的那个棱角安上个实体方块可以切断爬墙,故可用于绝缘。


红石线只能从旁边6个强充能方块获得信号而不论指向。
整条红石线传递红石信号/充能时没有延迟,但只能传递15格,再长须有中继手段,但也带来延迟。
点亮的红石线可以对被指向的方块(弱)充能,指向是有讲究的这里就不说了,自己摆一下就明白了,如果只有1点的话则会对周围4个方块充能,另外无论什么指向,点亮的红石线都会对下面的方块(弱)充能。


2、红石火把
红石火把可以插在方块的侧面或顶端,充能特点是本身算是(强)充能非实体方块,可以对除了上方与附着面以外的临近方块弱充能(下面类似的就不重复了),额外注意它会把正上方1格的实体方块(强)充能。


注意红石火把是可以关闭的,只要给它附着的那个方块充能即可。从充能到火把熄灭需要1tick的时间,或许就是因为这个原因1tick长的信号不能熄灭火把。同样的关闭对附着方块的充能也要1tick的时间才会亮起来。


3、拉杆
拉杆附着方式与红石火把一样,不同的是它可以直接用手控制其开闭,而且是持续的。
充能特点是打开时本身算强充能方块,被附着的方块也强充能。


4、按钮
按钮只能附着在实体方块侧面,但按下后必须等1秒才会且一定会弹起,按下期间一直算打开状态。
充能方式同拉杆,很多人问为何按钮能"隔空"激活加速铁轨,这就是原因。


5、红石中继器、简称中继
这货菊花(有长条那边)为受,头位攻。只能从受位获得充能信号,经过延迟后对攻位所在方块(强)充能。


换句话说关键词是单向传递、延迟、中继信号。

中继器放下后延迟档位右键之可调,从1tick到4tick,注意这延迟无论是亮还是灭都要经历。

楼主 jianghr  发布于 2012-05-05 13:12:00 +0800 CST  
基本的说完了,这一楼说下密码门中用到的基本电路元件,
1、非门(NOT),说白了就是输入个信号关闭红石火把的输出,形式多样不一一列举。


2、与门(AND),就是两个都要有输入才会打开输出,图应该不难懂。


两个一起输入才能关闭上面两个火把,这样前面的火把才能亮形成输出,不过变型也很多。
3、RS锁存器
意义是保存最后一次的输入位点,原理见图,


两个火把互为攻 受的关系,两边电路有外来信号,就会攻 受形势逆转。
以下是本机应用的变体

4、单刻/2刻脉冲发生器
不知最初出处如何,反正我是从iailum那学来的
原理图见下


也就是输入端输入关闭上面那个火把,然后下面火把失去抑制点亮,这个过程共需2tick,然后从中继器延时传来信号扑灭远端火把关闭输出,这样视中继器档位多少就输出多久的脉冲,调3tick输出单刻(注意不能驱动火把电路),调4tick输出2刻。
以下是本机用到的两种实用型结构。


元件差不多讲完了,各位大神回来看看密码门构建的解说吧。

楼主 jianghr  发布于 2012-05-05 13:17:00 +0800 CST  
那么现在开始搬运,可能有少许重复:
这是RS锁存器的一种变形,两个火把互为攻 受的关系,只要在蓝圈处外来信号,就会攻 受形势逆转。本机中把上面那个火把点亮定义为该RS锁存器“开”的状态。表示记录目前输入所在位的一个密码是正确的。

那 么,记录所有密码的正确性就要用于位数相等的RS锁存器,那么,在输入下一个密码时如被判断为正确(通过另外的判断电路实现),而且上一位密码输入是正确 的(也就是上一个RS是点亮的),那么就点亮下一个RS,说白了是“与”运算(AND),电路实现如下,演示两个RS锁存器的“移码” (weixingl888的16位移码器视频把我看傻了啊,精品区里有):

那么上部图右侧所示为两个RS锁存器,其中上一个RS已经点亮,左边蓝圈表示为验码电路过来的讯号(为真时那个火把关闭)。共同构成个与门
下部图演示验码电路为真时与门激活,点亮下一个RS锁存器。



楼主 jianghr  发布于 2012-05-05 13:19:00 +0800 CST  
那么依次激活串联的RS锁存器,到最后一个开门就行了。
但是还有以下问题:
1、验码电路及设置密码部分
2、假如某君把所有按钮都按顺序123412341234的一遍一遍来,那么门最终会打开,所以要加入输入错误的复位清除电路
===========
依次讲,先是验码设码电路:
我要求宽度为两格并不能侧向漏电,所以中继器用了不少。

上图演示验码基本电路,所有拉杆都是打开的以关闭附着块上面的红石火把,以上形成一个N联或非门,只要有左边4个一个点亮右边的火把就会关闭形成输出。下面的红石线是演示信号输入方向。
那么就要求在不对应的火把压根点不亮,而对应的火把有信号输入时点亮。
继续上图:

左图示如果下面方块的拉杆若关闭,顶上火把是不可能亮的,所以底下的拉杆可以用于设密码。
中图示如按钮信号从中继器端过来,整个子装置其实形成个与门,如果左面没有输入或拉杆是关闭的话顶上的火把都不可能亮。
右图示有输入且拉杆把密码设为此位可接受时的状况,与门打开,火把亮了
那么把那个机架填上看看:
机架背面,可见3号(从背面看)位密码设为可接受状态

正面图看起来很宽敞,但是机架群是相当拥挤的。

假设全接受信号时(那是不可能的)只有3号位的火把点亮,总和形成输出。

此楼最后放机架群的图:


楼主 jianghr  发布于 2012-05-05 13:21:00 +0800 CST  
然后是复位清除电路:
由于输入错误都是由输入动作引起的,那么就从源头抓起,从按钮处获得输入信号。这是偷懒的,各位应该有很多方法隐藏线路。

通入各个RS锁存器进行复位

此处复位设定是非判断复位的,如果不加以保护一溜子RS锁存器都会被关闭。
那么又要解决两个问题:
1、保证此处RS锁存器在激活下一个RS之前不被熄灭;
2、保护下一个RS在刚激活时不被熄灭。
其实两者都是通过延时保护的,不过先说下同步问题,
由 验码电路可见验码过程是依序进行的,那么RS的移位也有时间需求,那么复位动作的时序也要保持一致,不然跑着跑着复位早出验码好多就不能达成1,晚出验码 很多就不能达成2,所以复位电路中要加中继器,前面可见验码每步延时是2刻,这里用一个调成2刻就成,应该不难理解就不上图了。
那么回归问题1,这个好说,复位电路起步加延迟(下图红圈)就行了:

但是还要注意!按钮激活时长达1秒,不加约束会发生各种奇葩事件,黄圈和绿圈都是2刻脉冲发生器,把iailum教的单刻脉冲发生器调整后即可,为什么用2刻是因为1刻脉冲不能驱动火把亮灭,另外绿圈是4个并列的,为防止红石串线我把它修剪成单排版。
那么继续问题2,这个类似“新手保护”,也就是在RS点亮后延时一会才允许其被复位电路熄灭。实现方式如下:
RS 锁存器上加一层,感应本RS的打开的状态,通过延时(黄线,是瞎设的,应该够用)通向绿圈内的上火把,蓝圈的开关模拟传过来的复位信号,那么绿圈内构成了 个与门——只有在本RS点亮的情况下,有复位信号输入才能关闭本RS,而且与门还要延时生效,保证点亮那次的复位信号安全Pass。

从下面看

演示下:
延时过程

现在可以复位了

复位之


楼主 jianghr  发布于 2012-05-05 13:22:00 +0800 CST  
到这里各位大神应该差不多明白了吧,这货全部正确输入详细工作循环是输入->验码->RS进位(被延时保护避过此轮复位信号)->上一位复位。
因为强制复位的存在,如果此次输入错误按钮,那么验码电路未通过无输出,RS进位失败,上一位RS已经脱离保护时段被【随后跟上(这点很重要)】的复位信号扑灭,也就把密码输入打回第一位。
此型机可以横向纵向扩充,纵向(位数)理论上应该是无限的,横向(码数)延伸可能要受延时同步的限制,按2格的计算不用中继的话最大支持7码。
===============
这样原型机的解说就搬运完毕了,下面开始改进型号改进部分的解说。

楼主 jianghr  发布于 2012-05-05 13:26:00 +0800 CST  
改进型机主要改进的是译码部分电路。缩减了占地为单排,这样一组机架下可以容纳更多的码数。
验码电路正面观

====

这样安排机架更紧凑,机架下三个单元,开关挪到了上面,左右两个单元的开关为打开状态,所以下面无论有无输入上面火把都不会点亮,而中间的单元输入后就会点亮上面火把,经顶部红石线总和后形成输出。
演示:




楼主 jianghr  发布于 2012-05-05 13:35:00 +0800 CST  
但是还有一个问题,输入单元的2刻脉冲发生器虽然精简为1排厚度,但放在一起仍然会串线(加强红石里的涂色红石合金线残念啊),那么采用交错结构,延迟的区别采用前后补充法。
输入单元上面观,其实是间隔错开两格分两排布置,不同排的2刻脉冲采用分别在黄圈和蓝圈加中继器避免不同步和串线。

另外由于复位电路的信号源还是由输入机构导出的,所以那里电路也要注意布置,我的安排如下,这样可以避免串线(2刻脉冲发生器单排版里有一点红石朝输入端,直接连会串线)

输入端加了这么多延时,那么复位电路也要加延时,我是又加了个满档的中继器,就不上图了。
整机其它部分与原型机基本无异。感谢iailum大神前来捧场!精简串联RS的结构可能要拜托您了。



楼主 jianghr  发布于 2012-05-05 13:49:00 +0800 CST  
那么解说告一段落,欢迎各位指点!
还有什么不明白的可以再这里回复我。大家一起讨论哈~~

楼主 jianghr  发布于 2012-05-05 13:51:00 +0800 CST  
最后弱弱地申个精……
@a464723626
@天空之城TCD

楼主 jianghr  发布于 2012-05-05 13:54:00 +0800 CST  
已经下载了,正在分析中……


楼主 jianghr  发布于 2012-05-05 14:06:00 +0800 CST  
手好快啊,其实原型机就是拿思路硬堆出来的,看似庞大,其实都是些很有规律性的东西排列组合哦。机器往往越优化越内涵。


楼主 jianghr  发布于 2012-05-05 14:10:00 +0800 CST  
亲,也来发表下看法吧。


楼主 jianghr  发布于 2012-05-05 14:11:00 +0800 CST  
谢谢!话说MCBBS还是大姨妈状态啊,为啥我摸过去没多久它就挂了呢?


楼主 jianghr  发布于 2012-05-05 14:12:00 +0800 CST  
这个果断没有你的推房机犀利啊……本来想用活塞推个方块表示输入正确输入位数的,但对复位时序把握无力就用纯红石了,表示不再怕听音辨位了。

楼主 jianghr  发布于 2012-05-05 14:15:00 +0800 CST  
欢迎围观,好好准备考试,期待你在这一最精彩暑假的作品哦~

楼主 jianghr  发布于 2012-05-05 14:17:00 +0800 CST  
谢谢支持,话说接触MC也才两个月,这游戏有很多种玩法,表示每种我都很喜欢,有灵感来摆弄个红石也是很好的。

楼主 jianghr  发布于 2012-05-05 14:20:00 +0800 CST  
这么快就精了,谢谢天空哦


楼主 jianghr  发布于 2012-05-05 14:23:00 +0800 CST  

楼主:jianghr

字数:9476

发表时间:2012-05-05 21:07:00 +0800 CST

更新时间:2016-03-15 10:49:56 +0800 CST

评论数:122条评论

帖子来源:百度贴吧  访问原帖

 

热门帖子

随机列表

大家在看