嵌入式SoC單片機(jī)在雕刻機(jī)數(shù)控系統(tǒng)中的應(yīng)用
隨著計算機(jī)技術(shù)的發(fā)展,雕刻機(jī)完成了從2D、2.5D到3D的加工變革,功能趨于完善、性能更加穩(wěn)定,從而在制造業(yè)、建材業(yè)和廣告業(yè)等領(lǐng)域得到了廣泛應(yīng)用。與此同時,隨著市場競爭的加劇,國產(chǎn)普通雕刻機(jī)的價格也降低至萬元以下,使得雕刻機(jī)生產(chǎn)廠不得不在降低生產(chǎn)成本、尤其是降低控制系統(tǒng)成本方面尋找出路。以木工雕刻機(jī)為例,在目前國內(nèi)市場上,木工雕刻機(jī)數(shù)控系統(tǒng)通常采用兩種方案:一種是基于PC機(jī)的方案;另一種是基于DSP運(yùn)動控制器的方案。
本文引用地址:http://butianyuan.cn/article/201610/307454.htm基于PC機(jī)方案的雕刻機(jī)是由計算機(jī)、控制卡、電機(jī)驅(qū)動器和機(jī)械主體等4部分組成,由PC機(jī)負(fù)責(zé)人機(jī)交互界面的管理和控制系統(tǒng)的實(shí)時監(jiān)控,計算機(jī)安裝有諸如MACH3等的專用雕刻軟件,利用專業(yè)軟件進(jìn)行圖樣設(shè)計,并經(jīng)由計算機(jī)PCI總線接口,將設(shè)計與排版的信息傳送至雕刻機(jī)控制卡中,再由控制卡將這些信息轉(zhuǎn)換為能驅(qū)動步進(jìn)電機(jī)或伺服電機(jī)的脈沖信號,控制x、y、z 3個坐標(biāo)軸的走刀定位。此方案采用通用雕銑軟件,利用PC機(jī)現(xiàn)有資源,雕刻機(jī)主要由電腦控制,是一種高效的CNC雕刻機(jī)系統(tǒng)方案。
基于DSP方案的雕刻機(jī)數(shù)控系統(tǒng),其主要特點(diǎn)是采用DSP和單片機(jī)構(gòu)成控制器,DSP完成對各坐標(biāo)的運(yùn)動控制,單片機(jī)管理人機(jī)界面,被稱為手柄控制的雕刻機(jī)。圖樣設(shè)計生成的標(biāo)準(zhǔn)nc文件事先準(zhǔn)備好,并保存在U盤上,通過USB等串行接口輸入給數(shù)控系統(tǒng),這是一種低價高效的雕刻機(jī)數(shù)控系統(tǒng)方案。常用的專用DSP芯片有4軸運(yùn)動控制芯片MCX314As和PCL6045B等,這些DSP具有強(qiáng)大的硬件插補(bǔ)功能,使得在室外工作的雕刻機(jī)操作更便捷,一般木工雕刻機(jī)和石材雕刻機(jī)均采用該控制系統(tǒng)。
不同的應(yīng)用領(lǐng)域,所要求的雕刻機(jī)的性能亦不相同,本文提出的雕刻機(jī)數(shù)控系統(tǒng)方案,直接利用SoC單片機(jī)來構(gòu)成控制器,是一種采用單片機(jī)軟件來完成插補(bǔ)運(yùn)算的解決方案。
1 雕刻機(jī)控制系統(tǒng)的硬件原理框圖
在Silicon Labs推出的8位嵌入式SoC單片機(jī)中,混合信號單片機(jī)C8051F120的速度最高,可達(dá)98 MI·s-1。為保證程序的全速運(yùn)行,加快運(yùn)算速度,C8051F120單片機(jī)除具有轉(zhuǎn)移地址高速緩存和指令預(yù)取引擎外,還需具有乘法和累加引擎MAC0,其能使單片機(jī)在兩個系統(tǒng)時鐘周期內(nèi),即可完成整數(shù)或小數(shù)的乘法和累加。該單片機(jī)具有高達(dá)128 kB的片上Flash存儲器,8 kB片上外部RAM,可擴(kuò)展64 kB片外RAM,在線編程,并提供非易失性數(shù)據(jù)存儲,允許固件現(xiàn)場升級。有64個I/O口,5個16位定時器,6路16位可編程計數(shù)陣列PCA,增強(qiáng)型的硬件串行接口SPI,SMBus和兩個UART等,是真正獨(dú)立的系統(tǒng)級芯片解決方案。
C8051F系列單片機(jī)集成度高,且具有交叉開關(guān)功能,其大部分對外引出腳,除Uart接口的兩個信號Tx和Rx外,均可在設(shè)計電路板時,根據(jù)布板隨意連接,圖1所示為基于C8051F120單片機(jī)的雕刻機(jī)數(shù)控系統(tǒng)硬件框圖。
如圖1所示,高速單片機(jī)C8051F120是整個數(shù)控系統(tǒng)的中心,人機(jī)界面由4x4矩陣式按鍵電路和彩色LCD顯示模塊組成。用戶通過按鍵電路設(shè)置的加工參數(shù),保存在單片機(jī)內(nèi)部的非易失性Flash區(qū)。LCD顯示器選用點(diǎn)陣式彩色智能模塊,具有256種顏色,顏色格式為RGB332,并采用通用串行UART接口連到單片機(jī),操作指令簡單,且節(jié)省了單片機(jī)的接口線。
用戶通過浮雕軟件設(shè)計的雕刻圖案,最終會在PC機(jī)上生成一個后綴為,nc的文本文件并存入U盤中,U盤接口模塊的作用,便是通過SPI接口連接到單片機(jī),由單片機(jī)將加工文件讀出后進(jìn)行加工。帶后背鋰電池的RAM型號為DS1245W,容量為128 kB,其連接到單片機(jī)的擴(kuò)展并行接口,成為單片機(jī)的片外RAM,既是對讀入的加工文件的有效緩存,也能在系統(tǒng)發(fā)生停電等故障時,保存和記憶當(dāng)前的加工進(jìn)程,以便系統(tǒng)恢復(fù)供電或排障后,能繼續(xù)按照前面的斷點(diǎn)完成加工。由于單片機(jī)的片外RAM地址只有16位,尋址空間最大為64 kB,需要用單片機(jī)的輸出引腳來對其進(jìn)行頁切換,將SRAM的128 kB存儲空間分成兩頁。
x、y、z軸的3個傳感器,均采用由槽形光耦組成的限位電路,其特點(diǎn)是限位精度高,易于與單片機(jī)接口。對刀傳感器采用微動開關(guān),其作用是檢測被雕刻材料的厚度。步進(jìn)電機(jī)驅(qū)動器采用兩相電流細(xì)分式驅(qū)動器,細(xì)分系數(shù)和輸出電流,均可根據(jù)滾珠絲杠的負(fù)載大小情況來設(shè)定,驅(qū)動器和單片機(jī)之間有光電隔離電路,接口信號為方向信號Dir、走步脈沖信號Pul和有效選擇信號En。
2 空間直線的逐點(diǎn)比較插補(bǔ)算法
逐點(diǎn)比較法是國內(nèi)數(shù)控機(jī)床中廣泛采用的一種插補(bǔ)方法,其能實(shí)現(xiàn)直線、圓弧和非圓二次曲線的插補(bǔ),插補(bǔ)精度較高。逐點(diǎn)比較法即每走一步,均要將加工點(diǎn)的瞬時坐標(biāo)同規(guī)定的圖形軌跡相比較,判斷其偏差,然后決定下一步的走向,若加工點(diǎn)走到圖形外,則下一步就要向圖形內(nèi)走。若加工點(diǎn)在圖形內(nèi),則下一步要向圖形外走。這樣就能得出一個接近規(guī)定圖形的軌跡,其最大偏差不超過一個脈沖當(dāng)量。在逐點(diǎn)比較法中,每進(jìn)給一步,均需要進(jìn)行偏差判別、坐標(biāo)進(jìn)給、新偏差計算和終點(diǎn)比較4個步驟。對于一條二維平面直線,無論處于哪個象限,對其進(jìn)行逐點(diǎn)比較法直線插補(bǔ)時,由以下3式計算
N=|xe-x0|+|ye-y0| (1)
Fx=F-|y|,當(dāng)x≥0,走x后 (2)
Fy=F+|x|,當(dāng)y0,走y后 (3)
其中,N代表總步數(shù);F表示判斷式;x,y表示坐標(biāo)。
通常情況下,在雕刻圖形的設(shè)計和生成階段,首先要預(yù)置雕刻的精度參數(shù),所以y軸的進(jìn)給量一般較小,且每步固定,雕刻的精度要求越高,則y軸的進(jìn)給量則越小,這也使得雕刻文件的行數(shù)大幅增加。z軸的最大行程,一般略大于被加工材料的厚度。在3個坐標(biāo)中,x軸的運(yùn)動量最大,其行程由被加工材料的幅寬決定。所以在進(jìn)行空間直線插補(bǔ)時,是假定了該空間的x軸進(jìn)給的步數(shù)最大。即要在以長軸為基礎(chǔ)建立的兩個平面坐標(biāo)系內(nèi)進(jìn)行差補(bǔ)運(yùn)算,才能插補(bǔ)出正確的空間直線軌跡。因此,每讀出一行雕刻加工的坐標(biāo)數(shù)據(jù),均要先行判斷,找出步數(shù)最長的軸,再以其為關(guān)聯(lián)軸來構(gòu)建兩個插補(bǔ)平面,這樣才可將對空間直線的三維差補(bǔ)計算,轉(zhuǎn)換成對二維平面的差補(bǔ),其程序流程如圖2所示。在通常情況下,木工雕刻機(jī)一般為2.5D,以x、z軸的兩維插補(bǔ)為主,即當(dāng)y軸進(jìn)給時,x、z軸停止;而當(dāng)x、z聯(lián)動時,y軸停止。
3 雕刻機(jī)數(shù)控系統(tǒng)軟件設(shè)計
數(shù)控系統(tǒng)軟件采用結(jié)構(gòu)化、模塊化的程序設(shè)計方法,由主程序、中斷服務(wù)程序和功能子程序組成。主程序結(jié)構(gòu)簡單,主要完成對單片機(jī)系統(tǒng)及雕刻機(jī)各驅(qū)動軸的初始化,對鍵盤掃描并跳轉(zhuǎn)到相應(yīng)的功能模塊中。中斷服務(wù)程序主要包括步進(jìn)電機(jī)變頻驅(qū)動程序等。功能子程序主要包括LCD顯示模塊、參數(shù)設(shè)置模塊、U盤文件讀取模塊、文本轉(zhuǎn)換模塊、步進(jìn)電機(jī)走步程序、插補(bǔ)運(yùn)算程序、對刀程序、復(fù)位程序以及故障診斷程序等。
LCD顯示模塊主要包括:LCD初始化、調(diào)色板設(shè)置、字符間距設(shè)置、前景畫圖、背景畫圖、字符顯示、區(qū)域填色和清除、背光控制、波特率設(shè)置等程序。
U盤讀取模塊完成對U盤的讀寫,主要包括U盤檢測、創(chuàng)建文件和目錄、打開文件、讀文件、刪除文件和目錄、列舉目錄下的文件名等程序。
步進(jìn)電機(jī)走步程序采用T0中斷,在中斷中發(fā)送步進(jìn)電機(jī)進(jìn)給脈沖,調(diào)用插補(bǔ)運(yùn)算程序,并根據(jù)啟停變頻的需要來改變T0時間常數(shù)等。插補(bǔ)運(yùn)算程序作為子程序,被T0中斷程序調(diào)用。
文本轉(zhuǎn)換程序的作用是將U盤上的nc文件,轉(zhuǎn)換成二進(jìn)制數(shù)據(jù)。浮雕軟件生成的雕刻文檔,是標(biāo)準(zhǔn)的以ASIIC碼格式保存的數(shù)控加工文件,實(shí)際上就是一行行的坐標(biāo)數(shù)據(jù),只有將其經(jīng)過命令行識別,坐標(biāo)行識別,結(jié)尾、換行和文件頭尾的識別,轉(zhuǎn)換成二進(jìn)制數(shù)據(jù),并按照一定的數(shù)據(jù)結(jié)構(gòu),存放在單片機(jī)的片外RAM中,才可為單片機(jī)所用。
特殊功能模塊包括對刀程序和內(nèi)置木工機(jī)械加工程序,對刀程序用來檢測被雕刻材料的厚度。其他工機(jī)械功能有縱向鋸斷、橫向鋸斷、邊緣刨平、端面刨平、平面斜銑、端面斜銑和刨槽等。這些內(nèi)置功能大幅簡化了機(jī)器的操作,擴(kuò)展了機(jī)器的使用范圍。
4 結(jié)束語
基于嵌入式SoC單片機(jī)C8051F120的雕刻機(jī)數(shù)控系統(tǒng),充分發(fā)揮了單片機(jī)的高集成度和高速度特性,使得控制系統(tǒng)的結(jié)構(gòu)簡化、成本降低。經(jīng)用戶測試,雕刻精度為0.01 mm,達(dá)到了設(shè)計要求。該系統(tǒng)穩(wěn)定可靠,是一種低價、高效、簡便的雕刻機(jī)數(shù)控系統(tǒng)解決方案,通過本方案的研究,為中小用戶提供了臺式低價的雕刻機(jī),從而拓寬了現(xiàn)有雕刻機(jī)的用戶群。
評論