《電子技術(shù)應(yīng)用》
您所在的位置:首頁 > 可編程邏輯 > 設(shè)計(jì)應(yīng)用 > 基于μC/OS-II的數(shù)碼噴墨控制系統(tǒng)的設(shè)計(jì)與研究
基于μC/OS-II的數(shù)碼噴墨控制系統(tǒng)的設(shè)計(jì)與研究
來源:微型機(jī)與應(yīng)用2013年第19期
劉 晉,楊一晨,顧彬彬
(遼寧師范大學(xué) 計(jì)算機(jī)與信息技術(shù)學(xué)院,遼寧 大連 116081)
摘要: 選取Altera公司Cyclone II系列EP2C8Q208芯片作為新型高速數(shù)字噴墨印刷機(jī)控制系統(tǒng)的開發(fā)平臺(tái),以μC/OS-II作為印刷機(jī)控制的實(shí)時(shí)系統(tǒng),通過Nios II 11.0 Eclipse,運(yùn)用Nios II軟核處理器技術(shù)來生成μC/OS II實(shí)時(shí)操作系統(tǒng)模塊,通過系統(tǒng)編程來實(shí)現(xiàn)新型數(shù)字噴墨印刷機(jī)控制系統(tǒng)。通過軟硬件測(cè)試,驗(yàn)證了該系統(tǒng)的穩(wěn)定性和可操作性。
Abstract:
Key words :

摘  要: 選取Altera公司Cyclone II系列EP2C8Q208芯片作為新型高速數(shù)字噴墨印刷機(jī)控制系統(tǒng)的開發(fā)平臺(tái),以μC/OS-II作為印刷機(jī)控制的實(shí)時(shí)系統(tǒng),通過Nios II 11.0 Eclipse,運(yùn)用Nios II軟核處理器技術(shù)來生成μC/OS II實(shí)時(shí)操作系統(tǒng)模塊,通過系統(tǒng)編程來實(shí)現(xiàn)新型數(shù)字噴墨印刷機(jī)控制系統(tǒng)。通過軟硬件測(cè)試,驗(yàn)證了該系統(tǒng)的穩(wěn)定性和可操作性。
關(guān)鍵詞: 噴繪機(jī)FPGA;Nios II;狀態(tài)機(jī);控制系統(tǒng)

 隨著我國(guó)經(jīng)濟(jì)的快速增長(zhǎng),加速了我國(guó)印刷業(yè)的發(fā)展。由于數(shù)字噴墨印刷發(fā)展平緩,尤其是價(jià)格上卻比傳統(tǒng)的噴墨印刷機(jī)高出很多,導(dǎo)致傳統(tǒng)的噴墨印刷機(jī)仍然占據(jù)相當(dāng)大的市場(chǎng)。針對(duì)上述情況,對(duì)于新型數(shù)字噴墨印刷機(jī)的研究是十分必要的。
1 系統(tǒng)硬件設(shè)計(jì)
 在設(shè)計(jì)中,采用Altera公司的Cyclone II系列[1]芯片EP2C8Q208為核心芯片,結(jié)合Nios II軟核來產(chǎn)生系統(tǒng)處理器,并利用可編程電路導(dǎo)出外圍電路。設(shè)計(jì)中采用SoPC Builder[2]來構(gòu)建。這里選用μC/OS-II系統(tǒng)來調(diào)度整個(gè)任務(wù),因?yàn)?mu;C/OS-II是源代碼完全開源的,具有可剝奪實(shí)時(shí)內(nèi)核,同時(shí)其執(zhí)行效率高,占用的空間小,系統(tǒng)中僅僅包含了任務(wù)調(diào)度、任務(wù)管理、時(shí)間管理、內(nèi)存管理和任務(wù)間通信以及同步機(jī)制等功能。
 如圖1所示,設(shè)計(jì)中以FPGA為核心,協(xié)同Nios II[3-4]軟核工作。首先通過CY7C68013的USB芯片,從上位機(jī)上或者SD卡中獲取待噴印的文件內(nèi)容,并實(shí)時(shí)下發(fā)。通過NiosII軟核的控制與處理,輸送到數(shù)據(jù)傳輸/變換模塊中,通過同步模塊來實(shí)現(xiàn)文件內(nèi)容的實(shí)時(shí)傳輸以及針對(duì)文件的內(nèi)容,調(diào)整運(yùn)動(dòng)控制中的運(yùn)動(dòng)噴繪位置,來精確地實(shí)現(xiàn)運(yùn)動(dòng)控制,同時(shí)獲得反饋狀態(tài)信息以及同步輸送控制命令。在此期間,噴繪機(jī)的機(jī)械參數(shù)存放在24C02的存儲(chǔ)芯片中。通過LCD接口,結(jié)合GUI的界面以及按鍵接口,實(shí)現(xiàn)人機(jī)交互,在項(xiàng)目實(shí)現(xiàn)中,通過JTAG口以及UART串口進(jìn)行調(diào)試。

 Nios II軟核是由中央處理單元、配套組件以及外圍設(shè)備所組成的,并通過Avalon總線連接構(gòu)成的處理器系統(tǒng)。這里通過Altera的SoPC Builder軟件來配置Nios II CPU,并利用自動(dòng)形成的Avalon總線將這些模塊連接在一起。這里采用的RISC架構(gòu),同時(shí)根據(jù)實(shí)際的板級(jí)時(shí)鐘設(shè)置為50 MHz,設(shè)置了相應(yīng)的地址信息。
2 系統(tǒng)軟件設(shè)計(jì)
2.1 總體任務(wù)框架

 在整個(gè)軟件架構(gòu)中,由于存在低速設(shè)備與高速設(shè)備的不匹配問題,所以需要嚴(yán)格劃分各個(gè)任務(wù)。在主控的調(diào)度下,首先通過高速輸入ISR獲得高速數(shù)據(jù),經(jīng)過處理后,由高速數(shù)據(jù)輸出通道輸出,并實(shí)時(shí)噴印。針對(duì)命令以及一些機(jī)械參數(shù)、狀態(tài)等低速數(shù)據(jù),則通過低速數(shù)據(jù)輸入ISR的通道進(jìn)入,并進(jìn)行相應(yīng)的處理。當(dāng)進(jìn)行離線文件噴印時(shí),則可直接對(duì)SD卡操作,SD是通過SPI總線來與主控之間通信。必要時(shí),一部分的參數(shù)也可以存放在EEPROM,這部分主要通過IIC來與主控通信,存放的內(nèi)容則用于校準(zhǔn)機(jī)器。另外通過LCD上的GUI,配合KEY來實(shí)現(xiàn)實(shí)時(shí)的人機(jī)交互。具體過程如圖2所示。

2.2 ISR任務(wù)間通信機(jī)制的設(shè)計(jì)
 本設(shè)計(jì)中,通過以μC/OS-II系統(tǒng)為平臺(tái),在其之上運(yùn)行諸多任務(wù),根據(jù)任務(wù)的特性,不同任務(wù)之間也采用不同的通信機(jī)制。ISR任務(wù)間通信機(jī)制的設(shè)計(jì)如圖3所示。

 (1)按鍵消抖任務(wù)通過KEY_ISR的全局變量來識(shí)別出上報(bào)的鍵值,同時(shí)轉(zhuǎn)換成相應(yīng)的命令,通過μC/OS-II的郵箱通信機(jī)制KEY_BOX傳送給主控任務(wù)。
?。?)低速設(shè)備輸入的任務(wù)通過低速數(shù)據(jù)ISR的全局變量來控制,經(jīng)過USB傳輸進(jìn)來的數(shù)據(jù)同樣通過μC/OS-II的郵箱通信機(jī)制KEY_BOX,實(shí)現(xiàn)和主控任務(wù)的通信。
?。?)EEPROM的讀寫是通過IIC的協(xié)議來操作的。首先會(huì)收到主控的EEP_REQ_BOX郵箱消息,通過這條請(qǐng)求中包含讀寫控制字,主控開始實(shí)現(xiàn)對(duì)EEPROM的讀寫,當(dāng)主控讀寫完畢時(shí),則通過EEP_ACK_BOX的郵箱消息通知其讀寫完畢,完全根據(jù)IIC的協(xié)議來進(jìn)行操作。類似的方式也適用于SD的讀寫中。
?。?)低速設(shè)備由于是CPU來控制的,所以這里則只需要CPU關(guān)注速度匹配問題即可。
?。?)高速數(shù)據(jù)的傳輸根據(jù)方向分為輸入與輸出,在輸入上,由于是CPU來控制的,所以直接采用DMA的方式,通過一個(gè)DMA_TC的事件即可。而對(duì)于輸出而言,底層需要有塊設(shè)備的驅(qū)動(dòng)支持,之后直接通過DMA的控制器向主控發(fā)送DMA_TC_SEM來實(shí)現(xiàn)傳輸,傳輸中的同步問題,則采用SY_O_SEM以及SY_I_SEM來完成。
3 系統(tǒng)總控狀態(tài)機(jī)[5]
 系統(tǒng)的總體狀態(tài)圖如圖4所示,是系統(tǒng)在不同時(shí)刻的狀態(tài)切換過程。通過箭頭的走向,以及箭頭上方相應(yīng)的條件,來切換狀態(tài)機(jī)的狀態(tài)。剛開始上電時(shí),系統(tǒng)的主窗口狀態(tài)為00000,之后可以選用打印的方式,通過人機(jī)交互的方式,進(jìn)而切換到不同的狀態(tài),從而靈活地調(diào)度與切換各個(gè)狀態(tài)。

 

 

 本文針對(duì)噴墨印刷機(jī)的控制系統(tǒng)做了很大的改進(jìn),提高了打印的速度以及精度,線條也更加圓滑,曲線的鋸齒也有很大的提高,并能滿足大幅面的噴墨需求。但是還存在一定的問題,例如縱向馬達(dá)在速度控制上還不是很平穩(wěn)。傳輸速度上,USB2.0的速度還是比較慢,急切需要USB3.0的合入來解決大數(shù)據(jù)傳輸問題。噴墨的溫壓曲線部分還有待提高,從而確保圖像的美感度??傊?,該控制系統(tǒng)具有很好的應(yīng)用前景。
參考文獻(xiàn)
[1] 崔桂梅,崔巍,龐海靜,等.基于SoPC的硬件直線插補(bǔ)控制器設(shè)計(jì)[J].微特電機(jī),2011,39(5):56-57.
[2] 劉延飛.基于Alter FPGA/CPLD的電子系統(tǒng)設(shè)計(jì)及工程實(shí)踐[M].北京:人民郵電出版社,2009.
[3] 周潤(rùn)景.基于Quartus II的FPGA/CPLD數(shù)字系統(tǒng)設(shè)計(jì)實(shí)例[M].北京:電子工業(yè)出版社,2007.
[4] 孟芳,于立佳.基于Nios II的SOPC系統(tǒng)設(shè)計(jì)分析[J].無線電通信技術(shù),2012,28(1):73-76.
[5] 李春霞.有限狀態(tài)機(jī)的VHDL描述及綜合[J].計(jì)算機(jī)工程與應(yīng)用,2005(6):111-113.
[6] 徐藝文,魏云龍.利用μC/OS任務(wù)調(diào)度算法實(shí)現(xiàn)嵌入式數(shù)據(jù)管理[J].單片機(jī)與嵌入式系統(tǒng),2011(5):25-27.

此內(nèi)容為AET網(wǎng)站原創(chuàng),未經(jīng)授權(quán)禁止轉(zhuǎn)載。