關(guān)鍵字: DSP" title="DSP">DSP控制 USB接口" title="USB接口">USB接口 速印機(jī)" title="速印機(jī)">速印機(jī)
1引言
速印機(jī)(也稱速印一體機(jī))是指通過數(shù)字掃描,數(shù)碼熱敏頭制版成像的方式進(jìn)行工作,,從而實(shí)現(xiàn)印刷速度在每分鐘100張以上的印刷設(shè)備,。速印機(jī)印速快、成本低,、耗電少,、維護(hù)方便,使其廣泛應(yīng)用于經(jīng)常大批量印刷的學(xué)校,、機(jī)關(guān)中,。所以近幾年來國(guó)內(nèi)外對(duì)速印機(jī)的研究也在不斷升溫。本文提出了一種將圖像處理和電機(jī)控制功能集成于一片DSP芯片內(nèi),,并支持電腦直接打印輸出功能的解決方案,。
2 系統(tǒng)硬件組成
本文設(shè)計(jì)的速印機(jī)的控制系統(tǒng)主要組成部分有:面板控制器(選用80C51單片機(jī))、DSP(選用TI公司的TMS320F2812),、FPGA(選用ALTERA公司的EP1C6Q240C8),、USB芯片(選用Cypress公司的CY7C68013)、CIS(接觸式圖像傳感器),、TPH(熱敏打印頭),、SDRAM、按鍵,、液晶顯示器,、電機(jī),、電磁開關(guān)、傳感器等,。其硬件結(jié)構(gòu)框圖如圖1所示 圖1 系統(tǒng)硬件結(jié)構(gòu)框圖
3 工作原理
僅使用速印功能時(shí),,其工作流程可分為制版和印刷兩步。制版工作流程為:待制版鍵按下后,,面板控制器將制版信號(hào)通過串口送至DSP(數(shù)字信號(hào)處理器),,DSP通過中斷響應(yīng)制版信號(hào),并啟動(dòng)掃描電機(jī)和DSP片上的ADC模塊,,同時(shí)DSP通過握手信號(hào)告知FPGA(可編程邏輯門陣列)啟動(dòng)CIS,。FPGA產(chǎn)生CIS的時(shí)鐘信號(hào)CLK,、選通輸入信號(hào)SI及各色光源選通信號(hào),,并通過這幾個(gè)信號(hào)產(chǎn)生的相應(yīng)時(shí)序控制CIS通過模擬信號(hào)輸出引腳SIG向ADC模塊串行移位輸出對(duì)應(yīng)像素的灰度。DSP把掃描到的圖像數(shù)據(jù)通過γ補(bǔ)償,、濾波,、二值化、數(shù)字半色調(diào)圖像處理后,,把數(shù)據(jù)存放在SDRAM存儲(chǔ)器中,,并通過握手信號(hào)通知FPGA從SDRAM存儲(chǔ)器中提取光柵數(shù)據(jù)并控制熱敏打印頭將其燒寫在版紙(也稱蠟紙)上,制版結(jié)束,。
印刷工作流程為:印刷按鍵按下后,,版紙牽引電機(jī)和壓版電機(jī)配合將版紙掛到滾筒上,此時(shí)油墨電機(jī)工作均勻上墨,,待進(jìn)紙電機(jī)把紙送到印刷區(qū)后,,壓紙電機(jī)把紙貼到滾筒上,主電機(jī)帶動(dòng)滾筒轉(zhuǎn)一圈后,,分離電機(jī)開始工作將紙從滾筒上剝離,。 待紙張進(jìn)入出紙區(qū)后,,出紙電機(jī)和負(fù)壓風(fēng)機(jī)同時(shí)工作將紙送出,,至此第一張紙印刷完成。印刷多張時(shí)就不用再制版了,,直接印刷即可,。
若使用電腦直接打印功能時(shí),其工作流程為:電腦主機(jī)通過USB芯片把數(shù)據(jù)傳給FPGA,,FPGA通過產(chǎn)生相應(yīng)的時(shí)序信號(hào)將數(shù)據(jù)存至SDRAM存儲(chǔ)器中,,然后FPGA按行將數(shù)據(jù)燒寫至版紙上。制版完成后,,FPGA通過DSP的外部中斷引腳觸發(fā)DSP的外部中斷,,在DSP的外部中斷服務(wù)程序中,,進(jìn)行印刷流程。
4基于DSP的電機(jī)控制
TI公司的數(shù)字信號(hào)處理器TMS320F2812片上集成了兩個(gè)事件管理器模塊(EVA,,EVB),。每個(gè)事件管理器都包含通用目的定時(shí)器、全比較PWM單元,、捕捉單元和正交脈沖編碼電路等,,可同時(shí)方便的控制兩部電機(jī),專為多軸運(yùn)動(dòng)控制應(yīng)用而設(shè)計(jì),。[1] 在本系統(tǒng)中兩個(gè)事件管理器分別應(yīng)用于控制三相無刷直流電機(jī)(主電機(jī))和三相反應(yīng)式步進(jìn)電機(jī)(掃描電機(jī)),。
對(duì)三相無刷直流電機(jī)的控制采用了轉(zhuǎn)速電流雙閉環(huán)調(diào)速方式。其控制系統(tǒng)框圖如圖2 圖2 轉(zhuǎn)速電流雙閉環(huán)調(diào)速原理框圖
TMS320F2812的捕捉單元可以方便的捕捉編碼器的脈沖信號(hào),,以形成速度反饋,。其ADC模塊可以將霍爾電流傳感器的模擬信號(hào)轉(zhuǎn)換為數(shù)字值,以形成電流反饋,。TMS320F2812的全比較PWM單元使得產(chǎn)生SVPWM(空間矢量脈沖寬度調(diào)制)的操作大大簡(jiǎn)化,。雙閉環(huán)調(diào)速方式提高了主電機(jī)(三相無刷直流電機(jī))的控制精度。
步進(jìn)電機(jī)具有如下特點(diǎn):
(1)角位移與輸入脈沖數(shù)成正比,,無累積誤差,,具有良好的跟隨性。
(2)動(dòng)態(tài)響應(yīng)快,,易于起停,、正反轉(zhuǎn)及變速。
(3)速度可在寬范圍內(nèi)平滑調(diào)節(jié),,低速下仍能獲得大轉(zhuǎn)矩,。
(4)步進(jìn)電機(jī)存在振蕩和失步現(xiàn)象,必須對(duì)控制系統(tǒng)和機(jī)械負(fù)載采取相應(yīng)措施,。三相反應(yīng)式步進(jìn)電機(jī)有三種工作方式:?jiǎn)稳?、雙三拍和六拍工作方式。單三拍工作方式即是按A-B-C方式循環(huán)通電,;雙三拍循環(huán)通電順序?yàn)椋粒拢拢茫茫?;六拍循環(huán)通電順序?yàn)椋粒粒拢拢拢茫茫茫粒ㄉ鲜鋈N循環(huán)通電順序均為正轉(zhuǎn)方式)。[2] 三種工作方式中六拍工作方式相電流,、轉(zhuǎn)矩最大,,高頻性能最好,電磁阻尼大,,不易產(chǎn)生振蕩,。所以本系統(tǒng)采用三相六拍工作方式控制步進(jìn)電機(jī)。另外為了使步進(jìn)電機(jī)更加穩(wěn)定還使用了機(jī)械阻尼法,,就是在電動(dòng)機(jī)軸上加阻尼器,。
5圖像處理
在僅使用速印功能時(shí),,其圖像處理過程可分為五步:模擬圖像數(shù)字化、γ校正,、濾波,、二值化和數(shù)字半色調(diào)處理。
模擬圖像數(shù)字化是由TMS320F2812片上集成的ADC模塊實(shí)現(xiàn)的,。TMS320F2812的ADC模塊是一個(gè)16通道12位分辨率具有流水線結(jié)構(gòu)的模數(shù)轉(zhuǎn)換器,。它的16個(gè)通道可配置為兩個(gè)獨(dú)立的8通道,最快轉(zhuǎn)換時(shí)間為80ns,。從CIS中輸出的模擬圖像的電流經(jīng)過ADC模塊采樣,,其數(shù)字值存放在對(duì)應(yīng)通道的結(jié)果寄存器ADCRESULT中,等待TMS320F2812的CPU作進(jìn)一步的處理,。
圖像傳感器的輸入輸出特性一般都不是線性的,,即入射光強(qiáng)度L和曝光量D或者是輸出電流I不是正比關(guān)系。輸入輸出關(guān)系可用以下公式表示: ,。若γ為1時(shí),,輸入輸出為正比關(guān)系,。但γ一般在0.4到0.8之間,。對(duì)這種非線性關(guān)系進(jìn)行校正,使其成為正比關(guān)系的 操作稱為γ校正,??勺鲆粋€(gè)具有平均特性的速查表來進(jìn)行γ校正。[3] 圖像中的邊緣和噪聲對(duì)應(yīng)于傅里葉變換中的高頻部分,,所以要削弱噪聲就需要減弱高頻分量部分,。我們需要選擇一個(gè)合適的低通濾波器。理想低通濾波器(將高頻成份直接“截去”)可以削弱噪聲,、平滑圖像,,但容易產(chǎn)生模糊和振鈴現(xiàn)象。一階巴特沃思(Butterworth)低通濾波器可以平滑圖像,、削弱噪聲,,并且巴特沃思低通濾波器在高頻與低頻間的過渡比較光滑,所以不易出現(xiàn)振鈴現(xiàn)象,。由于圖像邊緣部分也對(duì)應(yīng)于傅里葉變換中的高頻部分,,過分削弱高頻分量會(huì)使圖像模糊。所以選擇合適的截止頻率即能有效去除噪聲,,又能使圖像不太模糊,。品質(zhì)要求較高時(shí),也可再對(duì)圖像進(jìn)行適當(dāng)?shù)匿J化清晰處理,。
圖像的二值化就是將灰度圖像變?yōu)橹挥袃蓚€(gè)灰度級(jí)的圖像,。其過程非常簡(jiǎn)單,,就是確定一個(gè)閾值T,大于閾值的灰度值變?yōu)椋?,小于閾值的灰度值變?yōu)椋?。在一幅圖像的整體范圍內(nèi)只取一個(gè)閾值來對(duì)圖像進(jìn)行二值化處理的方法稱為全局閾值法。將圖像分成幾個(gè)子塊,,在每個(gè)子塊中選取最佳閾值的方法為局部閾值法,。在純文本速印方式時(shí)使用全局閾值法,在圖片速印方式時(shí)使用局部閾值法,。本系統(tǒng)中采用最大方差比法計(jì)算閾值,。
數(shù)字半色調(diào)處理過程就是創(chuàng)建復(fù)合點(diǎn)(也稱半色調(diào)單元)的過程。復(fù)合點(diǎn)(spot)是由打印機(jī)點(diǎn)(dot)組成的方塊網(wǎng)格,,這些網(wǎng)格中的任何一個(gè)打印機(jī)點(diǎn)都是可以打開或關(guān)閉的(白色或黑色),。若要?jiǎng)?chuàng)建一個(gè)深色復(fù)合點(diǎn),可以將該復(fù)合點(diǎn)內(nèi)的打印機(jī)點(diǎn)多打開一些,;若要?jiǎng)?chuàng)建一個(gè)淺色復(fù)合點(diǎn),,可以少打開一些打印機(jī)點(diǎn)。人眼具有低通特性,,能將復(fù)合點(diǎn)看成具有灰度的點(diǎn),。[4] 這些復(fù)合點(diǎn)具有3個(gè)屬性:頻率、角度和形狀,。本系統(tǒng)使用分辨率為400dpi*400dpi的打印機(jī),。網(wǎng)點(diǎn)頻率為50lpi(lines per?。椋睿悖瑁?,灰度色階數(shù)為65,采用45度方塊形網(wǎng)格,。使用數(shù)字半色調(diào)處理技術(shù),,可以在二值輸出設(shè)備上輸出漂亮的灰度(連續(xù)色調(diào))圖像。
6通訊接口
一般的串口通訊速率為幾Kb/s到幾十Kb/s,,并口的速率為40Kb/s到1?。停猓螅眨樱陆涌谟械退?、全速和高速三種工作方式,,低速模式的傳輸速率為1.5Mb/s,全速為12?。停猓?,高速可達(dá)480 Mb/s,特別適合像速印機(jī)這樣的需要大批量傳輸數(shù)據(jù)的設(shè)備,。本速印機(jī)選用USB2.0全/高速接口作為與電腦主機(jī)的接口,。
USB功能設(shè)備芯片選用Cypress公司EZ-USB FX2系列的CY7C68013,。它包括1個(gè)增強(qiáng)型8051處理器,、1個(gè)串行接口引擎(SIE)、1個(gè)USB收發(fā)器,、8.5KB片上RAM,、4 KB?。疲桑疲洗鎯?chǔ)器及1個(gè)通用可編程接口(GPIF),。它支持高速模式,兼容全速模式,,性價(jià)比高,,是USB2.0接口設(shè)計(jì)的主流芯片之一。[5] ?。眨樱露x了四種傳輸方式:控制傳輸方式,、等時(shí)傳輸方式、中斷傳輸方式和批量傳輸方式,,以適應(yīng)各種設(shè)備的需要,。在開發(fā)USB設(shè)備時(shí)可通過設(shè)置相應(yīng)寄存器使端點(diǎn)處于不同的工作方式??刂苽鬏斨饕脕磉M(jìn)行查詢,、配置端點(diǎn)和給設(shè)備發(fā)送命令,。等時(shí)傳輸提供了確定的帶寬和間隔時(shí)間,,它被用于時(shí)間嚴(yán)格并具有較強(qiáng)容錯(cuò)性的流數(shù)據(jù)傳輸,或者用于要求恒定的數(shù)據(jù)傳送率的即時(shí)應(yīng)用中,。例如USB麥克風(fēng),、音箱等使用等時(shí)傳輸是很好的選擇。中斷傳輸方式是PC機(jī)周期性的輪詢?cè)O(shè)備是否有數(shù)據(jù)要傳送的一種方式,,該方式應(yīng)用于少量的,、分散的、不可預(yù)測(cè)的數(shù)據(jù)傳輸,,比如鍵盤,、鼠標(biāo)、搖桿等,。批量傳輸方式主要應(yīng)用于無帶寬和間隔時(shí)間要求的大量數(shù)據(jù)的傳送和接收,,打印機(jī)、掃描儀和USB硬盤等就屬于這種類型,。在速印機(jī)系統(tǒng)中,,USB芯片“大”端點(diǎn)2,、4、6,、8均配置為雙倍緩沖區(qū)批量傳輸方式,。
CY7C68013有3種接口模式:端口模式、從屬FIFO模式和GPIF主控器模式,。在端口模式中,,所有I/O引腳都是通用I/O端口。從屬FIFO模式中,,外部控制器可像普通FIFO一樣對(duì)FX2的多層緩沖FIFO直接進(jìn)行讀寫,。GPIF主控器模式下,可以編程讀寫控制波形,,幾乎可以對(duì)任何8/16 位接口的控制器,、存儲(chǔ)器和總線進(jìn)行數(shù)據(jù)的主動(dòng)讀寫,非常靈活,。CY7C68013雖然可以用片上增強(qiáng)型8051單片機(jī)直接處理USB2.0數(shù)據(jù),,但這樣會(huì)受到單片機(jī)速度的限制而無法實(shí)現(xiàn)USB2.0的高速傳輸。從屬FIFO方式可以解決這一矛盾,,在此種方式下,,USB數(shù)據(jù)流并不經(jīng)過CY7C68013的片上增強(qiáng)型8051單片機(jī),而是直接在快速外部主設(shè)備與FIFO端點(diǎn)之間實(shí)現(xiàn)高速傳輸,。
USB的軟件設(shè)計(jì)包括:固件程序,、驅(qū)動(dòng)程序和應(yīng)用程序的設(shè)計(jì)。
(1)固件程序設(shè)計(jì)
固件程序由USB芯片集成的增強(qiáng)型8051單片機(jī)來處理,,其主要工作是解析并執(zhí)行主機(jī)的命令,。FX2的一個(gè)重要特性就是以“軟”為主,內(nèi)部無ROM,,僅有程序和數(shù)據(jù)RAM,,所以需要通過主機(jī)將固件程序下載至RAM中運(yùn)行。CYPRESS公司提供了EZ-USB?。疲兀补碳绦蚩蚣芤约铀俟碳绦虻拈_發(fā),。?。郏叮?
(2)驅(qū)動(dòng)程序設(shè)計(jì)
本系統(tǒng)需要兩個(gè)驅(qū)動(dòng)程序,,即固件下載驅(qū)動(dòng)程序和設(shè)備功能驅(qū)動(dòng)程序。固件下載驅(qū)動(dòng)程序負(fù)責(zé)在外部設(shè)備連接到USB總線后把特定的固件程序下載到FX2的RAM中,,FX2模擬斷開與USB總線的連接以完成對(duì)固件的重新設(shè)置,,并使用新的固件程序進(jìn)行重枚舉。主機(jī)則根據(jù)新的設(shè)置來安裝設(shè)備功能驅(qū)動(dòng)程序。設(shè)備功能驅(qū)動(dòng)程序不必對(duì)具體硬件編程,,它只需定義與應(yīng)用程序的接口,,定義與外部設(shè)備的通信接口和通信數(shù)據(jù)格式。應(yīng)用程序調(diào)用設(shè)備功能驅(qū)動(dòng)程序,,設(shè)備功能驅(qū)動(dòng)程序調(diào)用總線驅(qū)動(dòng)程序把USB命令傳給硬件,。CYPRESS公司提供了固件下載驅(qū)動(dòng)程序范例,只需作少量修改即可作為本系統(tǒng)的固件下載驅(qū)動(dòng)程序,。為加速設(shè)備功能驅(qū)動(dòng)程序的開發(fā),,CYPRESS公司提供了EZ-USB通用設(shè)備驅(qū)動(dòng)程序規(guī)范。此規(guī)范的目的是描述從用戶應(yīng)用程序到設(shè)備驅(qū)動(dòng)程序的接口方式,。
(3)應(yīng)用程序設(shè)計(jì),。
本速印機(jī)的應(yīng)用程序使用了Windows操作系統(tǒng)提供的標(biāo)準(zhǔn)打印機(jī)應(yīng)用程序插件。
7 結(jié)束語(yǔ)
本文提出了一種基于DSP和USB接口的速印機(jī)解決方案,,并從電機(jī)控制,、圖像處理和通訊接口三方面做了詳細(xì)的闡述。經(jīng)測(cè)試,,本系統(tǒng)打印品質(zhì)良好,,印速可達(dá)120r/min,并可實(shí)現(xiàn)電腦直接打印,,拼接印刷,,縮放印刷等功能。此解決方案使得硬件控制電路得到簡(jiǎn)化,,整體性能有所提高,,圖像處理技術(shù)的升級(jí)更加方便,是一種優(yōu)化的解決方案,。展望:可在此方案基礎(chǔ)上再增加掃描儀功能,,使其功能更加強(qiáng)大。