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