TPC單元及其在步進電機調速中的應用
發布時間:2008/5/26 0:00:00 訪問次數:707
    
     作者:華中科技大學 馬海 何頂新 鄭孝洋 陳光東
    
    摘 要 介紹瑞薩公司的16位單片機h8/3062f中可編程定時式樣控制器tpc的結構功能,以及如何利用tpc實現對異步電機的啟動和加減速控制的硬件結構原理和軟件程序設計。
    
    關鍵詞 步進電機 tpc 調速 h8/3062f
    
    步進電機在各種自動化控制系統中有著廣泛的應用,是機電一體化裝置中的關鍵部件。這是一種數字控制的電動機,是將電脈沖轉化為角他移的執行機構,它通過控制脈沖個數和脈沖頻率來控制電機的角位移量和轉動速度,從而達到準確定位和凋速的目的。
    
    傳統的步進電機所需的數字式電脈沖信號(即方波控制信號)一般都是借助數字邏輯電路米產生。隨著嵌入式技術的不斷發展,單片機的應用更為廣泛,由單片機定時來產生這種脈沖信號的場合越來越多。單片機定時控制脈沖一般有軟件定時和定時器定時兩種方式。前一種方式占用了cpu的大部分上作時間,所以常用定時器定時中斷來產生脈沖信號。出于一般的單片機系統中斷響應時間大部分在10μs級以上,因而定時器定時中斷來產生脈沖的精確度大致也在10μs級以上,往往不能滿足步進電機速度控制的高精度要求。為了提高脈沖控制的精確度,筆者采用瑞薩公司h8/3doh系列的h8/3062f單片機中的可編程定時式樣控制器進行脈沖控制,使得脈沖信號輸出的相應時間達到0.1μs級,從而能夠滿足步進電機速度控制的高精度要求。
    
    
    1 可編程定時式樣控制器tpc
    
    可編程定時式樣控制器tpc是瑞薩公司h8/3doh系列單片機所特有的一個功能模塊,它用16位定時器作時基提供各種式樣的脈沖輸出。圖1為tpc的結構框圖。tpc的脈沖輸出分成可同時獨市運作的4組,每組4位,分別由定時器的4個通道的比較匹配信號來觸發。tpc借用了端口b和端口a的共16條引腳tp15~tpo作為其輸出,可按位開放。最多可以控制16個脈沖輸出,而輸出數據由兩端口的數據寄存器pbdr和padr以及后續數據寄存器ndrb和ndra提供。端口數據方向寄存器paddr和pbddr用于控制引腳的輸入或輸出;而后續數據允許寄存器ndera和nderb用來開放或關閉tpc的端口輸出;tpc的輸出方式寄存器tpmr用于選擇tpc每組的輸出方式;輸出控制寄存器tpcr則用于選擇tpc每組的觸發信號源,即由定時器的哪個通道觸發。其中單片機h8/3062f的定時器有3個通道,每個通道分別有3個寄存器:定時計數器tcnt、通用寄存器gra和grb。
    
    定時器啟動后,定時器中已選定的某通道的計數寄存器tcnt將對時鐘源的脈沖進行計數。當tcnt等于該通道的通用寄存器gra(grb)中數值時,就稱作該通道的a(b)比較匹配事件發生。這樣事先置于后續數據寄存器ndra(ndrb)的值自動被傳送到相應端口a(b)的數據寄存器padr(pbdr)對應的位,于是就更新了tpc的輸出值。
    
    tpc有兩種輸出方式,即不重疊輸出和正常輸出。可以通過輸出方式寄存器tpmr,來選擇tpc每組的輸出方式。不重疊輸出方式是在脈沖輸出之間可保障有不重疊裕度。在該通道的通用寄存器grb中,設置不重疊tpc輸出波形的輸出觸發周期,則不重疊裕度置于gra中,輸出值將在a比較匹配事件和b比較匹配事件發生時變化觸發。正常輸出方式,則是在gra中設置tpc輸出波形的輸出觸發周期,當a比較匹配事什發生時tpc輸出信號。根據步進電機的脈沖控制要求,這里采用的是正常輸出方式。
    
    tpc用于步進電機脈沖控制的原理如下:首先,將通用寄存器gra選作輸出比較寄存器;然后,將tpc下一個輸出的端口值置于后續數據寄存器ndra(ndrb),再啟動定時器,當a比較匹配事件發生時發出中斷請求。在研究tpc輸出時序的過程中發現,tpc并非是在中斷響應過程中給tpc端口送值的,而是在a比較匹配事件發生的3個時鐘周期后,就把事先置于后續數據寄存器的值送到端口數據寄存器padr(pbdr),于是就更新了tpc的輸出值。由于h8/3062f系列的單片機時鐘頻率都在20mhz以上,這樣只需不到0.2ms,就可以送出端口信號,大大縮短了響應時問,比一般的單片機在定時中斷過程中送端口信號快了幾十倍甚至上百倍,從而使對脈沖控制的更加準確。而在中斷子程序中則是更新后續數據寄存器ndra(ndrb)和輸出比較寄存器gra的值,從而改變脈沖的頻率實現對異步電機的調速。圖2為產生脈沖頻率變化
    
     作者:華中科技大學 馬海 何頂新 鄭孝洋 陳光東
    
    摘 要 介紹瑞薩公司的16位單片機h8/3062f中可編程定時式樣控制器tpc的結構功能,以及如何利用tpc實現對異步電機的啟動和加減速控制的硬件結構原理和軟件程序設計。
    
    關鍵詞 步進電機 tpc 調速 h8/3062f
    
    步進電機在各種自動化控制系統中有著廣泛的應用,是機電一體化裝置中的關鍵部件。這是一種數字控制的電動機,是將電脈沖轉化為角他移的執行機構,它通過控制脈沖個數和脈沖頻率來控制電機的角位移量和轉動速度,從而達到準確定位和凋速的目的。
    
    傳統的步進電機所需的數字式電脈沖信號(即方波控制信號)一般都是借助數字邏輯電路米產生。隨著嵌入式技術的不斷發展,單片機的應用更為廣泛,由單片機定時來產生這種脈沖信號的場合越來越多。單片機定時控制脈沖一般有軟件定時和定時器定時兩種方式。前一種方式占用了cpu的大部分上作時間,所以常用定時器定時中斷來產生脈沖信號。出于一般的單片機系統中斷響應時間大部分在10μs級以上,因而定時器定時中斷來產生脈沖的精確度大致也在10μs級以上,往往不能滿足步進電機速度控制的高精度要求。為了提高脈沖控制的精確度,筆者采用瑞薩公司h8/3doh系列的h8/3062f單片機中的可編程定時式樣控制器進行脈沖控制,使得脈沖信號輸出的相應時間達到0.1μs級,從而能夠滿足步進電機速度控制的高精度要求。
    
    
    1 可編程定時式樣控制器tpc
    
    可編程定時式樣控制器tpc是瑞薩公司h8/3doh系列單片機所特有的一個功能模塊,它用16位定時器作時基提供各種式樣的脈沖輸出。圖1為tpc的結構框圖。tpc的脈沖輸出分成可同時獨市運作的4組,每組4位,分別由定時器的4個通道的比較匹配信號來觸發。tpc借用了端口b和端口a的共16條引腳tp15~tpo作為其輸出,可按位開放。最多可以控制16個脈沖輸出,而輸出數據由兩端口的數據寄存器pbdr和padr以及后續數據寄存器ndrb和ndra提供。端口數據方向寄存器paddr和pbddr用于控制引腳的輸入或輸出;而后續數據允許寄存器ndera和nderb用來開放或關閉tpc的端口輸出;tpc的輸出方式寄存器tpmr用于選擇tpc每組的輸出方式;輸出控制寄存器tpcr則用于選擇tpc每組的觸發信號源,即由定時器的哪個通道觸發。其中單片機h8/3062f的定時器有3個通道,每個通道分別有3個寄存器:定時計數器tcnt、通用寄存器gra和grb。
    
    定時器啟動后,定時器中已選定的某通道的計數寄存器tcnt將對時鐘源的脈沖進行計數。當tcnt等于該通道的通用寄存器gra(grb)中數值時,就稱作該通道的a(b)比較匹配事件發生。這樣事先置于后續數據寄存器ndra(ndrb)的值自動被傳送到相應端口a(b)的數據寄存器padr(pbdr)對應的位,于是就更新了tpc的輸出值。
    
    tpc有兩種輸出方式,即不重疊輸出和正常輸出。可以通過輸出方式寄存器tpmr,來選擇tpc每組的輸出方式。不重疊輸出方式是在脈沖輸出之間可保障有不重疊裕度。在該通道的通用寄存器grb中,設置不重疊tpc輸出波形的輸出觸發周期,則不重疊裕度置于gra中,輸出值將在a比較匹配事件和b比較匹配事件發生時變化觸發。正常輸出方式,則是在gra中設置tpc輸出波形的輸出觸發周期,當a比較匹配事什發生時tpc輸出信號。根據步進電機的脈沖控制要求,這里采用的是正常輸出方式。
    
    tpc用于步進電機脈沖控制的原理如下:首先,將通用寄存器gra選作輸出比較寄存器;然后,將tpc下一個輸出的端口值置于后續數據寄存器ndra(ndrb),再啟動定時器,當a比較匹配事件發生時發出中斷請求。在研究tpc輸出時序的過程中發現,tpc并非是在中斷響應過程中給tpc端口送值的,而是在a比較匹配事件發生的3個時鐘周期后,就把事先置于后續數據寄存器的值送到端口數據寄存器padr(pbdr),于是就更新了tpc的輸出值。由于h8/3062f系列的單片機時鐘頻率都在20mhz以上,這樣只需不到0.2ms,就可以送出端口信號,大大縮短了響應時問,比一般的單片機在定時中斷過程中送端口信號快了幾十倍甚至上百倍,從而使對脈沖控制的更加準確。而在中斷子程序中則是更新后續數據寄存器ndra(ndrb)和輸出比較寄存器gra的值,從而改變脈沖的頻率實現對異步電機的調速。圖2為產生脈沖頻率變化
上一篇:單片機控制的吊扇多功能控制器