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

        ?

        基于PMAC的G代碼連續(xù)下載技術(shù)研究

        2021-05-05 01:58:30侯明鵬
        制造業(yè)自動(dòng)化 2021年4期
        關(guān)鍵詞:指令程序

        侯明鵬,丁 賓

        (1.北京機(jī)科國(guó)創(chuàng)輕量化科學(xué)研究院有限公司,北京 100044;2.北京金隅科技學(xué)校,北京 102403)

        0 引言

        隨著制造業(yè)的發(fā)展,從數(shù)控技術(shù)角度而言,自動(dòng)化、柔性化、集成化、智能化是未來數(shù)控技術(shù)發(fā)展的方向。從生產(chǎn)方式角度而言,生產(chǎn)方式正在從批量化的生產(chǎn)方式向多品種、小批量的生產(chǎn)方式轉(zhuǎn)變,對(duì)數(shù)控系統(tǒng)提出了更高的要求。傳統(tǒng)的封閉式數(shù)控系統(tǒng)很難滿足行業(yè)及技術(shù)的不斷更新及變化,不能滿足市場(chǎng)發(fā)展的需要。因此,開放式數(shù)控系統(tǒng)應(yīng)運(yùn)而生,PMAC作為開放式數(shù)控系統(tǒng)的典型代表,具有功能豐富、可擴(kuò)展、可移植等諸多優(yōu)點(diǎn)得到了廣泛的應(yīng)用[1,2]。在鑄造行業(yè)中,特種加工裝備根據(jù)鑄造特殊工藝,采用“PC+PMAC”的開放式數(shù)控系統(tǒng)架構(gòu),基于PMAC的二次開發(fā),結(jié)合砂型加工工藝,開發(fā)出專用的數(shù)控系統(tǒng)軟件,具有柔性化、集成化、網(wǎng)絡(luò)化、智能化等特點(diǎn),滿足了鑄造砂型的多品種、小批量試制件的生產(chǎn)需要[3]。然而,由于PMAC硬件存儲(chǔ)空間的限制,無法滿足大容量文件的下載,因此,本文提出通過將大文件拆分的方法,解決連續(xù)下載的問題。

        1 基于PMAC的G代碼讀取

        1.1 PMAC程序指令緩沖區(qū)類型

        PMAC可編程多軸運(yùn)動(dòng)控制卡(program multiple axis controller),是美國(guó)DELTA TAU公司的產(chǎn)品,是集運(yùn)動(dòng)軸控制、PLC控制以及數(shù)據(jù)采集于一體的多功能的運(yùn)動(dòng)控制產(chǎn)品[4]。Turbo PMAC包括多種類型緩沖區(qū):224個(gè)運(yùn)動(dòng)程序緩沖區(qū)(prog)、16個(gè)旋轉(zhuǎn)運(yùn)動(dòng)程序緩沖區(qū)(rot)、16個(gè)正向運(yùn)動(dòng)學(xué)子程序緩沖區(qū)(forward)、16個(gè)逆向運(yùn)動(dòng)學(xué)子程序緩沖區(qū)(inverse)和32個(gè)未編譯的PLC程序緩沖區(qū)(plc)。旋轉(zhuǎn)運(yùn)動(dòng)程序緩沖區(qū)多用于機(jī)床G代碼加工程序的執(zhí)行,該緩沖區(qū)為即將執(zhí)行的命令行提供存儲(chǔ)區(qū)域,PMAC從該緩沖區(qū)讀取并執(zhí)行指令,在執(zhí)行運(yùn)動(dòng)程序的同時(shí)打開緩沖區(qū),用于從主機(jī)輸入程序指令。

        1.2 G代碼的讀取

        PMAC卡允許執(zhí)行機(jī)床類型的G代碼程序,它將把G、M、T和D代碼作為子程序調(diào)用[5]。G代碼指令對(duì)應(yīng)PMAC中“PROG 1000”子程序,M代碼指令對(duì)應(yīng)PMAC中“PROG 1001”子程序,字母“G”后面的數(shù)值對(duì)應(yīng)子程序中數(shù)值“N”程序段。例如:Gxx被解釋成PROG 1000的標(biāo)號(hào)為Nxx000的子程序;Mxx被解釋成PROG 1001的標(biāo)號(hào)為Nxx000的子程序。PMAC在相應(yīng)的子程序中,將G代碼指令翻譯成PMAC指令,用戶如果要定制G代碼,可以修改對(duì)應(yīng)的子程序。部分G代碼指令如表1所示。

        2 G代碼文件拆分、連續(xù)下載方法

        2.1 旋轉(zhuǎn)運(yùn)動(dòng)程序緩沖區(qū)容量限制問題

        由于PMAC用于緩沖區(qū)的存儲(chǔ)空間非常有限,用戶程序存儲(chǔ)容量大約為300KB,單個(gè)運(yùn)動(dòng)程序緩沖區(qū)最大容量只有50KB左右[6]。因此,一次下載的程序行數(shù)量不能超過存儲(chǔ)容量。要解決這個(gè)問題就需要利用旋轉(zhuǎn)運(yùn)動(dòng)程序緩沖區(qū),它允許接收運(yùn)動(dòng)程序指令,每個(gè)程序指令被添加到指令列表的末尾,并覆蓋掉已執(zhí)行完的程序行,這樣循環(huán)讀取下載所需的指令行。常用的方式是在上位機(jī)軟件設(shè)計(jì)中,循環(huán)讀取固定行數(shù)(例如:10000行)下載到定義好的緩沖區(qū)中,設(shè)置定時(shí)器發(fā)送“PR”指令報(bào)告循環(huán)程序緩沖區(qū)中還將要被計(jì)算的程序行數(shù),根據(jù)已執(zhí)行行數(shù)判斷是否需要下載新的程序行。流程圖如圖1所示。

        表1 G代碼指令轉(zhuǎn)換表

        圖1 循環(huán)讀指令行流程圖

        這種方式雖然可以避免內(nèi)存空間不夠?qū)е碌南螺d失敗,但是“PR”指令需要實(shí)時(shí)訪問并返回結(jié)果,指令讀取涉及文件、字符串操作,占用了大量的內(nèi)存,增加了軟件的運(yùn)行負(fù)擔(dān)導(dǎo)致不穩(wěn)定。鑒于以上較大容量G代碼程序下載存在的問題,本文提出了將大容量G代碼程序文件等大小進(jìn)行分割,實(shí)現(xiàn)文件的連續(xù)下載的新方法。

        2.2 G代碼程序文件分割,連續(xù)下載技術(shù)實(shí)現(xiàn)

        為解決上述存在的問題,提出了一種新方法,該方法將軟件功能劃分為實(shí)時(shí)任務(wù)和非實(shí)時(shí)任務(wù),分為兩步完成。第一步,非實(shí)時(shí)任務(wù)將G代碼程序文件拆分成若干小文件,每個(gè)小文件大小在50KB左右,滿足旋轉(zhuǎn)運(yùn)動(dòng)程序緩沖區(qū)的容量要求,不會(huì)出現(xiàn)因文件較大超出內(nèi)存限制而導(dǎo)致下載失敗的錯(cuò)誤。在拆分過程中,在每個(gè)文件的頭部加上“CLOSE OPEN ROT”,關(guān)閉上一個(gè)旋轉(zhuǎn)緩沖區(qū),打開一個(gè)新的旋轉(zhuǎn)緩沖區(qū),在每行指令末尾加上“F(P500)M0==i”其中“P500”變量是速度設(shè)置變量,通過設(shè)置“P500”的值可以實(shí)時(shí)調(diào)節(jié)加工進(jìn)給速度,“i”為行號(hào),通過“M0”變量可以實(shí)時(shí)顯示當(dāng)前正在執(zhí)行的行號(hào)。當(dāng)寫入最后一個(gè)文件時(shí),寫入“M03 M05”程序尾,關(guān)斷氣源,停止主軸操作。流程圖如圖2所示。

        第二步,在上位機(jī)軟件中設(shè)置定時(shí)器,調(diào)用timer1_Tick(object sender,EventArgs e)函數(shù),實(shí)時(shí)掃描讀取“M0”的值,當(dāng)“M0”的值在當(dāng)前文件的第600行和700行之間時(shí),開始下載下一個(gè)文件,調(diào)用PMAC.Download(pmacNumber,fileDirectory,true,true,true,true,out downloadSuccess)函數(shù),通過下載標(biāo)志位(bool b)確保文件下載函數(shù)只執(zhí)行一次,如此循環(huán),直至全部下載執(zhí)行完畢。流程圖如圖3所示。

        圖2 G代碼文件拆分流程圖

        圖3 文件連續(xù)下載流程圖

        2.3 PC端上位機(jī)軟件開發(fā)

        PC端上位機(jī)軟件開發(fā)在Windows環(huán)境下采用Visual Studio 2013編程實(shí)現(xiàn),將G代碼文件按照每1000行為一個(gè)小文件拆分,保存在G代碼文件所在的根目錄下,同時(shí)利用“ListBox1”控件顯示拆分后的文件目錄以及每個(gè)文件的指令行。此操作均在上位機(jī)PC端運(yùn)行,減輕了控制卡的運(yùn)算負(fù)擔(dān)。點(diǎn)擊“程序段執(zhí)行”后,系統(tǒng)發(fā)送“&1R”指令給PMAC控制卡,執(zhí)行G代碼,同時(shí)讀取“M0”的值并賦值給“ListBox2”控件當(dāng)前索引并高亮顯示,“M0”表示系統(tǒng)正在執(zhí)行的行號(hào)。此外,該下載方式可以選擇在任意程序段開始執(zhí)行程序,當(dāng)程序中斷時(shí),可以根據(jù)系統(tǒng)記錄的文件號(hào)及行號(hào)自動(dòng)在中斷處繼續(xù)加工,還可以顯示文件總數(shù)、程序行數(shù)、當(dāng)前文件、執(zhí)行進(jìn)度、速度等狀態(tài)信息,方便用戶查看。如圖4所示。

        圖4 連續(xù)下載軟件界面

        3 結(jié)語(yǔ)

        針對(duì)特種設(shè)備的數(shù)控系統(tǒng)二次開發(fā)是開放式數(shù)控系統(tǒng)的最顯著的優(yōu)勢(shì),隨著PMAC的應(yīng)用越來越廣泛,利用此方法可以很好地解決G代碼“大”文件與PMAC“小”內(nèi)存之間的矛盾,實(shí)現(xiàn)了G代碼文件的連續(xù)、有序、穩(wěn)定運(yùn)行,大大提高生產(chǎn)效率。同時(shí)結(jié)合不同領(lǐng)域的工藝特點(diǎn),擴(kuò)展軟件功能滿足個(gè)性化生產(chǎn)的需要。

        猜你喜歡
        指令程序
        聽我指令:大催眠術(shù)
        試論我國(guó)未決羈押程序的立法完善
        ARINC661顯控指令快速驗(yàn)證方法
        LED照明產(chǎn)品歐盟ErP指令要求解讀
        失能的信仰——走向衰亡的民事訴訟程序
        “程序猿”的生活什么樣
        英國(guó)與歐盟正式啟動(dòng)“離婚”程序程序
        殺毒軟件中指令虛擬機(jī)的脆弱性分析
        創(chuàng)衛(wèi)暗訪程序有待改進(jìn)
        一種基于滑窗的余度指令判別算法
        久久和欧洲码一码二码三码| 人妻少妇久久久久久97人妻| 久久综合狠狠综合久久综合88| 亚洲av综合永久无码精品天堂| 国产综合久久久久| 亚洲人在线观看| 国产亚洲无码1024| 少妇激情高潮视频网站| 一级r片内射视频播放免费| 欧美多人片高潮野外做片黑人 | 国产精品免费看久久久8| 国产精品美女一区二区三区| 丰满少妇人妻无码| 亚洲av无码成人网站www| 免费无码黄网站在线观看| 国内精品久久人妻互换| 中文字幕在线乱码亚洲| 欧美亚洲精品suv| 成人无码免费一区二区三区| 欧美成人免费高清视频| 91精品国产91久久久无码色戒| 无码乱肉视频免费大全合集| 亚洲一区二区三区无码久久| 最近免费中文字幕| 亚洲精品国产av天美传媒| 免费无码又爽又刺激网站| 亚洲男女免费视频| 激情视频在线播放一区二区三区| 久久亚洲精品国产av| 97久人人做人人妻人人玩精品| 亚洲免费网站观看视频| 精品国产三级a在线观看| 91精品国产综合久久青草| 男女啦啦啦视频在线观看| 亚洲精品久久区二区三区蜜桃臀| 日本中国内射bbxx| 国产精品 高清 尿 小便 嘘嘘| 国产av综合一区二区三区最新| 亚洲一区二区三区一区| 开心久久综合婷婷九月| 久久精品国产亚洲7777|