操縱桿工作原理
引言
操縱桿為我們表演了一個非常巧妙的戲法,它將純粹的物理動作(手部的運動)完完全全地轉換成數學形式(一連串0和1所組成的計算機語言)。優秀的操縱桿可以完美地實現這種轉換,讓您絲毫察覺不出其中的奧妙。當您真正投入到游戲中時,您會覺得自己完全置身于虛擬世界中。
在本文中,您將會了解到一些常見的操縱桿是如何在設計上實現這種轉換的。正如您下文中將會看到的,從最初的游戲控制臺設計到現有的復雜的“作用力反饋”模型,操縱桿技術已經向前邁進了一大步。
操縱桿的基本原理
操縱桿的基本原理是將塑料桿的運動轉換成計算機能夠處理的電子信息。操縱桿已在各種機械設備上得到應用,包括F-15 噴氣式戰斗機、挖掘機和輪椅。本文將重點介紹計算機操縱桿,不過,其他類型的操縱桿運作的基本原理與此相同。
不同操縱桿技術的差別主要體現在它們所傳送的信息的多少。許多早期游戲控制臺中的最簡單的操縱桿只不過是一個特殊的電子開關。
這種基本的設計包括一個安放在帶有彈性橡膠外殼的塑料底座上的操縱桿。在底座中操縱桿正下方位置裝有一塊電路板。電路板由一些“印刷線路”組成,并且這些線路連接到幾個接觸觸點。然后,從這些觸點引出普通電線連接到計算機。
早期的Atari操縱桿 |
印刷線路構成了一個簡單的電路(該電路由一些更小的電路構成)。這些線路僅僅將電流從一個觸點傳送到另一個觸點。當操縱桿處于中間位置時,也就是當您還未將操縱桿推向任何一邊時,除了一個電路之外的所有其他電路均處于斷開狀態。由于每條線路中的導體材料并沒有完全連接,因此電路中沒有電流通過。
每個斷開部分的上方覆蓋著一個帶有小金屬圓片的簡單塑料按鈕。當您朝任一方向移動操縱桿時,操縱桿便會向下擠壓其中的一個按鈕,使導電的金屬圓片接觸到電路板。如此一來,就可以閉合電路,完成兩個線路部分的連接。電路閉合之后,電流就會從計算機(或游戲控制臺)沿著一條線路流過,穿過印刷線路,通過另外一條線路返回計算機(或游戲控制臺)。
操縱桿的運動
當計算機檢測到特定線路上的電流后,便會了解操縱桿當前所處的位置需要接通相關的電路。向前推操縱桿將會閉合“前進開關”,而向左推則會閉合“左移開關”,依次類推。在某些設計中,計算機還能在操縱桿閉合兩個開關時識別出對角線位置(例如,同時閉合前進開關和左移開關意味著向左前方的對角線運動)。開火按鈕的原理完全一樣:當您按下按鈕時,意味著將閉合一個電路,計算機也就可以識別出開火命令。
|
開關設計上的兩種變型:在這兩種變型中,操作桿 |
這種設計以類似速記的方式傳送操縱桿的運動,它以絕對值而非細微變化的形式來處理運動。換句話說,它并不能區分向前輕推操作桿的動作和將操作桿向前一直推到頭的動作,對它來說兩者傳送的都僅僅是一個表示向前進的數值。
對某些游戲而言,這種思路是好的,甚至是無可挑剔的。例如,對Pac Man或Tetris而言,這種設計已經很完美了。但對于其他游戲,如模擬飛行而言,這種設計存在相當大的局限性。在下一節中,我們將了解到能夠檢測到細微位移的傳統模擬操縱桿設計。
操縱桿設計
為了向計算機傳遞完整的運動過程,操縱桿需要測量其在兩個軸上的位置:X軸(從左到右)和Y軸(自上到下)。與在基礎幾何學中一樣,X-Y坐標系精確地標明了操縱桿所在的位置。
在標準的操縱桿設計中,游戲手柄移動一個安裝在兩根可旋轉開槽軸中的窄棒。前后扳動操縱桿將使Y方向軸從一側轉動到另一側。左右扳動操縱桿將使X方向軸轉動。沿對角線移動操縱桿時,則會使兩個軸同時轉動。當您松開操縱桿時,幾個彈簧會將操縱桿彈回中央位置。
操縱桿控制系統僅需監視每一個軸的位置就能確定操縱桿的位置。傳統的模擬操縱桿通過兩個分壓器或可變電阻來達到上述目的。下圖顯示了一個典型的布局。
操縱桿的分壓器
每個分壓器由一個卷曲導軌形式的電阻和一個可移動的觸臂組成。計算機電源的電流從輸入端開始,通過卷曲的電阻和觸臂,流回計算機的操縱桿端口。
沿著導軌移動觸臂,可以增大或減小作用于流經此電路的電流的電阻值。如果觸臂位于與分壓器輸入連接端相對的另一端,電流將流經整個長度的電阻,因而電流遇到的電阻最大。如果觸臂靠近輸入端,則分壓器的電阻最小。
每個分壓器連接到操縱桿的一個軸,因此轉動軸將會移動觸臂。也就是說,如果將操縱桿向前推動到頭,則會將分壓器觸臂移動到導軌的一端,如果向胸前回拉操縱桿,則將觸臂向另一方向移動。
改變分壓器的電阻值可以改變接入分壓器的電路中的電流。通過這種方式,分壓器先將操縱桿的物理位移轉換成電信號,再將信號傳遞到計算機上的操縱桿端口。
此電信號完全是模擬信號,是一種包含信息的變化的波形,就像無線電信號一樣。為了利用這種信息,計算機需要將其轉換成數字信息,即精確的數值。
操縱桿的數字化
在傳統的系統中,計算機內部的卡(印刷線路板)通過使用非常粗糙的模數轉換器完成這個任務。其基本思路是利用每個分壓器引起的電壓變化為電容充電,電容是一個簡單的儲存電荷的電子元件(有關更多信息,請參見電容器工作原理)。調節分壓器使電阻值越大,電容充電的時間越長;分壓器電阻值越小,電容充電速度越快。
先將電容放電然后再計算電容充電所需的時間,通過這個方式轉換器以此確定分壓器的位置,從而確定操縱桿的位置。測量到的充電速率是計算機可以識別的數值。當計算機需要讀取操縱桿位置時,便會執行此操作。
將分壓器連接到旋轉的部件,可以將這種系統應用到各種控制系統中。例如,傳統的方向盤的工作原理即是如此,通過方向盤直接轉動分壓器觸臂。一些操縱桿還使用一個對應于Z軸的分壓器,Z軸由操縱桿自身的轉動來帶動。
方向盤和踏板控制系統的工作原理與傳統操縱桿相同。 |
一些操縱桿還帶有一個“大高帽”(操縱桿頂部的一個用拇指操控的微型控制器)。這種小型操縱桿使用了與上一節中介紹的簡易操縱桿相同的開關系統。
傳統的模擬系統總體上可以很好地工作,但確實存在一些限制。在下一節中,我們將探討模擬系統的主要弊端并了解一些最新的解決方案。
Flighterstick是CH Products生產的一種現代的可編程USB操縱桿,它采用了真實噴氣式戰斗機上使用的相同的“手不離桿”(HOTAS)系統——各種按鈕都有其獨特的形狀和紋理,一摸就可以識別出來。 |
在傳統的系統中,計算機內部的卡(印刷線路板)通過使用非常粗糙的模數轉換器完成這個任務。其基本思路是利用每個分壓器引起的電壓變化為電容充電,電容是一個簡單的儲存電荷的電子元件(有關更多信息,請參見電容器工作原理)。調節分壓器使電阻值越大,電容充電的時間越長;分壓器電阻值越小,電容充電速度越快。
先將電容放電然后再計算電容充電所需的時間,通過這個方式轉換器以此確定分壓器的位置,從而確定操縱桿的位置。測量到的充電速率是計算機可以識別的數值。當計算機需要讀取操縱桿位置時,便會執行此操作。
將分壓器連接到旋轉的部件,可以將這種系統應用到各種控制系統中。例如,傳統的方向盤的工作原理即是如此,通過方向盤直接轉動分壓器觸臂。一些操縱桿還使用一個對應于Z軸的分壓器,Z軸由操縱桿自身的轉動來帶動。
CH Products 供圖 方向盤和踏板控制系統的工作原理與傳統操縱桿相同。 |
一些操縱桿還帶有一個“大高帽”(操縱桿頂部的一個用拇指操控的微型控制器)。這種小型操縱桿使用了與上一節中介紹的簡易操縱桿相同的開關系統。
傳統的模擬系統總體上可以很好地工作,但確實存在一些限制。在下一節中,我們將探討模擬系統的主要弊端并了解一些最新的解決方案。
CH Products 供圖 Flighterstick是CH Products生產的一種現代的可編程USB操縱桿,它采用了真實噴氣式戰斗機上使用的相同的“手不離桿”(HOTAS)系統——各種按鈕都有其獨特的形狀和紋理,一摸就可以識別出來。 |
傳統的模擬操縱桿系統存在幾個大的難題。首先,該系統沒有一個真正的數模轉換器,粗糙的數模轉換處理不是非常精確。這在一定程度上降低了操作桿的靈敏度。
其次,計算機主機專門分配出大量的處理能力來定期“輪詢”操縱桿系統以確定操縱桿的位置。這就使得處理其他操作的能力下降了。
接下來,讓我們看看目前設計者是如何解決這些問題的。
新的操縱桿部件
操縱桿制造商采用了幾種不同的方法來解決這些問題。一種解決方案就是在專用的游戲適配卡或操縱桿自身中增加一個靈敏的數模轉換芯片。在這個系統中,轉換器直接向計算機傳送數字信息,從而提高了操縱桿的精確度并減輕了主機處理器的工作。這些新的操縱桿模型通常連接到USB端口,這也可以提高速度和可靠性(有關詳細信息,請參見USB端口工作原理)。
另一個解決方案就是完全放棄模擬分壓器技術。一些最新的控制器采用光學傳感器以數字方式讀取操縱桿的運動位置。下圖顯示了一種常見的系統
在這個系統中,兩個軸連接到兩個開槽輪盤。每個輪盤都位于兩個發光二極管(LED)和兩個光電池之間(為方便起見,圖中僅顯示了一對光電池和發光二極管)。當每個LED發出的光透過一個槽孔時,輪盤另一側的光電池就會產生微弱的電流。當輪盤輕微轉動時將阻擋住光線,此時光電池不會產生電流(或者產生的電流很小)。
軸旋轉時將帶動輪盤轉動,移動的槽孔會反復阻擋射向光電池的光束。這使得光電池產生高速電流脈沖。根據光電池產生的脈沖數量,處理器就能知道操縱桿移動的距離。通過比較來自監測同一個輪盤的兩個光電池的脈沖圖,處理器可以計算出操縱桿移動的軌跡。許多計算機鼠標也采用了同樣的基本系統。(有關更多信息,請參閱電路參考文獻。)
操縱桿發展歷程中最大的亮點之一就是作用力反饋技術。在下一節中,我們將介紹這些操縱桿是如何讓你在一個新的層次上體驗游戲樂趣的。
作用力反饋操縱桿
作用力反饋操縱桿(也稱觸覺反饋操縱桿)的基本思路是將操縱桿的運動與屏幕上的動作聯系起來。例如,您在戰斗游戲中用機關槍掃射時,操縱桿會在您的手中震動。或者,如果您的飛機在飛行游戲中墜毀了,操縱桿會猛然向后推。
作用力反饋操縱桿的大部分組件與普通的操縱桿相同,只是增加了幾個重要組件:一個板載微處理器、幾臺電動機以及一個齒輪傳動系統或皮帶傳動系統。下圖顯示了一種簡單設計。
與操縱桿相連的X方向軸和Y方向軸均與皮帶輪接合在一起。每根軸的皮帶的另一端與一個電動機的轉軸接合在一起。在這個機構中,旋轉電動機軸將移動皮帶,從而帶動方向軸轉動;轉動方向軸也將移動皮帶,從而帶動電動機轉軸旋轉。皮帶的作用是傳遞和放大從電動機到方向軸的作用力。
板載處理器和操縱桿的物理運動產生的電信號都會使電動機軸旋轉。這樣,甚至在電動機移動操縱桿的同時,您仍然可以移動操縱桿。
在電動機的另一端,其轉軸與操縱桿的位置傳感器(如分壓器或者光學傳感器)相連。只要操縱桿發生移動,無論這種移動是由電動機引起的還是游戲者引起的,傳感器都可以檢測出操縱桿的位置。
操縱桿有一個內置的ROM芯片用來存儲各種電動機動作序列。例如,其中可能會有一個機關槍動作序列要求電動機快速地改變方向,或一個火箭筒動作序列要求電動機突然來回移動操縱桿。游戲軟件請求特定的序列,計算機將請求傳輸到操縱桿的板載處理器上,處理器然后從自身的存儲器中讀取相應的數據。這種方式減輕了計算機的工作負荷,并有利于提高反應速度。
隨著操縱桿技術的不斷發展,制造商會逐漸地將作用力反饋技術提高到一個全新的水平。這對于游戲發燒友來說無疑是個令人振奮的消息,當然,它也可能會給其他人的生活帶來很大影響。作用力反饋控制器技術將會在工業機械、輪椅和其他殘疾人設備,甚至是醫療護理領域帶來重大變革。相關研究人員也在不斷開發作用力反饋控制器,以便人們在網上沖浪的同時也能感受到來自互聯網的震撼。
作用力反饋技術可能的應用領域是無限的!將來,操縱桿將會像現在的計算機鍵盤一樣無處不在。
有關操縱桿的前景及其現在和過去的操縱桿技術的更多信息,請查看下一頁上的鏈接。
評論