基于ARM設(shè)計的嵌入式數(shù)控系統(tǒng)方案
摘要:本文介紹了基于ARM的嵌入式數(shù)控系統(tǒng)。該系統(tǒng)為主從式結(jié)構(gòu),上位機以ARM9為核心,實現(xiàn)人機交互,下位機以ARM7為核心,結(jié)合FpGA實現(xiàn)機床的運動控制,上下住機通過CAN總線進行通信。
本文引用地址:http://m.butianyuan.cn/article/151188.htm傳統(tǒng)的數(shù)控系統(tǒng)通常是在通用計算機或工控機的基礎(chǔ)上加裝運動控制卡,使用Windows操作系統(tǒng),并安裝昂貴的數(shù)控軟件構(gòu)成的。此類系統(tǒng)成本高,功耗大,不太適合中小規(guī)模的應(yīng)用場合。而嵌入式產(chǎn)品具有系統(tǒng)結(jié)構(gòu)精簡、功耗低等特點,能彌補傳統(tǒng)數(shù)控系統(tǒng)的不足。
目前,嵌入式數(shù)控系統(tǒng)主要有兩種形式:完全依靠嵌人式處理器控制的系統(tǒng)以及嵌入式處理器和運動控制芯片相結(jié)合的系統(tǒng)。與前者相比,后者南于采用了專業(yè)的運動控制芯片,在實時性和精度等方面的表現(xiàn)更好,因而成為未來的一個發(fā)展方向。本文介紹了一種基于ARM控制器和FPGA運動控制芯片的主從式數(shù)控系統(tǒng),希望能為AR M在嵌入式數(shù)控系統(tǒng)中的應(yīng)用提供一些參考。
1 總體設(shè)計
本系統(tǒng)為主從式結(jié)構(gòu)。上位機以S3C2410 ARM9控制器為核心,移植Linux系統(tǒng)和QT/Embedded圖形庫,主要實現(xiàn)G代碼文件處理、加工位置的顯示、手動控制等人機交互功能。下位機以$3C44B0 ARM7控制器為核心,斯邁迪的SM5004 FPGA芯片為運動控制器,實現(xiàn)電機驅(qū)動、冷卻液開關(guān)、緊急停止等機床控制功能。上下位機通過CAN總線通信。
2 硬件設(shè)計
2.1CAN接口設(shè)計
由于S3C2410和S3C44B0不帶CAN接口,所以必須對其進行擴展。S3C2410的CAN 擴展接El如圖1所示,S3CA4B0的CAN接口與其相似。
系統(tǒng)的CAN控制器使用MCP2510芯片。MCP2510的復(fù)位引腳RESET與$3C2410的復(fù)位引腳nRESET相連,片選引腳CS與S3C2410的GPH0相連。OSC1和OSC2引腳連接一個16M 的晶振作為時鐘源。SI、SO和SCK分別與S3C2410的SPI El MOSIO、MISO0和SPICLKO相連。如果SPI口被其它設(shè)備占用,也可用其它的I/O El代替,但要編寫軟件算法來模擬SPI的讀寫操作。系統(tǒng)采用中斷方式讀寫MCP2510,因此它的INT引腳與S3C2410的外部中斷引腳EINT4相連。在外部中斷引腳資源比較緊張的情況下,也可使用查詢方式讀寫MCP2510,此時INT可以懸空。
系統(tǒng)的CAN 收發(fā)器使用TJA105O芯片,該芯片的TXD和RXD與MCP2510的TXCAN和RXCAN相連,Rs引腳連接的斜率電阻為1K。
TJAlOS0輸出CANH、CANL差分信號,通過J1001插口接人物理線路。
2.2輸入輸出接口設(shè)計
S3C44B0 ARM 和SM5004 FPGA芯片提供了很多通用輸入輸出接口,為了有效的防止干擾進入系統(tǒng),這里采用了光耦隔離,如圖2所示。
在低速開關(guān)量中,由圖2(a)可以看出,這里采用貼片低速光耦MOCD217一M。它是Motorola公司的產(chǎn)品,是具有低輸入電流的雙路光耦。之所以這里在接人輸入口之前加入電阻R3,是因為ARM 中的部分I/0 口是開漏式的,防止在輸入輸出過程中電流過大,將相應(yīng)口燒壞。如圖2(b)在高速開關(guān)量中,采用HC—PL0661雙路光耦進行擴展,它是Agilent Technologies公司的產(chǎn)品,其開關(guān)速率可達到1O M左右,可應(yīng)用于各種高速脈沖輸入輸出的場合。
linux操作系統(tǒng)文章專題:linux操作系統(tǒng)詳解(linux不再難懂)
評論