基于USB接口的機(jī)器人上下位機(jī)通信
EDUROBOT-680-II型教學(xué)機(jī)器人是上海交通大學(xué)機(jī)器人研究所采用世界銀行貸款研制的一種五自由度多關(guān)節(jié)的機(jī)器人。它具備工業(yè)機(jī)器的基本功能、良好的開放性以及舒適的使用界面,主要大專院校和科研機(jī)構(gòu)提供教學(xué)和科研工具。學(xué)生可以通過親手操作了解和學(xué)習(xí)工業(yè)機(jī)器人,它具備工業(yè)機(jī)器人的基本功能、良好的開放性以及舒適的使用界面,主要為大專院校和科研機(jī)構(gòu)提供教學(xué)和科研工具。學(xué)生可以通過親手操作了解和學(xué)習(xí)工業(yè)機(jī)器人,科研人員還可對它進(jìn)行二次開發(fā)。
教學(xué)機(jī)器人的上位機(jī)(主控計(jì)算機(jī))和下位機(jī)(運(yùn)動控制器)原先采用并行口(LPT1)的SPP方式進(jìn)行通信。利用LPT1的狀態(tài)寄存器(Status Port)具有的讀能力和每次傳送半字節(jié)(Nibble)來實(shí)現(xiàn)數(shù)據(jù)的雙向傳送功能。每次傳送的時(shí)序(次序)由軟件建立,在控制字的協(xié)調(diào)下按照教學(xué)機(jī)器人的通信協(xié)議接收和發(fā)送數(shù)據(jù)。
目前USB越來越普及,正逐漸取代串口和并口在計(jì)算機(jī)接口中的地位。為了研究USB在實(shí)時(shí)通信時(shí)的性能,筆者已將教學(xué)機(jī)器人上下位機(jī)通信改用USB端口實(shí)現(xiàn)。
1 USB特點(diǎn)及其應(yīng)用
通用串行總線USB(Universal Serial Bus)是1994年底由Compaq、IBM、Microsoft等多家公司聯(lián)合提出的一種計(jì)算機(jī)接噪覆亡,目前已發(fā)展到USB2.0。由于USB具有以下幾方面的特點(diǎn),所以迅速普及,逐漸確定了在計(jì)算機(jī)接口中的主導(dǎo)地位。
(1)易用性。USB支持熱插拔和即插即用。
(2)可擴(kuò)展性。用戶可以通過連接USB集線器到一個(gè)已有的端口來增加USB端口數(shù)量,集線器上還可以連更多的集線器。理論上可以連接127個(gè)外設(shè)到USB總線上。
(3)快速性。USB1.1版規(guī)定了兩種傳輸速率:低速傳輸和全速傳輸。低速傳輸?shù)乃俾适?.5Mbps,全速是12Mbps。這不但遠(yuǎn)遠(yuǎn)高于傳統(tǒng)的串口傳輸速率,也比并口傳輸快了好多倍。最近推出的USB2.0允許的最高傳輸速率高達(dá)480Mbps。
(4)可靠性。USB的可靠性來自硬件設(shè)計(jì)和USB數(shù)據(jù)傳輸協(xié)議兩方面的保證。USB驅(qū)動器、接收器和電纜的硬件規(guī)范消除了大多數(shù)可能引起數(shù)據(jù)錯誤的噪聲;USB協(xié)議使用了差錯校驗(yàn)和數(shù)據(jù)重傳機(jī)制,可以最大程度保證數(shù)據(jù)傳輸?shù)臏?zhǔn)確性。
(5)內(nèi)置電源。USB總線內(nèi)置電源線,可以給外設(shè)提供5V和最多500mA的電源供應(yīng),滿足大部分低功耗外設(shè)的電源要求。
由于USB具有這些突出的優(yōu)點(diǎn),不但一些傳統(tǒng)外設(shè)開始提供USB接口,而且大量新型外設(shè)也把USB接口作為首先甚至唯一的接口,如MP3播放器、移動硬盤等。由于USB的高可靠性和足夠快的通信速率,USB開始應(yīng)用于工業(yè)級的實(shí)時(shí)通信和控制,例如機(jī)器人系統(tǒng)中示教盒與控制器的通信。本文論述的用USB端口實(shí)現(xiàn)機(jī)器人上位機(jī)與下位機(jī)的通信也屬于這些方面的應(yīng)用。
2 用USB實(shí)現(xiàn)計(jì)算機(jī)雙機(jī)通信
由于USB模型是一種Host-Slave(主機(jī)-外設(shè))主從式結(jié)構(gòu),沒有辦法使兩臺主機(jī)不通過外設(shè)而直接通過USB總線通信。然而可通過增加外設(shè)控制器的方法使兩臺主機(jī)利用它們的USB端口通信。每個(gè)外設(shè)控制器連接到不同的主要,并利用共享的緩沖器交換數(shù)據(jù)。Cypress公司的EZ-Link和Prolific公司的PL-2301把兩個(gè)外設(shè)控制器和共享緩沖區(qū)集成到一塊芯片上,作為兩臺主機(jī)通過USB總線通俗訴橋梁。其它公司也提供類似的控制芯片。在教學(xué)機(jī)器人中,采用PL-2301。
PL-2301是臺灣Prolific公司生產(chǎn)的一種全速USB控制芯片。PL-2301的結(jié)構(gòu)框圖如圖1所示。
評論