• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看

      ?

      基于MC9S12HZ256的汽車儀表步進電機控制

      2010-11-22 06:44:40羅永革楊啟梁石振東
      湖北汽車工業(yè)學院學報 2010年1期
      關(guān)鍵詞:失步寄存器中斷

      趙 心,羅永革,楊啟梁,石振東

      (1.武漢科技大學,湖北 武漢 430081;2.湖北汽車工業(yè)學院,湖北 十堰 442002)

      步進電機是將脈沖信號轉(zhuǎn)變?yōu)榻俏灰苹蚓€位移的控制元件。每當輸入一個脈沖,它就相應的運行一步。作為數(shù)字式執(zhí)行元件,具有結(jié)構(gòu)簡單、成本低、易于控制等優(yōu)點而逐漸取代傳統(tǒng)的游絲阻尼元件應用于汽車儀表系統(tǒng)中。MC9S12HZ256微控制器是飛思卡爾公司為汽車儀表系統(tǒng)設(shè)計而開發(fā)的16位微控制器,其集成了用于步進電機控制的步進電機控制模塊(MC)和步進電機歸零檢測的步進電機失步檢測模塊(SSD),從而省去了步進電機驅(qū)動器,簡化了步進電機驅(qū)動電路節(jié)約了成本。

      1 步進電機驅(qū)動控制

      1.1 MC9S12HZ256的電機控制模塊

      MC9S12HZ256電機控制模塊(MC)有16通道的PWM輸出,集成了用于步進電機驅(qū)動的H橋電路。電機控制模塊的PWM輸出可以工作在高分辨率模式(11位分辨率)或快速模式(7位分辨率),工作在高分辨率模式下時可使用抖動功能,在不改變當前分辨率的條件下,降低PWM的工作周期;PW M波形輸出有左對齊、右對齊和中心對齊3種模式。電機控制模塊可在雙H橋、H橋和半H橋3種模式下工作,用于驅(qū)動步進電機、其它類型電機或者其它PWM驅(qū)動設(shè)備的控制應用。

      要正確驅(qū)動步進電機,必須對電機控制模塊的各寄存器進行相應的配置。MC9S12HZ256電機控制模塊對電機控制通過以下寄存器完成。

      1)電機控制模塊控制寄存器0(MCCTL0)用來設(shè)定電機控制模塊運行的時鐘頻率,PWM分辨率選擇,抖動模式使能,另外還有模塊計數(shù)器溢出中斷標志位。

      2)電機控制模塊控制寄存器1(MCCTL1)用來設(shè)定在電機線圈在非驅(qū)動狀態(tài)下續(xù)流電路的回路選擇和PWM低電平有效還是高電平有效,模塊計數(shù)器溢出中斷使能。

      3)電機控制模塊周期寄存器(MCPER)用來設(shè)定PWM的周期。

      4)電機控制模塊通道控制寄存器 (MCCC)用來設(shè)定PWM通道的輸出模式選擇,即雙H模式、H模式、半橋模式的選擇,PWM的對齊方式的選擇,PWM輸出延遲。

      5)電機控制模塊占空比寄存器(MCDC)用來設(shè)定PWM輸出的占空比,PWM輸出引腳。

      1.2 硬件設(shè)計

      步進電機選用瑞士SONCEBOZ公司儀表用6405r201型二相混合式步進電機。步進電機的兩相定子線圈夾角為90°,轉(zhuǎn)子中共有5對磁極,采用整步方式步距角 θN為 18°(360°/2/10),電機采用一級減速比1:36的齒輪減速,因此整步方式驅(qū)動下實際輸出步距角為0.5°。

      MC9S12HZ256微控制器內(nèi)部集成了H橋驅(qū)動電路(圖1),因此簡化了硬件設(shè)計,只需將電機控制模塊的 PWM 通道 x與通道 (x+1)(x為 0、2、4、6)組合起來構(gòu)成雙H橋(圖2)直接與步進電機的2組定子線圈連接就可用于步進電機驅(qū)動。MC9S12HZ256采用雙H方式可控制4個步進電機。

      圖1 電機控制模塊的H橋電路

      圖2 雙H橋驅(qū)動步進電機

      1.3 控制軟件設(shè)計

      對步進電機控制主要就是1)控制步進電機換相順序;2)控制步進電機的轉(zhuǎn)向;3)控制步進電機的轉(zhuǎn)速。二相混合式步進電機整步方式運行的通電換相的正序為A→B→A→B,步進電機就正轉(zhuǎn);如果按照反序B→A→B→A的通電換相順序,步進電機就反轉(zhuǎn)。步進電機的轉(zhuǎn)速與步進電機的通電換相的速度有關(guān),即各相的通電脈沖的頻率有關(guān)。MC9S12HZ256通過電機控制模塊占空比寄存器(MCDC)可實現(xiàn)電機通電相序的改變,通過延時時間的長短來改變通電相序轉(zhuǎn)換的速度控制電機的轉(zhuǎn)速。圖3是對單個步進電機控制程序的流程圖。

      圖3 步進電機驅(qū)動控制流程

      電機控制模塊在雙H橋模式下可以同時控制4個步進電機。對多個步進電機可采用定時中斷的方式進行控制,采用定時中斷代替上面流程中的延時程序,每次中斷間隔的時間來控制步進電機的轉(zhuǎn)速。

      2 步進電機歸零控制(RTZ)

      汽車儀表步進電機系統(tǒng)采用的是沒有位置反饋的開環(huán)控制的方法,因此步進電機的初始位置準確與否將直接影響到步進電機運行中定位的精確度。要獲得較高的定位精確度就要求步進電機在初始狀態(tài)下的位置必須準確為初始 “0” 點。MC9S12HZ256集成了失步檢測模塊(SSD),利用這個模塊可以檢測電機初始位置是否為“0”,若不為“0”則可驅(qū)動步進電機使初始位置歸零。

      3.1 步進電機失步檢測模塊(SSD)

      步進電機失步檢測模塊(SSD)提供了檢測步進電機以整步驅(qū)動方式驅(qū)動儀表指針進行歸零操作時在沒有通電線圈中產(chǎn)生的感生電流的電路。在指針歸零過程中,步進電機以整步驅(qū)動的方式順時針轉(zhuǎn)動或者是逆時針轉(zhuǎn)動,在任意時刻只有一組線圈通電。非通電線圈產(chǎn)生的感生電動勢在經(jīng)過一段消隱時間后被積分采樣,采樣結(jié)果存儲在一個16位的累加器中。16位的模數(shù)計數(shù)器用來控制消隱時間和采樣時間。16位累加器中的值表示了所連接的線圈的感生電動勢的波動,它可以用來和一個存儲的閾值比較。當這個值大于閾值時表明電機仍在轉(zhuǎn)動,在這種情況下電機將會進行下一個整步轉(zhuǎn)動,采樣就會繼續(xù)。當這個值小于閾值時表明電機發(fā)生了失步,此時電機已經(jīng)歸零。失步檢測模塊(SSD)與電機控制模塊(MC)公用引腳,在 SSD模塊工作時必須關(guān)閉電機控制模塊釋放引腳。圖5為失步檢測模塊(SSD)的模塊框圖。

      SSD模塊實現(xiàn)步進電機的歸零控制是由以下幾個寄存器完成。

      1)歸零控制寄存器(RTZCTL)控制歸零檢測的模式(消隱模式、采樣模式);線圈是否通電;回流電路的選擇;極性選擇;步進電機選擇;整步狀態(tài)。

      2)模數(shù)向下計數(shù)器控制寄存器(MDCCTL)控制模式向下計數(shù)器溢出中斷使能;模數(shù)計數(shù)器運行模式選擇;模數(shù)計數(shù)器讀取模式選擇;分頻選擇;模數(shù)向下計數(shù)器使能;累加器溢出中斷使能。

      3)步進失步檢測控制寄存器(SSDCTL)控制歸零使能;Σ-Δ轉(zhuǎn)換電路通電;等待模式選擇;采樣頻率選擇。

      4)步進失步檢測標志寄存器(SSDFLG)包含模數(shù)計數(shù)器向下溢出中斷標志和累加器溢出中斷標志。

      5)16位載入寄存器(MDCCNT)是一個16位寄存器,來控制消隱時間和采樣時間的長短。

      6)積分累加器寄存器 (ITGACCx)是一個16位有符號寄存器,用來存儲Σ-Δ轉(zhuǎn)換電路經(jīng)過轉(zhuǎn)換后的感生電動勢的采樣值。它的值增加還是減小是由Σ-Δ轉(zhuǎn)換電路的轉(zhuǎn)換值決定。

      圖5 失步檢測模塊(SSD)模塊框圖

      3.2 步進電機歸零軟件設(shè)計

      步進電機歸零控制主要包括對步進電機歸零轉(zhuǎn)動的方向,歸零過程中步進電機的轉(zhuǎn)速以及對零點的判斷這3個方面。

      1)步進電機歸零控制中歸零轉(zhuǎn)動方向是由歸零控制寄存器(RTZCTL)的STEP位即寄存器的第0位和第1位的值所決定。若STEP值的變化為,則步進電機為逆時針方向轉(zhuǎn)動歸零;若STEP值的變化為,則步進電機順時針方向轉(zhuǎn)動歸零。

      2)步進電機歸零的速度由所設(shè)定的消隱時間與積分采樣時間的和來決定。消隱時間與積分采樣時間的和就是步進電機一次整步運轉(zhuǎn)所用時間。消隱時間和積分采樣時間要根據(jù)步進電機的啟動頻率確定,滿足步進電機的啟動要求。步進電機歸零檢測中,消隱時間是為了避免在線圈換相時產(chǎn)生的較大的感生電動勢對積分累加寄存器的結(jié)果產(chǎn)生的誤差,而在這段時間內(nèi)放棄積分采樣。消隱時間一般比積分采樣時間短得多,大約只是積分采樣時間的1/100。

      3)步進電機歸零檢測中采用失步閾值和積分累加寄存器值比較來進行對步進電機零點的判斷。積分累加器寄存器 (ITGACC)的值為一個有符號數(shù),因此失步閾值是一個正負之間的一個區(qū)間。若積分累加器寄存器(ITGACC)的值在這個區(qū)間內(nèi),則可認為發(fā)生了失步,指針已經(jīng)歸零。步進電機歸零檢測所用的失步閾值與步進電機的特性和采樣時間有關(guān),可以根據(jù)電機的特性和采樣時間自己選擇確定。圖6是采用單個步進電機歸零的軟件設(shè)計流程圖。

      圖6 歸零軟件設(shè)計流程圖

      要對多個步進電機同時進行歸零的操作就要采用SSD模塊中斷的方式進行。MC9S12HZ256的步進電機失步檢測模塊(SSD)可以產(chǎn)生4個中斷源,分別對應4個采用雙H模式進行驅(qū)動的步進電機。采用中斷方式進行步進電機的歸零操作時,2次SSD中斷對應步進電機進行一個步距的轉(zhuǎn)動。第1次中斷是在消隱時間結(jié)束時產(chǎn)生,中斷服務中要把積分采樣的時間寫入寄存器中,Σ-Δ轉(zhuǎn)換電路通電,積分采樣使能;第2次中斷在積分采樣時間結(jié)束后產(chǎn)生,在中斷服務中對積分采樣值與閾值進行比較,判斷是否歸零,歸零則操作結(jié)束,未歸零則應向寄存器寫入下次消隱時間并修改STEP值。

      3 系統(tǒng)調(diào)試

      步進電機系統(tǒng)的誤差是由步進電機運行中失步和初始狀態(tài)下沒有完全處于零點造成的。對汽車儀表步進電機系統(tǒng)的調(diào)試也是要避免出現(xiàn)驅(qū)動過程中失步和初始狀態(tài)沒有處于零點。圖7為采用步進電機為指針指示元件的汽車儀表系統(tǒng),該儀表系統(tǒng)由7個步進電機指針式儀表盤和1個液晶顯示屏組成。儀表盤指示車速、水溫等信號,顯示屏用于數(shù)字和圖形化顯示車輛信息。汽車組合儀表中的車速表要求指針能迅速響應車速變化,且在汽車行駛過程中的指針指示變化范圍大、往復頻繁,因此在汽車儀表步進電機系統(tǒng)調(diào)試中選擇車速表作為驅(qū)動調(diào)試的對象,來驗證步進電機是否有失步。在步進電機歸零調(diào)試中7個儀表共同作為調(diào)試對象,來驗證歸零的準確性和可靠性。

      圖7 汽車儀表系統(tǒng)

      3.1 步進電機驅(qū)動調(diào)試

      儀表步進電機失步一般是由于步進電機轉(zhuǎn)子的轉(zhuǎn)速和定子磁場轉(zhuǎn)速不協(xié)調(diào)造成的,因此設(shè)置步進電機換相的時間是解決失步的一個重要方面。在驅(qū)動控制中采用了8 ms/步的定子磁場轉(zhuǎn)換速度,在這個步進電機換相頻率下車速表的指針轉(zhuǎn)動的速度適中;該換相頻率避開了步進電機電機的共振頻率,減少步進電機運行噪音。

      車速信號采用信號發(fā)生器作為模擬信號源,改變信號發(fā)生器的輸出頻率就相當于改變車速的大小。車速信號經(jīng)過調(diào)理電路轉(zhuǎn)換為脈沖信號,通過MC9S12HZ256微控制器的脈沖累加器對信號進行采樣,并采用移動平均濾波方式對采樣結(jié)果進行處理,最終將車速信息通過車速表指示出來。車速表在初始零位置啟動,車速表指針經(jīng)過連續(xù)近10000次從零點到滿量程中不停滯的來回往復轉(zhuǎn)動,回到零位置時沒有出現(xiàn)失步的現(xiàn)象,添加新的車速信號后,車速表所指示的車速與液晶顯示屏所顯示的數(shù)字車速相一致,準確指示采樣數(shù)值,車速指示準確。

      3.2 步進電機歸零調(diào)試

      汽車儀表步進電機歸零調(diào)試中,對采用SSD模塊歸零與不使用SSD模塊歸零進行了對比測試,并對采用SSD模塊進行步進電機歸零的穩(wěn)定性進行了調(diào)試,同時解決了在SSD模塊使用中出現(xiàn)的問題。

      在不采SSD模塊進行歸零時,為確保在儀表在每次運行前都要準確的處于初始的零位置,需要在初始化中使步進電機滿量程回轉(zhuǎn)。若此時步進電機不是在最大的位置,則會出現(xiàn)步進電機在初始零點位置堵轉(zhuǎn)的現(xiàn)象,影響汽車儀表步進電機的歸零速度,同時也會對步進電機的齒輪減速機構(gòu)造成損害,加速齒輪磨損,使齒輪的間隙過大,造成步進步進電機運行中的誤差。采用SSD模塊進行歸零可以完全避免上面所述情況的發(fā)生,在SSD模塊檢測到電機失步的時候也就是步進電機回到初始零點位置時就會停止電機驅(qū)動。這樣就避免了步進電機在初始位置發(fā)生堵轉(zhuǎn),提高了步進電機歸零的效率,也保護了步進電機。

      使用SSD模塊進行步進電機歸零就是使步進電機能快速準確的回到初始零點,因此根據(jù)步進電機的特性設(shè)定歸零過程的消隱時間和積分采樣時間是步進電機快速回零的關(guān)鍵。步進電機驅(qū)動中采用8 ms/步的步進電機轉(zhuǎn)動速度,在歸零過程中步進電機的歸零速度可以大于驅(qū)動時的速度,使步進電機更為快速的回到零點。在調(diào)試中采用2 ms/步的步進電機歸零速度,設(shè)定步進電機失步閾值用于判斷是否歸零完成。在歸零調(diào)試過程中出現(xiàn)在啟動時儀表指針沒有轉(zhuǎn)動無法歸零的現(xiàn)象。這種現(xiàn)象的出現(xiàn)主要是由于在初始啟動時步進電機的轉(zhuǎn)速不高,未通電線圈產(chǎn)生的感生電動勢微弱衰減較快,使16位累加計數(shù)器采樣值小于設(shè)定的閾值,從而判斷出步進電機已經(jīng)失步回到零點,導致SSD模塊關(guān)閉。因此可以在步進電機歸零檢測的前幾步不對積分采樣值和失步閾值進行比較,在步進電機完全啟動后再進行失步檢測。采用這種方法對步進電機進行連續(xù)進行1000次的不同位置歸零測試中,全部成功回到初始零點位置,沒有再發(fā)生啟動后就指針就停止的現(xiàn)象。

      4 小 結(jié)

      本文重點闡述了使用MC9S12HZ256的電機控制模塊(MC)和失步檢測模塊(SSD)對汽車儀表步進電機進行控制的方法,針對所研制汽車組合儀表系統(tǒng)進行了步進電機指示系統(tǒng)的調(diào)試,并對調(diào)試過程中出現(xiàn)的一些問題也分別加以解決。

      1)使用電機控制模塊(MC)對汽車儀表步進電機進行驅(qū)動控制時,注意步進電機的轉(zhuǎn)速,合理的選擇脈沖換相時間,有利于步進電機步進的準確性,降低步進電機振動,減少步進電機失步的情況發(fā)生。

      2)使用失步檢測模塊(SSD)可使步進電機快速歸零,有利于步進電機位置控制的準確性,減少初始狀態(tài)所累積的位置誤差。同時也應注意在歸零啟動時出現(xiàn)的問題,采用啟動初期不檢測的方法避免啟動后儀表指針無反應的狀況發(fā)生。

      使用MC9S12HZ256的電機控制模塊(MC)和步進電機失步檢測模塊(SSD)方便了對步進電機進行的控制,使汽車儀表步進電機定位準確、工作穩(wěn)定。

      [1] MC9S12HZ256 V2 datasheet.

      [2]朱維杰,陳永降,曾向陽.MC9S12HZ在空心十字線圈儀表中的應用[J].汽車電器, 2008(11):10-13.

      [3] 王曉明.電動機的單片機控制[M].北京:北京航空航天大學出版社,2007.

      [4] 史敬灼.步進電動機伺服控制技術(shù)[M].北京:科學出版社,2006.

      [5] 李 飛,姜森霖,王景存.基于MC68HC908LJ12的汽車組合儀表設(shè)計 [J].湖北汽車工業(yè)學院學報,2008,22(4):49-52.

      猜你喜歡
      失步寄存器中斷
      Lite寄存器模型的設(shè)計與實現(xiàn)
      計算機應用(2020年5期)2020-06-07 07:06:44
      基于輸入頻率模型的步進電機失步非線性補償
      一種綜合判別電力系統(tǒng)失步的新方法
      跟蹤導練(二)(5)
      千里移防,衛(wèi)勤保障不中斷
      解放軍健康(2017年5期)2017-08-01 06:27:44
      分簇結(jié)構(gòu)向量寄存器分配策略研究*
      高滲透率風電并網(wǎng)對電力系統(tǒng)失步振蕩的影響
      基于PSCAD的大型機組失步保護仿真與整定校驗
      AT89C51與中斷有關(guān)的寄存器功能表解
      FPGA內(nèi)嵌PowerPC的中斷響應分析
      微處理機(2012年4期)2012-06-13 11:32:24
      六枝特区| 浙江省| 漯河市| 山丹县| 宁强县| 荆州市| 石渠县| 大埔县| 大方县| 宁南县| 巴中市| 开远市| 图木舒克市| 奈曼旗| 永兴县| 肥乡县| 富民县| 厦门市| 宜君县| 赤水市| 浏阳市| 兴化市| 清新县| 凤翔县| 溧水县| 会宁县| 仁化县| 阿拉尔市| 湘阴县| 嘉善县| 海安县| 新安县| 西平县| 景东| 东山县| 交口县| 沙河市| 武城县| 衡东县| 东方市| 吐鲁番市|