Minecraft Wiki

除另有声明,转载时均必须注明出处若簡繁轉換出錯,請以遊戲內為準请勇于扩充与修正内容有兴趣逛逛我们的微博沟通交流,欢迎到社区专页需要协助,请在告示板留言

了解更多

Minecraft Wiki
Advertisement
此條目的內容需要改進。

這些內容因翻譯質量較低而違反或未達到條目標準
你可以幫助我們來改進此條目。

Information icon
此特性為Java版獨有。

無延時電路的原理及實現方法[]

紅石電路中,中繼器紅石火把等紅石元件產生反應都會有延遲。然而,它們的延遲有些時候是沒有必要,甚至是有害的。在大型電路中,會使用許多紅石中繼器來充能,它們產生的延遲不斷疊加,會導致非常大的總延遲。若想實現中繼器和紅石火把的功能但不產生延遲,就需要用到無延遲電路。

無延遲電路的目的就是實現基礎元件的相應功能,同時避免產生延遲。然而避免延遲的後果就是電路比較複雜,製造相對麻煩。當需要縮短延遲且電路大小並不非常重要時,無延遲電路的應用價值是很高的。在無延遲電路的發展中作出較大貢獻的有Sethbling和JL2579。然而無延遲電路的基本原理是很簡單的,電路結構也可以根據自己的需求重新設計。本教學中的部分電路是作者自己設計的,但是類似作用的電路的相似度都很高,因此也沒有什麼原創性可言。只要掌握了原理,就可以根據自己的需求對這些電路進行重新設計。

原理[]

移動中的活塞[]

活塞或黏性活塞推動一個方塊時,在活塞接受到訊號的瞬間,被推動的方塊會立即被轉換成移動中的活塞,並且36號方塊的外觀表現為被推動的方塊(36號方塊就是為了實現活塞在推動中的動畫效果而設計的)。

在活塞收到訊號變化時,它所推動、拉動的方塊轉變成36號方塊的過程不一定是瞬時的。活塞收到訊號後可能要再過0.5啟動延遲)才會開始推動、拉動過程。

可以注意到,36號方塊不是紅石導體。如果推動前活塞附著的方塊是紅石導體,那麼這個方塊的實體/非實體的轉化就可以被有效利用。

設計1


圖示:

第一行:活塞推出前
第二行:活塞剛推出後(此被推出的方塊變為36號方塊,外形不變)
第三行:活塞推出0.5秒後(此時被推出的方塊變回原始方塊)。

紅石線被紅石導體切斷[]

紅石線向上方連接時,若被紅石導體切斷,那麼紅石線將斷開,訊號將無法傳輸。被非紅石導體切斷並不受影響。圖中左側紅石訊號即使被非紅石導體切斷仍能繼續傳遞,圖中右側紅石訊號被紅石導體切斷就失去了傳遞訊號的能力。

中繼器、紅石火把、紅石線和比較器進行充能[]

中繼器紅石火把紅石線比較器只能對紅石導體進行充能。圖中左側中繼器無法對非紅石導體進行強充能,紅石無法得到訊號;圖中右側中繼器對紅石導體進行強充能,紅石得到訊號。

無延遲中繼器、非門具體做法[]

上邊沿無延遲中繼器[]

當輸入端(控制桿)從OFF->ON時,輸出端(紅石粉)立即變成強度為14的訊號源但是ON->OFF時仍然有延遲,很多場景中僅僅對於OFF->ON時有嚴格的延時要求,因此這種OFF->ON無延遲中繼器的應用場景非常大.

當輸入訊號從OFF變為ON時,活塞所附著的方塊立即變成36號方塊,由於36號方塊是非紅石導體,無法再切斷紅石線的連接,因此輸出端的紅石與下方的紅石連接,得到強度為14的訊號,控制桿即為輸入端,紅石粉為輸出端。

下邊沿無延遲中繼器[]

當輸入端(控制桿)從ON->OFF時,輸出端(紅石粉)立即失去強度為15的訊號,但是OFF->ON時仍然有延遲,若輸入端訊號預設為ON,而要求無延遲傳送時,這種ON->OFF無延遲中繼器的應用場景非常大,當輸入訊號從ON變為OFF時,活塞所附著的方塊立即變成36號方塊,由於36號方塊是非紅石導體,無法再被中繼器強充能,因此輸出端的紅石失去強度為14的訊號。

上邊沿無延遲非門[]

當輸入端(控制桿)從OFF->ON時,輸出端(紅石粉)失去強度為15的訊號源,但是ON->OFF時仍然有延遲,若需要使用OFF->ON的無延遲非門時這個是非常不錯的選擇,原理同ON->OFF無延遲中繼器,僅調換了輸出位置而已,輸入訊號從ON變為OFF時,活塞所附著的方塊立即變成36號方塊,由於36號方塊是非紅石導體,無法再被中繼器強充能,因此輸出端的紅石失去強度為15的訊號。

下邊沿無延遲非門[]

當輸入端(控制桿)從ON->OFF時,輸出端(紅石粉)立即變成強度為14的訊號,但是OFF->ON時仍然有延遲。當需要ON->OFF無延遲的非門時這個電路的使用場景很大。原理同OFF->ON無延遲中繼器,僅調換了輸出位置而已。當輸入訊號從ON變為OFF時,活塞所附著的方塊立即變成36號方塊。由於36號方塊是非紅石導體,無法再切斷紅石線的連接。因此輸出端的紅石與下方的紅石連接,得到強度為14的訊號。

雙向無延遲中繼器[]

根據輸入端(控制桿)訊號的ON或OFF,輸出端(紅石粉)訊號會無延遲變成0或14,這個就是毫無延遲的用於延長訊號的中繼器了。電路可以看作是ON->OFF和OFF->ON兩種無延遲中繼器的結合,當電路從OFF->ON時,紅石導體立即變為36號方塊。因此黃金方塊的紅石線連接到下方的線路,獲得強度為14的訊號,過了1tick後紅石火把熄滅,再過1tick後中繼器熄滅,此時活塞已完成推動,下方中繼器對紅石導體進行充能,維持訊號。

當電路從ON->OFF時,紅石導體立即變為36號方塊,中繼器無法進行充能,輸出端失去訊號。

輸入端充能方塊不便的,可以把紅石火把中繼器從輸出端接出。

Or Gate Instant Repeater
瞬置瞬時中繼器[1]
A

瞬置瞬時中繼器

[紅石圖例幫助]
1×3×2(6方塊),1格寬,瞬時
電路延遲:0
本電路較小巧,耗費資源少,但依賴非有意為之的活塞特性,這些特性有在未來版本中改變的可能。
行為(上升沿): 輸入為0時,紅石方塊間接啟動下一層的活塞。輸入變成1時,上方活塞啟動,紅石方塊開始推出,與此同時下方活塞失去供能,開始拉回方塊A,這樣上方活塞在啟動的幾乎同時又失去了能量來源方塊A——這樣上方活塞幾乎瞬間完成了活塞臂伸出與縮回(即「瞬(間放)置」:活塞把紅石方塊瞬間推到了下一格,活塞臂縮回時也沒有把紅石方塊拉回去),這樣紅石方塊又開始啟動下方活塞。所有的過程幾乎是瞬間完成的(在同一刻內),有效地使得上升沿訊號瞬間透過整個中繼器。下方活塞繼續伸出,2刻後使得A處於原始位置,上方活塞重新伸出,準備在下降沿時拉回紅石方塊。
行為(下降沿): 輸入由1變0時,上方黏性活塞開始拉回紅石方塊,從而立刻切斷輸出端訊號,有效地使得下降沿訊號瞬間透過整個中繼器。紅石方塊移動時,下方活塞縮回,但紅石方塊完全縮回到位後,又可以間接啟動下方活塞。整個系統又回到初始狀態。
紅石粉斷路瞬時中繼器[2]
A

紅石粉斷路瞬時中繼器

第一個活塞下的空間阻止了紅石方塊啟動自己的活塞。

[紅石圖例幫助]
1×5×4(20方塊),1格寬,瞬時
電路延遲:0
本電路比瞬置瞬時中繼器稍大,但使用了較為穩定的遊戲特性。
行為(上升沿):輸入由0變1時,下方黏性活塞伸出,使得上方黏性活塞縮回,從而立即使方塊A下方的紅石粉傳導訊號到輸出端。所有的過程幾乎是瞬間完成的(在同一刻內),有效地使得上升沿訊號瞬間透過整個中繼器。移動中的紅石方塊也會立即停止對其下方紅石粉的啟動,但由於中繼器的延遲,紅石方塊能夠在中繼器輸出訊號消失之前接替中繼器,繼續對輸出端供電。
行為(下降沿):輸入由1變0時,下方黏性活塞開始拉回紅石方塊,從而立即切斷輸出訊號,有效地使得下降沿訊號瞬間透過整個中繼器。紅石方塊縮回到位後啟動下面的紅石線與上方活塞,但由於中繼器的延遲,上方活塞能夠在中繼器有輸出訊號之前把方塊A推回原位,徹底切斷可能啟動輸出的線路。
替代方案(2格寬):圖示最上面2層的所有方塊(包括紅石粉)可垂直於圖示平面移出1格,並下移1格,使得下層活塞與中繼器同一層放置,同時移出下層的最後方的方塊及其紅石粉,這樣可以將原裝置改造成2格寬版本。在該版本中,如果想要減少紅石用量,可以挖空紅石方塊可能存在的2個位置下方的方塊,用紅石火把代替,再用任意紅石導體取代紅石方塊。
瞬時雙向中繼器[3]

瞬時雙向中繼器

黏性活塞之下是設定為1刻延遲的、由火把指向外面的中繼器。

[紅石圖例幫助]
4×4×3(48方塊),瞬時
電路延遲:0
雙向復位時間:2.5刻
一側輸入訊號時,該訊號會:
(1)使側面火把熄滅;
(2)啟動一條直線上的黏性活塞。
活塞開始推動方塊時,方塊下方的紅石線會立刻連接到輸出端,從而使輸出端立刻開始輸出。活塞推動到位後,來自火把和活塞下方中繼器的訊號消失,同時推動的方塊又會被強充能,接替對輸出端供電的工作。
這裡的雙向指的是訊號傳遞的方向。

雙向無延遲火把[]

根據輸入端(控制桿)訊號的ON或OFF,輸出端(紅石粉)訊號會無延遲變成0或14,這個就是毫無延遲的用於反轉訊號的紅石火把了。電路可以看作是ON->OFF和OFF->ON兩種無延遲紅石火把的結合。電路從OFF->ON時,紅石導體立即變為36號方塊,中繼器無法進行充能,輸出端失去訊號,當電路從ON->OFF時,紅石導體立即變為36號方塊,因此黃金方塊的紅石線連接到下方的線路,獲得強度為14的訊號,過了2刻後中繼器熄滅,此時活塞已完成推動,左側中繼器對紅石導體進行充能,維持訊號。

(活塞下方有一紅石線)

「地面版」具有最大的占地面積,但較矮小,而且能與其他平面電路相適應。「高版」占地面積與用料均最小,但輸入和輸出端的位置不甚理想。「長版」較大,但輸入和輸出端的位置方便與其他電路相接。
「高版」的輸出端也可以從半磚下面的方塊引出,但這樣的話只有輸入的上邊沿訊號才能做到無延遲。
表現: 瞬時反相器有兩個黏性活塞——一個用於切斷輸出,另一個用於移動紅石方塊電源。
輸入為假時,紅石方塊啟動輸出端。輸入為真時,紅石方塊馬上被移走,切斷輸出端訊號(即立即對輸入進行反相)。同時,紅石中繼器啟動,但在其能啟動輸出端之前,另一個方塊就會及時移動切斷輸出。
輸入為真時,紅石比較器嘗試啟動輸出,但輸出會被移來的方塊切斷。輸出一被切斷,方塊縮回,馬上使得訊號透過(即立即對輸入進行反相)。中繼器只會在其熄滅之前啟動輸出端2刻,但這點時間已經足夠讓紅石方塊回到原先位置接替中繼器繼續啟動輸出端。
替代方案: 將瞬時反相器作為大型電路的一部分時,可能需要移動輸入輸出端,此時,兩個黏性活塞和紅石中繼器必須同時啟動。「長版」讓這三個部件可以透過充能一個方塊同時啟動,但其餘瞬時反相器方案就需要玩家自己布線連接三個部件了。
除此之外,只要紅石方塊以及其粘附的活塞能夠被輸入端無延遲啟動,且能夠在中繼器之後2刻之內伸出啟動輸出端,紅石方塊以及其粘附的活塞可以挪到任何合適的地方。

地面版瞬時反相器

2×5×3(30方塊)
瞬時
電路延遲:啟動延遲

高版1格寬瞬時反相器

1×4×5(20方塊)
1格寬,瞬時
電路延遲:啟動延遲

長版1格寬瞬時反相器

1×7×5(35方塊)
1格寬,瞬時
電路延遲:啟動延遲

BUD反相器

1×5×5(25方塊)
1格寬,瞬時
電路延遲:啟動延遲

無延遲脈衝電路[]

主條目:脈衝電路

要點同上

無延遲脈衝穩定器[]

中繼器鏈脈衝穩定器(瞬時版)

2×N×2 平面,靜音

電路延遲: 0

輸出脈衝長度:最長每中繼器4刻
中繼器鏈脈衝穩定器
Repeater-line pulse extender

中繼器鏈脈衝穩定器上方:延遲版(1.4秒)。下方:瞬時版(1秒)。[查看图示]

2×N×2,平面,靜音,瞬時
電路延遲: 0或
輸出脈衝長度:最長每中繼器4刻
輸入脈衝長度必須至少為鏈路中延遲最長的中繼器的延遲(通常為4刻)。

無延遲上邊緣檢測器[]

當輸入端(控制桿)訊號從OFF->ON時,輸出端(紅石粉)無延遲的輸出一個一定長度(x+1)的脈衝訊號。

(活塞下方有一紅石導體)

無延遲下邊緣檢測器[]

當輸入端(控制桿)訊號從ON->OFF時,輸出端(紅石粉)無延遲的輸出一個一定長度(x+1)的脈衝,當電路從OFF->ON時,紅石導體立即變為36號方塊,因此黃金方塊的紅石線連接到下方的線路,獲得訊號,當中繼器熄滅之後,訊號消失。

無延遲下邊緣檢測器(下一層)
無延遲下邊緣檢測器(上一層)

無延遲雙邊緣檢測器[]

當輸入端(控制桿)從OFF->ON或ON->OFF時,輸出端(紅石粉)都無延遲發出一個一定長度(2.5刻)的脈衝訊號,當電路從OFF->ON時,紅石方塊立即變為36號方塊,下方活塞失去訊號,紅石導體立即變為36號方塊,紅石線連接到下方的訊號源,發出訊號。上方活塞完成推動後,下方被半連接啟動將方塊推出並完成推動後,切斷訊號。當電路從OFF->ON時的電路原理也類似。

紅石粉斷路雙邊沿感應器[]

紅石粉斷路雙邊沿感應器(瞬時)

2×5×3(30方塊體積)
瞬時
電路延遲: 0 刻(上升沿)或啟動延遲(下降沿)
輸出脈衝: 1刻+啟動延遲(上升沿)或1 刻-啟動延遲(下降沿)

紅石粉斷路雙邊沿感應器(1寬瞬時)

1×6×5(30方塊體積)
1寬、瞬時
電路延遲: 0 刻(上升沿)或啟動延遲(下降沿)
輸出脈衝: 1刻+啟動延遲(上升沿)或1 刻-啟動延遲(下降沿)

無延遲反相上升沿感應器[]

方塊移動反相上升沿感應器
1×4×3 (12方塊),1格寬,瞬時
電路延遲:啟動延遲, 輸出脈衝長度:1刻(負脈衝)
本裝置實質上是利用中繼器抑制下降沿輸出的方塊移動雙邊沿感應器

方塊移動反相上升沿感應器

1×4×3(12方塊體積)
1寬
電路延遲:啟動延遲
輸出脈衝:1 刻(負)

無延遲反相下降沿感應器[]

或門反相下降沿感應器
輸入到輸出有2條線路,兩條線路的延遲巧妙配置,這樣輸入變為0瞬間,輸出也會短時間內保持0。
方塊移動反相下降沿感應器[4]
1×4×2 (8方塊),1格寬,瞬時
電路延遲:啟動延遲, 輸出脈衝長度:2.5刻(負脈衝)

高或門反相下降沿感應器

2×2×3(12方塊體積)
靜默
電路延遲:0 刻
輸出脈衝:1 刻(負)

1寬或門反相下降沿感應器

1×4×4(16方塊體積)
1寬、瞬時、靜默
電路延遲:0 刻
輸出脈衝:1 刻(負)

方塊移動反相下降沿感應器

1×4×2(8方塊體積)
1寬、瞬時
電路延遲:啟動延遲
輸出脈衝:2.5 刻(負)

方塊移動反相下降沿感應器

1×4×2(8方塊體積)
1寬、瞬時
電路延遲:啟動延遲
輸出脈衝:2.5 刻(負)

無延遲反相雙邊沿感應器[]

方塊移動反相雙邊沿感應器
1×3×3 (9方塊),1格寬,瞬時
電路延遲:啟動延遲, 輸出脈衝長度:1.5刻(負脈衝)
替代方案: 整個電路可以改為2格寬的平面配置:活塞、紅石方塊及其移動軌跡可以與紅石線同高度並列。

地面瞬時反相雙邊沿感應器

2×5×2(20方塊體積)
瞬時
電路延遲:啟動延遲

輸出脈衝:1 刻-啟動延遲(上升沿)或啟動延遲(下降沿)
方塊移動反相雙邊沿感應器

方塊移動反相雙邊沿感應器(鉛垂)

底部的粉在活塞和輸出一側。

黏液方塊更新感應器反相雙邊沿感應器(瞬時)

黑曜石能換成任何史萊姆方塊不能移動頂部能放紅石粉的方塊。

無延遲單穩態傳輸電路[]

牆更新鏈
無視距離1刻,1寬可並列

如果和側面連接、斷開,(鵝卵石牆等)透過生成、破壞穿過自己和下面所有牆的柱子瞬間向下傳遞訊號。光滑的牆要求能從相反的方向連接兩個牆(不論有沒有柱子)或其他方塊。大概切換牆這些狀態最實用的方式是紅石控制的地板門。牆有兩個穩態,但很難區分。牆改變狀態也無法無延遲、可重複地檢測。

活塞線

活塞推拉一串方塊。

下面的方案傳輸正脈衝,需要輸入NC更新或在第一個向右的偵測器輸出訊號前結束的短脈衝。

偵測器啟動向左的活塞紅石方塊啟動向右的活塞,後面的方塊使向右的活塞成為方塊更新感應器,在上一串方塊被推動時伸出。

下面的方案傳輸負脈衝,需要輸入足夠第一個活塞縮回的負脈衝。

向右的黏性活塞拉回紅石方塊取消啟動下一個活塞,然後紅石火把或偵測器再啟動它。正前方有多個需要推動的方塊的需要向左的活塞或偵測器更新才能伸出。

下面的方案在第一個活塞受到NC更新時伸縮。

無延遲BUD[]

當右側的活塞收到一個方塊更新(狹義)時,輸出端(紅石粉)無延遲發出一個一定長度的脈衝訊號,當需要BUD無延遲檢測更新時這個電路非常有用,右側就是一個普通的BUD電路,當右側活塞收到更新時,活塞開始推出,紅石導體立即變為36號方塊,左側活塞失去充能,左側活塞開始收回,紅石導體立即變為36號方塊。黃金方塊上的紅石線連接到下方的訊號源,無延遲輸出訊號。

(示意圖層數排序為從下到上)

無延遲BUD(第一層)
無延遲BUD(第二(三)層)
無延遲BUD(第三(四)層)

無延遲活塞線[]

總結[]

其他無延遲電路門也可以用以上的原理做出,而更加複雜的電路可以把全部中繼器和非門替換為無延遲版本而實現無延遲。

地板門-紅石粉瞬時技術[]

BUD Where A Trapdoor Changes Direction of Redstone Wire

地板門-紅石粉裝置

Paeonia (texture) TU1
該段落所介紹的內容已從Minecraft中移除。

此方法從1.20-pre2起失效。

地板門-紅石粉裝置簡稱粉板,是一種簡單的雙穩態BUD,在棧上的方塊更新(更新核)清空前即可作出響應甚至復位。粉板可以用作無延遲的雙穩態傳輸電路等電路[5],其瞬時復位的特點不僅可以提高電路工作的效率,還產生了不需要載入區塊、輸入不會因落在復位期間而丟失等優勢。此外,由於能響應連續的多次方塊更新,粉板可以實現無限速率複製絆線鈎等操作,並使得利用多次更新傳遞資訊可行。

參見[]

參考[]

  1. "BeGamerPlays" (14 February 2013). "Dual-Edge InstaWire 1.5 " (Video). YouTube.
  2. "TT Lemon" (3 January 2013). "Snapshot 13w02a - Instant Repeater" (Video). YouTube.
  3. "DvirWi" (18 February 2013). "Instant two-way repeater (Designed for 1.5)" (Video). YouTube.
  4. "ImETtheAlien" (4 June 2013). "How to Make Simple Compact Fast Redstone Pulsers In Minecraft 1.5.2! [Tutorial] Works in 1.6!" (Video). YouTube.
  5. https://www.bilibili.com/video/BV1wV4y167Eo

語言

Advertisement