|
電路原理圖如下:
111.png (126.77 KB, 下載次數(shù): 86)
下載附件
2019-4-27 17:40 上傳
2222.png (90.01 KB, 下載次數(shù): 68)
下載附件
2019-4-27 17:40 上傳
目前各種汽車上安裝的后視鏡都存在不同程度的盲區(qū),
駕駛視野寬度的不足使車輛在行駛中始終存在安全隱患[1]。車輛在轉(zhuǎn)彎時(shí)駕駛員只能觀察到同水平線上車輛的后方視野,而看不到側(cè)方同向來車,尤其載貨汽車自身高度和長度的限制,使得駕駛員對后視鏡的依賴更加明顯,且載貨汽車貨箱長度大、載貨多、慣性大,轉(zhuǎn)彎時(shí)存在較大的內(nèi)輪差,一旦發(fā)生事故,死傷慘重。根據(jù)公安部道路交通安全研究中心的數(shù)據(jù)顯示,2014 年貨車總量占全國汽車保有量的8%,但貨車事故致死人數(shù)卻達(dá)到28%[2-5]。因此提出針對改善載貨汽車轉(zhuǎn)向行駛過程中后視鏡視野的后視鏡隨動(dòng)系統(tǒng),對提高載貨汽車的行駛安全性具有重要意義。
載貨汽車后視鏡的控制系統(tǒng)主要是通過手動(dòng)按鈕的方式
完成對后視鏡的調(diào)節(jié),并且載貨汽車在轉(zhuǎn)彎時(shí)的后視鏡不會(huì)自動(dòng)調(diào)節(jié),導(dǎo)致駕駛員的視野范圍很局限。后視鏡智能調(diào)整
技術(shù)在轎車上有一些研究成果,有研究人員根據(jù)轉(zhuǎn)向燈的開啟及關(guān)閉為輸入信號,控制后視鏡電機(jī)的啟停及轉(zhuǎn)動(dòng)方向[6],但是這種后視鏡調(diào)節(jié)方法,不能準(zhǔn)確、實(shí)時(shí)性的為駕駛員提供最佳后視鏡駕駛視野;黃科[7]等人采用單片機(jī)實(shí)現(xiàn)了對后視鏡的自動(dòng)翻轉(zhuǎn)控制,提高了后視鏡的調(diào)節(jié)精度,鄭芳芳[8]等人基于CAN 總線實(shí)現(xiàn)了后視鏡的自動(dòng)折疊展開及位置記憶功能,但都沒有結(jié)合后視鏡視野盲區(qū)對后視鏡的轉(zhuǎn)動(dòng)做出調(diào)整。
鑒于目前后視鏡系統(tǒng)的局限性,本文對載貨汽車交匯路口轉(zhuǎn)彎時(shí)的后視鏡視野情況做了分析,采用單片機(jī)作為主控單元,以方向盤的轉(zhuǎn)角作為輸入信號,設(shè)計(jì)了后視鏡隨動(dòng)系統(tǒng),該系統(tǒng)可以實(shí)現(xiàn)方向盤轉(zhuǎn)角數(shù)據(jù)的傳輸,并通過L298N后視鏡電機(jī)驅(qū)動(dòng)模塊完成了對后視鏡鏡面的自適應(yīng)控制,使車輛在交叉路口轉(zhuǎn)彎時(shí)駕駛員的后視鏡視野得到很大程度的改善,提高了載貨汽車在轉(zhuǎn)彎情況下的行車安全性。
1 系統(tǒng)硬件設(shè)計(jì)
本文所涉及的后視鏡隨動(dòng)系統(tǒng),主要由輸入端、主控單元、執(zhí)行端三大部分組成。其中輸入端主要由方向盤轉(zhuǎn)角傳感器和CAN 模塊組成;主控單元采用STM32 系列單片機(jī)作為微處理器模塊的核心器件,執(zhí)行算法及控制工作;執(zhí)行端包括后視鏡鏡面控制器及電機(jī)驅(qū)動(dòng)模塊L298N。方向盤轉(zhuǎn)角傳感器采集到的轉(zhuǎn)角數(shù)據(jù),通過CAN 模塊傳送給主控單元STM32 系列單片機(jī),STM32 系列單片機(jī)將接收到的數(shù)據(jù)進(jìn)行數(shù)據(jù)處理后對電機(jī)驅(qū)動(dòng)模塊輸入端進(jìn)行高低電平的控制,可以實(shí)現(xiàn)對后視鏡鏡面控制器中調(diào)整電機(jī)的正反轉(zhuǎn)控制,后視鏡的轉(zhuǎn)動(dòng)角度則通過時(shí)間控制來實(shí)現(xiàn)。系統(tǒng)的整體結(jié)構(gòu)框
圖如圖1 所示。
圖1 隨動(dòng)系統(tǒng)整體結(jié)構(gòu)框圖
Fig.1 The overall structure diagram of the follow-up system
1.1 輸入端的設(shè)計(jì)
該后視鏡隨動(dòng)系統(tǒng)采用的是型號為C68049XF25849366
ANA76100BA的方向盤轉(zhuǎn)角傳感器,該型號的傳感器抗干擾性能較強(qiáng)且工作信號穩(wěn)定可靠。轉(zhuǎn)角傳感器的內(nèi)部結(jié)構(gòu)主要包括1 個(gè)角度測量芯片MLX90316、5 個(gè)槽型光電傳感器SG278 編碼陣列、電源穩(wěn)壓電路等。轉(zhuǎn)角傳感器安裝在方向盤下方的轉(zhuǎn)向管柱上,能夠檢測方向盤轉(zhuǎn)動(dòng)角度及轉(zhuǎn)動(dòng)方向。
轉(zhuǎn)角傳感器的基本工作原理:方向盤轉(zhuǎn)動(dòng)時(shí)通過轉(zhuǎn)向柱帶動(dòng)主動(dòng)齒輪轉(zhuǎn)動(dòng),此時(shí)從動(dòng)齒輪的轉(zhuǎn)動(dòng)引起從動(dòng)齒輪上方小磁鐵周圍磁場方向的改變,這種變化由MLX90316 芯片檢測并輸出與小磁鐵轉(zhuǎn)動(dòng)角度呈線性關(guān)系的模擬電壓[9-10],此電壓經(jīng)DSP 芯片計(jì)算得到的轉(zhuǎn)角數(shù)據(jù),然后經(jīng)過CAN 模塊轉(zhuǎn)換傳送給主控單元52 單片機(jī)
單片機(jī)源程序如下:
- /*********************************************************************************/
- /*注意:本例程是基于STC89系列傳統(tǒng)型12T 51單片機(jī)編寫,由于不同系列51單片機(jī)一些外設(shè)*/
- /*功能配置存在差異,請親們在使用時(shí)對應(yīng)進(jìn)行修改。*/
- /*********************************************************************************/
- #include <reg52.h>
- #include "MCP2515.H"
- unsigned char CAN_Flag=0; //CAN接收到數(shù)據(jù)標(biāo)志
- unsigned char CAN_R_Buffer[8]; //CAN接收數(shù)據(jù)保存緩沖區(qū)
- extern unsigned char ge,shi,bai,qian,wan; //顯示變量
- extern void Init_ADXL345(void); //初始化ADXL345
- extern unsigned char Single_Read_ADXL345(unsigned char REG_Address); //單個(gè)讀取內(nèi)部寄存器數(shù)據(jù)
- extern void Multiple_Read_ADXL345(); //連續(xù)的讀取內(nèi)部寄存器數(shù)據(jù)
- /*******************************************************************************
- * 函數(shù)名 : Exint1_Init
- * 描述 : 外部中斷1初始化函數(shù)
- * 輸入 : 無
- * 輸出 : 無
- * 返回值 : 無
- * 說明 : 無
- *******************************************************************************/
- void Exint1_Init(void)
- {
- PX1=1; //設(shè)置外部中斷1的中斷優(yōu)先級為高優(yōu)先級
- IT1 = 1; //設(shè)置INT1的中斷類型 (1:僅下降沿 0:上升沿和下降沿)
- EX1 = 1; //使能INT1中斷
- EA = 1; //使能總中斷
- }
- /*******************************************************************************
- * 函數(shù)名 : Exint1_ISR
- * 描述 : 外部中斷1中斷服務(wù)函數(shù)
- * 輸入 : 無
- * 輸出 : 無
- * 返回值 : 無
- * 說明 : 用于檢測MCP2515中斷引腳的中斷信號
- *******************************************************************************/
- void Exint1_ISR(void) interrupt 2 using 1
- {
- CAN_Flag=1;//CAN接收到數(shù)據(jù)標(biāo)志
- }
- /*******************************************************************************
- * 函數(shù)名 : main
- * 描述 : 主函數(shù),用戶程序從main函數(shù)開始運(yùn)行
- * 輸入 : 無
- * 輸出 : 無
- * 返回值 : 無
- * 說明 : 無
- *******************************************************************************/
- char Can_Tx_Buf[4];
- extern void delay(unsigned int k);
- void main(void)
- {
- unsigned char devid;
- Init_ADXL345(); //初始化ADXL345
- devid=Single_Read_ADXL345(0X00);//讀出的數(shù)據(jù)為0XE5,表示正確
- Exint1_Init(); //外部中斷1初始化函數(shù)
- MCP2515_Init(); //MCP2515初始化配置
- while(1)
- {
- Multiple_Read_ADXL345(); //連續(xù)讀出數(shù)據(jù),存儲在BUF中
- display_x();
- Can_Tx_Buf[0] = qian;
- Can_Tx_Buf[1] = bai;
- Can_Tx_Buf[2] = shi;
- Can_Tx_Buf[3] = ge;
- delay(1000) ;
- CAN_Send_Buffer(Can_Tx_Buf,4);//CAN發(fā)送指定長度的數(shù)據(jù)
- }
- }
復(fù)制代碼
所有資料51hei提供下載:
基于52單片機(jī)汽車后視鏡.rar
(2.2 MB, 下載次數(shù): 184)
2019-4-27 17:41 上傳
點(diǎn)擊文件名下載附件
下載積分: 黑幣 -5
|
評分
-
查看全部評分
|