成功了。
這個用江寒的手,製作的一比一模型,竟然真的可以觸動商品列表!
江寒欣然一笑。
如此說來,系統識別操作者,主要是靠“機器視覺”,而不是體溫、觸感等其他的信息?
這樣一來,接下來的計劃,就有了付諸實施的可能。
江寒籌備了一下之後,開始進行那項“大工程”。
首先還是點開商品列表,然後“刷刷刷”,一口氣買了幾十樣東西。
數量雖然不少,但主要是一些元器件,所以總價並不高,20多萬積分的樣子。
其中最值錢的,是一塊插在286主板上的擴展接口卡。
現在的計算機系統中,串口、並口這些外設接口,往往都集成在了主板上。
而在當年,即使是286這麼先進的機型,也仍然需要額外的板卡來提供……
隨後,江寒設計了一個電路,主要功能是根據輸入信號,控制電機的轉速。
沒錯,就跟無人機上用到的電子調速器差不多。
江寒將這個土製電調生產出來後,就將輸出端連接到了一個步進電機上。
然後又在信號輸入端上,焊上了一個9針RS232端子,插到了擴展接口卡的串口上。
這樣一來,在286計算機和步進電機之間,就建立起了穩定的聯繫。
接下來,江寒又用C語言,編寫了一個程序,向串口寫入數據,將控制信號傳遞給控制電路,以驅動步進電機。
在這裡,他使用的是一種優化的串口讀寫代碼,基本原理是把串口當做一個文件來讀寫。
這樣代碼比較簡短,工作起來更加穩定,容錯性也更強。
江寒寫完程序,調試了一下,感覺沒什麼問題了,就編譯成可執行文件,然後運行了一下。
電機很聽話地運轉了起來,並按照計算機發布的指令,從慢到快,再從快到慢……
快慢交替,循環了幾次後,戛然而止。
第一步實驗獲得了成功,接下來就該改造電路了。
現在的試驗電路,只能控制一個電機,這自然是遠遠不夠的。
江寒希望可以同步控制許多個電機。
從電路設計和編程的角度來說,和之前的實驗相比,在原理上沒有任何區別,僅是複雜度大小的問題。
www⊕ т tκa n⊕ ¢ o
而對於江寒來說,這些根本不算事兒。
只要全力開動大腦,解決起這種規模的電路和程序設計來……
說小意思可能有點過分了,中等意思吧。
江寒又花了半個多小時,終於將電路改造一新,程序也重新改寫了一下。
現在,控制電路足足擁有十幾個輸出端,每個輸出端上都連接着一個步進電機。
試着運行了一下修改後的程序,十幾個步進電機就按照各自的設定,快慢不一地運行了起來。
江寒反覆檢查,確認沒有任何問題後,於是開始進行下一步。
首先換上四個大型的步進電機,電瓶車上使用的那種。
然後買了一個輸出功率足夠的特大電源。
跟着,他就用這些東西,搭建了一輛4驅車。
車子的外殼,看起來有些簡陋,就是用商品列表中提供的板材,簡單切割、粘合了一下。
不求美觀,但求能用。
至於4個輪子,都是直接買的成品,價格不便宜,但也不算特別昂貴。
說實話,輪胎這個東西,倒也不是不能手工打造,但DIY出來的作品,在質量和精度上,只怕達不到滿意的程度。
好在只需要4個,而且不需要太大,直徑40CM左右就足以。
其他的傳動結構,仿照在網上找來的現成方案手工打造。
複雜倒是不算怎麼複雜,但要求精度比較高。
江寒也沒什麼特別的技巧,只能不停地試錯。
長短、粗細、直徑等參數,如果不符合要求,就一點點調整。
值得慶幸的是,“地面”上有座標軸和刻度。
這樣一來,很多測量工作,都可以很方便的進行,而且至少精確到0.1mm。
對於電動車這樣的裝置來說,這個精度已經十分足夠。
不知過了多久,終於搞定了電動車。
隨後,江寒將四個電機連到了控制電路上,然後在電腦上編寫了一段控制程序。
程序運行後,電動車果然按照要求,運動了起來。
第二階段,實驗成功。
江寒思考了一下,決定繼續改造程序。
按照現在的方法,要想驅動電動車,做出任何動作,都需要編寫獨立的程序段,未免過於麻煩。
那麼如何減少編程的複雜度呢?
很簡單,將左轉、右轉、前進、停車等常用指令編寫成例程。
以後編寫控制程序的時候,只需要根據約定,用適當的參數調用例程函數就行了。
接下來,他又寫了個程序。
這個程序可以讀取鍵盤緩衝區,調用對應的例程,操作小車行動。
這樣就可以通過鍵盤上的按鍵,來控制小車運動了,就像玩賽車遊戲一樣。
甚至還可以將用戶的操作,錄製成指令序列,保存成文件,以後需要的時候讀取、重播……
這樣一來,就進一步減輕了編程強度。
江寒寫完程序,調試成功後,運行了起來。
當他按下鍵盤上的“空格”鍵時,小車就發動起來;而當他輸入“上下左右”四個箭頭時,小車就加速、減速、左轉、右轉……
江寒像玩遊戲一樣,用鍵盤指揮着小車,隨着他的操作漸漸變得熟練,小車地動作也越發靈活。
在江寒的操控下,小車的表現幾乎比得上當初的“戰神一號”。
當然,這也是因爲地面十分光滑,摩擦力十分均勻的緣故。
如果是在現實中……
這麼簡陋的,沒有任何回饋機制的操控系統,能達到什麼樣的效果,還真有點不好說。
接下來,江寒又打造了一個簡單的機械臂,豎立在電動車上。
同樣,本着夠用就行的原則,他並沒有實現特別複雜的功能。
這個機械臂“自由度”,更是隻有一個維度。
只能在電機的驅動下,通過機械傳動結構,進行升高和降低……
雖然有點簡陋,但還是那句話,夠用就行,反正也不指望它做太複雜的事情。
江寒又在虛擬空間裡,忙碌了大約二十個小時,機械臂才終於成型。
隨後迅速地測試了一下,感覺效果還可以。
接下里,只剩下一個小問題了。
車子後面總拖着一條長長的導線,不但讓人怎麼看怎麼彆扭,而且說不定什麼時候,就纏成了麻花。
怎麼解決這個問題呢?
江寒一瞬間就想到了三個方案。
方案一:好好規劃一下,把導線限制在路徑之外的閉合區域裡。
方案二:把電腦和車子綁定在一起,就像戰神一號那樣,自己揹着自己的大腦。
第三個方案,就是無線控制。
江寒仔細思考了一下,感覺最後這個更加靠譜些。
而且,萬一成功了的話,也可以爲無線網卡的研製,打下一個良好的基礎。
無線控制的原理,其實還是挺簡單的,實現起來也不是特別難。
當初虛擬空間剛剛開啓,江寒就製作了小收音機和無線電發射裝置。
把這兩個電路,稍微修改、整合一下,就變成了無線電收發裝置。
理論上來說,無線網卡的核心,也就是這麼個電路。
只要有了無線網卡,再利用無處不在的WIFI信號……
如果能打造出真正的無線網卡,豈不就可以在虛擬空間裡上網了?
一想到WIFI,江寒的心就火熱了起來。
有了無線網卡,他的很多後續計劃,就可以付諸實施了。
當然,願景總是美好的,做起事來,還是得一步一個腳印……