亚洲成年人黄色一级片,日本香港三级亚洲三级,黄色成人小视频,国产青草视频,国产一区二区久久精品,91在线免费公开视频,成年轻人网站色直接看

用于平板掃描儀和自動(dòng)進(jìn)紙掃描儀的步進(jìn)電機(jī)控制方法與流程

文檔序號(hào):12374308閱讀:1380來(lái)源:國(guó)知局
用于平板掃描儀和自動(dòng)進(jìn)紙掃描儀的步進(jìn)電機(jī)控制方法與流程

本發(fā)明涉及一種電機(jī)控制方法,具體是一種用于平板掃描儀和自動(dòng)進(jìn)紙掃描儀的步進(jìn)電機(jī)控制方法。



背景技術(shù):

目前,常用的掃描儀分為平板掃描儀和自動(dòng)進(jìn)紙掃描儀兩種。平板掃描儀將待掃描文件固定放在透明掃描窗口中,由步進(jìn)電機(jī)帶動(dòng)CIS傳感器勻速地對(duì)待掃描文件進(jìn)行掃描操作。自動(dòng)進(jìn)紙掃描儀在掃描過(guò)程中,CIS傳感器固定不動(dòng),由步進(jìn)電機(jī)帶動(dòng)走紙履帶,使得待掃描文件勻速通過(guò)掃描窗口。為了使得掃描儀中步進(jìn)電機(jī)以比較高的速度進(jìn)行掃描,需要經(jīng)過(guò)加速過(guò)程,加速到預(yù)定速度之后,進(jìn)入勻速過(guò)程,才能進(jìn)行掃描;同樣掃描任務(wù)完成之后,步進(jìn)電機(jī)需要進(jìn)行減速過(guò)程,直至電機(jī)停止。若突然把步進(jìn)電機(jī)由靜止?fàn)顟B(tài)加速到很高速度,或由很高速度立即停止,則會(huì)損壞步進(jìn)電機(jī)。因此,掃描儀中的步進(jìn)電機(jī)一般需要經(jīng)過(guò)加速-勻速-減速等基本的過(guò)程。

傳統(tǒng)的控制裝置,在步進(jìn)電機(jī)進(jìn)行模式轉(zhuǎn)換的情況下(加速變?yōu)閯蛩?,或者勻速變?yōu)闇p速)需要CPU進(jìn)行重新配置,這導(dǎo)致了軟件復(fù)雜度提高,實(shí)時(shí)性變差。

步進(jìn)電機(jī)控制一般采用通用的PWM發(fā)生器。

① 電機(jī)的加速過(guò)程:首先將電機(jī)的加速表放入存儲(chǔ)器中,CPU配置通用DMA和通用PWM,將加速表搬運(yùn)到通用PWM的緩存中。通用PWM將緩存中的數(shù)據(jù)作為周期,輸出占空比為50%的脈沖信號(hào),用來(lái)驅(qū)動(dòng)步進(jìn)電機(jī)。

② 電機(jī)的勻速過(guò)程:加速過(guò)程完畢后,CPU重新配置通用PWM,通用PWM輸出一定個(gè)數(shù)的脈沖信號(hào)(由于是勻速,這些脈沖信號(hào)的周期全都相同,占空比都為50%)。

③ 電機(jī)的減速過(guò)程:掃描結(jié)束之后,CPU配置通用DMA和通用PWM,將減速表搬運(yùn)到通用PWM的緩存中。通用PWM將緩存中的數(shù)據(jù)作為周期,輸出占空比為50%的脈沖信號(hào),用來(lái)驅(qū)動(dòng)步進(jìn)電機(jī),直至步進(jìn)電機(jī)停止。

現(xiàn)有技術(shù)的缺陷:

① 步進(jìn)電機(jī)改變運(yùn)動(dòng)狀態(tài)時(shí),需要CPU重新配置通用DMA和通用PWM,提高了軟件復(fù)雜度,降低了系統(tǒng)的實(shí)時(shí)性。

② 自動(dòng)進(jìn)紙掃描儀,采用步進(jìn)馬達(dá)將待掃描文件送入掃描窗口,為了加速掃描間隙的走紙速度,可以在不掃描的時(shí)刻,讓步進(jìn)電機(jī)進(jìn)行加速-勻速-減速以加速走紙。若采用原有技術(shù)實(shí)現(xiàn)這一操作,需要大量的CPU中斷操作,嚴(yán)重影響系統(tǒng)的實(shí)時(shí)性。

③需要通用DMA來(lái)搬運(yùn)加速表和減速表到電機(jī)控制裝置中,消耗了額外的硬件資源。



技術(shù)實(shí)現(xiàn)要素:

為了解決現(xiàn)有技術(shù)中存在的上述技術(shù)問(wèn)題,本發(fā)明提供了一種用于平板掃描儀和自動(dòng)進(jìn)紙掃描儀的步進(jìn)電機(jī)控制方法,包括如下步驟:

① 將加速表、減速表連續(xù)地放入存儲(chǔ)器中,其中表的數(shù)值為輸出脈沖信號(hào)的周期;

② CPU通過(guò)配置通道配置步進(jìn)電機(jī)控制裝置;

③ CPU配置開(kāi)始產(chǎn)生步進(jìn)控制脈沖信號(hào);在變速運(yùn)動(dòng)狀態(tài)中,步進(jìn)電機(jī)控制裝置會(huì)自動(dòng)從存儲(chǔ)器中讀出加速表或減速表,作為輸出脈沖的周期,輸出一定數(shù)量的脈沖;在勻速運(yùn)動(dòng)狀態(tài)中,步進(jìn)電機(jī)控制裝置會(huì)根據(jù)本次勻速狀態(tài)的周期,輸出一定數(shù)量的脈沖;

④ 待步進(jìn)電機(jī)控制裝置完成了所有的運(yùn)動(dòng)狀態(tài),產(chǎn)生中斷,通知CPU停止工作、步進(jìn)電機(jī)停止運(yùn)動(dòng)。

進(jìn)一步的,步驟②中配置的信息包括:步進(jìn)電機(jī)運(yùn)動(dòng)狀態(tài)的個(gè)數(shù)和步進(jìn)電機(jī)運(yùn)動(dòng)狀態(tài)模式,每個(gè)運(yùn)動(dòng)狀態(tài)輸出脈沖的個(gè)數(shù),每個(gè)勻速階段輸出脈沖的周期,加速表、減速表在存儲(chǔ)器中的地址。

進(jìn)一步的,若有異常情況發(fā)生,需要步進(jìn)電機(jī)停下,則可以在任何運(yùn)動(dòng)狀態(tài)中重新配置步進(jìn)電機(jī)控制裝置,使之減速直至停止。

進(jìn)一步的,采用如下兩種處理方式使步進(jìn)電機(jī)停止:一、由CPU配置,使之減速直至停止;二,若模塊輸入的異常脈沖信號(hào)有效,則電機(jī)控制裝置控制步進(jìn)電機(jī)進(jìn)入預(yù)先設(shè)定好的異常處理運(yùn)動(dòng)狀態(tài)。

進(jìn)一步的,對(duì)于自動(dòng)進(jìn)紙掃描儀,步驟③中勻速階段輸出脈沖的個(gè)數(shù)可以配置為無(wú)限制;步進(jìn)電機(jī)進(jìn)入下一個(gè)運(yùn)動(dòng)狀態(tài)的方式有兩種:CPU配置和模塊輸入的跳轉(zhuǎn)脈沖信號(hào)。

進(jìn)一步的,模塊輸入的跳轉(zhuǎn)脈沖信號(hào)可配置來(lái)自于傳感器。

進(jìn)一步的,步驟②中,CPU通過(guò)配置通道將配置信息傳入步進(jìn)電機(jī)控制裝置;隨后總線(xiàn)主機(jī)接口通過(guò)讀表通道訪(fǎng)問(wèn)存儲(chǔ)器,將加速表、減速表讀回,寫(xiě)入內(nèi)部FIFO中;脈沖輸出控制模塊記錄當(dāng)前輸出的脈沖個(gè)數(shù),來(lái)確定當(dāng)前處于加速或減速模式還是勻速模式,若是加速或減速模式,則讀取FIFO中的值作為輸出脈沖的周期,若是勻速模式,則用CPU的配置信息作為輸出脈沖的周期。

進(jìn)一步的,步進(jìn)電機(jī)控制裝置的總線(xiàn)從機(jī)接口解析總線(xiàn)協(xié)議,解析之后將配置信息存入寄存器模塊,寄存器模塊將配置信息分發(fā)給運(yùn)動(dòng)狀態(tài)控制模塊、異常狀態(tài)控制模塊、脈沖輸出控制模塊、總線(xiàn)主機(jī)接口和FIFO寫(xiě)控制模塊;隨后FIFO寫(xiě)控制模塊根據(jù)FIFO的狀態(tài)決定是否從存儲(chǔ)器中讀取加減速表的值,若需要讀取,則總線(xiàn)主機(jī)接口產(chǎn)生總線(xiàn)讀操作,通過(guò)讀表通道訪(fǎng)問(wèn)存儲(chǔ)器,將加速表減速表讀回,F(xiàn)IFO寫(xiě)控制模塊將加減速表寫(xiě)入內(nèi)部FIFO中;脈沖輸出控制模塊記錄當(dāng)前輸出的脈沖個(gè)數(shù),來(lái)確定當(dāng)前處于加速(減速)模式還是勻速模式,若是加速(減速模式),則FIFO讀控制模塊讀取FIFO中的值作為輸出脈沖的周期,若是勻速模式,則用CPU的配置信息作為輸出脈沖的周期;FIFO讀控制模塊從FIFO中讀取數(shù)據(jù)之后,F(xiàn)IFO中的數(shù)據(jù)變少,當(dāng)FIFO中空余空間達(dá)到一定個(gè)數(shù)之后,F(xiàn)IFO寫(xiě)控制模塊會(huì)讓總線(xiàn)主機(jī)接口會(huì)繼續(xù)從存儲(chǔ)器中讀取數(shù)據(jù);全部的脈沖都輸出之后,步進(jìn)電機(jī)控制裝置產(chǎn)生中斷,通知CPU。

進(jìn)一步的,另外一種產(chǎn)生中斷的情況是,當(dāng)電機(jī)處于變速狀態(tài),需要加速表(減速表)中的值作為輸出脈沖的周期;如果此時(shí)總線(xiàn)主機(jī)接口沒(méi)有從存儲(chǔ)器中讀回加速表(減速表)的值,那么FIFO為空,當(dāng)前需要輸出的脈沖周期未知,需要產(chǎn)生中斷,通知CPU電機(jī)控制裝置無(wú)法讀取加速表(減速表)。

本發(fā)明的用于平板掃描儀和自動(dòng)進(jìn)紙掃描儀的步進(jìn)電機(jī)控制方法,CPU在步進(jìn)電機(jī)開(kāi)始運(yùn)動(dòng)之前,配置好整個(gè)運(yùn)動(dòng)過(guò)程,這樣步進(jìn)電機(jī)在整個(gè)運(yùn)動(dòng)過(guò)程中,都不需要CPU重新進(jìn)行配置,減少CPU中斷次數(shù),簡(jiǎn)化了軟件復(fù)雜度,提高了系統(tǒng)的實(shí)時(shí)性。此外,本發(fā)明不需要采用通用DMA,減少了硬件資源的消耗。對(duì)于自動(dòng)進(jìn)紙掃描儀,可以配置勻速過(guò)程輸出脈沖個(gè)數(shù)無(wú)限制,直到CPU進(jìn)行配置,進(jìn)入下一運(yùn)動(dòng)狀態(tài)。

附圖說(shuō)明

圖1是步進(jìn)電機(jī)控制裝置結(jié)構(gòu)框圖;

圖2是步進(jìn)電機(jī)控制裝置硬件結(jié)構(gòu)圖;

圖3是平板掃描儀控制實(shí)施例;

圖 4是自動(dòng)進(jìn)紙掃描儀控制實(shí)施例。

具體實(shí)施方式

下面結(jié)合附圖對(duì)本發(fā)明作進(jìn)一步說(shuō)明。

如圖1和2所示,本發(fā)明的用于平板掃描儀和自動(dòng)進(jìn)紙掃描儀的步進(jìn)電機(jī)控制方法,包括如下步驟:

① 將加速表、減速表連續(xù)地放入存儲(chǔ)器中,其中表的數(shù)值為輸出脈沖信號(hào)的周期;

② CPU通過(guò)配置通道配置步進(jìn)電機(jī)控制裝置。配置的信息包括:步進(jìn)電機(jī)運(yùn)動(dòng)狀態(tài)的個(gè)數(shù)和步進(jìn)電機(jī)運(yùn)動(dòng)狀態(tài)模式,(步進(jìn)電機(jī)運(yùn)動(dòng)狀態(tài)為變速-勻速-變速-勻速-……,變速和勻速交替,變速階段輸出脈沖的周期需要讀取加速表或減速表,勻速階段輸出脈沖的周期由CPU配置),每個(gè)運(yùn)動(dòng)狀態(tài)輸出脈沖的個(gè)數(shù),每個(gè)勻速階段輸出脈沖的周期,加速表、減速表在存儲(chǔ)器中的地址。另外,可以通過(guò)配置某個(gè)運(yùn)動(dòng)狀態(tài)輸出0個(gè)脈沖,來(lái)跳過(guò)這個(gè)狀態(tài)。比如配置第一個(gè)變速狀態(tài)輸出0個(gè)脈沖,這樣步進(jìn)電機(jī)真實(shí)的運(yùn)動(dòng)狀態(tài)就是:勻速-變速-勻速-變速。

③ CPU配置開(kāi)始產(chǎn)生步進(jìn)控制脈沖信號(hào)。在變速運(yùn)動(dòng)狀態(tài)中,步進(jìn)電機(jī)控制裝置會(huì)自動(dòng)從存儲(chǔ)器中讀出加速表或減速表,作為輸出脈沖的周期,輸出一定數(shù)量的脈沖;在勻速運(yùn)動(dòng)狀態(tài)中,步進(jìn)電機(jī)控制裝置會(huì)根據(jù)本次勻速狀態(tài)的周期,輸出一定數(shù)量的脈沖。

④ 待步進(jìn)電機(jī)控制裝置完成了所有的運(yùn)動(dòng)狀態(tài),產(chǎn)生中斷,通知CPU電機(jī)停止運(yùn)動(dòng)。

若有異常情況發(fā)生,需要電機(jī)停下,則可以在任何運(yùn)動(dòng)狀態(tài)中重新配置步進(jìn)電機(jī)控制裝置,使之減速直至停止。處理的方式有兩種:第一種由CPU配置,使之減速直至停止;第二種方式,若模塊輸入的異常脈沖信號(hào)有效,則電機(jī)控制裝置控制電機(jī)進(jìn)入預(yù)先設(shè)定好的異常處理運(yùn)動(dòng)狀態(tài);過(guò)程如下:在步進(jìn)電機(jī)開(kāi)始運(yùn)動(dòng)之前,配置異常處理運(yùn)動(dòng)方式:異常處理運(yùn)動(dòng)狀態(tài)個(gè)數(shù)為:1個(gè)(減速),異常處理減速表地址。若步進(jìn)電機(jī)出現(xiàn)異常或者掃描接口不能正常接收數(shù)據(jù),模塊輸入的異常脈沖信號(hào)有效,此時(shí)步進(jìn)電機(jī)控制裝置脫離原來(lái)的運(yùn)動(dòng)狀態(tài),進(jìn)入異常處理的減速狀態(tài),直至電機(jī)停止。

對(duì)于自動(dòng)進(jìn)紙掃描儀,勻速階段輸出脈沖的個(gè)數(shù)可以配置為無(wú)限制;由于傳動(dòng)皮帶存在打滑的情況,無(wú)法像平板掃描儀一樣精確確定勻速輸出脈沖的個(gè)數(shù)。步進(jìn)電機(jī)進(jìn)入下一個(gè)運(yùn)動(dòng)狀態(tài)的方式有兩種:CPU配置和模塊輸入的跳轉(zhuǎn)脈沖信號(hào)。其中模塊輸入的跳轉(zhuǎn)脈沖信號(hào)可以配置來(lái)自于傳感器,這樣可以實(shí)現(xiàn)在CPU不干預(yù)的情況下,完成整個(gè)掃描過(guò)程。例子:對(duì)于自動(dòng)進(jìn)紙掃描儀,當(dāng)傳感器檢測(cè)到紙盒中沒(méi)有紙張需要被掃描,并且最后一張紙也已經(jīng)被掃描完畢,這時(shí)系統(tǒng)會(huì)產(chǎn)生一個(gè)脈沖信號(hào),通知電機(jī)控制裝置,整個(gè)掃描過(guò)程已經(jīng)結(jié)束,步進(jìn)電機(jī)從當(dāng)前的勻速運(yùn)動(dòng)狀態(tài)(步數(shù)無(wú)限制),自動(dòng)進(jìn)入下一個(gè)減速狀態(tài),直至步進(jìn)電機(jī)停止。

本發(fā)明步進(jìn)電機(jī)控制裝置框圖如圖2所示。CPU通過(guò)配置通道將之前描述的信息傳入本裝置,總線(xiàn)從機(jī)接口解析總線(xiàn)協(xié)議(如AHB,AXI等),解析之后將配置信息存入寄存器模塊,寄存器模塊將配置信息分發(fā)給運(yùn)動(dòng)狀態(tài)控制模塊、異常狀態(tài)控制模塊、脈沖輸出控制模塊、總線(xiàn)主機(jī)接口和FIFO寫(xiě)控制模塊;隨后FIFO寫(xiě)控制模塊根據(jù)FIFO的狀態(tài)決定是否從存儲(chǔ)器中讀取加減速表的值,若需要讀取,則總線(xiàn)主機(jī)接口產(chǎn)生總線(xiàn)讀操作,通過(guò)讀表通道訪(fǎng)問(wèn)存儲(chǔ)器,將加速表減速表讀回,F(xiàn)IFO寫(xiě)控制模塊將加減速表寫(xiě)入內(nèi)部FIFO中;脈沖輸出控制模塊記錄當(dāng)前輸出的脈沖個(gè)數(shù),來(lái)確定當(dāng)前處于加速(減速)模式還是勻速模式,若是加速(減速模式),則FIFO讀控制模塊讀取FIFO中的值作為輸出脈沖的周期,若是勻速模式,則用CPU的配置信息作為輸出脈沖的周期;FIFO讀控制模塊從FIFO中讀取數(shù)據(jù)之后,F(xiàn)IFO中的數(shù)據(jù)變少,當(dāng)FIFO中空余空間達(dá)到一定個(gè)數(shù)之后,F(xiàn)IFO寫(xiě)控制模塊會(huì)讓總線(xiàn)主機(jī)接口會(huì)繼續(xù)從存儲(chǔ)器中讀取數(shù)據(jù);全部的脈沖都輸出之后,步進(jìn)電機(jī)控制裝置產(chǎn)生中斷,通知CPU。若此過(guò)程中異常脈沖信號(hào)有效,脈沖輸出控制模塊停止工作,異常狀態(tài)控制模塊清空FIFO,并且讓總線(xiàn)主機(jī)接口讀取異常處理減速表,異常狀態(tài)控制模塊重新使能脈沖輸出模塊,把異常處理減速表中的值當(dāng)做輸出脈沖的周期。若電機(jī)控制裝置處于勻速狀態(tài),并且輸出步數(shù)設(shè)置為無(wú)限制,當(dāng)跳轉(zhuǎn)脈沖信號(hào)有效時(shí),運(yùn)動(dòng)狀態(tài)控制模塊將控制脈沖輸出控制模塊進(jìn)入下一個(gè)運(yùn)動(dòng)狀態(tài)。

另外一種產(chǎn)生中斷的情況是,當(dāng)電機(jī)處于變速狀態(tài),需要加速表(減速表)中的值作為輸出脈沖的周期;如果此時(shí)總線(xiàn)主機(jī)接口沒(méi)有從存儲(chǔ)器中讀回加速表(減速表)的值,那么FIFO為空,當(dāng)前需要輸出的脈沖周期未知,需要產(chǎn)生中斷,通知CPU電機(jī)控制裝置無(wú)法讀取加速表(減速表)。例子:電機(jī)當(dāng)前處于加速階段,本個(gè)加速階段共需要輸出100個(gè)脈沖,因而需要從存儲(chǔ)器中讀取100個(gè)值來(lái)當(dāng)做輸出脈沖的周期;總線(xiàn)主機(jī)接口中,每次從存儲(chǔ)器中讀取16個(gè)數(shù)據(jù)放入FIFO,但是第一次總線(xiàn)主機(jī)接口完成存儲(chǔ)器的讀操作之后,總線(xiàn)被其他主機(jī)占用,電機(jī)控制裝置的總線(xiàn)主機(jī)接口無(wú)法從存儲(chǔ)器中讀取加速表的值,當(dāng)電機(jī)控制裝置需要輸出第17個(gè)脈沖時(shí),需要從內(nèi)部FIFO中讀取加減速表中的值,但是此時(shí)FIFO為空,電機(jī)控制裝置不知道要輸出脈沖信號(hào)的周期,中斷產(chǎn)生模塊會(huì)產(chǎn)生中斷,通知CPU。

平板掃描儀實(shí)例:

CPU配置如下信息:共有三個(gè)運(yùn)動(dòng)狀態(tài),分別是:加速、勻速、減速;加速表和減速表在存儲(chǔ)器中的地址;加速狀態(tài)的步數(shù)(脈沖個(gè)數(shù))為2;勻速狀態(tài)的步數(shù)為5;減速狀態(tài)的步數(shù)為2;勻速狀態(tài)的脈沖周期為1。圖3為輸出的步進(jìn)脈沖控制信號(hào)。

自動(dòng)進(jìn)紙掃描儀實(shí)例:

CPU配置如下信息:共有兩個(gè)運(yùn)動(dòng)狀態(tài),分別是:加速、勻速;加速表在存儲(chǔ)器中的地址;加速狀態(tài)的步數(shù)(脈沖個(gè)數(shù))為2;勻速狀態(tài)的步數(shù)為無(wú)限制;勻速狀態(tài)的脈沖周期為1。圖4為輸出的步進(jìn)脈沖控制信號(hào)。

當(dāng)前第1頁(yè)1 2 3 
網(wǎng)友詢(xún)問(wèn)留言 已有0條留言
  • 還沒(méi)有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1