亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        虛擬數(shù)控機(jī)床網(wǎng)頁控制的實現(xiàn)方法

        2017-05-30 12:33:07袁瑾
        工業(yè)設(shè)計 2017年3期
        關(guān)鍵詞:交互數(shù)控機(jī)床

        湖北工業(yè)大學(xué),湖北武漢,430068

        摘 要:基于VegaPrime與VC++MFC虛擬平臺,建立虛擬數(shù)控機(jī)床的模型,并采用Flex軟件編寫控制界面,通過JavaScript函數(shù)能直接與VRML程序通信,實現(xiàn)網(wǎng)頁控制虛擬數(shù)控機(jī)床加工的功能,使得學(xué)生能通過網(wǎng)絡(luò)訪問虛擬機(jī)床加工實驗室。

        關(guān)鍵詞:數(shù)控機(jī)床;虛擬平臺;交互;VRML

        引言

        為了實現(xiàn)在通過網(wǎng)頁控件控制虛擬場景中的對象,需要flex程序能夠與VRML程序通信,因此要在程序中調(diào)用虛擬模型的VRML文件。但flex程序不能直接調(diào)用VRML文件,需要通過HTML文件間接調(diào)用。雖然flex過程創(chuàng)建后能自動生成一個同名HTML網(wǎng)頁文件,但是每次運(yùn)行mxml文件都會把該網(wǎng)頁文件重置,之前編輯的部分都無法保存下來,因此不能直接修改這個文件來調(diào)用。為了讓學(xué)生能通過網(wǎng)絡(luò)訪問虛擬機(jī)床加工實驗室,需要將VRML虛擬場景嵌入到網(wǎng)頁中去,本文采用Flex軟件來編寫控制界面。

        1虛擬數(shù)控機(jī)床的構(gòu)建平臺

        機(jī)床模型的構(gòu)建環(huán)境為VegaPrime與VC++MFC虛擬平臺。該平臺加載模型的特點是:

        (1)能夠直接通過lynxprime界面直接導(dǎo)入openflight模型,該模型以“節(jié)點”的方式儲存模型元素,每個“節(jié)點”表示一個完整的模型元素;以樹狀結(jié)構(gòu)組織模型元素間的關(guān)系,加載時按照模型節(jié)點的先后順序依次加載;該平臺同時支持基于openflight模型的二進(jìn)制格式文件(VSB)的轉(zhuǎn)換和導(dǎo)入;該格式文件僅能被VP平臺讀取,提高了模型的安全性。

        (2)該平臺有固定的“世界”坐標(biāo)系(指VP構(gòu)建的三維場景總體坐標(biāo)系)中心,調(diào)入的openflight(VSB)模型同樣具有模型坐標(biāo)系數(shù)據(jù),調(diào)入時通過調(diào)整兩坐標(biāo)系相對位置的方式實現(xiàn)定位,調(diào)整方法可以采用程序控制或者Lynxprime界面控制兩種。

        (3)所調(diào)入模型均可以通過VC++進(jìn)行位置、姿態(tài)、調(diào)入、調(diào)出等操作。具有完善的類接口和相關(guān)函數(shù)對模型進(jìn)行驅(qū)動,無需另外開發(fā)驅(qū)動接口程序。

        (4)VP默認(rèn)最小位移單位為“米”,此單位不利于保證機(jī)床部件裝配,需要尋找辦法保證機(jī)床部件裝配精度。

        (5)Openflight模型數(shù)據(jù)量巨大,需要進(jìn)行有效的模型精簡。

        2虛擬數(shù)控機(jī)床建模語言

        本文采用VRML(VirtualRealityModelingLanguage)作為三維仿真建模語言。VRML語言具有強(qiáng)大的交互和控制功能。

        交互功能方面,VRML提供了多種傳感器節(jié)點用于感知和反應(yīng)瀏覽者對虛擬場景中的造型的操作。觸摸傳感器(TouchSensor)用于感知用戶用鼠標(biāo)觸摸、單擊、按下、松開被感應(yīng)造型等觸發(fā)的動作,觸摸傳感器與其他節(jié)點或腳本配合,可以作為虛擬世界中的一個控制開關(guān);平面?zhèn)鞲衅鳎≒laneSensor)節(jié)點用于感知用戶鼠標(biāo)在XY平面內(nèi)對虛擬對象進(jìn)行拖拽的動作,平面?zhèn)鞲衅魍ㄟ^事件路由可以改變物體的坐標(biāo),實現(xiàn)對虛擬物體的拖動;圓柱傳感器(CylinderSensor)節(jié)點用于感知用戶鼠標(biāo)對虛擬造型的拖拽,并將其處理為繞中心軸的旋轉(zhuǎn)運(yùn)動,圓柱傳感器通過事件路由可以實現(xiàn)對虛擬物體的旋轉(zhuǎn)控制;球體傳感器(SphereSensor)節(jié)點用于感知用戶用戶鼠標(biāo)的拖拽,并將其處理為繞球體中心點的旋轉(zhuǎn)動作。除上述傳感器外,還有能感知用戶在虛擬世界中所處位置之處相應(yīng)反應(yīng)的接近傳感器(ProximitySensor)、可視傳感器(VisibilitySensor)、碰撞傳感器CCollisionSensor)等,由于本文中沒有用到這些,就不在此做詳細(xì)介紹了。

        控制功能方面,VRML程序本身主要用于建立虛擬世界模型,其控制功能不強(qiáng),但為了彌補(bǔ)這一缺陷,VRML提供了與其他高級程序的內(nèi)部和外部接口。VRML中的腳本程序可以用JavaScript或者VRMLScript編寫,可以實現(xiàn)較復(fù)雜的控制功能,VRML同時還提供了與JavaScript和Java語言的外部接口,可以通過外部程序控制虛擬場景中的對象,這些都使得其對虛擬世界的控制力大大增強(qiáng)。

        3網(wǎng)頁控件與VRML程序的交互

        網(wǎng)頁中調(diào)用VRML文件后,JavaScript函數(shù)能直接與VRML程序通信,通過"document.scene.Engine.Nodes('cd').Fields('translation').x”可以直接調(diào)用或賦值VRML節(jié)點中的域。其中,“scene”是網(wǎng)頁調(diào)用VRML文件的ID,,“cd”是VRML文件中的節(jié)點名,,“translation.x”是該節(jié)點中的域值。

        Flex雖然不能與VRML函數(shù)通信,但Flex的ActionScript提供了與JavaScript通訊的外部訪問接口-ExternalInterface類,可以通過ExternalInterface.call

        (functionName,Parameter)函數(shù)來調(diào)用JavaScript函數(shù)中的函數(shù)并賦參數(shù)值。這樣,就間接地調(diào)用或改寫VRML節(jié)點中的域的值,實現(xiàn)對虛擬場景中對象的控制,其交互原理如圖1所示。

        4虛擬數(shù)控機(jī)床網(wǎng)頁控制功能的實現(xiàn)方法

        4.1數(shù)控面板的實現(xiàn)

        作為虛擬現(xiàn)實系統(tǒng),數(shù)控面板的真實程度的高低,將直接影響用戶對系統(tǒng)整體的體驗。系統(tǒng)采用GLstudio軟件制作數(shù)控面板,該軟件具有以下特點:第一,可以采用照片紋理,真實度高;第二,具有按鈕、旋鈕、二項開關(guān)、文本框等控件定義,能夠方便地構(gòu)建所需功能;第三,軟件采用V C++編制,面板間各模塊和控件間數(shù)據(jù)傳輸采用V C++標(biāo)準(zhǔn),易于操作和學(xué)習(xí);第四,采用圖形化工作界面,條理邏輯性強(qiáng),適合開發(fā)大型邏輯面板;第五,具有與VP軟件的數(shù)據(jù)接口GLstudioForVP,能夠在VP中實時接收GLstudio數(shù)據(jù)。

        4.2旋轉(zhuǎn)開關(guān)

        銑床的刀具、車床的工件、磨床的工件和砂輪都需要用控件控制其旋轉(zhuǎn)。以車床為例,用button按鈕點擊后,調(diào)用主軸控制函數(shù),虛擬機(jī)床主軸旋轉(zhuǎn)狀態(tài)取反,調(diào)用外部函數(shù),通過程序接口改變VRML程序中主軸旋轉(zhuǎn)狀態(tài),同時按鈕標(biāo)簽由“啟動主軸”變?yōu)椤爸鬏S停止”。

        4.3工件/刀具移動

        工件/刀具移動模仿數(shù)控機(jī)床上的點控操作,每次點擊按鈕,機(jī)床相應(yīng)部件沿某坐標(biāo)軸的正方向或負(fù)方向移動一個單位。由于這些按鈕的功能類似,因此不必把每個按鈕click都觸發(fā)一個單獨的函數(shù),可以觸發(fā)同一個函數(shù),通過參數(shù)的不同來區(qū)分操作。為了實現(xiàn)增量控制,需要先讀取當(dāng)前坐標(biāo)值,加或減去一個單位距離,再將新坐標(biāo)賦給VRML節(jié)點域。

        4.4工件尺寸選擇

        在車床、磨床中可以通過網(wǎng)頁控件選擇回轉(zhuǎn)體工件的半徑、長度組合,并將虛擬機(jī)床中“裝夾”的工件換成所選尺寸。

        尺寸的選擇采用了兩個組合框控件(ComboBox)來選擇工件的半徑和長度。點擊事件指向?qū)?yīng)的半徑/長度選擇函數(shù),DataProvider指向前面定義的半徑/長度數(shù)組,在函數(shù)中通過“choose 1.selectedItem.value0f()”語句識別所選擇的數(shù)據(jù),并將其通過“External Interface.call()”傳遞給VRML程序。

        前面只說了flex程序中的工作,其實在VRML程序中也要做相應(yīng)改動來與之配合。工件的半徑和長度設(shè)置源于腳本里面的一個變量,默認(rèn)值為0。但這個變量是外部無法訪問的,因此,必須定義一個入事件來將變量傳進(jìn)腳本。由于該功能需要改變兩個變量的值,最好的選擇就是入事件有多個參數(shù)。

        4.5刀具查詢

        對話框類交互功能需要事先設(shè)計和定義不同功能的對話框。用戶通過功能菜單調(diào)出這些對話框,再根據(jù)其中內(nèi)容獲取相關(guān)信息或進(jìn)行相關(guān)操作。如刀具選擇功能菜單,作用是調(diào)出刀具查詢對話框,或刀具選擇對話框,前者允許用戶選擇所需刀具的類型、直徑等信息查詢所需刀具在刀盤的具體位置;后者支持用戶分別查看不同刀位上刀具的信息;以方便編程選擇。

        4.6手動輸入NC代碼換刀

        虛擬面板正向傳遞數(shù)據(jù)給VP是實現(xiàn)虛擬數(shù)控面板控制的基礎(chǔ),主要傳遞的數(shù)據(jù)類型涵蓋表征手動操作指令的bool型開關(guān)量、整型變量;表征手動輸入NC加工的字符串型變量(記錄NC代碼)、開始加工開關(guān)量;作為邏輯判斷的機(jī)床開關(guān)整型變量、急停變量、模式選擇變量等。

        4.7機(jī)床重置

        在網(wǎng)頁中,還需要添加一個可以把機(jī)床部件重置功能。這里的重置除了工件表面重置外,還要把機(jī)床部件回歸原位。重置函數(shù)主要就是將工件、刀具位置置零(工件和刀具位置改變后相關(guān)導(dǎo)軌位置會自動恢復(fù),不需要專門重置),工件表面的重置,如果是車床磨床這類可以設(shè)置尺寸的工件,直接將所有尺寸都設(shè)置為默認(rèn)尺寸0,而銑床刨床這類機(jī)床的工件稍微麻煩一點,需要通過外部事件觸發(fā)VRML腳本程序中的reset函數(shù),具體做法類似于設(shè)置工件尺寸,需要通過無造型節(jié)點來實現(xiàn)。

        4.8機(jī)床運(yùn)行數(shù)據(jù)的面板顯示

        VP逆向傳遞數(shù)據(jù)進(jìn)入虛擬面板目前的主要作用是實現(xiàn)機(jī)床運(yùn)行坐標(biāo)和外部導(dǎo)入NC代碼的顯示。

        5結(jié)語

        本文基于VegaPrime與VC++MFC虛擬平臺,建立虛擬數(shù)控機(jī)床的模型,并采用Flex軟件編寫控制界面,通過JavaScript函數(shù)能直接與VRML程序通信,實現(xiàn)網(wǎng)頁控制虛擬數(shù)控面板、旋轉(zhuǎn)開關(guān)、工件/刀具移動、工件尺寸旋轉(zhuǎn)、刀具查詢、手動輸入NC代碼換刀、機(jī)床重置以及機(jī)床運(yùn)行數(shù)據(jù)的面板顯示等功能,使得學(xué)生能通過網(wǎng)絡(luò)訪問虛擬機(jī)床加工實驗室。

        參考文獻(xiàn):

        [1] J. G. Li, H. Zhao, Y. X. Yao, C. Q. Liu .Off-line optimization on NC machining based on virtual machining. The International Journal of Advanced Manufacturing Technology, 2006, 36 (9):908-917.

        [2]彭家祥.虛擬數(shù)控機(jī)床的建模與控制[D].西北工業(yè)大學(xué),2003.

        作者簡介:

        袁瑾/女/湖北黃石人/ 本科/工程師/研究方向為機(jī)械自動化

        猜你喜歡
        交互數(shù)控機(jī)床
        數(shù)控機(jī)床的節(jié)能應(yīng)用
        高檔數(shù)控機(jī)床數(shù)據(jù)采集應(yīng)用
        數(shù)控機(jī)床電氣系統(tǒng)的故障診斷與維修
        電子制作(2018年10期)2018-08-04 03:24:46
        光柵尺在數(shù)控機(jī)床中的應(yīng)用
        PLC在數(shù)控機(jī)床中應(yīng)用
        電子制作(2017年20期)2017-04-26 06:57:41
        實驗激發(fā)思維 問題交流智慧
        淺析色彩在人機(jī)交互界面中的作用
        基于圖形用戶界面的多點觸控交互技術(shù)綜述
        大學(xué)英語教師“交互”信念、知識與教師專業(yè)發(fā)展
        科技視界(2016年24期)2016-10-11 22:11:01
        數(shù)控機(jī)床保護(hù)接地探析
        人妻精品久久中文字幕| 99精品又硬又爽又粗少妇毛片| 日本大片免费观看完整视频| 日韩亚洲制服丝袜中文字幕| 国产精品av网站在线| 国产一区二区长腿丝袜高跟鞋| 成人免费无遮挡在线播放| 免费人成视频在线观看网站| 亚洲AV无码久久精品国产老人| 日韩熟女精品一区二区三区视频 | 亚洲麻豆视频免费观看| 国产精品18久久久| 国产伦精品一区二区三区视| 国产精品亚洲一区二区三区正片| 日本五十路人妻在线一区二区| 亚洲av成人噜噜无码网站| 放荡的闷骚娇妻h| 国产人妖xxxx做受视频| 激情都市亚洲一区二区| 成人国成人国产suv| 亚洲娇小与黑人巨大交| 亚洲精品国产成人AV| 99久久无色码中文字幕鲁信| 亚洲中文字幕日韩综合| 久久天天躁狠狠躁夜夜躁2014| 欧韩视频一区二区无码| 狼人av在线免费观看| 亚洲中文字幕舔尻av网站| 亚洲av成人无码网站…| 在线亚洲+欧美+日本专区| 亚洲天堂av路线一免费观看| 激情综合色综合啪啪开心| 四川老熟妇乱子xx性bbw| 国产日韩久久久精品影院首页| 久久久精品国产视频在线| 亚洲精品久久麻豆蜜桃| 日本高清在线一区二区三区| 欧美人与动牲交a精品| 国产亚洲欧美在线| 国产精品一区二区三区成人| av无码电影一区二区三区|