一位企業技術主管遇到一個非常棘手的疑難雜症,他幹了20年的機械加工,面對此問題沒有頭緒,完全不知道如何解決。
他是什麼問題呢?
要在硬鋁材質表面平面度不高的長型材上連續銑36個深度公差較小的盲孔。
因為鋁板的面積比較大,平面度只能保證在0。3以內,但是有36處盲孔的深度要求比較嚴格,公差只有+0。03/-0。03
如何能保證盲孔深度+0。03/-0。03的公差呢?
他手下管了幾個工藝員給他出點子:讓車間的工人,每一件工件都找正,用百分百手工測量36個打孔位置,程式設計時候建立36個座標系……
這麼做,一兩件是OK的,超過第三件,幹活太折磨人,車間工人可能就會幹崩潰……。
問我有什麼好的辦法嗎?
於是,我就花費了1個多小時,針對此問題做了方案,幫忙寫了2個宏程式,就實現了程式的“智慧化”。
為什麼能夠這麼快給出解決方案編寫出程式呢?
1、
有用宏程式程式設計
2
、有用框架程式設計方法
宏程式的兩大主要用途:
1、產品加工
2、自動化
要實現數控程式“智慧化”就離不開宏程式程式設計。
而你要快速編寫宏程式,你必須心中要有框架。
我幫他編寫的宏程式是按照以下框架寫的:
1、設變數
2、演算法
然後調取宏基礎的知識,按照模板快速填空式編寫程式就可以了。
這兩步超級的幹,但是涉及了很多知識點和演算法的邏輯推理。
這裡分享幾個部分知識點:
比如,第一步中的設變數的三大類:
第一類:個人變數,有#1~#33共33個
第二類:公共變數,又分了2個小類
1,)易失值公共變數,有#100~#199共100個
2,)久存值公共變數,有#500~#999共500個
第三類:系統變數,有#1000~#9999,及更多。
這麼多變數,怎麼用呢?
在這裡我舉個例子,體會不同種類變數用途。
一,公共變數的獨特用法
比如,曲線、曲面等型別工件程式設計中,隱藏著一個鮮為人知的“漏洞”,這樣的程式加工出的工件有2大特徵:
1,加工效率低
2,曲面表面不光滑
造成原因:
任何零件都可以看成由很多個“點位資料”擬合成的輪廓。若這些點位的資料處理非常多,加工出來的零件輪廓就越光滑。
但是,當曲線離散段太多時候,就會來不及運算,在經濟型數控機床上表現的尤為突出。
當來不急運算,系統不報警而是
等待
,
等算出結果後再切削下一段
。
這樣程式設計的後果是:
1,對於車削類工件來說,加工時間長,刀具幹磨損快。
2,對於銑削類工件來說,加工過程有震動,工件表面粗糙。
解決辦法:
用上第二類公共變數中的久存值公共變數#500~#999
正常情況下,我們編寫的數控程式,機床是一邊執行一邊預讀“資料”
更高效的程式
,
我們可以把一個程式分為兩大部分
,一部分用於“資料”的計算,(儲存在久存值公共變數中)另外一個部分負責加工,這樣就打破了“邊幹邊算”,採用“先算後幹”。
這種獨特的程式設計手法,核心點就要用到公共變數,在我的框架程式設計方法中有講,值得每一位專業高手學習,然後讓自己的技能有一個翻天覆地的提升!
二,系統變數的特定用法
想要數控程式的“智慧化”就離不開系統變數。
先分享一個用到系統變數的例子,部分程式如下:
T01
M06
G90G54X0Y0
G43H#4120Z100
…
M01
我在上面程式中引用了#4120T程式碼變數:
當執行G43H#4120Z100之後,機床就識別了H01補償號
若機床抓取T02號刀,還是如下程式:
T02
M06
G90G54X0Y0
G43H#4120Z100
…
M01
執行G43H#4120Z100之後,等同於G43H02Z100
……
這就是一個自動識別當前主軸刀號變數的小例子,可以用在很多地方,比如有些學員喜歡用於
自動對刀宏程式程式設計中
……。
三、實操步驟
好,有了上面的預熱和你已學到的宏程式知識,如如何解決文章開頭提到的問題呢?
如何保證平面度不高的長型材上連續銑36個深度公差較小的盲孔尺寸呢?
三個步驟:
1,
用公共變數儲存資料
編一個自動探測程式,讓測第1~第36個探測點得到的值以次存進#601~#636變數內。這也就是上面提到的,公共變數的獨特用法,在此列中有2點需要注意:
1,)設第1個探測點作為基準即零點
2,)每孔4點(X向和Y向各2點),以這4個深度值的平均數作為實際資料
2,
編寫銑36個孔的宏程式
例如:
%
#2=1(#2代表孔序號,此賦初始值為1,代表加工第1個孔)
N7(銑孔宏程式)
……
省略號為銑孔程式
……
#2=#2+1; (孔序號增加1)
IF [#2 LE36] GOTO 07;(如果沒有銑夠36個孔就回上去繼續銑)
%
設定一個變數#2代表孔序號,讓其做自增運算,然後用IF語句設定條件:如果還沒 銑夠36個孔就回上去繼續銑。
3,
用上系統變數
具體要用到刀具長度磨耗變數(比如#2001)
大家在幹活過程中若工件出現尺寸不合格,大多數人會透過刀補磨耗來調整尺寸,即:暫停機床——-人工手工輸入刀補磨耗量。
而程式設計中用到刀具磨耗系統變數,在執行宏程式的過程中就實現自動補償。
以上都是純乾貨,且就分享這麼多,大家感受一下宏程式設計的魅力,希望大家能夠深入學習和思考,活學活用!
接下來,我會把上面步驟的每一個環節具體化從而形成:
解決方案式的文件
提供給大家,即:
1,有CAD圖
2,有程式
3,有每句註解
它是車間技術員、程式設計工程師做夢都想要的…。。學會這絕招,他們不會因沒有過硬賺錢技能而犯愁了。
哪些人可以獲得我的解決方案式程式設計講解的文件呢?
本文價值巨大,最少看10遍以上,你才能吸收其中的價值,價值自然,自願打賞