應(yīng)對(duì)機(jī)器人設(shè)計(jì)開(kāi)發(fā)中的三大挑戰(zhàn)
2. 軟件必須具備與硬件的良好集成性
本文引用地址:http://butianyuan.cn/article/109897.htm每個(gè)自主系統(tǒng)都必須感知或察覺(jué)周圍世界的環(huán)境并做出反應(yīng)。感知系統(tǒng)需要外部傳感器(如激光測(cè)距儀、聲納傳感器等),做出反應(yīng)則要依靠不同類型的執(zhí)行機(jī)構(gòu)完成。因此軟件工具必須能夠直接驅(qū)動(dòng)各種傳感器和執(zhí)行機(jī)構(gòu)。除了感知系統(tǒng)和執(zhí)行控制,往往還需要在真實(shí)硬件上實(shí)現(xiàn)決策規(guī)劃,這意味著軟件必須具有與實(shí)時(shí)系統(tǒng)、實(shí)時(shí)嵌入式硬件、甚至FPGA的強(qiáng)大交互性。目前的許多機(jī)器人軟件開(kāi)發(fā)包缺乏類似功能,它們能夠仿真并在開(kāi)發(fā)機(jī)器上運(yùn)行,但不具備在實(shí)時(shí)硬件目標(biāo)上的執(zhí)行能力。
圖5 基于NI嵌入式硬件平臺(tái)CompactRIO搭建成的機(jī)器人原型,從仿真到最終系統(tǒng)實(shí)現(xiàn)的軟件平臺(tái)均為NI LabVIEW
3. 軟件必須具備良好的交互性
完成機(jī)器人設(shè)計(jì)并不簡(jiǎn)單,它需要反復(fù)修改和原型設(shè)計(jì)。因此機(jī)器人領(lǐng)域的研發(fā)人員需要一款可以輕松調(diào)試的軟件包,既可進(jìn)行直觀的仿真,又能在實(shí)時(shí)硬件系統(tǒng)上快速實(shí)現(xiàn),從而測(cè)試算法和真實(shí)I/O。每次硬件實(shí)驗(yàn)之后都可能再回到開(kāi)發(fā)環(huán)境,對(duì)代碼進(jìn)行進(jìn)一步優(yōu)化或調(diào)整。這些都要求軟件開(kāi)發(fā)工具具有極佳的交互性。
針對(duì)上述三點(diǎn)需求,NI LabVIEW軟件是一款理想的機(jī)器人開(kāi)發(fā)軟件。LabVIEW圖形化編程方式使其天然具備直觀性。最新的LabVIEW機(jī)器人模塊還集成了常用的搜索、蔽障、路徑規(guī)劃、以及動(dòng)力學(xué)算法,可以最大程度地幫助機(jī)器人開(kāi)發(fā)人員快速實(shí)現(xiàn)應(yīng)用。此外,與硬件的無(wú)縫集成也是LabVIEW的一大特點(diǎn)。通過(guò)LabVIEW軟件本身就可以連接各種傳感器和執(zhí)行機(jī)構(gòu)。完成算法仿真的LabVIEW代碼可以直接下載到NI嵌入式實(shí)時(shí)硬件平臺(tái)CompactRIO或SingleBoard RIO執(zhí)行,從而實(shí)現(xiàn)真正的與硬件無(wú)縫集成。LabVIEW機(jī)器人模塊中還提供了多種機(jī)器人常用傳感器在實(shí)時(shí)硬件平臺(tái)下的現(xiàn)成驅(qū)動(dòng)程序,從而使機(jī)器人的開(kāi)發(fā)更為簡(jiǎn)單。最后,LabVIEW提供交互式的調(diào)試環(huán)境和豐富的界面設(shè)計(jì)工具,各種算法都可在實(shí)時(shí)嵌入式硬件上直接實(shí)現(xiàn),并可方便地反復(fù)修改驗(yàn)證,滿足了機(jī)器人研究人員的調(diào)試需要。SCOPE項(xiàng)目主管Barrett博士稱LabVIEW正是工業(yè)界所需的軟件:“我花了15年時(shí)間力圖探尋最佳機(jī)器人編程語(yǔ)言,NI LabVIEW無(wú)愧殊榮。它能夠處理各類傳感器、多種執(zhí)行機(jī)構(gòu)、復(fù)雜動(dòng)態(tài)控制算法,并能在實(shí)時(shí)環(huán)境下輕松進(jìn)行驗(yàn)證調(diào)試,完成系統(tǒng)實(shí)現(xiàn)。”
除了上述優(yōu)點(diǎn),NI LabVIEW還具有高度的靈活性和開(kāi)放性。例如,LabVIEW機(jī)器人模塊已經(jīng)提供一些成熟的路徑搜索算法,用戶可重用這些算法,同時(shí)用戶也可以基于這些基本的搜索算法添加他們的創(chuàng)新或最新研究成果,從而創(chuàng)建新型的搜索算法。用戶也可以將這些算法與LabVIEW中提供的其他算法或第三方技術(shù)集成從而開(kāi)發(fā)更多的創(chuàng)新應(yīng)用,如機(jī)器人救援或醫(yī)療輔助應(yīng)用。LabVIEW是一個(gè)開(kāi)放的軟件,它支持許多廠商的硬件平臺(tái)或自定義設(shè)備,并且支持調(diào)用多種第三方開(kāi)發(fā)工具產(chǎn)生的代碼或模型,使其應(yīng)用范圍拓展到機(jī)器人應(yīng)用的各個(gè)領(lǐng)域。
評(píng)論