機器人/計算機控制/介面/計算機
個人電腦 (PC) 擁有大量的埠,您可以透過這些埠新增自己的硬體來控制您的機器人。其中一些非常易於使用,而另一些則幾乎不可能在沒有特殊(昂貴)IC 的情況下使用。並非所有這些介面都可以在所有計算機上使用。本節概述了 PC 上一些最知名的埠。這些埠及其用途在整個網際網路上都有很好的記錄。
這些都是 PC 外部可用的所有埠。大多數計算機使用者都熟悉它們(或者至少知道它們的名稱和外觀)。
序列埠是 PC 上兩個最容易使用的埠之一。該埠由兩根線傳輸資料(每個方向一根)和一些訊號線組成。該埠相當堅固,如果您瞭解一些數位電子技術或使用微控制器,它也相當容易使用。它在速度上有限,並且只能直接連線兩個裝置。透過使用特殊的 IC,您可以將序列埠連線到 RS-485 網路,並將其連線到多個裝置。
- 序列程式設計/RS-232
- 此網站 包含大量關於序列埠(以及其他內容)的資訊。
並行埠是 PC 上第二個最容易使用的埠。該埠使用 8 根線傳輸資料,並有幾個訊號線。現代並行埠可以傳送和接收資料。該埠比序列埠更容易使用,但不太堅固。由於它在 TTL 電壓級別 (0 和 5V) 上執行,因此可以直接連線到微控制器和 TTL 邏輯。
此頁面 涵蓋了並行埠及其不同的工作模式。
USB 是序列埠的繼任者。它更快,允許連線裝置而不關閉 PC。一些現代微控制器內建了 USB 支援。
- 所有 關於 USB 的資訊。
- 序列程式設計:USB 技術手冊
- 嵌入式系統/特定微處理器#USB 介面
IEEE 1394 也稱為 FireWire、i.link 或 lynx,是一種(快得多)的埠,類似於 USB 埠。它的速度高達 400Mbit/s。
- 聯結器
- 文章 關於 IEEE 1394。
- Linux FireWire 維基
鍵盤使用 TTL 級別訊號將按鍵按下和釋放傳輸到 PC。當按下按鈕時,鍵盤會發送一個程式碼,當釋放按鈕時,會發送另一個程式碼。該埠可用於某些目的。
請參閱 此網站 以深入瞭解如何連線鍵盤並提供示例。(選單:其他 -> 連線 AT 鍵盤)涵蓋了如何替換鍵盤以及如何將鍵盤用於其他目的。
乙太網可用於將其他裝置連線到 PC。如今,完整的微控制器網路伺服器已經出現,乙太網可以成為連線機器人中多個裝置(甚至將其連線到網際網路並讓使用者從世界各地控制機器人)的一種方式。
這些是 PC 內部的聯結器,通常與特殊的 PCB(稱為卡)一起使用。雖然更難使用,但它們提供了極快的速度。
ISA 是您在過去將影片、聲音、IDE 和網路卡插入的(8 位,後來是 16 位)匯流排。您可以在 PC 上找到這些匯流排,直到(一些)早期奔騰 II(後者通常只有一個 E-ISA 插槽,如果有的話)。該匯流排對於您自己的專案來說非常易於使用,並且在網際網路上有很好的記錄。
PCI 是 ISA 匯流排的繼任者。它是一個更快的 32 位匯流排。由於它支援即插即用,因此 PCI 裝置需要一些暫存器來識別元件和製造商。此頁面 涵蓋了 PCI 匯流排的大部分基礎知識。
加速圖形埠針對 3D 顯示卡。它是一個高速匯流排,但針對圖形進行了最佳化。
PCI Express 替換了 PCI 和 AGP。它與所有其他匯流排都非常不同,因為它使用序列通訊,而不是並行通訊。它的速度取決於使用的“通道”數量(序列連線)。PCI Express 支援 1、2、4、8 和 16 個通道。
這些也是“埠”,因為它們可以用於將其他裝置連線到 PC。
IRDA 是一種紅外通訊埠。現代版本的速度可達 4Mbit/s。對於桌面機器人,IRDA 可能是電線的不錯替代方案。由於它是一個紅外埠,因此需要視線才能可靠工作,並且其範圍限制在 1m 內。請注意,此埠的工作速度遠高於遙控器,因此標準遙控器轉發器可能無法可靠地用於 IRDA。
此 網站涵蓋了 IRDA 的基礎知識。
這裡 是主機板 IRDA 聯結器的引腳分配圖。
標題中的所有名稱都是指同一技術的同義詞。WLAN 通常用在 PC(尤其是筆記型電腦)中作為資料網路。可用的頻寬大約為每秒幾兆位元或更多,遠超任何機器人專案通常所需的頻寬。WLAN 通常可達約 100m,但使用特殊的定向天線可以實現更遠的距離(特定方向)。
如果您的機器人內建了 PC 甚至 PDA 用於控制,那麼 WLAN 是顯而易見的選擇。此外,當您的控制器具有乙太網連線性時(價格合理,但除了某些套件之外,它不是標準功能),可以購買價格低廉(約 50 歐元)的 WLAN 橋接器,例如 D-Link DWL-810+ 和 DWL-G810。
如果您只有序列埠可用,則可以使用無線裝置伺服器。但是,其中一個的價格超過 100 歐元。
藍牙是一種低頻寬協議,最常用於手機。它越來越多地部署在筆記型電腦中,並且還提供了獨立的 USB“棒”。藍牙可用於建立無線序列連線——市面上有藍牙序列埠,可用作轉換器。系統中的總頻寬約為每秒 1 兆位元,範圍可達約 10 米(標準藍牙,2.5 mW),或約 100 米(工業藍牙,100 mW)。藍牙在擴充套件方面存在限制——它主要部署在 1:1 連結中,即使標準包括最多 8 個活動節點(甚至更多被動節點)的網路。這意味著,如果您打算使用通用通訊網路構建大量機器人,那麼藍牙可能不太適合。
ZigBee 是一種基於 802.15.4 無線網路通訊標準的協議棧。它價格低廉、功耗低,並且總體上非常適合低頻寬通訊需求。頻寬約為每秒幾十到幾百千位元,範圍可達約 1 公里,具體取決於裝置。
有趣的解決方案是Maxstream 的 XBee,它基本上提供了一個無線序列連結。在w:ZigBee 中還有一個其他供應商的列表。
一種可能性是使用標準蜂窩網路(手機)。由於成本、延遲和頻寬限制,它只適合具有較低通訊需求的大規模地球靜止戶外應用。
無線電調變解調器通常是用於序列埠無線連結的較舊的專有解決方案。專有解決方案可能不應考慮用於新設計。
PC 具有記憶體、程式空間和處理能力豐富的優勢。此外,它們還提供了您可能希望的最佳除錯 I/O(螢幕、鍵盤和滑鼠)。但它們確實有一些缺陷,限制了它們在移動機器人中的用處。
- 首先是它們的尺寸。即使是最小的 PC,筆記型電腦,也相當笨重,迫使您使用相當大的框架。
- 其次,除了筆記型電腦外,功耗很大,並且在移動裝置上提供交流電源很笨重,因為您需要沉重的電池和逆變器。
- 最後,PC 在獲取來自外界的可靠、準確的計時方面很糟糕。
前兩點基本上決定了您機器人框架的大部分形狀,除了使用不同的控制器之外,您對此無能為力。選擇您可以找到的最佳硬體幾乎是唯一可以使這些問題不那麼麻煩的方法。
最後一點很容易解決。大多數 PC 都有一個序列埠。大多數微控制器也有一個序列埠。使用電平轉換器將微控制器的 TTL 電平序列埠與 RS232 電平計算機序列埠連線,並使用一個小程式在微控制器中處理精確的計時,並將這些資訊透過序列連線傳輸到計算機。這是一個非常強大的設定,它結合了 PC 和微控制器的優勢。
例如,請檢視此網站,瞭解序列埠的介面硬體。涵蓋了 I/O 模組和 RS232 到 TTL 電平轉換器,可用於機器人或基於微控制器的專案。
一些微控制器提供 USB 或乙太網埠,它們的使用方式幾乎相同,儘管軟體的實現會稍微複雜一些。