陳丹惠,顧瀟宇,周 雄,趙江海,李子建
(1.常州先進制造技術研究所,江蘇 常州 213164;2.中國科學院合肥物質科學研究院,安徽 合肥 230031;3.昆明理工大學農業與食品學院,云南 昆明 650500)
外骨骼機器人使用人群廣泛:用于肌肉萎縮或腦或脊髓功能損傷的人群,可提高該人群的生活質量;用于戰場士兵以及部隊后勤等健康人群,可提升特殊領域作業人員的作業能力[1-4]。國內外外骨骼機器人按驅動系統分類,主要包括電機驅動、液壓驅動、氣缸驅動以及氣動人工肌肉驅動等類型[5-9]。國外的研究成果有日本筑波大學研制的Hybrid Assistive Leg系列、美國范德堡大學的 “Indego”外骨骼,但都存在系統自重過重、價格昂貴等問題。國內研究機構、高校和公司對外骨骼的研制[10],大多還處于樣機研制階段,系統線路復雜、穩定性低。
本文針對國內外骨骼機器人的不足進行設計。控制系統設計采用控制器局域網絡(controller area network,CAN)總線,連線少,結構清晰。CANopen通信協議在實時性和可靠性方面具有優勢,可避免點對點連接造成的連線多、線路復雜、系統穩定性低的問題。
外骨骼機器人從穿戴者需求出發,通過傳感器檢測穿戴者有無行走趨勢,判斷是否需要助力,從而實現有效、實時助力。助力大小可根據穿戴者的適應情況進行選取。外骨骼機器人與穿戴者連接單元從人機舒適度角度出發,可擬合人體曲線,選用柔性材料,提高穿戴者舒適度。
外骨骼機器人系統集成包括虛擬樣機設計、控制系統設計與軟件編制、研制樣機性能試驗三部分。系統集成框圖如圖1所示。

圖1 系統集成框圖Fig.1 System integration block diagram
CANopen的基礎是CAN。串行總線網絡由Robert Bosch GmbH設計,用于協調汽車中的多個控制系統。CAN模型適用于分布式控制。任何設備都可以在網絡上廣播信息。每個設備都可以接收所有信息,并使用過濾器濾除不合適的信息。因此,單個信息可以到達多個節點,從而減少了需要發送的信息數量。這也大大減少了尋址所需的帶寬,從而允許在整個系統中以實時速度進行分布式控制。
CAN在汽車和許多其他行業中的廣泛使用,為用戶提供了可用的廉價硬件和持續的支持。現有標準組件的可用性也減少了系統設計工作。CAN的相對簡單性降低了培訓要求。通過將控制分配給設備,CAN消除了設備與中央控制器之間多線連接的需求。更少的線路連接可在惡劣的工作條件下提高可靠性,而基于設備的錯誤檢查和處理方法使CAN網絡更加可靠。
CAN的物理層是差分驅動的兩線總線,首末兩端各有120 Ω電阻連接。 CAN所支持的最大波特率是1 Mbit/s,最長為25 m;較長的網絡長度需要較低的波特率。
CANopen報文在CAN報文內傳輸。CAN報文也稱為通信對象(communication object,COB)。
CAN報文以網絡數據包的形式,通過總線進行通信。每個數據包均包含1個標志符(CAN報文ID)、控制位和0~8個字節的數據。
每個CAN報文都有1個CAN報文ID(也稱為COB-ID)。報文ID扮演著2個重要角色:提供節點接收或拒絕報文的標準;確定待傳輸消息的優先級。CAN報文的優先級被編碼在報文ID中。報文ID的值越小,報文的優先級越高。當2個或更多設備嘗試同時發送數據包時,優先級最高的數據包將成功,而其他設備將被退回并重試。與其他網絡技術相比,這種沖突處理方法可以提高帶寬利用率。例如,以太網通過要求2個設備中止傳輸并重試來處理沖突。
CAN協議突出的特點是錯誤檢測、限制和處理。CAN協議與其他總線系統的不同之處在于:它沒有定義用于識別錯誤類型的握手方法。向每個數據包發送循環冗余校驗(cyclic redundancy check,CRC)信息,使控制器識別并重新發送格式錯誤的數據包。
設備的基本模型包含通信單元、應用過程和對象字典3個部分。通信單元由CAN收發器、CAN控制器和CANopen通信協議棧組成。協議棧中包括實現通信的通信對象和狀態機。通信對象包括過程數據對象(process data object,PDO)和服務數據對象(service data object,SDO)。

圖2 CANopen設備模型Fig.2 CANopen device model
CANopen應用層詳細描述了各種不同類型的COB。這些通信對象都是由1個或多個CAN報文來實現的。通信對象分為以下4種類型。
①過程服務數據(PDO消息),用于傳輸實時數據。
②服務數據對象(SDO服務器消息和SDO客戶端消息),用于讀/寫其他CANopen設備的對象字典。
③預定義對象(同步、時間和緊急報文)。
④網絡管理對象,用于控制網絡管理(network management,NMT)狀態機(NMT消息)和監測設備(心跳、啟動報文)。
外骨骼機器人硬件系統結構圖如圖3所示。

圖3 硬件系統結構圖Fig.3 Hardware system structure diagram
硬件系統設計包括工業主板、顯示器、PCAN-miniPCIe CAN卡、伺服驅動器模塊、伺服電機模塊和扭矩傳感器。工業主板是整個控制系統的核心,負責數據處理和各個設備與系統的通信。PCAN-miniPCIe CAN卡與計算機相連,實時監測系統各設備狀態,負責系統的監控和管理工作。該接口的CAN卡在汽車行業應用廣泛,目前在機器人、醫療、傳感器等行業也發展迅速。伺服系統由伺服驅動器模塊和伺服電機模塊組成,是整個控制系統的執行模塊。良好的伺服性能對整個系統的控制非常關鍵。扭矩傳感器通過驅動器的模擬量輸入口,將數據上傳到CAN總線。
硬件系統設計是外骨骼機器人良好運行的基礎,因此各關鍵部件的選型尤為重要。硬件設計不僅要考慮器件本身發揮的作用,還要兼顧其接口與整體系統的匹配、兼容。
根據硬件系統組成,對關鍵器件選型。工業主板從系統所需硬件接口及計算處理能力方面進行選型。本設計選擇了臺灣LexSYSTEM公司的1I386H嵌入式主板。該主板接口豐富,包含系統所需的MiniPCIe、USB、mSATA.M.2接口,且體積小、功耗低。
CAN卡的穩定直接關系到系統的通信質量。本設計選用的PCAN-miniPCIe CAN卡能夠把嵌入式電腦和帶有PCI Express Mini插槽的筆記本電腦連接到CAN總線網絡。該CAN卡有單通道和雙通道型號。在電腦和CAN之間的電氣隔離達到300 V。套裝內含CAN監視軟件PCAN-View for Windows和用于開發CAN連接的編程接口PCAN-Basic。
驅動器在選型方面要考慮周全,比如通信口、模擬量口(及分辨率)、數字輸入/輸出口(電平5 V/24 V)及功耗尺寸等。根據系統的實際需求,本設計選擇了美國Copley Controls Accelnet Micro Module。Accelnet Micro Module支持的CiA 402模式包括插值位置(PVT),位置,速度,扭矩和回零。有10個邏輯輸入。1個專用于Amp Enable功能,其他9個是可編程的。通過CMETM軟件操作,可以進行驅動器調試,在Windows?下通過Accelnet Micro Module進行通信CAN或RS-232連接。
電機選擇了maxon EC flat,由機械模型和助力要求分析選出具體型號。該系列電機重量輕,輸出力矩大,且便于關節安裝。
力傳感器選用宇立公司自主研發的M221X系列單軸扭矩傳感器。其特別適用于機器人關節的扭矩測量,在協作機器人上有大量應用。SRI的扭矩傳感器厚度薄至7 mm,直徑為53~100 mm,扭矩量程為20~300 Nm。傳感器內置放大器,直流 5 V輸入,0~5 V輸出。
外骨骼機器人控制系統軟件由初始化模塊、通信模塊、運動控制模塊、算法規劃模塊、驅動控制模塊和采集模塊組成。
初始化模塊對系統進行基本參數初始化。通信模塊用于在上位機與下位機之間建立通信。采集模塊是對力傳感器數據的實時采集。驅動控制模塊是由驅動器單元實現對電機的驅動。運動控制模塊基于上位計算機控制實現。算法規劃模塊基于計算機編程實現。
系統軟件如圖4所示。

圖4 系統軟件框圖Fig.4 System software block diagram
軟件基于Ubuntu16.04,采用C語言實現。首先,進入主程序對系統進行初始化,配置并打開上位機CAN總線通信,并檢測下位機系統所有CAN節點設備通信情況。然后,啟動線程,進行數據采集。接著,判斷是否需要助力:需要則進入助力線程;不需要則返回到啟動線程后的狀態。最后,結束任務,退出主程序。軟件流程圖如圖5所示。

圖5 軟件流程圖Fig.5 Software flowchart
試驗平臺基于外骨骼機器人、Win10操作系統計算機,PCAN-USB(USB轉CAN接口)轉接線纜和PCAN-View軟件。
打開PCAN-View軟件,點擊Connect,選擇與所有節點一致的波特率即可連接成功。若完成上述操作不能正常操作節點,可從以下幾個方面解決:①更改驅動器指令源方式為CANopen;②總線首末端的節點添加120 Ω的終端電阻;③布線的拓撲結構選用“手牽手”式連接;④線纜采用屏蔽雙絞線;⑤降低波特率。
外骨骼運行時,力矩信息、位置信息和速度信息需要實時上傳到總線上進行分析、處理,從而進行指令下發。傳輸實時數據由CANopen中的PDO實現。 每個PDO包括通信參數和映射參數。CANOpen包括多種通信方式:主從站方式、客戶服務器方式以及生產者消費者模式。其中,PDO采用生產者消費者模式。
PDO配置有明確的步驟。首先,激活節點,設置同步消息周期,激活同步功能;然后,配置PDO,關閉原有PDO通信參數配置,設置PDO每個同步消息更新一次,清空默認配置,將映射對象映射到映射參數中,設置映射參數映射對象數目;最后,打開PDO最高位設為0,使其有效。
按照上述步驟就可以實現所需數據的實時傳輸。通過PCAN-View軟件逐一發送力矩采集的PDO配置報文,然后使用PCAN-View軟件的跟蹤功能,記錄數據trc文件,將其導入MATLAB中,繪制出扭矩曲線。扭矩曲線如圖6所示。該曲線與預期一致。

圖6 扭矩曲線Fig.6 Torque curve
由本文設計及試驗可發現,通過基于CANopen通信協議的外骨骼機器人控制系統設計,可實現外骨骼機器人控制系統數據的穩定采集。穩定的系統性能對外骨骼機器人的推廣和研究具有重要意義。