一種基于STC89C52的客車安全系統設計與實現
本文引用地址:http://www.biyoush.com/article/246381.htm
2.5 供電單元
電源部分如圖3所示,采用7.4 V鋰電池供電,通過L298N電機與PWM信號的輸入端口給電機提供穩(wěn)定的6 V電壓,但系統的大部分芯片均工作在5 V電壓下,因此需要電源模塊為系統提供5 V電壓。因此選用LM7805電源模塊,其能將7.4 V轉換為5 V電壓。如圖3所示,為提高輸出電壓的穩(wěn)定性,將穩(wěn)壓二極管VD2串接在LM7805的2腳與地之間,VD1作為輸出保護二極管,當輸出電壓低于VD2的穩(wěn)壓值時,VD1導通,并將輸出電流旁路,以確保LM7805的輸出端不受損壞。
3 軟件設計
程序的總流程如圖4所示。軟件主要由3部分構成,分別為:驅動程序、稱重程序和測距程序。首先,初始化定時器T0和T1的工作方式分別賦初值,T0的初值設為1 mV,T1的初值設為0。
驅動程序產生PWM信號以控制電機轉速,通過給定時器T0設定初值和計數器最大值100來確定PWM信號的周期。定時器T0每產生1次中斷計數器加1,當計數器的數值小于給定數值時輸出高電平,反之則輸出低電平。
稱重程序根據HX711自身芯片的特點對DOUT和PD_SCK兩管腳進行編程,先給PD_SCK串口25個時鐘脈沖,當第25個時鐘脈沖下降沿到來時,由DOUT向單片機IO口按位寫入數據,第25個脈沖寫入已讀出數據的最高位(MSB)。單片機將數據由高位到低位讀入后,再經公式轉換得出重量。
測距程序用定時器T1計算超聲波來回的時間,當接收端收到反射回的40 kHz脈沖波時,觸發(fā)INT0外中斷,同時T1停止計時,TH1和TL1中的數據便是測得的時間。另外,當定時器T1溢出時觸發(fā)定時器中斷,將定時器清零以防止超聲波進入測量盲區(qū)時造成的結果錯誤。稱重程序和測距程序處于兩個獨立的死循環(huán)之中,當按鍵按下時,完成兩功能的轉換。
4 測試結果
4.1 稱重模塊的測試
測試選取1 kg和2 kg砝碼等不同重量物品。首先將待測物品放置在已調好的零點電子稱上進行測量,并以該數據作為參照值。然后開機,等待液晶屏上的讀數穩(wěn)定顯示0,再將被測物體放置在稱臺上,等讀數穩(wěn)定后進行記錄,同時采用稱3次取平均值的方法進行記錄并計算測量誤差。
誤差公式為
4.2 超聲波測距模塊測試
將一把米尺固定在水平地面作為參照值,小車放在0 cm處。將一塊擋板放在米尺的10 cm、30 cm、50 cm等測試點并讀取液晶屏顯示的讀數,并采用測3次取平均值的方法進行記錄,同時計算誤差。
4.3 車輛防撞性能測試
當車與障礙物距離為30 cm時,車速減速為8.3 cm/s;當兩者距離為15 cm時,車輛停止,而當兩者距離>30 cm時,車輛正常行駛。測試通過設定不同的初始速度如:測量車遇到障礙物后的制動距離、停下時與障礙物的距離以及液晶屏顯示的距離和誤差。
結果表明,當小車以最大速度行駛,面對前方障礙物的情況下,小車仍可安全制動,且未與障礙物發(fā)生碰撞,從而驗證了本設計的安全性。結果如表4所示。
5 結束語
設計的創(chuàng)新點是將稱重和測距功能相結合,同時通過單片機完成了對小車的驅動控制并通過稱重模塊準確稱出小車載重的總重量。同時利用通過超聲波模塊測量小車與前方障礙物的距離,并使用液晶屏顯示各種運行狀態(tài)和測量結果。從運行情況上看,本設計運行穩(wěn)定,可靠性高,達到了設計要求。
模數轉換器相關文章:模數轉換器工作原理
稱重傳感器相關文章:稱重傳感器原理 蜂鳴器相關文章:蜂鳴器原理 脈沖點火器相關文章:脈沖點火器原理
評論