跳轉到

播放程式 (Playing a Program)

有兩個命令能把程式放進任務,兩者的差別在於程式放在哪裡,而不在於它做什麼:程式檔案參照磁碟上的一個檔案,NC 程式碼則把文字帶在專案裡面。

它們在哪裡

執行頁控制樹的第一個根節點任務。兩者都在新增命令——任務列或清單列上的 +——的程式類別裡,放置的方式也和其他任何命令一樣——見建立任務。

該用哪一個

  • 程式檔案——程式仍是一個檔案,專案存的是它的路徑。編輯那個檔案,下次播放的內容就跟著改變,所以 CAM 系統的輸出該放在這裡。
  • NC 程式碼——程式文字直接寫進專案本身。它不參照任何外部的東西,所以專案帶到哪裡都是完整的。用它來放一段簡短的探測程式、一段手寫的測試,或任何你想放在專案裡、而不是放在專案旁邊的東西。

它們不一定交給同一個讀取器。NC 程式碼一律是品牌 NC 文字。程式檔案可播放品牌 NC、NX-CL 或 CSV,用哪一種則是這個命令上的一項設定。

程式檔案

把它指向一支程式

鍵入路徑,或按瀏覽。兩種形式都接受:相對於專案資料夾的路徑——瀏覽產生的就是這種——或伺服器上的絕對路徑。

「瀏覽」會在專案資料夾上打開伺服器的檔案總管,而且不提供其他根目錄,所以在那裡挑選的任何東西,本來就是相對於專案的路徑。放在專案資料夾之外的程式,則改為在欄位裡鍵入它的絕對路徑來指定。

這個對話框分四組篩選,而不是只有一組:

群組 副檔名
NC 檔案 .nc、.anc、.tap、.eia、.mpf、.spf、.cnc、.ptp、.h——常見的各廠牌副檔名,而不是全部
CL 檔案 .cl、.cls、.clsf
CSV 檔案 .csv
所有檔案 一切檔案,也是第一組沒有列出的廠牌副檔名的後備

挑選器一次可以選不只一個檔案。第一個放到你打開它的那個命令上;其後每一個挑選的檔案,都會成為一個新的程式檔案命令,依你挑選的順序緊接在它之後,放在同一個清單裡——在巢狀的清單裡也一樣。這就是把一整個資料夾的 CAM 輸出帶進任務的快捷方式。

選擇讀取器

播放為決定由哪個讀取器播放這個檔案:

選項 由什麼播放
自動(依副檔名) 依副檔名挑選:.cl、.cls 與 .clsf 以 CL 播放,.csv 以 CSV 播放,其他所有副檔名都以品牌 NC 播放
品牌 NC 控制器廠牌自己的讀取器
CL (CLSF) NX-CL 讀取器
CSV CSV 讀取器

「自動」是預設值,而且幾乎總是對的。當副檔名會把檔案送到錯誤的讀取器時——比如一個存成 .txt 的 CL 檔案——就固定為其他三者之一。

對品牌 NC 而言,哪一個廠牌不歸這個命令管:那是專案上設定的控制器,而它的各個字詞代表什麼,則在 NC 方言。

讀懂橫幅

欄位裡一有路徑,它下方的橫幅就會回報伺服器看得到什麼:

  • 找到——綠色橫幅,帶著檔案的大小、修改時間與行數,以及一個預覽按鈕,以唯讀方式顯示前 100 行。
  • 找不到——橘色橫幅,寫明找不到,而且沒有「預覽」按鈕。

路徑會隨著你打字儲存;橫幅則在你離開欄位或按 Enter 時才重新整理。橘色橫幅值得相信:它表示這個路徑在將要播放它的那台機器上解析不到,而那台機器不一定是你正在打字的這台。

範例任務清單 [Roughing] 裡的第一個程式檔案,路由 /execution?tree=execution/mission/2/0,在執行標頭下方的樹裡被選取,顯露出它的移動、產生副本與刪除按鈕。路徑欄位放著一個相對於專案的路徑,播放為讀作自動(依副檔名),下方的綠色橫幅回報檔案的大小、修改時間與行數,旁邊是預覽。樹的那一列與面板的標題都讀作 程式檔案,後面接著方括號裡的路徑——有好幾支程式的任務,就是這樣保持好讀的。

執行頁上的控制樹:樹上方是六個傳輸按鈕與綠色的「就緒」徽章;「任務」根節點列的右緣帶著一個 +,其下是「加工解析度 1 mm」、「碰撞偵測 開」,接著是展開、帶著自己的 + 的「清單 Roughing」,底下是一列被選取、顯露出上移、下移、產生副本與刪除按鈕的「程式檔案 NC/circle.ptp」,以及一列「程式檔案 NC/drill_slot.ptp」;再來是收合、帶著 + 的「清單 Finishing」、「程式檔案 NC/circle.ptp」、「NC程式碼 Inline finishing pass」、一列反灰且未勾選的「程式檔案 NC/slide-test-resolution-script.ptp」、展開後露出一列收合且已勾選的「啟用優化」的「NC優化設定」,以及一列反灰、未勾選的「執行後處理」,它展開後露出「步驟檔案輸出」、「取樣檔案輸出」、已勾選的「優化輸出」、「CL → NC 回寫」,以及一列在樹的底緣被截斷的列,每一個命令列都帶著一個核取方塊與一個拖曳把手;下方的面板標題為「任務 / 清單 [Roughing] / 程式檔案 [NC/circle.ptp]」,放著讀作 NC/circle.ptp、旁邊有「瀏覽」按鈕的「程式檔案路徑」欄位,讀作「自動(依副檔名)」的「播放為」下拉選單,以及一條寫著 298 B、修改於 2024-09-05 10:38:37、21 行,並帶著「預覽」按鈕的綠色橫幅

NC 程式碼

為它命名

標題是選填的,意思是這個欄位可以清空,但它不是裝飾:它是執行回報時所用的程式名稱,也是這個命令在控制樹上那一列放在方括號裡的細節。新的命令一建立,欄位裡就已經是 NC Code;把它改名,日誌與那一列都會跟著改。

撰寫它

編輯器是一個單純的等寬字區域——沒有行號,也沒有語法上色,因為這是 NC 文字,而不是一支以應用程式會在你打字時就剖析的語言所寫的程式。行數與字元數位於它下方,隨你打字而更新。

有兩個按鈕作用於整段文字,文字為空時兩者都停用:

  • 移除空白行——修剪每一行,並刪掉修剪後變成空白的行。
  • 清除——先詢問,再清空文字。

打字的內容會在你停下來後不久自行儲存;這兩個按鈕則立刻儲存。

打字時不做任何檢查。文字完全照寫下的樣子儲存,其中的錯誤要等任務播放它時才會浮現——在 NC 診斷裡,見出了問題時。

範例任務裡那段簡短的手寫加工,路由 /execution?tree=execution/mission/5,在樹裡以 NC程式碼 [Inline finishing pass] 被選取。編輯器上方的標題就是那一列放在方括號裡的東西,編輯器裝著整支程式,它收尾的 % 在底緣被截斷;計數與兩個按鈕位於它下方,超出這個畫面的底部。

執行頁上的控制樹:樹上方是六個傳輸按鈕與綠色的「就緒」徽章;「任務」根節點列的右緣帶著一個 +,「清單 Roughing」與收合的「清單 Finishing」各自帶著自己的 +,「NC程式碼 Inline finishing pass」那一列被選取,顯露出它的上移、下移、產生副本與刪除按鈕,「NC優化設定」展開後露出一列收合且已勾選的「啟用優化」,反灰的「執行後處理」展開後露出它反灰的各個輸出列,直到一列在樹的底緣被截斷,每一個命令列都帶著一個核取方塊與一個拖曳把手;下方的面板標題為「任務 / NC程式碼 [Inline finishing pass]」,放著讀作 Inline finishing pass 的「標題(選填)」欄位,其下是一個等寬字的「NC 程式碼」文字區,其中的程式從一行 % 開始,經 N0010 到 N0170 M30,收尾的 % 在底緣被截斷,文字區一直延伸到面板的底緣

播放之後

工作階段讀過的每一支程式,都會出現在程式分支底下,帶著走過它的各趟次,以及執行在每一行上留下的標記。在那裡看到的,是一行實際上發生了什麼,而不是任務要求了什麼——見程式分支。

延伸閱讀

  • 執行仿真 — 執行一件工作的其餘部分
  • 建立任務 — 這兩個命令所放進的那份清單
  • 程式分支 — 執行在每一行上記錄了什麼
  • 其他命令 — 其餘各種命令,包括不用 NC 就能驅動工作階段的腳本
  • NcFileCommand 面板(英文,未鏡像) — 程式檔案背後的元件:它的欄位、它的挑選器,以及橫幅背後的端點
  • 能接續的任務 — 這兩個命令所處的配置,以及把它們前後包夾的記錄
  • NcCodeCommand 面板(英文,未鏡像) — NC 程式碼背後的元件:它的編輯器、它的統計列,以及它如何儲存