201108010 六、發明說明: 【發明所屬之技術領域】 本創作係有關一種數值控制系統之路徑執跡點計算裝 置及其計算方法,尤指一種具有一仔列緩衝器之一數值控 制系統之路徑執跡點計算裝置及其計算方法。 【先前技術】 #運動控制是精密加工機械上關鍵的核心技術,其應用 蛇圍包涵了從定位控制或速度控制的產業機械到高精密度 的各類電腦數值控制工具機(CNC腿chine t〇〇ls)。運動控制 系統的建立是必須整合各種軟硬體的技術而成的,對於使 用者而言’除了對系統的基本功能要求外,成本高低、系 統穩定性、使用頻率、保固服務、與其他軟硬體的擴充性 和相谷性…等等,也都是評估運動控制系統的因素。另外 在實際運動控制系統的考量上不僅要控制各軸位置,同時 也要控制各軸的速度。因此,當各軸位置或速度控制不好 將直接衫響機械定位的不精準而使產品的良率下降。 電腦數值控制CNC(Computer Numerical Control)利用電腦籲 辅助製造(Computer-aided manufacturing, CAM)軟體產生數值 控制的G-Code檔’再將該G-Code檔程式傳入CNC控制系統 ’由電腦透過數值訊號,控制機器的自動位移工作,達成 物件之切削加工作業。 數值控制工具機就是在工具機裝上一套電腦數值控制 糸統(computerized numerical control system),藉著輸入數 值資料到電腦數值控制系統,電腦數值控制系統經計算後 4 201108010 發出:? ’對工具機進行主軸運轉、刀具更換、刀具移動 、冷部劑開關....等加以控制,以完成程式設計者所預期 的動作。 。美國專利US 6, 772,G2G B2係揭露-種利用移動式遽波 器(moving futer)和延遲器來建立回算器,如此,可獲得 較平滑之同相位的位置、速度和加速度命令,並且對饲服 延遲現象會有很大改善。由於該方法是採用二階段遽波器 籲架構1現控制迴路的命令重建,並且’在遽波器的設計 上必/員同時考慮機台的特性。惟,雖然增加了命令回算器 在设計上的複雜程度,卻也降低此一方法的實用性,使得. 該方法並無法保證更高次曲線的連續性。 # #因此,如何設計出一種數值控制系統之路徑執跡點計 算裝置及其計算方法,能以降低串列通訊之資料量,並解 決執跡誤差產生的問題,乃為本案創作人所欲行克服並加 以解決的一大課題。 • 【發明内容】 為了解決上述問題,本發明係提供一種數值控制系統 之路徑執跡點計算裝置,係應用於一電腦數值控制工具機 之加工路徑轨跡點計算,以電腦輔助製造(CAM)軟體產生 之一 G-code檔以定義該加工路徑執跡。該路徑轨跡點計算 裝置係包含一上位控制器及一伺服驅動器。 該上位控制器係包含一解譯器及一第一 鬲速串列通5R介面。該解譯器(interpreter)係讀取該 G-code檔,並解譯該G-code檔以產生複數個執行指令 201108010 (executable instructions)。該第一高速串列通訊介面係連 接該解譯器’甩以提供該些執行指令傳送之通訊介面。 <該伺服驅動器係包含一第二高逮串列通訊介面、一佇 歹J緩衝器(queue buffer)及一路徑執跡點計算器。兮當一其 速:列通訊介面係連接該上位控制器之該第二高速:串歹:通 ,介面’用以電性連接該飼服驅動器與該上位控制器,並 ^供4些執指令接收之通訊介面。該仔列緩衝器(q_
Uffer〇係連接該第二高速串列通訊介面’用以提供儲存空 =以儲存該上位控制器傳送至該词服驅動器之該些執行指钃 :該路徑軌跡點計算器係連接該佇列緩衝器,用以接收 並計算該仔列緩衝器所傳送出之該些執行指令,以產生複 數個路徑執跡點。 為了解決上述問題,本發明係提供一種數 =路純跡料算方法,該數值㈣純係制於一= 1裔提供複數個執行指令至一祠服驅動器,用以計算一 =數值控制工具機之加卫路徑軌跡。該路徑軌跡點計算 ”步驟係包含:首先,讀取一 G_c〇de檔;然後,透過· 序澤=解譯該G—code檔以產生該些執行指令;然後,依 令;=些執打指^至一仔列緩衝器,以儲存該些執行指 依序傳送該些執行指令至一路徑軌跡點計算器 為透過該路徑轨跡點計算器直接計算該 為複數個路徑軌跡點。 仃和7 藉此’該數值控制系統之路㈣跡點計算裝置及其叶 异方法,可大幅降低該上位控制器傳給該伺服驅動器之資 6 201108010 料篁,而不用提高串列通訊速度。並且,可直接以基本執 行指令(單節指令)來計算路徑軌跡,而不會有產生執跡 誤差的問題,同時能達成路徑軌跡位置、角速度及角加速 度的計算與位置迴路同步計算,大幅提升系統的追隨性能 。並且,若執行指令傳送錯誤,即可要求重傳,增加系 之穩健度。 ” 為了能更進一步瞭解本發明為達成預定目的所採取之 籲技術、手段及功效,請參閱以下有關本發明之詳細說明與 附圖,相信本發明之目的、特徵與特點,當可由此得一深 入且具體之瞭解,然而所附圖式僅提供參考與說明用,並 非用來對本發明加以限制者。 【實施方式】 有關本創作之技術内容及詳細說明,配合圖式說明如 下: #請參見第一圖,係本發明數值控制系統之路徑執跡點 鲁汁算裝置之-上位控制器與一祠服驅動器之通訊示意圖。 该數值控制系統之該路徑執跡點計算裝置,係應用於一電 月自數值控制工具機之加工路徑軌跡點計算,以電腦輔助製 ie (CAM)軟體產生之一 G_c〇de檔以定義該加工路徑轨跡。 δ亥路徑軌跡點計算裝置係主要包含一上位控制器10及一伺 服驅動器20。該上位控制器1〇係包含一解譯器(interpreter )102及-第-高速串列通訊介面1()4。此外,該伺服驅動 益20係包含一第二高速串列通訊介面2〇2 、一佇列緩衝器 (queue buffer)204及一路徑軌跡點計算器2〇6。 201108010 、°亥解h 102係讀取該G-code樓,並解譯該“〇de檔 用:產生複數個執行指令(找⑽碰e i姐咖如阳)。該第 冋速串列通訊介面1〇4係連接該解譯器⑽,用以提供 該些執行指令傳送之通訊介面。該第二高速串列通訊介面 系連接。亥上位控制器1〇之該第一高速串列通訊介面 、104θ,用以電性連接賴服驅動㈣與該上位控制器10, 並提供該些執行指令接收之通訊介面。該仔列緩衝器 (Queue buffer)2〇4係連接該第二高速串列通訊介面胍, 用=提供儲存空間以儲存該上位控制器_送至該飼服驅 動裔20之该些執行指令。該路徑軌跡點計算器細係連接 該仔列緩衝器m ’用以接收並計算該仔列緩衝器2〇4所 傳送出之該些執行指令,以產生複數個路徑執跡點。 該G-code檔之内容係為加工圖形碼,又稱為準備機能 I (preparatory functi〇n c〇des)。該些加工圖形碼包含從 G00至⑽共—百多個程式指令、然而主要直接影響加工 T徑軌跡的指令為G〇〇指令、⑽指令、g〇2指令、㈤ 指^其中該GG0指令為快速定位(_d p〇sit咖⑽指令< 省G01指令為直線切削⑴· 土齡)指令、該 G〇2t指令為順時針方向圓派切削(CW circular interp〇iation )卩及該G03指令為逆時針方向圓狐切削(ccw dmilar interpolati〇n)指令。其他的G_c〇de指令大多是工 具機機台的控制指令β 明參見第二圖’係本發明路徑軌跡點計算方法之流程 圖。該路徑執跡點計算方法之步驟如下詳述。首先,一解 8 201108010 譯器(interpreter)讀取一 G-code 檔(S100)。該 G_c〇de 檔透 過忒解澤器解譯,以產生複數個執行指令(S2〇〇)。亦即, § 5亥G-code棺依序讀入該解譯器時,該解譯器會進行最佳 化策略來決定進給速率、轉角、單節擬合,而ς出最適合 之該些執行指令。然後,-上位控制器係依序傳送該些執 行指令至一伺服驅動器之一佇列緩衝器,以儲存該些執行 指令(S3GG) ^當該舰驅動器接收到由該上位控制器所傳 ^送之該些執行指令後,就會將該些執行指令依序儲;在該 仔列緩衝器内。(詳見後續配合第三圖之說明)。秋後,乂 當該伺服驅動器之-路徑執跡點計算器讀取儲存在該 緩衝器之該些執行指令,就會依序傳送該些執行指令至兮 =執跡點計算器_)。然後’該些執行指令透過祕 純跡點計算器直接計算,以產生複數個路徑轨跡點 :二因此’該G爾係經由該解譯器解譯成為該此 執仃各令,並該些執行指令用以當作串列通 一 直接透過㈣服驅動器計#,而達成 控:之= 徑執跡點計算。 值衩制系統之路 請參見第三圖係本發明該佇列緩 指令之流程圖。當,玄解㈣漆衝㈣存硬數個執行 後,先判數個執行指令⑽〇)之 更先判斷该上位控制器是否發送一停 ,以確認該上位押制、佳— 迗扣7 (S310) 些執行指令之指令之傳送或停止該 ’即表示該上=制發送該停止傳送指令 傳送該此執行^ $: τ㉟些執仃指令之傳送,則停止 執心令至騎列緩衝器(卿,以確保當該上 201108010 位控制器發出緊急停止要求,㈣立即停止料 々傳送該祠服驅動器,以中斷該祠服驅;:執:指 上位控制3|益恭、、,分& ° 知作。右該 進r兮此1 ’’、'“停止傳送指令,即表示該上位#制琴 ==;:::Γ則該上位控制11判斷二 執行二::(S320)。若該上位控制器判斷該也 (S322)a 束傳㈣些執行指令 結束,= 控制器判斷該些執行指令尚未全部傳送 二,Μ伺服驅動器判斷-佇列緩衝器之儲存空間曰 存===。__動器判斷該仔列緩;器:館· 行指令至該仔列緩衝 α 12)。亦即,當該佇列緩衝器之儲存空 伺=係通知該上位控制器停止再傳送該些執行= 右該伺服驅動器判斷該仔列緩衝器 ,=送該些執行指令至該仔列緩衝器㈣3;= 知;==衝器之儲存空間未滿,則該飼服驅動器係通 知该上位控制器繼續傳送該些執行指令。㈣,在咳+ = __器_已接收該些執行指令^否# 令給該伺服驅正確之該些_ 也工七 ^幻服驅動益接收該些執行指令非 =確’則該伺服驅動器刪除已接收該些執行指令並 動亥^控制器重新傳送該些執行指令⑽2)。若該飼服驅 =接收該些執行指令正確,則執行步驟⑽〇),也就是 該仵列緩衝器内之該些執行指令傳送至該路徑執跡 .點汁算器。 201108010 …此外^在該步驟脚2)之後,也就是停止傳送該些執 订指令至該仔列緩衝器之後,則重新執行步驟⑶⑻,也 就是判斷該上位控制器是否發送該停止傳送指令。另外, 在該步驟(S342)之後,也就是該伺服驅動器删除已接收該 些執行指令並要求該上位控制器重新傳送該些執行指令, 則重新執行步驟(S310),也就是判斷該上位 =停止傳送指令。並且,在該步驟⑽〇)之後,則反覆 刖述之各步驟動作流程,在此不再贅述。 八請f見第四圖係本發明該佇列緩衝器儲存該些執行指 7之不思圖。佇列(queue)是一種資料處理機制,主要在於 保持輸入的串列資料的順序性,也就是說,先存進仔列的 疋素,也會先被取出來,這種方式係為先進先出 ,刪)。故此,在本發日种,制服驅 動益20係提供叫宁列緩衝器(琴此㈣㈣猶,用以提供 儲:空間以儲存該上位控制器1〇傳送至該伺服驅動器20之 σ亥些執仃指令Iel’Ie2, “ ...,Ie"該些執行指令U Ie2,“… 山係依該上位控制器10所傳送至該伺服驅動器2〇之順序 序被儲存至該伺服驅動器2〇之該佇列緩衝器204之儲 子工間。圖中箭頭符號方向代表該些執行指令L山山,… :Ie:之存取方向。如圖所示,一 G—她檔係由電腦輔助製 觸)軟體產生,以定義電腦數值控制工具機之加工路 k執跡。該G_code檔係經由該上位控制器切之一解譯器( 2不’請參見第一圖)讀取,並且該G-code禮係經由該 澤益解譯以產生複數個執行指彳Li,Ule3,,..,IeN11 201108010 位控制器10係具有一第一高 參見第一圖) 、列通矾介面(未圖示,請 通訊介面(未圖示 厂有第一同逮串列 指令Uie2,ie3 ... ί第一圖),用以提供該些執行 若評购/’專送之通訊介面。針對本實施例,假 右这仔列緩衝器204 版 器20係通知〗尚未存滿,則該词服驅動 …! 广位控制器繼續傳送該些執行指令L“2山 ,IeN ’因此,該些執行指今 ’ 存至該仔列缓衝器2G : e2"3, ···,IeN係依序被儲 器20之一路和勤^ :子工間。此外,當該伺服驅動 該佇列緩衝:、點計算器(未圖示,請參見第-圖)從彳 、· B 之儲存空間讀取該些該些執行指令 e1’ ^e3,時,則該伺服驅動器20係以先進先出方4 ,又序將該㈣緩衝器204内之該 工 ,Ln傳送至該路徑執跡點舛管哭一執仃‘ 7 UUU ... 點。 Μ跡料h ’以產生複數個路徑執跡 數值Si:::及第五B圖’係分別為本發明-電腦 圖,機之加工路徑執跡之範例圖及對應於第五A 圖該加工路徑執跡之G_c〇de程式指令 « 點在於說明該一式指令對應於該加工 應用在該電腦數值控制工具機的加^序上,故此,^ 了在實際加X過程中所需要之刀具半徑補正指令及其他工 ::機二控制指令。該些刀具半徑補正指令分別為⑽ 取消刀徑補正)、G41指令(刀徑左向補正)及 ΓΓ】:二::右向補正)。所謂刀具半徑補正係因為刀 L疋的半徑’因此’在實際加工過程中,被加 12 201108010 工的工件外形尺寸會減少一刀具直徑值,而相對地,該工 件内形尺寸會增加一刀具直徑值。 該G-code槽之主要直接影響加工路徑軌跡的指令為 G00指令、G01指令、G02指令及G03指令。其^ ^⑼〇 指令為快速定位(rapid positioning)指令、該g〇i指令為直 線切削(linear interpolation)指令、該g〇2指令為順時針 方向圓弧切削(CW circular interpolation)指令、該G〇3為 籲指令逆時針方向圓弧切削(CCW circular interp〇lati〇n)指; 。因此,在第五B圖中,第(1)行G-code執行指令係 該刀具快速定位至A(-20,-20)點的位置。第(2)行G—c〇de 執行指令係控制該刀具直線切削,且路徑執跡係由 A(-20’-20)點加工至B(0,0)點。第(3)行G-code執行指令 係控制該刀具直線切削’且路徑軌跡係由B(〇,〇)點加工至 c(0’ 35)點。第(4)行G-CQde執行指令係控制該刀具直線切 削,且路徑執跡係由C(〇, 35)點加工至d(20, 35)點。第(5) •行G-code執行指令係控制該刀具以65單位長為半徑長度逆 時針方向圓弧切削,且路徑軌跡係由D(2〇,35)點加工至 E(25’ 60)點。第(6)行G-c〇de執行指令係控制該刀具以25 單位長為半徑長度順時針方向圓弧切削,且路徑執跡係由 E(25,60)點加工至F(65,60)點。第(7)行^⑺如執行指令 係控制該刀具以65單位長為半徑長度逆時針方向圓弧切削 ’且路徑軌跡係由F(65, 60)點加工至g(70, 35)點。第(8) 仃G-code執行指令係控制該刀具直線切削,且路徑執跡係 由G(70,35)點加工至h(90,35)點。第(9)行G-code執行指 13 201108010 令係控制該刀具直線切削,且路径執跡係由職35)點加 工至1(90,0)點。第⑽行G_c〇de執行指令係控制該刀具直 線切削,且路徑執跡係由1(9〇,〇)點加工至j(45丨。 (11) 行G-code執行指令係控制該刀具直線切削,且路徑執 跡係由贱10)點加工至B(〇, 〇)點。第⑽行執行 指令係控制該刀具直線切削,且路徑執跡係由_)點加 工至 A(-20, -20)點。 配合第四圖之說明’在本實施例中’該第⑴行至第 (12) 行指令係為G-codM#之内容,並且,該G_c〇de槽係噔鲁 由該解譯器讀取’並且該解譯器解譯該G_c〇de檔以產生對 應於第⑴打至第(12)行指令之複數個執行指令Κι山山, •山2。當該上位控制器10無發送該停止傳送指令,即該 上位控制iiiG允許傳送該些執行指令UUIe3, 。^ 後’當該飼服驅動器20判斷該些執行指令Li山山…
尚未全部傳送結束’以本實施例為例,目前該些執行指I
Iel’Ie2,U…,1⑽尚未傳送。然後’當該飼服驅動器20判斷 該符列緩衝器之204儲存空間尚未存滿,則該些執行指令鲁 U U U…,L,2依序傳送至該佇列緩衝器204儲存。^言i 該上位控制II1G允許傳送前三個執行指令Li山山至 列缓衝器204儲存’則前三個執行指令L山丄被以先進 先出(firkin-first-out)方式依序存入該件列緩衝考綱 ’即第⑴行G-code執行指令係控制該刀具 A(-20, -20)點的位置。第彳f e d > 弗仃G-code執行指令係控制該 刀具直線切削,且路徑軌跡係由A(_2〇,_2〇)點加工至 201108010 (,)點第(3)行G_c〇de執行指令係控制該刀具直 削,且路徑執跡係由麵點加工聰5)點。然後 該飼服驅動器20接收該些執行指《L,山山正確,則依: 亥t列緩衝器2〇4内之前三個執行指令ie“2,ie3傳送至 二?ηΓ執,點计异器2°6 ’並且’透過該路徑軌跡點計算 盗 計算,以產生複數個路徑軌跡點。 :而’假若在傳送該些執行指令Uie2山至該㈣緩 盗〇4,的過程甲’該舰驅動H 20接收該些執行指令 :Ie2,Ie3冑錯誤(第三個執行指令冑誤 非為該上位控制器10所要傳 收之161山山’則該伺服驅動器1(3刪除已接 正確:;執執=令163”並要求該上位控制器1〇重新傳送 確之該執二指K”此外,假若在傳㈣些執行指令 判斷評二刻丁列緩衝器2〇4的過程中’該伺服驅動器20 判斷该仔列緩衝器2〇4 制器10停止傳料此#/存 存滿’則該上位控 2〇4。 二執仃指令U U L至該佇列緩衝器 緩衝請的=Γ送該些執行指令…3至該仔列 指令Li山山...二假若該上位控制㈣判斷該些執行 ::1^ 行指令Ie“2 L3至二 此外,假若在傳送該些執 制器W發送該停二,器204的過程中,該上位控 前單節的目的則該伺服驅動^會停止在目 要求,能夠立即停=當該上位控制器10發出緊急停止 止將该些執行指令UUU ...,Iel2傳送 201108010 該伺服驅動器20,以中斷該伺服驅動器2〇之操作。 本發明之數值控制系統之路徑軌跡點計算裝置及其計 算方法主要係直接以利用該上位控制器10之該解譯器⑽ 讀取該G-code檔並解譯該G_c〇de檔以產生該些執行指令, 而非在上位控制器10利用插補方式,將離散位置命令轉換 為平滑位置曲線的處理過程,將會產生許多的運算資料, 而增加資料量的傳送,因此降低串列通訊速度。在本發明 的實施例t ’由於僅傳送該些經解譯之該些執行指令,而 可大大降低資料量的傳送,因此可提高串列通訊速度。故φ 此’該第一高速串列通訊介面1〇2與該第二高速串列通訊 介面202係可用於處理更多軸之電腦數值控制工具機之加 工路徑軌跡點計算。 綜上所述,本發明係具有以下之優點: 1 、大幅降低上位控制器傳給伺服驅動器的資料量 2、不用提高串列通訊速度。 ,可直接以單節指 而不會有產生執跡
3、不需要傳統使用之命令還原器 々(基本執行指令)來計算路徑軌跡, 誤差的問題。 、4、路徑執跡位置、角速度及角加速度的計算與位置 迴路同.步§十算,大幅提升系統的追隨性能。 服驅動器的所需資料量降 即可要求重傳,增加系統 5、由於上位控制器傳給伺 低’因此若執行指令傳送錯誤, <穩健度。 惟’以上所述’僅為本發明較佳具體實施例之詳細說 16 201108010 明與圖式,惟本發明之特徵並不侷限於此,並非用以限制 本發明,本發明之所有範圍應以下述之申請專利範圍為準 ,凡合於本發明申請專利範圍之精神與其類似變化之實施 例,皆應包含於本發明之範疇中,任何熟悉該項技藝者在 本發明之領域内’可輕易思及之變化或修#皆可涵蓋在以 下本案之專利範圍。 【圖式簡單說明】 器與一伺服驅動器之通訊示
第圖係本發明一上位控制 意圖; ^圖係本發明路徑軌跡點計算方法之流程圖; 程圖; 二圖係本發明一件列緩衝器館存複數個執行指令之流 令之示意 第四圖係、本發明該件列緩衝器儲存該些執行指 圖; 工具機之加工路徑軌跡 第五A圖係本發明一電腦數值控制 之範例圖;及 第五B圖係對應於第五 指令 【主要元件符號說明】 〔本創作 10 上位控制器 20 伺服驅動器 102 解譯器 104 第一南速串 國°亥加工路徑執跡之G-code程式 面 17 201108010 202 第二高速串列通訊介面 204 仵列缓衝器(queue buffer) 206 路徑軌跡點計算器 S100〜S500步驟
Iel~IeN 執行指令
18