畢業(yè)論文-基于ARM和FPGA的數(shù)控系統(tǒng)的硬件設(shè)計(jì)_第1頁
畢業(yè)論文-基于ARM和FPGA的數(shù)控系統(tǒng)的硬件設(shè)計(jì)_第2頁
畢業(yè)論文-基于ARM和FPGA的數(shù)控系統(tǒng)的硬件設(shè)計(jì)_第3頁
畢業(yè)論文-基于ARM和FPGA的數(shù)控系統(tǒng)的硬件設(shè)計(jì)_第4頁
畢業(yè)論文-基于ARM和FPGA的數(shù)控系統(tǒng)的硬件設(shè)計(jì)_第5頁
已閱讀5頁,還剩65頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、畢 業(yè) 論 文基于arm和fpga的數(shù)控系統(tǒng)的硬件設(shè)計(jì)目 錄第一章 緒 論51.1引言51.2研究背景及國內(nèi)外發(fā)展現(xiàn)狀61.2.1研究背景61.2.2國外發(fā)展?fàn)顩r71.2.3國內(nèi)研究現(xiàn)狀71.3本論文課題來源和研究內(nèi)容81.3.1課題來源81.3.2研究內(nèi)容81.4論文結(jié)構(gòu)安排8第二章 體系結(jié)構(gòu)設(shè)計(jì)102.1 數(shù)控系統(tǒng)體系結(jié)構(gòu)102.2 技術(shù)要求102.2.1 主要性能指標(biāo)102.2.2 系統(tǒng)輸入輸出接口要求122.2.3 精度指標(biāo)132.2.4 其他要求142.3 總體結(jié)構(gòu)分析142.4 軟硬件功能劃分162.4.1 軟硬件功能劃分的原則162.4.2 軟硬件功能劃分的具體實(shí)現(xiàn)182.5 硬

2、件系統(tǒng)劃分192.6 板級(jí)功能劃分212.6.1 cpu子系統(tǒng)212.6.2 fpga子系統(tǒng)212.6.3 da轉(zhuǎn)換子系統(tǒng)222.6.4 信號(hào)隔離與轉(zhuǎn)換子系統(tǒng)222.6.4 電源子系統(tǒng)232.7 芯片級(jí)功能劃分232.7.1 總線接口模塊232.7.2 復(fù)位控制模塊232.7.3 中斷控制模塊242.7.4 定時(shí)器模塊242.7.5 鍵盤掃描模塊242.7.6編碼器計(jì)數(shù)器模塊242.7.7驅(qū)動(dòng)器控制模塊242.7. 8 io控制模塊25第三章 板級(jí)硬件設(shè)計(jì)263.1 板級(jí)設(shè)計(jì)的原則263.1.1 模塊化設(shè)計(jì)263.1.2 盡量基于成熟的設(shè)計(jì)263.1.3 可重構(gòu)原則263.1.4 兼容性原則2

3、73.2 性能分析與初步設(shè)計(jì)273.2.1 cpu計(jì)算能力273.2.2 實(shí)時(shí)性283.2.3 存儲(chǔ)能力293.2.4 fpga的選擇和io擴(kuò)展能力293.2.5 實(shí)現(xiàn)方案303.3 cpu子系統(tǒng)303.3.1 arm子系統(tǒng)303.3.2 存儲(chǔ)器子系統(tǒng)323.3.3 通信接口323.4 lcd接口323.5 fpga子系統(tǒng)333.5.1 配置電路和下載接口333.5.2 并行接口343.6 da轉(zhuǎn)換子系統(tǒng)343.6.1 隔離343.6.2 轉(zhuǎn)換343.6.3 放大353.7 信號(hào)隔離與轉(zhuǎn)換子系統(tǒng)353.8 電源子系統(tǒng)37第四章 芯片級(jí)硬件設(shè)計(jì)384.1 fpga介紹384.2 fpga的開發(fā)3

4、84.2.1 hdl語言384.2.2 開發(fā)流程與eda軟件394.3 acex系列fpga404.4 功能實(shí)現(xiàn)414.4.1總線接口模塊414.4.2 復(fù)位控制模塊424.4.3 中斷控制模塊424.4.4 定時(shí)器模塊444.4.5 鍵盤掃描模塊464.4.6 計(jì)數(shù)器模塊474.4.7驅(qū)動(dòng)器控制模塊484.4.8 io控制模塊494.5 hdl編寫注意事項(xiàng)494.5.1 hdl的可綜合性494.5.2 硬件思想504.5.3 良好的編碼風(fēng)格504.6 設(shè)計(jì)要點(diǎn)514.6.1 同步設(shè)計(jì)和異步設(shè)計(jì)514.6.2 與異步器件的接口問題514.6.3 面積與速度52第五章 軟件接口設(shè)計(jì)535.1 u

5、c/os-ii實(shí)時(shí)操作系統(tǒng)535.2 引導(dǎo)結(jié)構(gòu)545.3 硬件檢測(cè)系統(tǒng)545.4 數(shù)控系統(tǒng)程序接口555.4.1 fpga接口555.4.2 電機(jī)運(yùn)動(dòng)控制57第六章 硬件系統(tǒng)調(diào)試586.1 cpu子系統(tǒng)586.2.1 arm的基本調(diào)試接口jtag586.2.2 程序的下載與nor flash的燒寫596.2.3 arm系統(tǒng)的調(diào)試步驟606.2 lcd接口606.3 fpga子系統(tǒng)616.3.1 基本電路616.3.2 驅(qū)動(dòng)器控制模塊616.4 da轉(zhuǎn)換子系統(tǒng)61第七章 軟硬件聯(lián)調(diào)和機(jī)床加工試驗(yàn)627.1 io控制試驗(yàn)627.2 da輸出試驗(yàn)627.3 編碼器讀取試驗(yàn)627.4 電機(jī)控制試驗(yàn)62

6、7.4.1 位置精度試驗(yàn)627.4.2 轉(zhuǎn)速平穩(wěn)性試驗(yàn)637.4.3最大速度試驗(yàn)637.5 加工軌跡圖畫圖試驗(yàn)637.6 實(shí)際工件加工試驗(yàn)637.7 系統(tǒng)長時(shí)間連續(xù)運(yùn)行試驗(yàn)64結(jié)束語65參考文獻(xiàn)66攻讀碩士期間論文發(fā)表情況67攻讀碩士期間科研與獲獎(jiǎng)情況67致 謝68第一章 緒 論1.1引言近年來我國企業(yè)的數(shù)控機(jī)床占有率逐年上升,在大中企業(yè)已有較多的使用,在中小企業(yè)甚至個(gè)體企業(yè)中也普遍開始使用。在這些數(shù)控機(jī)床中,除少量機(jī)床以fms模式集成使用外,大都處于單機(jī)運(yùn)行狀態(tài),并且相當(dāng)部分處于使用效率不高,管理方式落后的狀態(tài)。2001年,我國機(jī)床工業(yè)產(chǎn)值已進(jìn)入世界第5名,機(jī)床消費(fèi)額在世界排名上升到第3位,

7、達(dá)47.39億美元,僅次于美國的53.67億美元,消費(fèi)額比上一年增長25%。但由于國產(chǎn)數(shù)控機(jī)床不能滿足市場(chǎng)的需求,使我國機(jī)床的進(jìn)口額呈逐年上升態(tài)勢(shì),2001年進(jìn)口機(jī)床躍升至世界第2位,達(dá)24.06億美元,比上年增長27.3%。近年來我國出口額增幅較大的數(shù)控機(jī)床有數(shù)控車床、數(shù)控磨床、數(shù)控特種加工機(jī)床、數(shù)控剪板機(jī)、數(shù)控成形折彎機(jī)、數(shù)控壓鑄機(jī)等,普通機(jī)床有鉆床、鋸床、插床、拉床、組合機(jī)床、液壓壓力機(jī)、木工機(jī)床等。出口的數(shù)控機(jī)床品種以中低檔為主。據(jù)專家分析預(yù)測(cè):1、數(shù)控機(jī)床推廣應(yīng)用逐步由經(jīng)濟(jì)型為主向普及型為主轉(zhuǎn)變。據(jù)預(yù)測(cè)分析,到2005年我國機(jī)床數(shù)控化率為9.5%10.36%,到2010年將達(dá)到16.

8、5%19.27%。在20012010年,經(jīng)濟(jì)型所占比重繼續(xù)減少,普及型所占比重繼續(xù)增長,高級(jí)型的需求緩慢增長。2、數(shù)控金切機(jī)床的構(gòu)成比逐漸趨于合理。數(shù)控機(jī)床工序集中的加工特點(diǎn),將使具有復(fù)合功能的高效數(shù)控機(jī)床的需求增長,這將導(dǎo)致數(shù)控機(jī)床擁有量和市場(chǎng)消費(fèi)量中各類數(shù)控機(jī)床的構(gòu)成比不同于傳統(tǒng)的機(jī)床構(gòu)成比。3、數(shù)控機(jī)床的應(yīng)用由單機(jī)向單元(系統(tǒng))方向發(fā)展。目前歐、美、日等國應(yīng)用dnc已很普遍,柔性制造單元已占數(shù)控機(jī)床銷售量的30%以上。而我國fmc、fms和fml的擁有量不足50套,相當(dāng)于日本80年代的水平,占數(shù)控機(jī)床消費(fèi)額不到5%。4、出口前景良好。1998年及前幾年我國機(jī)床工具的出口額徘徊在5億美元左

9、右,2000年上升到7.85億美元,隨著東南亞經(jīng)濟(jì)復(fù)蘇和我國出口多極化市場(chǎng)的形成和鞏固,以及我國加入wto,今后幾年我國機(jī)床出口將實(shí)現(xiàn)平穩(wěn)、持續(xù)增長。預(yù)計(jì)到2005年出口創(chuàng)匯可達(dá)到12億美元。1.2研究背景及國內(nèi)外發(fā)展現(xiàn)狀1.2.1研究背景 加入wto后,外資對(duì)我國機(jī)械工業(yè)會(huì)產(chǎn)生結(jié)構(gòu)性的沖擊,主要表現(xiàn)在以下幾點(diǎn): 1、部分行業(yè)發(fā)展主導(dǎo)權(quán)有可能受到?jīng)_擊。在以下行業(yè)將表現(xiàn)得更為突出:一是在國內(nèi)處于市場(chǎng)成長期、外方掌握專有技術(shù)并處于壟斷地位的技術(shù)密集型行業(yè),如燃?xì)廨啓C(jī)、直流輸電關(guān)鍵設(shè)備、半喂入式水稻聯(lián)合收割機(jī)、機(jī)電一體化的汽車發(fā)動(dòng)機(jī)附配件等;二是單靠有限市場(chǎng)難以發(fā)揮企業(yè)生產(chǎn)能力、迫切需要全球市場(chǎng)支撐

10、的行業(yè),如高壓開關(guān)、大型變壓器、高檔科學(xué)儀器、高檔數(shù)控系統(tǒng)、智能化工業(yè)控制系統(tǒng)等;三是國內(nèi)外制造成本相差較大、外方享有明顯的品牌優(yōu)勢(shì)、在華設(shè)廠可以在世界市場(chǎng)獲取豐厚利潤的勞動(dòng)密集型或易于流通的裝配型產(chǎn)品行業(yè),如照相機(jī)、復(fù)印機(jī)、部分工業(yè)和民用儀表、高品質(zhì)低壓電器等。2、工程成套行業(yè)將面臨更嚴(yán)峻的競(jìng)爭(zhēng)。隨著服務(wù)貿(mào)易領(lǐng)域?qū)ν忾_放,實(shí)力雄厚的國外公司可能更積極地到國內(nèi)舉辦由其控制的、以工程承包為主要業(yè)務(wù)的工程公司,以其母公司產(chǎn)品為后盾,以熟悉國內(nèi)情況的中方雇員為業(yè)務(wù)骨干,與我內(nèi)資企業(yè)展開激烈的競(jìng)爭(zhēng)。3、我國機(jī)械工業(yè)自主技術(shù)創(chuàng)新的積極性有可能被抑制。由于外資在華機(jī)械企業(yè)主要承擔(dān)制造車間的角色,技術(shù)來源主

11、要依靠其母公司,而原本就實(shí)力有限的內(nèi)資企業(yè)在完全開放的市場(chǎng)競(jìng)爭(zhēng)中堅(jiān)持自行研制開發(fā)將冒很大風(fēng)險(xiǎn),為了節(jié)省投入,提高產(chǎn)品的形象,多數(shù)內(nèi)資企業(yè)將盡可能與外方合作,采用國際同行的技術(shù)進(jìn)行生產(chǎn)。4、處于幼稚期的自主產(chǎn)業(yè)的成長環(huán)境趨于嚴(yán)峻。由于國外企業(yè)將更加不愿轉(zhuǎn)讓技術(shù),更愿意通過在華舉辦由他們控制的企業(yè)來與內(nèi)資機(jī)械企業(yè)爭(zhēng)奪中國用戶的訂單,國內(nèi)用戶也有了更多的便利采購?fù)赓Y產(chǎn)品,從而部分處于成長初期的重要產(chǎn)品自主產(chǎn)業(yè)的培育壯大將更困難。在這種嚴(yán)峻的形式下,我們必須發(fā)憤圖強(qiáng),開發(fā)出適合我國國情的具有自主知識(shí)產(chǎn)權(quán)的數(shù)控系統(tǒng)。1.2.2國外發(fā)展?fàn)顩r1、國際機(jī)床市場(chǎng)的消費(fèi)主流是數(shù)控機(jī)床。1998年世界機(jī)床進(jìn)口額中大

12、部分是數(shù)控機(jī)床,美國進(jìn)口機(jī)床的數(shù)控化率達(dá)70%,我國為60%。目前世界數(shù)控機(jī)床消費(fèi)趨勢(shì)已從初期以數(shù)控電加工機(jī)床、數(shù)控車床、數(shù)控銑床為主轉(zhuǎn)向以加工中心、專用數(shù)控機(jī)床、成套設(shè)備為主。2、國外數(shù)控機(jī)床的網(wǎng)絡(luò)化。隨著計(jì)算機(jī)技術(shù)、網(wǎng)絡(luò)技術(shù)日益普遍運(yùn)用,數(shù)控機(jī)床走向網(wǎng)絡(luò)化、集成化已成為必然的趨勢(shì)和方向,互聯(lián)網(wǎng)進(jìn)入制造工廠的車間只是時(shí)間的問題。從另一角度來看,目前流行的erp即工廠信息化對(duì)于制造業(yè)來說,僅僅局限于通常的管理部門(人、財(cái)、物、產(chǎn)、供、銷)或設(shè)計(jì)、開發(fā)等等上層部分的信息化是遠(yuǎn)遠(yuǎn)不夠的,工廠、車間的最底層加工設(shè)備數(shù)控機(jī)床不能夠連成網(wǎng)絡(luò)或信息化就必然成為制造業(yè)工廠信息化的制約瓶頸,所謂的erp就比較

13、“虛”沒有能夠真正地解決制造工廠的最關(guān)鍵的問題。所以,對(duì)于面臨日益全球化競(jìng)爭(zhēng)的現(xiàn)代制造工廠來說,第一是要大大提高機(jī)床的數(shù)控化率,即數(shù)控機(jī)床必須達(dá)到起碼的數(shù)量或比例;第二就是所擁有的數(shù)控機(jī)床必須具有雙向、高速的聯(lián)網(wǎng)通訊功能,以保證信息流在工廠、車間的底層之間及底層與上層之間通訊的暢通無阻。以fanuc和西門子為代表的數(shù)控系統(tǒng)生產(chǎn)廠商已在幾年前推出了具有網(wǎng)絡(luò)功能的數(shù)控系統(tǒng)。在這些系統(tǒng)中,除了傳統(tǒng)的rs232接口外,還備有以太網(wǎng)接口,為數(shù)控機(jī)床聯(lián)網(wǎng)提供了基本條件。由于國外企業(yè)的發(fā)展水平,數(shù)控機(jī)床的網(wǎng)絡(luò)接口功能被定義為用于遠(yuǎn)程監(jiān)控、遠(yuǎn)程診斷。1.2.3國內(nèi)研究現(xiàn)狀 1、新產(chǎn)品開發(fā)有了很大突破,技術(shù)含量

14、高的產(chǎn)品占據(jù)主導(dǎo)地位。例如:全長33公里的上海磁懸浮快速列車線,是“十五”期間國家重點(diǎn)建設(shè)項(xiàng)目,其中組成列車線的2550根軌道梁是整個(gè)工程的最關(guān)鍵部分,對(duì)加工軌道梁的精度提出了相當(dāng)高的要求。去年年初,沈陽機(jī)床集團(tuán)機(jī)床股份有限公司中捷友誼廠以工期6個(gè)月、標(biāo)的6200萬元在磁懸浮軌道專用數(shù)控機(jī)床項(xiàng)目公開招標(biāo)中折桂,并于8月底將一次性驗(yàn)收合格的8臺(tái)數(shù)控鏜銑床組成的軌道梁生產(chǎn)線一次試車成功,目前這套銑鏜加工中心已加工出軌道梁1100根,確保了軌道梁的加工精度和速度,為實(shí)現(xiàn)今年年底試車打下了良好的基礎(chǔ)。 2、數(shù)控機(jī)床產(chǎn)量大幅度增長,數(shù)控化率顯著提高。2001年國內(nèi)數(shù)控金切機(jī)床產(chǎn)量已達(dá)1.8萬臺(tái),比上年增

15、長28.5%。金切機(jī)床行業(yè)產(chǎn)值數(shù)控化率從2000年的17.4%提高到2001年的22.7%。 3、數(shù)控機(jī)床發(fā)展的關(guān)鍵配套產(chǎn)品有了突破。近年來通過政府的支持,數(shù)控機(jī)床配套生產(chǎn)得到了快速發(fā)展。如北京航天機(jī)床數(shù)控系統(tǒng)集團(tuán)公司建立了具有自主知識(shí)產(chǎn)權(quán)的新一代開放式數(shù)控系統(tǒng)平臺(tái);煙臺(tái)第二機(jī)床附件廠開發(fā)了為數(shù)控機(jī)床配套的多種動(dòng)力卡盤和過濾排屑裝置;濟(jì)南第二機(jī)床集團(tuán)公司的數(shù)控龍門鏜銑床、數(shù)控落地鏜銑床及數(shù)控鍛壓設(shè)備等30多個(gè)系列100多個(gè)品種的數(shù)控配套產(chǎn)品。1.3本論文課題來源和研究內(nèi)容1.3.1課題來源 本課題來源于國家863項(xiàng)目“嵌入式機(jī)電控制系統(tǒng)及應(yīng)用”(編號(hào):2003421130)。1.3.2研究內(nèi)容

16、本文針對(duì)嵌入式機(jī)電控制系統(tǒng)底層關(guān)鍵技術(shù),以數(shù)控系統(tǒng)作為對(duì)象,設(shè)計(jì)了一套基于arm和fpga的開環(huán)數(shù)控系統(tǒng),對(duì)基于arm和fpga的開環(huán)數(shù)控系統(tǒng)硬件體系結(jié)構(gòu)、fpga在數(shù)控系統(tǒng)中的應(yīng)用、基于arm和fpga的開環(huán)數(shù)控系統(tǒng)的硬件結(jié)構(gòu)設(shè)計(jì)及與基于實(shí)時(shí)操作系統(tǒng)mc/os-ii的軟件設(shè)計(jì)等關(guān)鍵技術(shù)進(jìn)行了深入研究。1.4論文結(jié)構(gòu)安排本文共分為七章。第一章為緒論,說明本課題的研究意義和研究內(nèi)容。第二章先描述整個(gè)數(shù)控系統(tǒng)的體系結(jié)構(gòu),然后對(duì)要求進(jìn)行拆分、分析,確定軟硬件所需要實(shí)現(xiàn)的功能,著重說明硬件所需要實(shí)現(xiàn)的功能,對(duì)功能進(jìn)行劃分,確定各個(gè)模塊的作用。第三章闡述電路板設(shè)計(jì),包括設(shè)計(jì)原則、性能分析、各個(gè)子系統(tǒng)的詳

17、細(xì)設(shè)計(jì)。第四章闡述fpga的邏輯設(shè)計(jì),包括fpga的介紹、開發(fā)流程、各個(gè)功能的實(shí)現(xiàn)方法,最后總結(jié)了使用hdl進(jìn)行fpga設(shè)計(jì)的注意事項(xiàng)。第五章闡述mc/os-ii操作系統(tǒng)的特點(diǎn),軟硬件接口的具體實(shí)現(xiàn)。第六章闡述硬件部分的調(diào)試過程,以及在調(diào)試中出現(xiàn)的問題及其解決方法。第七章記錄了軟硬件聯(lián)調(diào)的情況,測(cè)試的結(jié)果和結(jié)論第二章 嵌入式數(shù)控系統(tǒng)體系結(jié)構(gòu)設(shè)計(jì)2.1 數(shù)控系統(tǒng)體系結(jié)構(gòu)通常一個(gè)數(shù)控系統(tǒng)的總體框圖如圖2.1所示,由控制系統(tǒng)、伺服驅(qū)動(dòng)系統(tǒng)和伺服電機(jī)組成。控制系統(tǒng)生成的坐標(biāo)軸運(yùn)動(dòng)指令,由fpga進(jìn)行細(xì)插補(bǔ),最后形成脈沖串的形式發(fā)送給伺服驅(qū)動(dòng)系統(tǒng),最后伺服驅(qū)動(dòng)系統(tǒng)形成運(yùn)動(dòng)指令控制伺服電機(jī)運(yùn)轉(zhuǎn)。 圖2.1

18、 數(shù)控系統(tǒng)的總體結(jié)構(gòu)2.2 技術(shù)要求 本文以一個(gè)三軸開環(huán)數(shù)控系統(tǒng)為應(yīng)用研究對(duì)象,擬設(shè)計(jì)一套基于arm嵌入式微處理器和fpga的嵌入式數(shù)控系統(tǒng),即圖2.1 的控制系統(tǒng)部分。三軸開環(huán)數(shù)控系統(tǒng)要求如下:2.2.1 主要性能指標(biāo)可控制軸數(shù)3軸(x軸、z軸、第3軸可定義為y或c)聯(lián)動(dòng)軸數(shù)直線3軸,圓弧x、z兩軸運(yùn)動(dòng)軸信號(hào)輸出方式:脈沖方向 (兩組信號(hào)均為差分輸出)脈沖寬度1s(上升/下降沿0.2s)最小指令單位x軸0.0005mm ,z軸0.001mm 最小移動(dòng)單位x軸0.0005mm ,z軸0.001mm 最大編程尺寸9999.999mm最大快速移動(dòng)速度30000mm/min(對(duì)應(yīng)脈沖輸出頻率為512

19、khz)切削進(jìn)給速度范圍115000mm/min(對(duì)應(yīng)脈沖輸出頻率為256khz)快速移動(dòng)倍率f0、25%、50%、100%四級(jí),可實(shí)時(shí)調(diào)整(手動(dòng)/自動(dòng)方式有效)切削進(jìn)給倍率0150%十六級(jí)可實(shí)時(shí)調(diào)整(按10%遞增)自動(dòng)加減速線性/s型曲線(加速、減速時(shí)間常數(shù)設(shè)置范圍:04000ms)單步進(jìn)給增量值1、10、100、1000手輪進(jìn)給增量值1、10、100、1000電子齒輪變比范圍1/255255螺紋導(dǎo)程范圍公制:0.001500mm ,英制:0.06254000牙/英寸公/英制單頭多頭直螺紋、錐螺紋,螺紋退尾長度可設(shè)定螺紋加工最高主軸轉(zhuǎn)速3000rpm(螺紋加工最高進(jìn)給速度15000mm/mi

20、n)可對(duì)使用的主軸編碼器的分辨率(脈沖/轉(zhuǎn))作為參數(shù)進(jìn)行設(shè)置,范圍為100025003軸絲桿反向間隙補(bǔ)償各軸065.535mm存儲(chǔ)型螺距誤差補(bǔ)償3軸各256點(diǎn)、每點(diǎn)-32.767+32.767mm刀具功能可選刀具數(shù)量:16把刀具長度補(bǔ)償32組(0999.999mm)、刀尖半徑補(bǔ)償(補(bǔ)償方式c )32組(0999.999mm)刀位信號(hào)輸入方式: 8工位以內(nèi)的刀可以直接輸入,也可以編碼輸入(由參數(shù)選擇),超過8工位的刀架采用編碼輸入,編碼方式為:bcd碼或格雷碼(由參數(shù)選擇)。t代碼絕對(duì)換刀 /手動(dòng)相對(duì)換刀。可單向選刀,也可雙向就近選刀。主軸功能s(二位數(shù))可控8級(jí)機(jī)械換擋(直接輸入和編碼輸入可選

21、)s(四位數(shù))位主軸轉(zhuǎn)速設(shè)置、模擬輸出010vdc電壓(同時(shí)支持8級(jí)自動(dòng)換擋m41m48)主軸速度倍率50%120%(10%遞增)零件程序容量256kb加工程序預(yù)處理3段(非循環(huán)指令段),要求速度平滑過度、加工過程流暢不停頓。2.2.2 系統(tǒng)輸入輸出接口要求 輸入 / 輸出接口說明 輸 入 口(40個(gè)) 輸 出 口(32個(gè))名稱定義名稱定義固定輸入接口24個(gè)固定輸出接口16個(gè)ov1倍率信號(hào)1m3主軸正轉(zhuǎn)ov2倍率信號(hào)2m4主軸反轉(zhuǎn)ov4倍率信號(hào)3m5主軸停ov8倍率信號(hào)4m8冷卻液開sp保持進(jìn)給m9冷卻液關(guān)st循環(huán)啟動(dòng)m10尾座進(jìn)輸出信號(hào)t01t01刀位信號(hào)m11尾座退輸出信號(hào)t02t02刀位

22、信號(hào)m12卡盤夾緊t03t03刀位信號(hào)m13卡盤松開t04t04刀位信號(hào)m32潤滑油開啟t05t05刀位信號(hào)m33潤滑油關(guān)閉t06t06刀位信號(hào)tl+正向換刀信號(hào)t07t07刀位信號(hào)tl-負(fù)向換刀信號(hào)t08t08刀位信號(hào)tlsp刀架制動(dòng)tcp刀架鎖緊信號(hào)spzd主軸制動(dòng)tlst刀架選通信號(hào)y16dexx軸減速信號(hào)dezz軸減速信號(hào)decc軸減速信號(hào)esp急停輸入x0x軸零位信號(hào)z0z軸零位信號(hào)c0c軸零位信號(hào)sar主軸轉(zhuǎn)速到達(dá)信號(hào)擴(kuò)展輸入接口16個(gè)擴(kuò)展輸出接口16個(gè)ui0ui15宏程序指定輸入0宏程序指定輸出入15uo0uo15宏程序指定輸出0宏程序指定輸出15注: mi41-mi48, di

23、tw, diqp, spen, sten, twt, kps, x14, x16與ui0ui15復(fù)用,s01-s08, m41-m48與uo0uo15復(fù)用。2.2.3 精度指標(biāo)直線插補(bǔ)精度:0.0003mm圓弧插補(bǔ)精度:0.0005mm切削進(jìn)給速度誤差(與設(shè)定值):3%快速移動(dòng)速度誤差(與設(shè)定值):10%g04延時(shí)指令誤差:5ms加、減速時(shí)間常數(shù)誤差:5ms系統(tǒng)各種脈沖持續(xù)時(shí)間(與設(shè)置時(shí)間)精度誤差:5ms2.2.4 其他要求(1)操作界面和信號(hào)接口與廣州數(shù)控的gsk980t一致。(2)控制系統(tǒng)采用uc/osii操作系統(tǒng)。(3)有較大的功能提升空間。2.3 總體結(jié)構(gòu)分析根據(jù)數(shù)控系統(tǒng)所需完成的功

24、能和需求,我們把數(shù)控系統(tǒng)分為五個(gè)任務(wù),即人機(jī)界面管理任務(wù)、數(shù)據(jù)處理任務(wù)、運(yùn)動(dòng)控制任務(wù)、邏輯控制任務(wù)和輔助控制任務(wù),伺服控制,每個(gè)任務(wù)又可以劃分為更小的子模塊。系統(tǒng)模塊劃分如圖2.2所示圖2.2系統(tǒng)模塊圖系統(tǒng)的整個(gè)運(yùn)行流程框圖如圖2.3所示。該系統(tǒng)根據(jù)鍵盤操作選擇不同的操作方式。下面以自動(dòng)運(yùn)行為例,用戶選擇自動(dòng)運(yùn)行后,按下啟動(dòng)按鈕則系統(tǒng)相應(yīng)執(zhí)行代碼編譯、刀具補(bǔ)償、速度計(jì)算、插補(bǔ)和位置伺服等各個(gè)階段控制機(jī)床的運(yùn)動(dòng)。圖2.3 數(shù)控系統(tǒng)的總體運(yùn)行流程框圖2.4 軟硬件功能劃分2.4.1 軟硬件功能劃分的原則隨著芯片設(shè)計(jì)和制造技術(shù)水平的發(fā)展,微處理器的運(yùn)算速度得到很大提高,因此很多傳統(tǒng)上必須由硬件實(shí)現(xiàn)的

25、功能現(xiàn)在可以使用軟件實(shí)現(xiàn)。與此同時(shí),近年來,fpga技術(shù)的提高和大容量、低成本的新型fpga的出現(xiàn),為高性能的數(shù)字控制系統(tǒng)提供了新的實(shí)現(xiàn)方法??梢哉f,以嵌入式微處理器和fpga為核心的系統(tǒng)設(shè)計(jì)技術(shù)代表了現(xiàn)代數(shù)控系統(tǒng)的軟件和硬件實(shí)現(xiàn)方法。但是,微處理器的運(yùn)算資源和fpga的邏輯資源還是有限的,而且微處理器擅長的是串行的數(shù)據(jù)處理,而fpga擅長的是并行的邏輯處理。因此就出現(xiàn)了功能實(shí)現(xiàn)的軟硬件劃分的問題。需要注意的是,這里所指的有軟硬件劃分需要的功能都是那些既可以用軟件實(shí)現(xiàn)又可以用硬件實(shí)現(xiàn)的功能,具體到實(shí)際的物理系統(tǒng)中,就是那些既可以用微處理器系統(tǒng)實(shí)現(xiàn)也可以用fpga或者模擬器件實(shí)現(xiàn)的功能。在軟硬件

26、劃分的問題上,一般遵循以下幾個(gè)原則:1性能原則。不管使用軟件還是硬件實(shí)現(xiàn)特定的功能,首先要滿足性能要求,這是最重要的。比如對(duì)于所有的模擬功能,雖然有模擬fpga出現(xiàn),但是其技術(shù)還不成熟,而數(shù)字脈沖輸出加濾波的方法在相應(yīng)速度、精度上無法與模擬器件相比,因此顯然是必須由模擬器件,也就是硬件來實(shí)現(xiàn)。2性價(jià)比原則。大容量fpga理論上和實(shí)際上都可以完成本系統(tǒng)所要實(shí)現(xiàn)的全部數(shù)字功能,但是使用昂貴的fpga來實(shí)現(xiàn)普通的微處理器就可以實(shí)現(xiàn)的功能是一種巨大的浪費(fèi)。同時(shí),為了讓本系統(tǒng)的某些功能用軟件實(shí)現(xiàn)而采用超高速的微處理器也是一種浪費(fèi)。因此,可以說對(duì)于本系統(tǒng)來說,最重要的是分析對(duì)于同一個(gè)功能,是用微處理器來實(shí)

27、現(xiàn)所需要的成本低還是用fpga來實(shí)現(xiàn)所需要的成本低。3資源利用率原則。新型的微處理器往往集成了大量的外圍器件,比如串口、計(jì)數(shù)器、pwm、ad等等,也就常說的片上系統(tǒng)soc(system on chip),在性能相同的情況下,價(jià)格卻比分立系統(tǒng)低廉。因此,很多系統(tǒng)面臨的情況是使用了soc芯片以后,不但可以實(shí)現(xiàn)那些符合高性價(jià)比原則的功能,還會(huì)有一些剩余的資源,比如微處理器的計(jì)算資源。fpga的使用特點(diǎn)決定了不能完全按照估計(jì)的實(shí)際邏輯資源使用量去選型,而是要選擇邏輯容量比實(shí)際可能需要的最大容量還要大30的型號(hào)。而同一個(gè)系列的fpga里雖然有內(nèi)部邏輯資源容量不同的多種型號(hào),但是找到完全符合選型要求的器件

28、的機(jī)會(huì)還是比較小的,因此就必須選擇剛好大于選型需求的器件。如此一來,不管是微處理器還是fpga的資源都會(huì)有一些剩余。很多使用軟件和硬件都可以滿足性能要求的功能就必須考慮實(shí)現(xiàn)的方法,比如鍵盤掃描功能。對(duì)于這些功能的實(shí)現(xiàn)方法就需要考慮軟件和硬件的利用率原則,即不要把一方的資源用光,盡量使兩方的資源利用率相等。由于微處理器所運(yùn)行的控制軟件的性能與微處理器的使用率有關(guān),當(dāng)使用率越低的時(shí)候,軟件的相應(yīng)速度會(huì)越快,或者可以以較低速度來運(yùn)行微處理器。而且fpga的運(yùn)行速度與邏輯資源也有關(guān)系,邏輯資源利用率越低,可以運(yùn)行的速度越快。而數(shù)字系統(tǒng)的運(yùn)行速度與可靠性是有直接關(guān)系的。當(dāng)運(yùn)行速度接近極限速度的時(shí)候,可靠

29、性就會(huì)降低,因此適當(dāng)保留一定的提速空間對(duì)與提高系統(tǒng)的可靠性是有很大幫助的,同樣也有利于將來的性能升級(jí)和維護(hù)。三個(gè)原則之間不是相互獨(dú)立的,而是互相影響的,當(dāng)具體實(shí)施的時(shí)候要同時(shí)考慮這幾個(gè)原則,從而做出最優(yōu)的選擇。2.4.2 軟硬件功能劃分的具體實(shí)現(xiàn)根據(jù)圖2.2的系統(tǒng)模塊框圖,各個(gè)功能的軟硬件分工如下:1人機(jī)界面。這些功能與運(yùn)動(dòng)控制沒有直接關(guān)系,絕大多數(shù)使用軟件來實(shí)現(xiàn)。除了鍵盤掃描功能以外。我們使用的10x10的掃描鍵盤,軟件掃描程序的理論分析和實(shí)際測(cè)試的結(jié)果都表明,使用軟件進(jìn)行掃描是一項(xiàng)比較浪費(fèi)微處理器運(yùn)算資源的做法。我們?cè)?6mhz的arm7tdmi微處理器加mc/os-ii操作系統(tǒng)的平臺(tái)上測(cè)

30、試中發(fā)現(xiàn),當(dāng)使用軟件進(jìn)行4x4的鍵盤的掃描時(shí),一旦掃描任務(wù)的優(yōu)先級(jí)高一些,會(huì)明顯感覺到其他任務(wù)受到影響。因此,鍵盤掃描的任務(wù)將由fpga來實(shí)現(xiàn),當(dāng)fpga檢測(cè)到有按鈕按下時(shí),向cpu發(fā)送一個(gè)中斷。2邏輯處理,也就是plc功能。plc是一項(xiàng)復(fù)雜的功能,涉及復(fù)雜的串行的數(shù)學(xué)運(yùn)算,因此決定使用cpu來實(shí)現(xiàn)。本系統(tǒng)定位在實(shí)現(xiàn)簡(jiǎn)單的plc功能。3運(yùn)動(dòng)控制。運(yùn)動(dòng)控制是數(shù)控系統(tǒng)的核心,其中插補(bǔ)又是運(yùn)動(dòng)控制部分的核心。插補(bǔ)大體可以分為兩級(jí):粗插補(bǔ)和細(xì)插補(bǔ)。相對(duì)來說,粗插補(bǔ)負(fù)責(zé)將g代碼轉(zhuǎn)變?yōu)檩^詳細(xì)的軌跡點(diǎn)信息,而細(xì)插補(bǔ)則將這些軌跡點(diǎn)細(xì)化為針對(duì)電機(jī)驅(qū)動(dòng)器的脈沖信號(hào)進(jìn)行輸出。從數(shù)學(xué)運(yùn)算上來看,粗插補(bǔ)的運(yùn)算量很大,而

31、細(xì)插補(bǔ)的運(yùn)算量則很小。但是細(xì)插補(bǔ)對(duì)時(shí)間的準(zhǔn)確性要求非常高,如果要用微處理器實(shí)現(xiàn),則需要一個(gè)周期非常小的定時(shí)器,而且周期也會(huì)不斷變化,這樣會(huì)消耗大量的微處理器計(jì)算時(shí)間,甚至微處理器沒有時(shí)間運(yùn)行其他的任務(wù)。對(duì)于fpga來說,實(shí)現(xiàn)這樣的細(xì)插補(bǔ)的功能則非常簡(jiǎn)單,只需要很少的邏輯資源,而且脈沖的最大頻率也可以很高,至少可以遠(yuǎn)遠(yuǎn)超過外部接口器件的極限。因此,粗插補(bǔ)將由微處理器負(fù)責(zé),而細(xì)插補(bǔ)理所當(dāng)然由fpga來實(shí)現(xiàn)。4輔助控制。這部分功能較為繁瑣,而且?guī)缀跖c硬件沒有任何關(guān)系,所以用微處理器來實(shí)現(xiàn)。5數(shù)據(jù)處理。這部分功能也幾乎與硬件沒有任何關(guān)系,所以用微處理器來實(shí)現(xiàn)。6伺服處理。與運(yùn)動(dòng)控制的情況類似,伺服算法

32、的實(shí)現(xiàn)需要大量的串行的數(shù)學(xué)運(yùn)算,而信號(hào)檢測(cè)部分如果用軟件實(shí)現(xiàn)的話則需要微處理器不斷去檢測(cè)信號(hào)的變化。因此,伺服算法部分由微處理器實(shí)現(xiàn),信號(hào)檢測(cè)部分由fpga實(shí)現(xiàn)。2.5 硬件系統(tǒng)劃分雖然如上一小節(jié)所說,很多功能是軟件實(shí)現(xiàn)的,但是軟件也是運(yùn)行在硬件上的,所以說,在進(jìn)行硬件系統(tǒng)的劃分的時(shí)候也必須把軟件的運(yùn)行基礎(chǔ)考慮在內(nèi)。這樣,從硬件設(shè)計(jì)者的角度上去分析,整個(gè)電路板系統(tǒng)可以分為板級(jí)系統(tǒng)和芯片級(jí)系統(tǒng)。板級(jí)系統(tǒng)的設(shè)計(jì)指印刷電路板的設(shè)計(jì),芯片級(jí)系統(tǒng)指fpga內(nèi)部邏輯的設(shè)計(jì)。兩者雖然都是屬于硬件的范疇,但是兩者的設(shè)計(jì)對(duì)象、設(shè)計(jì)方法、開發(fā)流程和所需要使用的eda軟件都完全不同。板級(jí)系統(tǒng)由微處理器子系統(tǒng),fpg

33、a子系統(tǒng),da轉(zhuǎn)換子系統(tǒng),信號(hào)隔離與轉(zhuǎn)換子系統(tǒng),電源子系統(tǒng)構(gòu)成。微處理器子系統(tǒng)負(fù)責(zé)運(yùn)行數(shù)控的控制軟件,fpga負(fù)責(zé)脈沖信號(hào)的產(chǎn)生和計(jì)數(shù)、鍵盤的掃描和io的控制,da負(fù)責(zé)產(chǎn)生主軸變頻器所需要的模擬信號(hào),信號(hào)隔離與轉(zhuǎn)換子系統(tǒng)負(fù)責(zé)各類機(jī)床信號(hào)的接口處理,電源子系統(tǒng)則為其他系統(tǒng)和繼電器提供電源。結(jié)構(gòu)框圖如圖2.3所示。圖2.3 板級(jí)系統(tǒng)框圖芯片級(jí)系統(tǒng)由總線接口模塊、復(fù)位控制模塊、中斷控制模塊、定時(shí)器模塊、io控制模塊、編碼器計(jì)數(shù)器模塊和驅(qū)動(dòng)器控制器模塊構(gòu)成。其中總線接口模塊負(fù)責(zé)提供fpga內(nèi)部功能模塊與arm外部總線的接口,復(fù)位控制模塊為fpga內(nèi)部功能模塊提供復(fù)位信號(hào),中斷控制模塊用于處理fpga內(nèi)

34、部功能模塊的中斷信號(hào),定時(shí)器模塊為脈沖發(fā)生器提供定時(shí)信號(hào),io控制模塊用于控制順序控制io,鍵盤掃描模塊負(fù)責(zé)控制1010鍵盤的掃描,編碼器計(jì)數(shù)器模塊用于檢測(cè)主軸和手輪的碼盤信號(hào),驅(qū)動(dòng)器控制器模塊用于產(chǎn)生、檢測(cè)電機(jī)驅(qū)動(dòng)器的信號(hào)等8個(gè)模塊構(gòu)成。整個(gè)結(jié)構(gòu)框圖如圖2.4所示。圖2.4 芯片級(jí)系統(tǒng)框圖2.6 板級(jí)功能劃分2.6.1微處理器子系統(tǒng)微處理器子系統(tǒng)包括arm子系統(tǒng)、存儲(chǔ)器子系統(tǒng)和lcd接口、通信接口和串行接口,組成框圖如圖2.3所示。圖2.3 微處理器子系統(tǒng)框圖其中,arm是一種嵌入式處理器,主要負(fù)責(zé)運(yùn)算,存儲(chǔ)器負(fù)責(zé)程序和數(shù)據(jù)的存儲(chǔ)以及文件系統(tǒng),通信接口負(fù)責(zé)加工程序的下載和上傳,并行接口實(shí)現(xiàn)與

35、fpga的通信,串行接口實(shí)現(xiàn)對(duì)da轉(zhuǎn)換器的控制。存儲(chǔ)器子系統(tǒng)包括flash、sdram和nvram。flash存儲(chǔ)程序和文件,sdram存儲(chǔ)系統(tǒng)運(yùn)行時(shí)的程序和數(shù)據(jù),nvram存儲(chǔ)實(shí)時(shí)的系統(tǒng)狀態(tài)。通信接口實(shí)現(xiàn)與pc機(jī)的基于rs232標(biāo)準(zhǔn)的數(shù)據(jù)通信。并行接口實(shí)現(xiàn)與fpga的數(shù)據(jù)通信,串行接口實(shí)現(xiàn)對(duì)da轉(zhuǎn)換器控制。2.6.2 fpga子系統(tǒng)fpga子系統(tǒng)包括fpga、配置電路、下載接口、并行接口,組成框圖如圖2.4所示。圖2.4 fpga子系統(tǒng)框圖配置器件用于在上電時(shí)配置fpga,下載接口用于燒寫配制器件和直接配置fpga,并行接口實(shí)現(xiàn)與cpu子系統(tǒng)的通信。2.6.3 da轉(zhuǎn)換子系統(tǒng)da轉(zhuǎn)換子系統(tǒng)由

36、隔離器件、da轉(zhuǎn)換器和運(yùn)放組成 ,框圖如圖2.5所示。圖2.5 da轉(zhuǎn)換子系統(tǒng)框圖隔離器件在cpu和da轉(zhuǎn)換器之間,屬于數(shù)字隔離方式,與使用模擬光耦或者隔離運(yùn)放相比較,可以降低成本、提高精度,雖然實(shí)際系統(tǒng)模擬輸出的刷新速度會(huì)有一些影響,但是對(duì)于本系統(tǒng)還是可以滿足要求的。2.6.4 信號(hào)隔離與轉(zhuǎn)換子系統(tǒng)信號(hào)隔離與轉(zhuǎn)換子系統(tǒng)由低速量輸出隔離,功率放大,低速輸入隔離,高速輸出隔離,單端差分轉(zhuǎn)換,高速輸入隔離,差分單端轉(zhuǎn)換組成,框圖如圖2.6所示。圖2.6 信號(hào)隔離與轉(zhuǎn)換子系統(tǒng)框圖2.6.4 電源子系統(tǒng)新型的cpu和fpga的內(nèi)核電壓一般都使是2.5v或以下的,io電壓一般都使是3.3v,高速光耦一般

37、也需要5v電壓。根據(jù)要求,要使用現(xiàn)有的980t系統(tǒng)的開光電源,該電源可以提供5v,12v和24v電源。因此,需要電源模塊使用5v產(chǎn)生3.3v和2.5v,為了隔離的需要,還要使用24v產(chǎn)生另外的一個(gè)5v。2.7 芯片級(jí)功能劃分2.7.1 總線接口模塊cpu是通過自己的外部總線與fpga進(jìn)行通信的,因此fpga需要對(duì)cpu的總線信號(hào)進(jìn)行分析,然后進(jìn)行cpu所需要的操作。這就需要總線接口模塊實(shí)現(xiàn)對(duì)cpu的外部總線的處理,根據(jù)地址產(chǎn)生其他各個(gè)模塊內(nèi)的寄存器的讀寫信號(hào),各個(gè)模塊再根據(jù)這些的讀寫信號(hào)進(jìn)行寄存器數(shù)據(jù)的改變或者輸出。2.7.2 復(fù)位控制模塊由于fpga的特點(diǎn)決定了在fpga上電完成配置以后,對(duì)

38、于很多型號(hào)的fpga其內(nèi)部狀態(tài)是不定的,而且不同型號(hào)的fpga配置完成所需要的時(shí)間也是不同的。因此,根據(jù)外部信號(hào)進(jìn)行復(fù)位也是比較麻煩的。而如果fpga的內(nèi)部處于不定狀態(tài)的話,本系統(tǒng)所需要的io口的輸出也是不定的,這樣有可能在cpu對(duì)其io控制邏輯進(jìn)行訪問以前會(huì)輸出有效的輸出,從而造成機(jī)床的運(yùn)動(dòng),這顯然是不允許的。因此,需要有一個(gè)復(fù)位控制模塊,使fpga在配置完畢后自動(dòng)進(jìn)入特定狀態(tài),在這種狀態(tài)下,所有的輸出都是無效的。而且可以通過當(dāng)cpu對(duì)這一模塊的訪問,使fpga進(jìn)入正常的工作狀態(tài)。同時(shí),鑒于fpga的配置方法使其配置信息比較容易被竊取,還可以將這個(gè)模塊用于知識(shí)產(chǎn)權(quán)的保護(hù),仿制竊取。2.7.3

39、 中斷控制模塊在fpga里,定時(shí)器模塊、鍵盤掃描、編碼器計(jì)數(shù)器和驅(qū)動(dòng)器控制器都會(huì)產(chǎn)生中斷信號(hào),共計(jì)7個(gè)中斷信號(hào)。但是cpu的外部中斷口線有限,所以需要fpga有一個(gè)中斷控制器,將這7個(gè)中斷信號(hào)變?yōu)橐粋€(gè)中斷信號(hào)送往cpu。2.7.4 定時(shí)器模塊本系統(tǒng)已經(jīng)計(jì)劃采用uc/osii操作系統(tǒng),雖然uc/osii是專門用于控制的實(shí)時(shí)操作系統(tǒng),但是從外部中斷發(fā)生到任務(wù)切換完成仍然需要一定的時(shí)間,在進(jìn)行高速高精加工時(shí)與不使用操作系統(tǒng)的控制軟件相比是一個(gè)劣勢(shì),為了使本系統(tǒng)有足夠的性能提升空間,在fpga內(nèi)設(shè)計(jì)了定時(shí)器模塊和脈沖數(shù)據(jù)緩沖功能。定時(shí)器模塊可以產(chǎn)生高精度的中斷信號(hào),這個(gè)中斷可以為3個(gè)驅(qū)動(dòng)器控制模塊提供

40、準(zhǔn)確的時(shí)間,配合脈沖數(shù)據(jù)的緩沖功能,驅(qū)動(dòng)器控制器模塊可以立刻開始下一輪的細(xì)插補(bǔ)工作。同時(shí)這個(gè)中斷信號(hào)會(huì)被發(fā)往cpu,然后cpu將新的數(shù)據(jù)寫入fpga。這樣降低了對(duì)cpu定時(shí)器和實(shí)時(shí)任務(wù)切換的依賴性,提高了脈沖的時(shí)間精度。2.7.5 鍵盤掃描模塊控制10x10的掃描鍵盤,具有自動(dòng)掃描、去抖、連續(xù)按鍵功能。當(dāng)檢測(cè)到按鈕按下時(shí),將掃描碼存入到寄存器內(nèi),同時(shí)產(chǎn)生一個(gè)中斷信號(hào)。2.7.6編碼器計(jì)數(shù)器模塊一般的脈沖編碼器輸出的是一對(duì)正交編碼信號(hào)和一個(gè)一轉(zhuǎn)信號(hào)。編碼器計(jì)數(shù)器模塊要實(shí)現(xiàn)對(duì)正交編碼信號(hào)的譯碼和計(jì)數(shù),計(jì)數(shù)結(jié)果要放在模塊的寄存器內(nèi),隨時(shí)供cpu讀取。2.7.7驅(qū)動(dòng)器控制模塊驅(qū)動(dòng)器控制模塊是芯片級(jí)系統(tǒng)

41、里最重要的部分了,她實(shí)現(xiàn)細(xì)插補(bǔ)功能,同時(shí)還要檢測(cè)和控制一些驅(qū)動(dòng)器的io信號(hào)。目前的電機(jī)驅(qū)動(dòng)器已經(jīng)開始大范圍的交流化,通常都可以接受脈沖/方向形式的控制信號(hào)。因此,這個(gè)模塊的主要工作就是要以cpu指定的頻率發(fā)送指定數(shù)量的信號(hào)。2.7. 8 io控制模塊目前計(jì)劃的功能只是簡(jiǎn)單的實(shí)現(xiàn)io口的擴(kuò)展。將來對(duì)系統(tǒng)升級(jí)的時(shí)候可能會(huì)加入簡(jiǎn)單的plc功能。第三章 板級(jí)硬件設(shè)計(jì)3.1 板級(jí)設(shè)計(jì)的原則3.1.1 模塊化設(shè)計(jì)無論是原理圖設(shè)計(jì),還是pcb設(shè)計(jì),都要遵守模塊化設(shè)計(jì)的思想。原理圖模塊化可以使設(shè)計(jì)思路清晰,原理易于掌握,差錯(cuò)容易。pcb模塊化則對(duì)于調(diào)試和可靠性的提高都有很大好處。而且模塊化設(shè)計(jì)對(duì)于系統(tǒng)以后的維

42、護(hù)、升級(jí)都有很多方便。3.1.2 盡量基于成熟的設(shè)計(jì)與廣州數(shù)控的980t系統(tǒng)比較,在總體結(jié)構(gòu)和功能上是類似的,除了cpu、fpga和da外,接口電路和電源都沒有很大變化。在cpu和fpga的選型的時(shí)候要盡量選取自己有過使用經(jīng)驗(yàn)的器件。這樣保證了可以集中精力抓主要矛盾,保證了項(xiàng)目的順利進(jìn)行。3.1.3 可重構(gòu)原則本系統(tǒng)采用的fpga要具有在系統(tǒng)可編程也就是isp(in system programmable)的能力,因此當(dāng)一套產(chǎn)品生產(chǎn)出來以后,還可以改變fpga內(nèi)部的邏輯從而實(shí)現(xiàn)fpga功能的改變。cpu系統(tǒng)也要具有在系統(tǒng)燒寫flash的能力,這樣可以在不動(dòng)器件的情況下改變存儲(chǔ)的程序,從而改變軟

43、件系統(tǒng)的功能。此外,為了將來可能出現(xiàn)的較大規(guī)模的升級(jí),比如添加電機(jī)控制閉環(huán)功能,或者要求能夠多控制一臺(tái)驅(qū)動(dòng)器,還需要將fpga的一部分備用io功能的接口電路用背板的形式處理,這樣將來需要使用這些io口的時(shí)候,可以只添加一塊新的就口電路背板,而不需要重新設(shè)計(jì)整個(gè)主板。3.1.4 兼容性原則由于本項(xiàng)目的特點(diǎn),為了加快開發(fā)速度和便于以后生產(chǎn),要盡量按照980t的現(xiàn)有部件,比如機(jī)箱、開關(guān)電源、lcd、接口電路的器件、接口插件等的標(biāo)準(zhǔn)去設(shè)計(jì),也就是除了控制核心以外,其他的部分都要盡量與980t系統(tǒng)兼容。這樣設(shè)計(jì)出來的系統(tǒng)可以直接使用現(xiàn)有的部件和硬件測(cè)試系統(tǒng),能夠大大的方便后期的調(diào)試和產(chǎn)品化工作。3.2

44、性能分析與初步設(shè)計(jì)3.2.1 cpu計(jì)算能力雖然cpu的計(jì)算能力可以比較準(zhǔn)確的估計(jì),但是由于實(shí)際使用時(shí)的算法不同,所以估計(jì)結(jié)果與最終體現(xiàn)出來的結(jié)果會(huì)有很大差距。由于我們以前沒有過具體的測(cè)試,所以只能根據(jù)現(xiàn)有系統(tǒng)的計(jì)算能力與實(shí)際實(shí)現(xiàn)結(jié)果的資料推測(cè)。目前的980t系統(tǒng)采用的是16位的cpuz180,cisc結(jié)構(gòu),主頻為20mhz,可以控制兩個(gè)軸的運(yùn)動(dòng)和大約40個(gè)io的順序動(dòng)作。同時(shí)完成對(duì)88左右規(guī)模的鍵盤的掃描和lcd的控制。在這些工作中,首先io順序控制幾乎不需要什么運(yùn)算量,然后lcd采用外部的掃描控制芯片,所需cpu的運(yùn)算極少,再然后是鍵盤的掃描。在我們所作的uc/os2系統(tǒng)中,鍵盤掃描是作為

45、一個(gè)任務(wù)實(shí)現(xiàn)的,實(shí)際使用的結(jié)果發(fā)現(xiàn),還是需要耗費(fèi)不少cpu的運(yùn)算量的。但是在原先的系統(tǒng)中沒有使用操作系統(tǒng),節(jié)省了很多任務(wù)切換和內(nèi)部信號(hào)量處理時(shí)間,所以應(yīng)該不會(huì)耗費(fèi)多少cpu的運(yùn)算資源。這樣,絕大多數(shù)運(yùn)算資源是用來實(shí)現(xiàn)兩個(gè)軸的運(yùn)動(dòng)控制的,而且全部都是4字節(jié)或者8字節(jié)的運(yùn)算?,F(xiàn)在是使用32位的cpu替代現(xiàn)有的cpu,具體型號(hào)就是s3c44b0x。該cpu屬于arm7tdmi結(jié)構(gòu),risc,最高速度66mhz。由于數(shù)控系統(tǒng)的工作條件比較惡劣,所以假設(shè)降頻使用,20khz。首先,由于s3c44b0x是32位cpu,內(nèi)部有8kb緩存,所以使用緩存時(shí),僅從位數(shù)上來說,運(yùn)算能力差不多是原先cpu的兩倍。但是

46、要考慮如下幾個(gè)不利因素:(1)arm7tdmi是risc結(jié)構(gòu),代碼效率不如cisc,也就是相同頻率、相同位數(shù)的條件下,在運(yùn)行一般程序的時(shí)候,cisc系統(tǒng)可以完成更多的運(yùn)算。(2)s3c44b0x內(nèi)部帶lcd控制器,當(dāng)lcd刷新時(shí)需要dma操作,這是就會(huì)占用數(shù)據(jù)總線,從而影響cpu的運(yùn)算。(3)設(shè)想中使用操作系統(tǒng),操作系統(tǒng)通常占cpu時(shí)間資源的35。以及如下幾個(gè)有利因素:(1)arm7tdmi帶有部分dsp指令,這幾條指令對(duì)于數(shù)控這樣需要大量數(shù)學(xué)運(yùn)算的應(yīng)用十分有用。(2)由于可尋址的存儲(chǔ)器大大增加,編程時(shí)可以根據(jù)速度要求優(yōu)化。(3)arm7tdmi可以達(dá)到0.9 mips/mhz,幾乎都是單周期

47、指令。綜合以上幾個(gè)因素,估計(jì)數(shù)學(xué)運(yùn)算能力,尤其是需要dsp運(yùn)算的數(shù)學(xué)運(yùn)算,arm7tdmi至少可以達(dá)到2倍于16位cpu的能力。而對(duì)于布爾運(yùn)算和位運(yùn)算,由于arm7tdmi的0.9 mips/mhz,優(yōu)勢(shì)會(huì)更明顯。因此,單從數(shù)學(xué)運(yùn)算角度上分析,可以控制4個(gè)軸的運(yùn)動(dòng)。這些都是在20mhz的條件下估計(jì)的,如果將來發(fā)現(xiàn)cpu還是不夠用,可以提高主頻。3.2.2 實(shí)時(shí)性實(shí)時(shí)性主要包括相應(yīng)時(shí)間和相應(yīng)時(shí)間是否固定兩個(gè)方面。首先,對(duì)于lcd的刷新問題,當(dāng)時(shí)用dma方式時(shí),在dma傳送過程中不能相應(yīng)中斷,所以將不采用dma方式。又由于arm7tdmi的中斷系統(tǒng)復(fù)雜,所以中斷相應(yīng)會(huì)比z180慢,但是肯定可以滿足

48、實(shí)時(shí)性的要求。但是,實(shí)際使用時(shí)是帶操作系統(tǒng)的,這樣就決定了是否實(shí)時(shí)很大程度上依賴于操作系統(tǒng)的實(shí)時(shí)性。uc/os2是專門用于控制領(lǐng)域的實(shí)時(shí)操作系統(tǒng),他的中斷相應(yīng)時(shí)間是固定的。因此,問題集中在響應(yīng)時(shí)間上。當(dāng)采用不同的軟件結(jié)構(gòu)的時(shí)候,相應(yīng)時(shí)間是不一樣的,這里不想過多討論軟件問題,僅從硬件上討論如何讓軟件有一個(gè)良好的運(yùn)行基礎(chǔ)。本系統(tǒng)的實(shí)時(shí)性最強(qiáng)的任務(wù)就是電機(jī)的運(yùn)動(dòng)控制。在本系統(tǒng)中,使用fpga產(chǎn)生脈沖信號(hào)。這個(gè)方法與980t使用cpldmax7128產(chǎn)生信號(hào)的方法是一樣的,但是現(xiàn)在是使用acex系列fpga,其邏輯容量比max7128有很大的提高。利用大量的邏輯資源可以實(shí)現(xiàn)很多復(fù)雜的邏輯。首先就是實(shí)現(xiàn)

49、脈沖數(shù)據(jù)的緩沖。由于電機(jī)控制的實(shí)時(shí)性要求,當(dāng)所需要發(fā)的脈沖發(fā)完以后再向cpu中斷,然后cpu再發(fā)送新一組數(shù)據(jù),顯然不合理,而且如果cpu正在中斷處理之中,無法及時(shí)相應(yīng)就更麻煩了。所以在fpga內(nèi)部添加一級(jí)緩沖,也就是當(dāng)fpga在按照cpu給定的數(shù)據(jù)發(fā)送脈沖的時(shí)候,cpu可以向fpga寫入下一次要發(fā)送的脈沖的數(shù)據(jù),這樣,當(dāng)fpga發(fā)送完本次的數(shù)據(jù)后可以立即開始發(fā)送下一個(gè)數(shù)據(jù),可以做到絕對(duì)的實(shí)時(shí)。由于有fpga的緩沖,cpu的實(shí)時(shí)性要求大大降低,對(duì)于軟件的規(guī)劃有很大方便之處。3.2.3 存儲(chǔ)能力32位的s3c44b0x與原先的16位cpu z180其數(shù)據(jù)、程序存儲(chǔ)器各64kb,相比程序、數(shù)據(jù)存儲(chǔ)能

50、力的擴(kuò)充可以說非常非常大。s3c44b0x的程序、數(shù)據(jù)存儲(chǔ)范圍是256mb,但是由于某些地址被內(nèi)部占用,還有一些受地址總線的限制,實(shí)際所能擴(kuò)充的可尋址范圍要小一些。而且s3c44b0x可以使用sdram,大大提高了存儲(chǔ)密度,降低了成本。sdram最多可以擴(kuò)充到64mb。這對(duì)于高級(jí)一些的應(yīng)用是足夠的了。同時(shí),在系統(tǒng)中還有nand flash,這是類似電子盤的器件,容量為16mb,在pcb不變的情況下可以還用128mb容量。3.2.4 fpga的選擇和io擴(kuò)展能力acex1k是altera公司的基于sram技術(shù)的,用于低端應(yīng)用的高性價(jià)比fpga,分為1k10、1k30、1k50和1k100,容量分

51、別為1萬、3萬、5萬、10萬門,雖然容量不同,但是在相同封裝的情況下管腳兼容(個(gè)別情況出外)。根據(jù)需求,順序控制io需要72個(gè),鍵盤需要20個(gè),電機(jī)驅(qū)動(dòng)器接口需要18個(gè),主軸、手輪需要5個(gè),共計(jì)115個(gè)。顯然s3c44b0x自身的io口線顯然不能滿足要求。本系統(tǒng)采用fpga來擴(kuò)展io。采用acex的1k50或者1k100,208腳pgfp封裝的芯片,共有147個(gè)用戶可用io。其中,部分用于實(shí)現(xiàn)與s3c44b0x的通信,需要大約30個(gè)。這樣,剩余的io口可以滿足需要。為了調(diào)試需要,樣機(jī)會(huì)采用1k100,一旦電路成熟以后可以根據(jù)實(shí)際需要采用較小容量的芯片。3.2.5 實(shí)現(xiàn)方案根據(jù)需求,主要器件的選

52、擇方案如下:(1)cpu采用s3c44b0x,存儲(chǔ)系統(tǒng)包括2mb的flasham29lv160,用于存儲(chǔ)程序;32mb的sdramhy57v561620,用于存儲(chǔ)運(yùn)行時(shí)的程序和數(shù)據(jù);32kb的nvramds1230,兩片,用于實(shí)時(shí)保存數(shù)據(jù);16mb的nand flashk9f2808u,用于實(shí)現(xiàn)文件系統(tǒng);(3)fpga采用208腳的ep1k50,配置存儲(chǔ)器使用epc2。(4)da轉(zhuǎn)換器采用ad7243,010v輸出。(5)電源模塊采用兩片lm1085和一片lm2575,分別用于產(chǎn)生各種電壓。3.3 cpu子系統(tǒng)3.3.1 arm子系統(tǒng)arm子系統(tǒng)包括s3c44b0x型嵌入式cpu,時(shí)鐘、復(fù)位電

53、路,jtag接口和實(shí)時(shí)時(shí)鐘rtc(real time counter)電路。s3c44b0x除了具有arm7tdmi內(nèi)核以外,還具有多種片內(nèi)外圍設(shè)備,主要包括存儲(chǔ)器接口、lcd控制器、異步串口、同步串口、通用io等。時(shí)鐘采用的是6mhz外部晶體,利用arm片內(nèi)的pll模塊,可以將cpu的運(yùn)行速度提高到66mhz。復(fù)位電路沒有使用普通的阻容復(fù)位,而是采用的復(fù)位專用芯片imp811t,該芯片具有電壓監(jiān)視和手動(dòng)復(fù)位輸入功能。當(dāng)供電電壓小于3.08v時(shí)輸出復(fù)位信號(hào)。jtag接口按照arm公司的建議電路設(shè)計(jì)。要特別說明的是由于arm7tdmi內(nèi)部jtag的設(shè)計(jì)不是實(shí)現(xiàn)通過jtag接口控制整個(gè)芯片的復(fù)位,

54、所以這里把系統(tǒng)的復(fù)位信號(hào)通過一個(gè)跳線與ntrst相連,這樣可以讓s3c44b0x里邊的jtag狀態(tài)機(jī)與其他部分同時(shí)復(fù)位。圖3.1 jtag接口rtc電路用于在掉電時(shí)維持s3c44b0x內(nèi)的實(shí)時(shí)時(shí)鐘電路的運(yùn)行,經(jīng)過軟件的初始化以后,該電路可以為系統(tǒng)提供準(zhǔn)確的絕對(duì)時(shí)間。rtc電路的電源部分比較重要,為了長久的使用rtc功能,必須要給在掉電的時(shí)候?yàn)閞tc電路供電的電池充電。rtc電路的電源部分的電路如圖3.2所示,vdd33為3.3v,vddrtc為2.5,是rtc的電源,vdd5為5伏。圖3.2 rtc供電電路由于二極管的正向壓降與所通過的電流有關(guān),在實(shí)際測(cè)試中發(fā)現(xiàn),當(dāng)電池處于電量滿的時(shí)候,上電前

55、dd2005和dd2003總共的壓降為0.8v左右,這樣vddrtc可以穩(wěn)定在2.8v。上電后每個(gè)dd2004和dd2000總共的壓降為0.2v左右,這樣vddrtc可以穩(wěn)定在2.9v。仍然處于s3c44b0x數(shù)據(jù)手冊(cè)上的說明的工作電壓范圍之內(nèi)。3.3.2 存儲(chǔ)器子系統(tǒng)1nor flash采用am29lv160b,2mbyte,用于存儲(chǔ)啟動(dòng)代碼,該代碼完成對(duì)s3c44b0x的初始化,然后將主程序從自身復(fù)制到sdram里。實(shí)際存儲(chǔ)容量需要根據(jù)主程序存放的位置不同,相差較大,但是為了調(diào)試采用了較大的。由于s3c44b0x復(fù)位后自動(dòng)從0x00000000開始之行,所以該flash使用了bank0。2sdram采用hy57v561620,32mbyte,用于存儲(chǔ)運(yùn)行時(shí)的主程序和常量。由于s3c44b0x的限制,只有bank6和bank7可以使用sdram,所以,該芯片使用bank6,起始地址是0xc0000000。3nand flash采用k9f2808u,16mbyte,用于存儲(chǔ)文件和資源,使用bank1。由于非線性flash的特點(diǎn),

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論