汽車發(fā)動機轉速信號模擬器設計
信號的調理過程分為以下3個部分:
①整形。輸入信號是頻率固定為1 MHz的PWM信號,其占空比按照正弦規(guī)律變化,經過LMV931整形后得到向上平移后的正弦波。
②濾波。電容C1起到濾波的作用,濾除信號中的直流分量,正弦信號整體向下平移,得到標準的正弦波形。
③放大。標準正弦波最大幅值只有2.5 V,不能滿足磁電信號的要求,所以經過LM7332放大一次,放大倍數(shù)β=R1/R2。
信號變換過程如圖3所示。
3 軟件設計
整個軟件部分分為模擬器配置狀態(tài)和模擬器輸出狀態(tài)。配置狀態(tài)主要功能為通過面板鍵盤或者RS232通信設定發(fā)動機參數(shù)。輸出狀態(tài)主要功能是根據(jù)發(fā)動機參數(shù)和傳感器的組合輸出當前需求轉速下的曲軸信號和凸輪軸信號。
3.1 逼近磁電正弦信號
模擬器是通過PWM信號軟件逼近的方式產生磁電信號。隨著一個周期所分段數(shù)的逐漸增加,逼近的精度也逐步提高。但為了防止高速時程序頻繁進出中斷會影響程序其他部分的運行,逼近所分段數(shù)不可過多。綜合逼近精度、單片機的總線頻率和正弦信號的對稱性考慮,把凸
輪軸磁電信號的一個正弦周期平分20等份,通過不同占空比的PWM信號來逼近正弦信號中的20段,如圖4(a)所示;把曲軸信號的一個正弦周期平分12等份,通過不同占空比的PWM信號來逼近其中的12段,如圖4(b)所示。
計算逼近各點時間間隔。計算公式如下:
其中,TimeIntervalCrank為曲軸信號逼近各點時間的間隔計數(shù)值;TimeIntervalCam為凸輪軸信號逼近各點時間的間隔計數(shù)值;fbus為時鐘總線頻率(Hz);Cranknumber為曲軸齒數(shù)(60、48);Camwidth為凸輪軸齒寬(1,2,3…);n為發(fā)動機目標轉速(rpm)。
圖4中,實線為逼近的目標曲線,虛線為逼近得到的曲線,逼近后的曲線相對于目標曲線向右平移了一小段相位,在程序中應提前逼近的開始時間,以消除逼近相位誤差。
PWM通道的模數(shù)寄存器的值恒定為19,正弦信號最大值對應的值寄存器的值為Rang,如圖4中的“6”點和“4”點。為了保證正弦信號的幅值隨著轉速值而變化,Rang隨發(fā)動機轉速增加而增大,Rang=Rang(nspeed)。
當逼近一個曲軸信號正弦波時,正弦信號中各點對應的正弦值如表1所列。各點對應的單片機值寄存器的值為TPM2CV0=Rang(nspeed)×Sin(Number)。同理,可以得到逼近凸輪軸磁電信號20個點對應值寄存器的值TPM2CV1。
為了省去單片機做乘除法運算所占的時間,在程序中將各點對應的寄存器值做成數(shù)組,直接調用。如果要逼近與圖4極性相反(先負后正)的正弦波,只需顛倒各點逼近順序,即逼近順序為20,19,18,…,2,1。
3.2 生成凸輪軸信號和曲軸信號
曲軸信號流程如圖5所示。首先判斷曲軸信號模式。
評論