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

        ?

        基于ActionScript的虛擬數(shù)控車床開發(fā)

        2015-10-28 01:10:56羅新文李貴榮楊麗祥呂朋翔云南農(nóng)業(yè)大學(xué)機(jī)電工程學(xué)院云南昆明650201
        關(guān)鍵詞:卡盤數(shù)控車床刀具

        羅新文,李貴榮,楊麗祥,呂朋翔(云南農(nóng)業(yè)大學(xué) 機(jī)電工程學(xué)院,云南 昆明 650201)

        基于ActionScript的虛擬數(shù)控車床開發(fā)

        羅新文,李貴榮,楊麗祥,呂朋翔
        (云南農(nóng)業(yè)大學(xué) 機(jī)電工程學(xué)院,云南 昆明650201)

        虛擬設(shè)備軟件技術(shù)在工業(yè)培訓(xùn)中應(yīng)用越來越廣泛。隨著數(shù)控機(jī)床應(yīng)用的擴(kuò)展,在數(shù)控機(jī)床應(yīng)用培訓(xùn)中,虛擬機(jī)床軟件的應(yīng)用也得到了長足發(fā)展,出現(xiàn)了功能較完善的商業(yè)軟件。但在數(shù)控機(jī)床應(yīng)用培訓(xùn)實(shí)踐中,使用者希望對(duì)虛擬機(jī)床的實(shí)現(xiàn)方法有深入的了解,而如何實(shí)現(xiàn)機(jī)床的工作過程是這類商業(yè)軟件的核心技術(shù)。因此本文選擇ActionScript3.0腳本語言作為開發(fā)工具,對(duì)虛擬數(shù)控車床的基本功能虛擬實(shí)現(xiàn)進(jìn)行探討,滿足數(shù)控車床高級(jí)應(yīng)用培訓(xùn)中,受訓(xùn)者希望了解虛擬機(jī)床功能實(shí)現(xiàn)原理的需要。

        虛擬設(shè)備;ActionScript;虛擬數(shù)控車床;開發(fā)

        0 引言

        虛擬設(shè)備軟件技術(shù)就是利用軟件模擬實(shí)現(xiàn)工業(yè)設(shè)備的外部功能和內(nèi)部功能,為設(shè)備的開發(fā)和使用提供幫助。不同行業(yè)有不同的虛擬設(shè)備內(nèi)部功能的軟件,在此不再贅述。虛擬設(shè)備外部功能的軟件主要用于設(shè)備應(yīng)用培訓(xùn),如數(shù)控機(jī)床應(yīng)用培訓(xùn)的虛擬軟件,但這類軟件屬于商業(yè)化軟件,其實(shí)現(xiàn)的功能外部和內(nèi)部都有,實(shí)現(xiàn)的方法和手段均被視為商業(yè)機(jī)密,不對(duì)外公開。在數(shù)控機(jī)床培訓(xùn)實(shí)踐中,受訓(xùn)者往往不滿足于對(duì)虛擬機(jī)床操作的培訓(xùn),他們希望了解虛擬機(jī)床的實(shí)現(xiàn)方法和過程,充分了解數(shù)控機(jī)床的工作特點(diǎn),以便在遇到故障和問題時(shí),能打開解決問題的思路。有鑒于此,本文基于Action-Script3.0腳本語言作為開發(fā)工具,對(duì)虛擬數(shù)控車床進(jìn)行原型開發(fā)。通過較詳細(xì)的介紹,使受訓(xùn)者可以自行實(shí)踐。基于ActionScript3.0的零件、加工環(huán)境建模及數(shù)控加工刀路動(dòng)態(tài)仿真[1]已有一些探索,但用ActionScript3.0實(shí)現(xiàn)刀具對(duì)工件加工模擬的技術(shù)仍不成熟,本文提出了一種可行的解決方案。

        1 開發(fā)工具的選擇

        為了使受訓(xùn)者能自己動(dòng)手實(shí)現(xiàn)有關(guān)功能,虛擬數(shù)控車床開發(fā)中,制定的幾條選擇開發(fā)工具的原則是:

        (1)該開發(fā)工具適合于實(shí)現(xiàn)系統(tǒng)的基本功能。數(shù)控車床的工作模擬可簡(jiǎn)化為平面動(dòng)畫問題,因此選擇Flash作為開發(fā)工具可以滿足其動(dòng)作實(shí)現(xiàn)的要求。

        (2)開發(fā)語言要容易入門。ActionScript(簡(jiǎn)稱AS)是由Macromedia(現(xiàn)已被Adobe收購)為其Flash產(chǎn)品開發(fā)的,最初是一種簡(jiǎn)單的腳本語言,現(xiàn)在最新版本ActionScript3.0是一種完全的面向?qū)ο蟮木幊陶Z言,功能強(qiáng)大,類庫豐富,語法類似JavaScript,多用于Flash互動(dòng)性、實(shí)用性開發(fā),網(wǎng)頁制作和RIA(因特網(wǎng)應(yīng)用程序)開發(fā)。與使用C++ 和VB語言相比[2,3],該腳本語言入門較容易,而且適于開發(fā)模擬數(shù)控車床這種互動(dòng)性強(qiáng)的虛擬系統(tǒng)。

        (3)開發(fā)工具開發(fā)的系統(tǒng)可以獨(dú)立運(yùn)行,對(duì)計(jì)算機(jī)硬件配置要求低。Flash產(chǎn)品的基本目標(biāo)之一是開發(fā)網(wǎng)絡(luò)動(dòng)畫和動(dòng)態(tài)網(wǎng)頁 ,它們的基本要求就是實(shí)時(shí)傳輸,響應(yīng)速度快,因此在開發(fā)工具設(shè)計(jì)時(shí),就按體積小、質(zhì)量高、成本低廉、操作簡(jiǎn)便、應(yīng)用效率高的特點(diǎn)設(shè)計(jì)[3]。

        綜上所述,選擇Flash產(chǎn)品作為開發(fā)平臺(tái),配以ActionScript3.0作為編程語言完全能滿足開發(fā)虛擬數(shù)控車床的需要。

        圖1 虛擬數(shù)控車床功能組成Fig.1 Function of virtual NC lathe

        2 虛擬數(shù)控車床的功能分析

        在完成了開發(fā)平臺(tái)和編程語言的選擇后,需要分析虛擬數(shù)控車床要實(shí)現(xiàn)的功能。實(shí)現(xiàn)數(shù)控車床的全部功能不是本文的目標(biāo),因此需要選擇受訓(xùn)者感興趣但實(shí)現(xiàn)起來又不過于復(fù)雜的功能。數(shù)控車加工工藝系統(tǒng)包括車床、刀具和工件。虛擬仿真中車床由卡盤來體現(xiàn);刀具可以按平面圖形處理,更換刀具后,刀具形狀不變;工件的大小需要可以選擇,因此需要處理好工件于卡盤之間的關(guān)系。工件在切削過程中形狀要發(fā)生改變,它的改變隨刀具形狀和運(yùn)動(dòng)軌跡而改變,因此處理工件在切削過程中變化的功能就是本虛擬數(shù)控車床的關(guān)鍵功能。如上所述,可以將本虛擬數(shù)控車床的功能用圖1來表示。

        根據(jù)圖1,卡盤要完成的功能有帶動(dòng)工件旋轉(zhuǎn)、卡盤打開和閉合,在卡盤閉合時(shí)不能和工件產(chǎn)生碰撞,因此需要進(jìn)行碰撞檢測(cè)。同時(shí)在改變工件參數(shù)時(shí),也不能超過卡盤的開度,否則會(huì)產(chǎn)生碰撞。刀具在碰到卡盤時(shí)也需要發(fā)出報(bào)警;與刀具對(duì)應(yīng)的基本功能是更換刀具、刀具運(yùn)動(dòng)軌跡顯示、刀具運(yùn)動(dòng)的插補(bǔ)功能、刀具運(yùn)動(dòng)速度等。與工件對(duì)應(yīng)的功能是尺寸改變、切削模擬、碰撞檢測(cè)等。下面按照卡盤工件系統(tǒng)、工件刀具系統(tǒng)和刀具軌跡控制的順序敘述軟件實(shí)現(xiàn)方法。

        3 卡盤工件系統(tǒng)的虛擬功能實(shí)現(xiàn)

        卡盤旋轉(zhuǎn)在三維系統(tǒng)中實(shí)現(xiàn)較簡(jiǎn)單,但在二維系統(tǒng)中,虛擬旋轉(zhuǎn)效果通常通過參照物來表示。由于該功能在虛擬系統(tǒng)中不是重點(diǎn)實(shí)現(xiàn)的功能。系統(tǒng)中通過符號(hào)改變來表示。分為正轉(zhuǎn)、反轉(zhuǎn)和停止三種符號(hào)。另外在虛擬系統(tǒng)中,用圖2中標(biāo)注的1作為夾緊按鈕,2作為主軸啟動(dòng)按鈕。卡盤夾持工件是卡盤的重要功能,卡盤夾持時(shí)不能碰到工件,但要和工件接觸,由于工件的大小不是固定的,因此卡爪的移動(dòng)位置是不固定的。另外在卡爪打開的情況下,不能使卡盤和工件旋轉(zhuǎn),如圖2(a)不能直接轉(zhuǎn)換到圖2(c),同樣在卡盤和工件旋轉(zhuǎn)的情況下,不能打開卡爪,如圖2(c)不同直接轉(zhuǎn)換到圖2(a)。

        圖2 卡盤與工件系統(tǒng)Fig.2 Chuck and workpiece system

        在該部分功能實(shí)現(xiàn)中,活動(dòng)部分依靠定義影片剪輯來實(shí)現(xiàn),通過影片剪輯的位置、大小屬性來實(shí)現(xiàn)其最終的位置和形狀。交互功能用按鈕來實(shí)現(xiàn),通過按鈕代碼控制卡爪和卡盤的動(dòng)作。定義變量zhua_enable來識(shí)別卡盤是否旋轉(zhuǎn),定義zhuzhou_enable來識(shí)別卡盤是否夾緊,定義zhua_zht代表卡轉(zhuǎn)停止轉(zhuǎn)動(dòng),定義zhuzhou_zht表示主軸停止轉(zhuǎn)動(dòng)。限于篇幅,本文列舉卡爪的夾緊和松開代碼如下。代碼中按鈕kzhi1_btn見圖2(a)中序號(hào)1所示。

        4 刀具工件系統(tǒng)的虛擬功能實(shí)現(xiàn)

        刀具的移動(dòng)一般分兩個(gè)階段,一個(gè)階段是空行程,刀具不和工件接觸,另一個(gè)階段是刀具切削工件的階段,此時(shí)要解決刀具與工件之間的關(guān)系問題。在本系統(tǒng)中,由于選用Flash作為開發(fā)平臺(tái),不能進(jìn)行兩個(gè)圖形元素間的布爾運(yùn)算,因此必須采用該平臺(tái)具有的功能來實(shí)現(xiàn)刀具對(duì)工件的加工效果。對(duì)于兩個(gè)刀具移動(dòng)階段的轉(zhuǎn)換問題,可以使用碰撞檢測(cè)函數(shù)hitTest實(shí)現(xiàn)。定義刀具影片剪輯為tools_mc,定義工件影片剪輯為part_mc,則刀具與工件碰撞的檢測(cè)代碼格式如下:

        在Flash開發(fā)平臺(tái)上要實(shí)現(xiàn)刀具切削工件的效果,可以用重疊覆蓋的辦法來實(shí)現(xiàn)。具體方法是:首先分別創(chuàng)建影片剪輯 part_mc、tool_mc、toolc_mc分別代表工件、刀具和影子刀具。在當(dāng)前位置影子刀具和刀具重疊,當(dāng)?shù)毒咭苿?dòng)時(shí),創(chuàng)建新的影子刀具與刀具一起移動(dòng),原影子刀具留在原位置覆蓋工件,隨著刀具的移動(dòng),不斷留下影子刀具,由于影子刀具與工件重疊,因此得到刀具切削工件的效果。用這種方式實(shí)現(xiàn)刀具切削工件,要用到duplicateMovieClip方法,該方法的格式為:

        參數(shù)為:name:String-已重制的影片剪輯的唯一標(biāo)識(shí)符。

        depth:Number-所復(fù)制的影片剪輯的唯一深度級(jí)別。

        initObject:Object[可選]-(Flash Player 6和更高版本支持。)包含用于填充復(fù)制影片剪輯的屬性的對(duì)象。

        本系統(tǒng)中的使用格式為:

        用此代碼實(shí)現(xiàn)對(duì)影子刀具的復(fù)制。在實(shí)踐中,新的影子刀具影片剪輯創(chuàng)建后會(huì)覆蓋刀具影片剪輯,造成看不見刀具的問題。為了解決這一問題,系統(tǒng)開發(fā)時(shí)采用了swapDepths方法,該方法可以使一個(gè)影片剪輯移到另一個(gè)影片剪輯的前面或后面,因此該方法可以有效解決看不見刀具的問題。此方法的格式為:public swapDepths(target:Object),其中參數(shù)為:target:Object,此參數(shù)可以采用兩種格式之一:①一個(gè)數(shù)字,指定要將影片剪輯放置到的深度級(jí)別;②一個(gè)字符串,指定一個(gè)影片剪輯實(shí)例。本系統(tǒng)中的代碼為:

        第1行交換新影子刀具影片剪輯與刀具影片剪輯的前后順序,第2行交換新影子刀具與舊影子刀具的前后順序,保持刀具影片剪輯在前、后分別跟舊影子刀具影片剪輯和新影子刀具影片剪輯的順序,有效解決了覆蓋問題。需要注意影片剪輯的深度從-16383開始創(chuàng)建,因此新影子刀具創(chuàng)建數(shù)量受到一定限制,但對(duì)于本系統(tǒng)而言已經(jīng)足夠了。刀具切削工件的實(shí)際效果見圖3。

        圖3 虛擬切削效果圖Fig.3 Effect of virtual cutting

        5 刀具軌跡控制虛擬功能的實(shí)現(xiàn)

        刀具要切出工件離不開刀具軌跡控制,因此刀軌控制的虛擬是實(shí)現(xiàn)虛擬數(shù)控車床的核心內(nèi)容。但要完成完整的刀軌控制,需要從CNC程序開始,經(jīng)過數(shù)控加工程序譯碼,插補(bǔ)運(yùn)算等步驟,實(shí)現(xiàn)起來較困難。鑒于本系統(tǒng)的開發(fā)目標(biāo),本系統(tǒng)主要實(shí)現(xiàn)刀具的手動(dòng)操作、直線和圓弧軌跡控制。

        首先介紹刀具的手動(dòng)控制。手動(dòng)控制包括回機(jī)械零點(diǎn)、各軸正反兩個(gè)方向的控制,同時(shí)要考慮刀具移動(dòng)的速度問題。刀具機(jī)械回零操作就是刀具從當(dāng)前位置移動(dòng)到機(jī)床參考點(diǎn),需注意當(dāng)?shù)毒咔邢魍旯ぜ笸说狡鸬饵c(diǎn)再回零,否則會(huì)出現(xiàn)刀具與工件的干涉,刀具回機(jī)械零點(diǎn)實(shí)現(xiàn)較容易,此處不再贅述。手動(dòng)操作的另一方面是沿坐標(biāo)軸移動(dòng)。沿坐標(biāo)軸移動(dòng)又分正向移動(dòng)和負(fù)向移動(dòng),正向移動(dòng)只需控制移動(dòng)的極限位置即可,負(fù)向移動(dòng)則可能切到工件,因此移動(dòng)時(shí)要檢測(cè)刀具是否和工件產(chǎn)生重疊,產(chǎn)生重疊就要啟動(dòng)切削過程。判斷刀具和工件產(chǎn)生重疊可以使用碰撞檢測(cè)方法,前已詳細(xì)介紹。切削過程的實(shí)現(xiàn)前節(jié)已詳細(xì)說明,此不贅述。速度控制可通過改變刀具每次移動(dòng)的步長來改變。刀軌控制可通過控制軌跡的可見性屬性實(shí)現(xiàn)。

        刀具的軌跡控制可使用Line_mc影片剪輯實(shí)現(xiàn)。通過影片剪輯的LineTo方法,可以容易地實(shí)現(xiàn)刀具的直線軌跡和圓弧軌跡。此種情況相當(dāng)于只有直線插補(bǔ)的系統(tǒng),圓弧軌跡通過直線軌跡實(shí)現(xiàn)。實(shí)現(xiàn)的刀具移動(dòng)的典型代碼如:

        本系統(tǒng)采用定義函數(shù)的方法定義G代碼。現(xiàn)以G03逆時(shí)針圓弧插補(bǔ)為例加以說明。定義函數(shù):function g03 (xo:Number,yo:Number,zhongx:Number,zhongy:Number)

        所在的點(diǎn),可根據(jù)插補(bǔ)步長計(jì)算始點(diǎn)和終點(diǎn)間的插補(bǔ)點(diǎn),然后繪制刀具軌跡的繪制和控制刀具的移動(dòng)及切削動(dòng)作。分別定義了G01、G02和G03等幾個(gè)函數(shù)。在輸入幾行G代碼后,通過逐行匹配的方法選擇需要執(zhí)行的函數(shù),逐行執(zhí)行,可得數(shù)控程序?qū)?yīng)的加工軌跡。如輸入以下程序:

        系統(tǒng)執(zhí)行上述程序后,加工出的工件形狀可參看圖3所示。

        6 結(jié)論

        為滿足數(shù)控機(jī)床受訓(xùn)者希望了解虛擬數(shù)控機(jī)床的軟件實(shí)現(xiàn)方法的要求,本文選擇較容易入門的Flash作為開發(fā)平臺(tái),使用ActionScript3.0為編程語言,對(duì)數(shù)控車床的一些基本功能的實(shí)現(xiàn)方法進(jìn)行了較全面的闡述。其中結(jié)合Flash的編程特點(diǎn),實(shí)現(xiàn)刀具對(duì)工件的加工模擬方法,可供有類似需要的項(xiàng)目參考。通過實(shí)踐,受訓(xùn)者在三周左右就可按本文所述方法,開發(fā)一套虛擬數(shù)控車床原型軟件,而且對(duì)數(shù)控車床的工作特點(diǎn)了解更加深入,解決相關(guān)問題的能力有顯著提高。

        [1]莊穎,徐曉慧.基于ActionScript的數(shù)控加工仿真[J].機(jī)電產(chǎn)品開發(fā)與創(chuàng)新,2012,2.

        [2]熊家偉,黃明吉,賈志新.虛擬數(shù)控車床仿真系統(tǒng)的研究與開發(fā)[J].機(jī)械制造與自動(dòng)化,2006,3.

        [3]楊麗娟.基于VB的數(shù)控車削虛擬教學(xué)系統(tǒng)開發(fā)[J].徐州工程學(xué)院學(xué)報(bào)(自然科學(xué)版),2009,2.

        [4]郭德偉,柯建宏.基于Flash ActionScript的機(jī)構(gòu)運(yùn)動(dòng)簡(jiǎn)圖測(cè)繪實(shí)驗(yàn)設(shè)計(jì)與開發(fā)[J].計(jì)算機(jī)與數(shù)字工程,2012,2.

        The Development of Virtual NC Lathe Based on ActionScript 3.0

        LUO Xin-Wen,LI Gui-Rong,YANG Li-Xiang,LV Peng-Xiang
        (Department of Mechanical and Electrical Engineering,Yunnan Agriculture University,Kunming Yunnan 650201,China)

        Virtual appliance software technology in industrial training more widely.With the expansion of the application of CNC machine tools,CNC machine tool applications in training,virtual machine software application has also been considerable development,the emergence of function better business software.But in practice the training of CNC machine tool applications,a user wants to have a better understanding of the virtual machine implementations,and how to work the machine process is the core technology of this type of commercial software.Therefore,this paper choose ActionScript3.0 scripting language as a development tool for the basic functions of the virtual CNC lathe explore virtual realization,CNC lathes and advanced applications to meet the training,trainees want to know the virtual machine functions to achieve the principle of need.

        virtual devices;ActionScript;virtual NC Lathe;software development

        TP319

        Adoi:10.3969/j.issn.1002-6673.2015.05.047

        1002-6673(2015)05-127-04

        2015-06-06

        項(xiàng)目來源:云南省教改項(xiàng)目(云教高〔2012〕95號(hào))

        羅新文(1963-),男,云南新平人,實(shí)驗(yàn)師。主要從事機(jī)械設(shè)計(jì)制造及其自動(dòng)化研究;通信作者:李貴榮(1971-),男,云南嵩明人,講師。主要從事機(jī)械設(shè)計(jì)制造數(shù)字化和自動(dòng)化工程研究。

        猜你喜歡
        卡盤數(shù)控車床刀具
        車床三爪卡盤找正組合工具
        一種加工偏心零件數(shù)控車床
        無織構(gòu)刀具與織構(gòu)刀具銑削性能對(duì)比研究
        用三爪自定心卡盤夾持車削偏心工件
        切削刀具刃口形貌對(duì)刀具使用壽命的影響
        CH5116C/1數(shù)控車床換刀故障剖析
        數(shù)控車床三點(diǎn)六爪式卡盤的研制與應(yīng)用
        多功能刀具
        基于GSK988T的數(shù)控車床控制系統(tǒng)
        大型數(shù)控車床產(chǎn)品人機(jī)交互關(guān)系的探討
        成人自拍小视频在线看| 亚洲成av人在线观看无堂无码 | 亚洲黄色免费网站| 久久中文字幕av第二页| 亚洲精品视频1区2区| 色播亚洲视频在线观看| 国产精品调教| 在线观看免费人成视频国产| 噜噜中文字幕一区二区| 亚洲av无码专区亚洲av伊甸园 | 国产操逼视频| 亚洲av日韩aⅴ无码电影| 青青草视频在线免费观看91| 狠狠综合久久av一区二区蜜桃| 99精品国产一区二区三区a片 | 手机免费日韩中文字幕| 亚洲av男人的天堂一区| 国内精品视频在线播放不卡| 国产成人精品三级麻豆 | 一二三四视频社区在线| 亚洲av不卡电影在线网址最新| 亚洲精品一区二区三区四区| 亚洲色图片区| 亚洲综合av在线在线播放| 国产精品欧美成人片| 青青草成人免费在线观看视频| 肉体裸交137日本大胆摄影| 国产精品不卡无毒在线观看| 亚洲精品国产二区在线观看| 狠狠躁日日躁夜夜躁2022麻豆| 99热久久精里都是精品6| 欧美性xxx久久| 国产一区二区三区最新地址| 玩中年熟妇让你爽视频| 囯产精品无码va一区二区| 国产一区二三区中文字幕| 久久久久88色偷偷| 男女扒开双腿猛进入免费看污| 精品亚洲视频免费观看网站| 欧美黑人巨大videos精品| 亚洲欧洲无码av不卡在线|