隨著信息檢測技術和控制技術的發展,仿人機器人運動控制已經從傳統的離線規劃方法研究轉向基于環境信息的實時控制研究,仿人機器人的實時姿態調整與實時步態生成方法也成為運動控制的研究重點。對于步行機器人而言,其腳掌所受到的地面反力信息是最重要的外部環境信息之一,它尤其能夠反映仿人機器人的姿態信息,在仿人機器人的實時姿態調整中具有重要作用。早在1989年,日本早稻田大學就在他們研制的兩足步行機器人WL-12RⅢ中應用了六維力/力矩傳感器,該傳感器安裝在機器人的小腿上,機器人可根據反饋力信息在不平整地面上進行穩定行走;日本HONDA公司的仿人機器人P2,P3以及ASIMO 均安裝了集成六維力/力矩傳感器,利用傳感器信息檢測地面反力信息。 在國家863計劃支持下,國防科技大學機器人實驗室于2003年研制出一臺新型仿人機器人;同時與合肥智能機械研究所合作,在該機器人腳掌上安裝了可檢測地面反力信息的集成五維力/力矩傳感器。本文通過對仿人機器人運動控制系統結構和傳感器電路結構的分析,提出了一種基于CAN總線的力信息檢測系統;通過實驗表明,該力信息檢測系統能夠滿足力信息采集的基本要求,為其他外部環境信息的采集建立了一定基礎。 仿人機器人控制結構分析與外部傳感信息采集結構 將仿人機器人控制系統的大開環變成大閉環對控制系統的上位計算機處理能力、上下位機與傳感器信息之間的傳輸通道結構以及傳感器信息采集與處理提出了挑戰。它要求上位計算機具備實時多任務處理能力,控制系統具有便于擴展的多傳感器信息采集與處理通道。增加外部信息傳感器是控制結構改進的最基本條件。 增加外部信息傳感器,首先要在現有控制系統硬件結構的基礎上,擴展外部信息采集與處理模塊,形成開放的分層信息采集與處理結構。結構的底層節點由多個傳感器信息采集和預處理模塊(包括解耦和濾波等)構成,得到的處理信息通過合適的物理通道傳送到決策層計算機,形成一個從環境信息到機器人動作序列產生的過程。 選擇實時性強且易于擴展的物理通道,可以增強控制系統的外部傳感擴展能力。在仿人機器人運動控制系統中,上下位機之間通過PC/104總線和 RS232串行總線交換信息。當系統需要擴展外部傳感器時,由于PC/104總線的有限驅動能力,通過PC/104總線只能擴展相當有限的外部信息傳感器且擴展不便(涉及到地址的重新分配等問題);RS232串行總線不能滿足高速實時信息傳輸與處理要求,因此考慮采用現場總線方式,如CAN總線,作為外部信息傳輸通道,同時設計其與上位機的通信接口。理想信息采集結構如圖1所示。 圖1理想的信息采集網絡 圖1所示的信息采集結構,具有較強的易擴展性和較高容錯性能。每一個外部信息傳感器都可以獨立設計;在整個信息采集結構中,每個模塊都是對等的,之間可以點對點通信;上位機可對各個傳感器信息處理模塊的廣播,信息處理模塊的增減不會對整個信息傳輸通道產生影響,有利于傳感器及其處理模塊的擴展和維護。另外,從底層通信協議角度而言,這種采集結構亦具有較高容錯性能。 力/力矩傳感器的電路結構及工作原理 五維力/力矩傳感器的電路結構如圖2所示。傳感器基本采集處理原理:當傳感器受到外力或外力矩作用時,彈性體產生形變,導致全橋橋路中的應變片阻值發生改變,改變橋路輸出電壓;橋路輸出電壓通過前置濾波與放大進入SoC,通過A/D變換得到的數字信號通過CAN總線或 RS232傳輸到上位機。 力/力矩傳感器與控制系統的電路接口設計方法 接口電路的基本功能 仿人機器人底層控制器與上位機接口采用PC/104總線方式,力/力矩傳感器信息傳輸采用CAN總線結構,因此需設計CAN總線與PC/104總線之間的接口,實現已有控制系統與傳感器之間的通信及對力/力矩信息的預處理,如圖3所示。 圖2傳感器電路原理 圖3接口電路基本功能和結構 接口電路的硬件結構與基本設計原理 綜合考慮接口電路對主處理器的要求,如對力/力矩信息的實時處理能力、外設擴展能力等,選用TMS320LF2407作為主處理器,通過對CAN總線和雙端口RAM的讀寫控制,實現力信息的讀取、預處理和上傳。接口電路基本原理如圖4所示。 選用TMS320LF2407作為主處理器。它采用實時信號處理體系結構,可達到30×106條指令/s的執行速度,供電電壓為3.3V,功耗低,片內外設中集成有控制器局域網絡(CAN)2.0B模塊和SCI模塊。 傳輸數據主要包括兩個力/力矩傳感器的五維力信息和經過預處理得到的數據,因此雙端口RAM選用IDT7132(2K×8bit)。一個端口接 PC/104總線的數據線、低位地址線、高位地址譯碼產生的選通信號以及讀寫信號,譯碼通過MAX7032,根據上位機的空閑地址分配RAM地址;另一個端口接經過電平轉換的DSP數據線低位地址線、高位地址譯碼產生的選通信號以及讀寫信號,通過SN74LV08A譯碼,分配的地址為F800~FFFF,通過SN74LV245A完成總線驅動和電平轉換。 圖4接口電路原理圖 圖5力信息采集與預處理基本流程 選取PCA82C250T作為驅動CAN控制器和物理總線間的接口,提供對總線的差動發送和接收功能。同時利用DSP的SCI模塊擴展了一路RS232串口,選用3.3V供電的RS232驅動器MAX3320作為串口驅動器,與PC機進行通信。 接口電路的軟件流程 接口電路驅動程序中,首先對DSP進行初始化設置,包括定時器初始化和 CAN模塊初始化以及在IDT7132中設置平滑數據隊列等;然后向發送郵箱中寫入0或1,即對傳感器清零或者請求發送數據;接收到數據之后,將數據從接收郵箱中讀入平滑數據隊列中,進行平滑數據處理,供上位機查詢和讀取。 在DSP的初始化設置中,首先通過設置MCR寄存器來配置CAN引腳;初始化位定時器主要是設置寄存器BCR1和BCR2,決定CAN控制器的通信波特率、同步跳轉寬度、采樣次數和重同步方式。對郵箱的初始化主要是設置郵箱的標識符;對發送的數據區賦初值,需要清零傳感器返回值時,數據區賦值 0,需要讀取數據時,數據區賦值1。發送信息首先要使能發送郵箱,然后設置發送請求位,等待發送中斷標志位置位,若為1,則發送成功,最后清除發送中斷標志位和發送應答位。接受信息時,要對接收郵箱進行初始化,設置標識符以及與標識符相關的局部屏蔽寄存器(LAM);然后等待接收中斷標志位MIFn置位,若MIFn=1則接收成功,最后清除接收中斷標志位和接收信息懸掛位。接收數據后,根據傳感器解耦矩陣完成數據解耦及平滑濾波。 根據文中提出的設計方法,已設計相應的電路,實現了對力信息的實時采集和傳送。所設計的系統能夠完成力信息采集和平滑預處理工作,但還沒有加入對力信息的數字濾波設計。通過對所采集的力信息數據的特性分析,下一步將在軟件流程中增加數字濾波部分,使獲取的力信息能夠更加真實地反映機器人所受到的地面反力信息,使力信息能夠應用于仿人機器人的大回路控制。 |