基于I2C和雙ARM的PCB鉆床控制器設(shè)計
1.引言
印刷電路板鉆床是印刷電路板生產(chǎn)中的重要裝備,隨著電子產(chǎn)品加工要求的提高,低檔的基于單片機的PCB 鉆床控制器已經(jīng)很難滿足要求。ARM7TDMI 是20 世紀末ARM 公司提出的一種32 位的RISC 微控制器結(jié)構(gòu), 基于該內(nèi)核的芯片種類豐富,具有運行速度高,功耗小和價格低的特點。本文介紹了一種基于雙ARM 結(jié)構(gòu)的PCB 鉆床控制器,它既解決傳統(tǒng)低檔鉆床控制系統(tǒng)性能不高的缺點,同時又具有很高的經(jīng)濟性,是高檔PCB 鉆床理想的控制器。
數(shù)控系統(tǒng)按結(jié)構(gòu)分,一般有單 CPU 和多CPU 之分[5]。單CPU 一般采用集中控制分時處理的方式完成數(shù)控系統(tǒng)的各項任務(wù)。它具有結(jié)構(gòu)緊湊的特點,但是功能相對比較簡單。多CPU 結(jié)構(gòu)的數(shù)控系統(tǒng)采用多CPU 并行處理,可以使系統(tǒng)達到更高的性能。多CPU 一般采用共享總線或共享存儲器方式進行通信。鉆床控制器的控制對象比較復(fù)雜:需要控制4套松下MINAS交流伺服系統(tǒng),4個主軸電機以及9路開關(guān)量輸入,11路繼電器輸出。如果控制器采用單CPU結(jié)構(gòu),控制器需要擴展較多硬件,增加系統(tǒng)成本,降低了系統(tǒng)可靠性;如果控制器采用雙CPU結(jié)構(gòu),控制器可以根據(jù)功能進行分層設(shè)計:將信息處理量大的人機交互系統(tǒng)任務(wù)交由一個CPU負責(zé),而機床運動控制交由另一個CPU來處理。這樣減少了外擴硬件的數(shù)量,降低了成本,提高了可靠性。具體是指:控制器用三星公司生產(chǎn)的S3C44B0X作為人機交互系統(tǒng)的CPU,用飛利浦公司生產(chǎn)的LPC2214作為機床運動控制系統(tǒng)的CPU。
2.控制器的硬件設(shè)計
控制器由系統(tǒng)板和接口板組成:系統(tǒng)板是由LPC2214 和S3C44B0X 及其相關(guān)外圍電路構(gòu)成的,是控制器的核心;接口電路板主要負責(zé)系統(tǒng)板和機床電器之間的驅(qū)動,電平匹配。系統(tǒng)的硬件結(jié)構(gòu)參考圖1。
圖1 控制器硬件結(jié)構(gòu)圖
2.1 控制器系統(tǒng)板硬件設(shè)計
控制器系統(tǒng)板由兩個子系統(tǒng)組成:人機交互系統(tǒng)和機床運動控制系統(tǒng)。人機交互系統(tǒng)和機床運動控制系統(tǒng)通過I2C 總線進行數(shù)據(jù)交換。I2C 總線是飛利浦公司提出的串行總線,具有速度較高,硬件連接十分簡單,無需增加硬件的特點。
2.1.1 控制器人機交互系統(tǒng)的硬件設(shè)計
控制器人機交互系統(tǒng)采用 S3C44B0X 為核心,擴展一系列硬件,構(gòu)成一個具有完善的人機交互功能的系統(tǒng)。系統(tǒng)擴展了一片具有16 位數(shù)據(jù)寬度,2MB 的存儲空間的NOR 型Flash 存儲器芯片SST39VF1601 作為系統(tǒng)程序存儲器。為了提高系統(tǒng)程序的執(zhí)行速度,我們擴展了一片1M*4Bank*16I/O 的HY57V641620 型SDRAM。系統(tǒng)一上電,系統(tǒng)初始化程序就把SST39VF1601 中存儲的系統(tǒng)程序拷貝到HY57V641620 中,同時,系統(tǒng)程序的數(shù)據(jù)存儲區(qū)也在HY57V641620 中,這樣系統(tǒng)程序可以完全在SDRAM 中運行。為了保證機床鉆孔文件在機床停電后仍然能夠保存,系統(tǒng)擴展了一片16MB NandFlash 芯片K9F2808 作為系統(tǒng)的電子硬盤。由于S3C44B0X 自帶液晶顯示控制器,所以系統(tǒng)選用三菱公司生產(chǎn)的不帶液晶顯示控制器的STN 型256 色640x480 像素的EDMGRB8KHF 液晶顯示模塊作為機床信息的輸出。系統(tǒng)操作信息的輸入采用PS/2 鍵盤。系統(tǒng)通過RS232 串口從PC 機上下載鉆孔文件。為了方便系統(tǒng)調(diào)試程序,人機交互系統(tǒng)設(shè)計了一個JTAG 口。
機床的一些重要的參數(shù)例如像機床進給軸絲杠的螺距,交流伺服系統(tǒng)的脈沖當(dāng)量等數(shù)據(jù)需要永久保存,所以系統(tǒng)擴展了一片512B 的基于I2C 總線的EEPROM 芯片AT24C04 。機床人機交互系統(tǒng)電路結(jié)構(gòu)如圖1 控制器系統(tǒng)板中以S3C44B0X 為中心的硬件結(jié)構(gòu)。
2.1.2 機床運動控制系統(tǒng)硬件設(shè)計
機床運動控制系統(tǒng)的核心是 LPC2214 微控制器。LPC2214 內(nèi)部自帶256KB 的flash存儲器和16KB 的SRAM,無需外擴程序存儲器和數(shù)據(jù)存儲器。系統(tǒng)設(shè)計了一個RS232串口,用于LPC2214 系統(tǒng)程序的ISP 下載。為了便于調(diào)試程序,運動控制系統(tǒng)設(shè)計了一個JTAG 口。機床運動控制系統(tǒng)電路結(jié)構(gòu)如圖1 控制器系統(tǒng)板中以LPC2214 為中心的硬件結(jié)構(gòu)。機床電器都通過接口電路直接與LPC2214 相連。其引腳分配如下所示:
2.1.3 人機交互系統(tǒng)和機床運動控制系統(tǒng)的通信
數(shù)控系統(tǒng)的加工指令經(jīng)過S3C44B0X 的處理后要傳給LPC2214 進行執(zhí)行,而LPC2214執(zhí)行的結(jié)果要返回給S3C44B0X 進行處理和顯示。系統(tǒng)采用I2C 總線進行通信。S3C44B0X工作在主器件模式,而AT24C04 和LPC2214 工作在從模式。AT24C04 的從地址是0xa0,LPC2214 的從地址是0x50,I2C 的速率
評論