999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于語音控制的機械臂3D虛擬操作實驗平臺設計

2018-06-05 03:53:36張志明許春權
實驗技術與管理 2018年5期
關鍵詞:機械實驗

馬 睿, 張志明, 許春權

(同濟大學 電子與信息工程學院, 上海 200092)

實踐教學在自動化及相關專業學生的培養中占有極其重要的作用,需要在理論的指導下著力培養學生的綜合創新能力[1-2]。機械臂是近代自動控制領域出現的一項新型技術裝備[3],是工業機器人系統中傳統的任務執行機構。在專業綜合實驗教學中,機械臂實驗可以多方面、多層次培養學生的工程實踐能力和創新能力[4-6]。但在教學實踐中,由于機械臂的動作控制開發過程繁瑣,學生易產生畏難情緒。本文結合可視化及語音識別人機交互技術,設計與實現語音控制下多自由度機械臂運動3D虛擬顯示實驗平臺,以調動學生學習的積極性,提高實踐教學效果。

1 實驗設計概述

隨著計算機技術的發展,引入人機交互技術后的機械臂仿真控制操作開發成為實驗教學和實際應用的熱點課題[7-12]。在工業生產中,機械臂常用于抓取工件并將其放到指定位置。盡管機械臂的形態各有不同,但其共同點是接收指令,然后精確地定位到三維空間上的某一點進行作業。應用仿真技術,建立一個三自由度虛擬機械臂,包括1個沿z軸的滑動副和2個xoy平面的轉軸(見圖1),完成從三層工件存儲貨架存放位置將工件移動到工作臺臺面指定位置的任務。

圖1 三自由度(虛擬)機械臂的任務環境

美國國家儀器公司(National Instruments,NI)的LabVIEW軟件采用數據流方法驅動圖形化編程語言,并提供了前沿工具和IP,從而降低了編程的復雜性,簡化復雜的系統設計[14-15]。LabVIEW保持與其他工具軟件的良好兼容性[15],可以與其他軟件和編程源語言進行互操作,并復用其代碼或程序庫。LabVIEW軟件自7.1版本以后,自身能提供3D仿真函數,利用三維圖片控件實現用戶3D虛擬顯示仿真[14-15]。微軟公司從Windows XP開始,在其操作系統內置了語音識別引擎[13],無需購買第三方商業引擎即可使用戶體驗到語音系統的獨特魅力。

語音控制下多自由度機械臂運動3D虛擬顯示實驗的具體應用為:LabVIEW的3D顯示窗口中擺放著機械臂、工作臺、工件存儲貨架以及不同顏色的工件物塊,用戶對著麥克風說出所要轉移工件的顏色名稱,機械臂接收到語音指令后抓取貨架上相應顏色的物塊并放置到工作臺指定的位置上。系統工作流程如圖2所示。工作流程可以簡述為:首先通過麥克風采集用戶的語音信息,隨后傳遞給語音識別模塊進行處理,生成與語音相符的字符串,然后令其參與LabVIEW的機械臂運動狀態解算控制算法計算,最終計算得出3D機械臂模型相應的運動參數并動態顯示機械臂運動過程。

圖2 實驗系統工作流程

2 實驗設計實踐

語音控制下多自由度機械臂運動3D虛擬顯示實驗的設計重點和關鍵在于機械臂3D模型的建立、運動狀態解算控制算法、運動狀態動態顯示和語音系統的調用功能。

2.1 三維建模

LabVIEW環境下的3D建模遵循“先創建對象,后添加對象”的函數調用規則,必要時,還可以對圖形的尺寸、顏色、位置等進行設置。一個復雜的3D模型往往由多個零件單元構成,各個零件單元之間存在層級關系或者并列關系。層級關系舉例如圖3(a)所示,零件1、2、3的級別依次降低,其特點是:零件1運動時,零件2和3會相對于零件1靜止,但跟隨其運動;零件2的運動會引起零件3的跟隨。并列關系則如圖3(b)所示,環境作為最高級對象,其下的零件1、2、3并列,三者的運動互不影響,各自獨立。

圖3 3D模型零件單元關系

在機械臂運動虛擬顯示實驗環境中,需要建立機械臂、工作臺、貨架和工件等的3D模型。很顯然,這4類對象屬于并列關系,而組成機械臂的各個零件單元之間屬于層級關系。因為工作臺和貨架處于靜止狀態,其各個零件組成單元之間的關系無需特別設置。受篇幅所限,實驗系統中每個零件單元的尺寸、顏色、位置等信息不再贅述,模型具體結構和關系可參見圖4。

圖4 多自由度機械臂運動虛擬顯示實驗3D模型組成結構

2.2 運動狀態解算控制算法

如圖1所示,在三自由度(虛擬)機械臂運動狀態解算控制中,若設沿z軸運動的滑動副位移為d,xoy平面中轉軸1和轉軸2的轉角分別為θ1和θ2,桿1的長度為L1,桿2的長度為L2,則從位于底座中心的基坐標系到末端執行器坐標系依次經歷的相對坐標變換為:沿+z軸方向平移d,繞+z軸旋轉θ1、沿+y軸方向平移L1、繞+z軸旋轉θ2、沿+y軸平移L2。據此可寫出轉移矩陣方程[3],如式(1)所示。

(1)

式中,(x,y,z)是三維空間中某一點在基坐標系下的坐標,而(x′,y′,z′)是空間中同一位置點在末端執行器坐標系下的坐標。如果該點與末端執行器坐標系原點重合,那么(x′,y′,z′)=(0,0,0)。

若已知末端執行器需要到達空間位置(x,y,z),求解機械臂的運動姿態參數d、θ1和θ2,則屬于位姿解算;反之,若已知d、θ1和θ2,求解(x,y,z),則屬于端點解算。將已知的設定條件

L1=L2=1.5,(x′,y′,z′)=(0,0,0)

代入式(1),分別進行兩種解算,得到如式(2)、式(3)和式(4)形式所示的解析解(式中將θ1定義為theta1,θ2定義為theta2)。

位姿方程的解算結果有2個解。根據運動姿態特點,θ2為正的一組解稱為“上折解算”,θ2為負數的一組解稱為“下折解算”。根據圖1所示3D模型的位置,去程(機械臂從貨架抓取工件)適合采用上折解算,回程(機械臂放置工件到工作臺)適合采用下折解算。為簡化編程工作,在LabVIEW中調用Math Script節點,直接使用Matlab的Mcode解算后,將式(2)、式(3)和式(4)封裝成去程解算、回程解算、端點解算函數,配置輸入輸出接線端生成獨立的子VI,供控制算法模塊根據運行需要在后臺調用。

(2)

(3)

(4)

2.3 運動狀態動態顯示

LabVIEW采用循環刷新的方式實現3D圖形的運動狀態動態顯示,它類似于Flash動畫的工作機制。運動的方式主要分為平移和旋轉兩種,機械臂的運動由其滑動副的平移、轉軸1和轉軸2的旋轉疊加而成。

以轉軸1的運動控制為例,每次進入循環時將轉軸1的轉角設置成“漸變theta1”的值,然后再獲取其轉角寫入“當前theta1”。只要“漸變theta1”在運動期間連續變化,獲取“當前theta1”后即可調用位姿解算函數計算出下一位置“最終theta1”,解算其運動速度和加速度參數,控制3D視圖中的轉軸1對象隨之連續轉動顯示。轉軸2、滑動副的運動控制可以用同樣的方法實現。

當機械臂的末端執行器位置移動到指定的工件物塊存放位置時,啟用附著效果,設置附著標志,完成夾持動作。以綠色工件物塊為例,當程序中“附著-綠”標志為真時,每次循環都采集當前的d、θ1和θ2,調用端點解算函數計算出當前末端執行器坐標(x,y,z),并將所選的綠色工件物塊對象平移至該點位置。當“附著-綠”標志為假時,則不進行任何操作,綠色工件物塊停在當前位置(貨架或工作臺上)。其他顏色的工件物塊處理方式與此類似。

2.4 語音識別模塊

LabVIEW本身不具有語音識別功能,必須調用外部程序來實現該功能。借助Windows自帶的語音識別引擎,結合LabVIEW與其他工具軟件的良好兼容性,可以簡單、方便地實現語音指令控制的識別與連接。語音識別模塊的程序如圖5所示。

圖5 語音識別模塊程序組成

圖5中,模塊A是語音識別部分的主程序,在“詞庫”中分別寫入所要執行的語音指令字符串{“綠色”,“黃色”,“藍色”,“紅色”},用于分辨所要抓取工件對象的顏色。“字符串”組件是創建的Spoken Text的引用,相當于指針,二者連接至子VI“SR.vi”的輸入端端口。

模塊B顯示的是“SR.vi”的源代碼,編程所用的函數節點來自“互連接口--.NET”函數選板。雙擊“構造器節點”,在對話框中選擇所要調用的外部語音識別引擎(System.Speech程序集)中的功能函數(Choices、Grammar Builder、Speech Recognizer等)。程序首先為“詞庫”中的詞條建立語法,然后傳遞給語音識別功能函數,最后通過“事件回調注冊”節點注冊Speech Recognized事件。這樣,當該事件(語音識別出結果)發生時,在事件驅動機制下就能啟動運行靜態VI“CallBack_SR.vi”。其中Spoken Textbox來源于圖5模塊A中Spoken Text的引用,作為用戶參數被送到該靜態VI中。

模塊C顯示的是模塊B中子VI“CallBack_SR.vi”的源代碼,該VI實現的功能是將語音識別的結果以文本的格式寫入Spoken Text變量。值得注意都是,子VI的數據類型和數據內容必須嚴格與注冊事件匹配。模塊B的注冊事件原型是SpeechRecognized(Object sender, SpeechRecognizedArgs e),因而輸入參數簇“Event data”中的2個.NET句柄的類也必須分別設為對應的Object和SpeechRecognizedArgs類型。采用圖形化編程連接Windows自帶語音識別引擎的操作和代碼非常簡潔,將模塊A中所述的代碼插入實驗主程序中,就可以實現語音系統與3D顯示控制模塊(包括運動狀態解算和狀態動態顯示)的連接。

3 實驗效果與分析

綜合以上所述的功能模塊,基于LabVIEW平臺編程,實現語音控制下多自由度機械臂運動3D虛擬顯示實驗,實驗程序流程框圖如圖6所示。程序結構采用“循環內嵌事件”,保證實時響應語音識別模塊所識別得到的字符串指令,及時、高效地解算運動狀態參數,在指定窗口中顯示機械臂的工作狀態。

圖6 實驗程序流程圖

開始運行實驗程序時,仿真窗口中機械臂和工件的3D模型置于初始位置待命,實驗程序在后臺同時啟動Microsoft Speech Recognizer語音識別引擎。當實驗者對著PC機的話筒說出綠色、黃色、藍色、紅色之中的一個指令詞語時,機械臂就會虛擬抓取相應顏色的工件物塊并轉移放置到工作臺的指定位置上。實驗結果表明:利用LabVIEW圖形化編程語言,結合Microsoft語音識別引擎,可以實現語音控制機械臂運動狀態3D可視化顯示實驗的快速開發,提高學生的學習興趣和實踐效率。

4 總結與展望

語音控制下機械臂運動3D虛擬顯示實驗的工程

實例,增加了機械臂運動控制實驗的內容,使實驗內容更加豐富,讓學生融會貫通多個學科的理論知識和工程知識并付諸實踐,強化培養學生的工程能力和創新能力。在該實驗基礎上,只要擴充語音詞條詞庫,增加相應的指令響應動作,就可以讓機械臂的運動功能更復雜、更豐富。另外,得益于LabVIEW的數據通信接口,語音指令控制的對象可以從虛擬仿真模型擴展為真實的機械臂硬件,能更好地實現仿真與實際的統一。運行結果表明:原型實驗系統達到了預期設計效果和任務要求。目前該虛擬操作實驗平臺的設計還不夠完善,例如3D模型建模比較粗糙,運動狀態解算過程使用的是理想簡化模型,仿真顯示的不是機械臂運動實體姿態信息。這些不足都需要在進一步的研究中加以改進與實現。

致謝:特別感謝上海儀酷智能科技有限公司技術總監王立奇對語音識別技術的大力支持!

參考文獻(References)

[1] 李擎,崔家瑞,閻群,等.工程教育認證下自動化專業實踐類課程改革[J].實驗技術與管理,2016,33(12):225-228.

[2] 陳以,楊青,王改云.自動化學科專業人才培養實踐創新體系的建設[J].實驗技術與管理,2014,31(4):16-19,24.

[3] 孫宏昌.機器人技術與應用[M].北京:機械工業出版社,2017.

[4] 趙京,衛沅.機器人實驗教學系統創新實踐方法及應用[J].實驗室研究與探索,2015,34(11):210-212,224.

[5] 許超,盧雪梅,鄭艷龍,等.六自由度機械手課程設計與實現[J].實驗技術與管理,2017,34(4):199-201,204.

[6] 范劍,李繡峰,李軍.構建示教型工業機械手實驗平臺研究[J].實驗技術與管理,2012,29(9):72-74.

[7] 錢小平,楊慶華,荀一,等.基于Java3D的機械臂三維虛擬場景創建及運動學仿真[J].機電工程,2014,31(1):47-51,56.

[8] 唐立才,張海濤,張敬鵬,等.基于OSG的空間機械臂三維仿真平臺的設計與實現[J].計算機測量與控制,2015,23(3):987-989,994.

[9] 張學軍,唐勇,回文靜.基于組態技術的機械手控制系統的開發[J].實驗室科學,2010,13(5):148-150.

[10] 姚曉通,潘影麗,高宇.實驗教學SCARA機械臂控制算法研究與實現[J].計算機應用與軟件,2017,34(6):96-100,112.

[11] 譚麗芬,田志強,劉梁,等.語音交互技術在機械臂遙操作中的應用研究[J].航天醫學與醫學工程,2017,30(4):298-303.

[12] 陳義平,時穎,袁明明.多功能教學用機器人的設計與實現[J].實驗室研究與探索,2013,32(2):84-87.

[13] 黃妙燕,王咸鋒.基于Microsoft語音識別引擎的語音識別系統的設計[J].電腦開發與應用,2010(9):74-75.

[14] 耿克達,郭建國,高智剛,等.LabVIEW下的變質心機構3D虛擬顯示系統設計[J].計算機測量與控制,2011,19(9):2245-2247,2251.

[15] 陳樹學,劉萱.LabVIEW寶典 [M].2版.北京:電子工業出版社,2017.

猜你喜歡
機械實驗
記一次有趣的實驗
微型實驗里看“燃燒”
機械革命Code01
電腦報(2020年35期)2020-09-17 13:25:53
調試機械臂
當代工人(2020年8期)2020-05-25 09:07:38
做個怪怪長實驗
ikbc R300機械鍵盤
電腦報(2019年40期)2019-09-10 07:22:44
簡單機械
NO與NO2相互轉化實驗的改進
機械班長
實踐十號上的19項實驗
太空探索(2016年5期)2016-07-12 15:17:55
主站蜘蛛池模板: 国产极品粉嫩小泬免费看| 91麻豆久久久| 亚洲一级毛片免费看| 欧美亚洲综合免费精品高清在线观看 | 国产三级毛片| 青青热久免费精品视频6| 国产亚洲欧美另类一区二区| 亚洲无码高清一区| 在线中文字幕日韩| 99成人在线观看| 美女毛片在线| 黄色一及毛片| 成人亚洲天堂| 免费A级毛片无码免费视频| 亚洲自偷自拍另类小说| 亚洲欧美日韩中文字幕一区二区三区| 91精品综合| 无码AV日韩一二三区| 91国内在线观看| 国产国产人成免费视频77777 | 在线观看亚洲国产| 国产精品开放后亚洲| 六月婷婷综合| 欧美精品亚洲日韩a| 国产区网址| 麻豆AV网站免费进入| a毛片在线播放| 精品国产www| 亚洲天堂区| 欧美亚洲综合免费精品高清在线观看| 免费可以看的无遮挡av无码| 日韩欧美国产综合| 婷婷丁香在线观看| 国产亚洲欧美在线专区| 久久综合九九亚洲一区 | 成人福利在线看| 麻豆精品在线| 日本道综合一本久久久88| 亚洲国产无码有码| 97视频在线观看免费视频| 亚洲日本一本dvd高清| 国产网友愉拍精品| 五月天在线网站| swag国产精品| 人妖无码第一页| 免费激情网址| 欧美日本在线播放| 国产成人综合网| jizz在线观看| 国产欧美日韩18| 国产成人久视频免费| 国产精品吹潮在线观看中文| 91小视频版在线观看www| 97亚洲色综久久精品| 色婷婷久久| 欧美日韩在线亚洲国产人| 99久久国产综合精品2023| 一级毛片高清| 国产成人凹凸视频在线| 亚洲美女视频一区| 欧美在线导航| 欧美97色| 熟妇丰满人妻| 久久青草免费91线频观看不卡| 国产一级二级三级毛片| 国产午夜福利片在线观看| 欧美国产日韩另类| 一本大道无码日韩精品影视| 香蕉久久永久视频| 亚洲男人天堂2020| 亚洲Av激情网五月天| 日本午夜影院| 欧美性猛交一区二区三区 | 日韩福利在线观看| 亚洲日韩国产精品综合在线观看| 99热在线只有精品| 天堂中文在线资源| 亚洲一级色| 国产一区二区在线视频观看| 国产成人三级| 久久久久久久久18禁秘| 青青操视频在线|