用低成本元器件的電路測量電機速度
本設計實例使用一個微控制器,一個16×2鍵LCD,還有一個旋轉編碼器,用于測量并虛擬顯示一只電機的速度(圖1)。增量編碼器耦合于電機軸上,測量電機轉子的速度,它產生一個與電機速度成正比的正交脈沖。1024脈沖旋轉編碼器是Hengstler公司的RS-32-0/1024ER.11KB。電機旋轉速度wR的計算方法是在某個時間周期tP內,對編碼器軸的轉數nV作計數。nV的計算方法是,統(tǒng)計在這個固定時間tP內的脈沖數nP:對此編碼器nV=nP/1024。旋轉速度為
其中d=60/(tP×1024)rpm表示所測速度的分辨率。欲為此應用獲得1rpm的分辨率,作為時基的固定周期為(60/1024=58.59)ms。在本設計實例中,使用了Microchip公司的低價微控制器PIC16F873即IC1完成運算。該微控制器亦驅動LCD即IC2,它以每分鐘轉數為單位顯示旋轉速度。
用一個與參考文獻1中電路類似的方式,在IC1的RB0/INT輸入加上編碼器的正交脈沖,它在脈沖的上升沿產生一個高優(yōu)先中斷??梢杂眠@些中斷通過計數器的增長計算nP,當達到固定周期tP時計數器初始化。此外,微控制器的內
部8bit定時器Timer0寄存tP,它在14.3MHz的時鐘頻率fCLK下每286ms產生一個tM(定時器中斷):tM=4×28/fCLK/4=286ms。這個計算意為,修正時基tP需要205個定時器中斷(tP/tM)。根據方程,當計數器到達這個時間時,計數值nP就確定了旋轉速度。最后,該值顯示在LCD屏幕上。
另外,如果控制系統(tǒng)必須測量旋轉速度,則需要一個數模轉換。但不必增加昂貴的DAC也可以完成這個轉換,方法是將微控制器的PWM(脈沖寬度調制)加到由R2、R3、C4、C6和IC3構成的一個低通濾波器上。PWM信號的頻率為20kHz,低通濾波器的截止頻率為160Hz,遠低于PWM頻率。在本設計中,PWM信號的最大占空比周期對應的旋轉速度為1500rpm。
可以從Microchip下載IC1程序的源碼,并用MPLab作匯編。可以根據使用的編碼器以及方程的分辨率,在軟件中修改各個常量。
評論