
六級士官
UID9505684

U幣6
G幣899
技術0
主題3
精華0
閱讀權限70
注冊時間2021-10-18
最后登錄2022-5-1
在線時間93 小時

六級士官

|
如何在后處理中輸出鉆頭角度,方便把程序給操作人員/調機師傅更直觀的了解刀具,下面跟我一起來
首先要了解在哪里可以輸出角度信息,當我們在創建鉆頭刀具時,會有一個設置角度的數值,這個就是我們要在后處理輸出的值
在MC軟件中編程刀路屬于前置,及先把刀路生成NCI,在通過后處理轉換成機床能識別的數控代碼這里就屬于后置,我這里就先舉個例子
先創建一步有倒角的刀路,我這里用倒角刀舉例,可以看見倒角角度為45度,然后進行NCI輸出,注意是NCI輸出,不是后處理輸出,
在NCI中20001/20004/20006/20007/20020都是與刀具有關的信息,這么多數值,那個是我們要找的呢??
往下面翻,可以看到20004中有一個數值為45,這個數值其實就是角度,你也可以用鉆頭來試試,會出現118,
那么問題來了,這么把這個值在后處理中輸出出來??
換個思路,為什么我們在前置中設置的轉速/進給能被后處理識別并輸出???因為后處理中有變量讀取這個數值,所以就可以輸出來,
那么問題來了,怎么去使用變量???來讓我們可以控制想要在后處理中輸出的信息。
變量又分為系統變量(認可的變量),以及我們設置的變量(不能與系統變量相同且重復),在mastercam post語言中簡稱MP語言,
當某個值后面有帶‘’$‘’(美元符號)這個就屬于系統變量,不可修改,沒有屬于人工變量(我們自己設置的變量,想要輸出某個數值)
通過以上,可以得出結論:當我們想要輸出某個值時,我們可以設置一個變量,以此來輸出想要的數值。
我相信你們大多數人都會在網絡上下載別人的后處理來自己使用,有的后處理特別牛,還有中文注釋,有開關等等,通常有開關一類的,比如
liangzai :1 #靚仔輸出
#0=靚女
#1=靚仔
可以看到這個變量開關后面并沒有帶$,這個就屬于人工設置的變量,來輸出某個值。在比如
mi2$=0 #絕對/增量代碼輸出
#0 = 絕對
#1 = 增量
這個就屬于系統變量,后處理是一個復雜,且不可出現錯誤的東西,我們在日常工作中不是特別需要,一般不建議去修改后處理,
以防出現程序上機撞機,撞工件。
廢話說到這
(沒啥思路了,隨便看看,我表達能力不是很好)
已知想要輸出某個值,前提得先建立變量,在由變量去控制輸出值
已知變量為20004,位置屬于第8位數值(在20004中,45在從左往右數第8位)
建立變量
#Common format statements 后處理找到這一欄
fs2 25 0 2 1 3 #輸出刀具角度信息
#——————————————————解釋
fs2 25 變量為25號
0 2 英制輸出
1 3 公制輸出
#——————————————————
#Move comment (pound) to output colon with program numbers 后處理找到這一欄
fmt "A" 25 jiaodu #刀具角度
#——————————————————解釋
當某個地方出現 jiaodu 這個變量,就讀取上面第25號變量來輸出 jiaodu 的變量 A,
jiaodu 這個變量不能重復,會報警
#——————————————————
在搜索 20007,注意下面有兩個20007,都在下面添加,共計2個
在下面添加
if prmcode$ = 20004, jiaodu = rparsngl(sparameter$, 8)
#——————————————————解釋
如果代碼=20004,jiaodu(讀取上面角度變量)=rparsngl(參數$, 8號) jiaodu(A)=20004的第八個號碼數值,及A45
意思就是大概意思
ptooltable 后處理找到這一欄,刀具表
在pstrtool(刀具名稱),后面添加 jiaodu,
舉例:
sopen_prn, *t$, sdelimiter, pstrtool , jiaodu ,sdelimiter, *tlngno$,
[if comp_type > 0 & comp_type < 4, sdelimiter, *tloffno$, sdelimiter, *scomp_type, sdelimiter, *tldia$],
[if xy_stock <> 0 | z_stock <> 0, sdelimiter, *xy_stock, sdelimiter, *z_stock],
sclose_prn, e$
注意逗號別少了,會報警
后處理出來及
(T1 | 10倒角刀A45 | H1)
這個時候就可以輸出刀具角度信息了,但是如果你使用平底刀,還是會輸出A180度,這不是扯淡嗎。!
這個時候我們可以給他一個判斷
[if jiaodu < 180,*jiaodu],
假如角度小于180,就強制輸出角度,舉例
sopen_prn, *t$, sdelimiter, pstrtool , [if jiaodu < 180,*jiaodu],sdelimiter, *tlngno$,
[if comp_type > 0 & comp_type < 4, sdelimiter, *tloffno$, sdelimiter, *scomp_type, sdelimiter, *tldia$],
[if xy_stock <> 0 | z_stock <> 0, sdelimiter, *xy_stock, sdelimiter, *z_stock],
sclose_prn, e$
舉例
(T1 | 10倒角刀A45 | H1)
(T2 | 10平底刀 | H2)
不知道大家學會了沒有,思路就是這個思路,學會了吱一聲,別白嫖
還可以添加圓鼻刀的R值,比如12圓鼻刀R2
|
-
1.png
(51.7 KB, 下載次數: 2)
-
2.png
(15.43 KB, 下載次數: 1)
輸出NCI
-
3.png
(35.27 KB, 下載次數: 1)
可以看到這個數值為90
評分
-
查看全部評分
版權聲明 |
|
本人聲明此帖為本人原創帖,未經允許,不得轉載!
|
|