久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 7005|回復: 4
打印 上一主題 下一主題
收起左側

基于CAN總線的汽車后視鏡控制系統電路圖+單片機源程序

  [復制鏈接]
跳轉到指定樓層
樓主
ID:523056 發表于 2019-4-27 17:43 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
電路原理圖如下:


目前各種汽車上安裝的后視鏡都存在不同程度的盲區,
駕駛視野寬度的不足使車輛在行駛中始終存在安全隱患[1]。車輛在轉彎時駕駛員只能觀察到同水平線上車輛的后方視野,而看不到側方同向來車,尤其載貨汽車自身高度和長度的限制,使得駕駛員對后視鏡的依賴更加明顯,且載貨汽車貨箱長度大、載貨多、慣性大,轉彎時存在較大的內輪差,一旦發生事故,死傷慘重。根據公安部道路交通安全研究中心的數據顯示,2014 年貨車總量占全國汽車保有量的8%,但貨車事故致死人數卻達到28%[2-5]。因此提出針對改善載貨汽車轉向行駛過程中后視鏡視野的后視鏡隨動系統,對提高載貨汽車的行駛安全性具有重要意義。
載貨汽車后視鏡的控制系統主要是通過手動按鈕的方式
完成對后視鏡的調節,并且載貨汽車在轉彎時的后視鏡不會自動調節,導致駕駛員的視野范圍很局限。后視鏡智能調整
技術在轎車上有一些研究成果,有研究人員根據轉向燈的開啟及關閉為輸入信號,控制后視鏡電機的啟停及轉動方向[6],但是這種后視鏡調節方法,不能準確、實時性的為駕駛員提供最佳后視鏡駕駛視野;黃科[7]等人采用單片機實現了對后視鏡的自動翻轉控制,提高了后視鏡的調節精度,鄭芳芳[8]等人基于CAN 總線實現了后視鏡的自動折疊展開及位置記憶功能,但都沒有結合后視鏡視野盲區對后視鏡的轉動做出調整。
鑒于目前后視鏡系統的局限性,本文對載貨汽車交匯路口轉彎時的后視鏡視野情況做了分析,采用單片機作為主控單元,以方向盤的轉角作為輸入信號,設計了后視鏡隨動系統,該系統可以實現方向盤轉角數據的傳輸,并通過L298N后視鏡電機驅動模塊完成了對后視鏡鏡面的自適應控制,使車輛在交叉路口轉彎時駕駛員的后視鏡視野得到很大程度的改善,提高了載貨汽車在轉彎情況下的行車安全性。
1 系統硬件設計
本文所涉及的后視鏡隨動系統,主要由輸入端、主控單元、執行端三大部分組成。其中輸入端主要由方向盤轉角傳感器和CAN 模塊組成;主控單元采用STM32 系列單片機作為微處理器模塊的核心器件,執行算法及控制工作;執行端包括后視鏡鏡面控制器及電機驅動模塊L298N。方向盤轉角傳感器采集到的轉角數據,通過CAN 模塊傳送給主控單元STM32 系列單片機,STM32 系列單片機將接收到的數據進行數據處理后對電機驅動模塊輸入端進行高低電平的控制,可以實現對后視鏡鏡面控制器中調整電機的正反轉控制,后視鏡的轉動角度則通過時間控制來實現。系統的整體結構框
圖如圖1 所示。
圖1 隨動系統整體結構框圖
Fig.1 The overall structure diagram of the follow-up system
1.1 輸入端的設計
該后視鏡隨動系統采用的是型號為C68049XF25849366
ANA76100BA的方向盤轉角傳感器,該型號的傳感器抗干擾性能較強且工作信號穩定可靠。轉角傳感器的內部結構主要包括1 個角度測量芯片MLX90316、5 個槽型光電傳感器SG278 編碼陣列、電源穩壓電路等。轉角傳感器安裝在方向盤下方的轉向管柱上,能夠檢測方向盤轉動角度及轉動方向。
轉角傳感器的基本工作原理:方向盤轉動時通過轉向柱帶動主動齒輪轉動,此時從動齒輪的轉動引起從動齒輪上方小磁鐵周圍磁場方向的改變,這種變化由MLX90316 芯片檢測并輸出與小磁鐵轉動角度呈線性關系的模擬電壓[9-10],此電壓經DSP 芯片計算得到的轉角數據,然后經過CAN 模塊轉換傳送給主控單元52 單片機

單片機源程序如下:
  1. /*********************************************************************************/
  2. /*注意:本例程是基于STC89系列傳統型12T 51單片機編寫,由于不同系列51單片機一些外設*/
  3. /*功能配置存在差異,請親們在使用時對應進行修改。*/
  4. /*********************************************************************************/
  5. #include <reg52.h>
  6. #include "MCP2515.H"

  7. unsigned char CAN_Flag=0;                                                        //CAN接收到數據標志
  8. unsigned char CAN_R_Buffer[8];                                                //CAN接收數據保存緩沖區
  9. extern unsigned char ge,shi,bai,qian,wan;           //顯示變量
  10. extern void Init_ADXL345(void);             //初始化ADXL345
  11. extern unsigned char Single_Read_ADXL345(unsigned char REG_Address);                   //單個讀取內部寄存器數據
  12. extern void  Multiple_Read_ADXL345();                                  //連續的讀取內部寄存器數據
  13. /*******************************************************************************
  14. * 函數名  : Exint1_Init
  15. * 描述    : 外部中斷1初始化函數
  16. * 輸入    : 無
  17. * 輸出    : 無
  18. * 返回值  : 無
  19. * 說明    : 無
  20. *******************************************************************************/
  21. void Exint1_Init(void)
  22. {
  23.     PX1=1;                //設置外部中斷1的中斷優先級為高優先級
  24.     IT1 = 1;        //設置INT1的中斷類型 (1:僅下降沿 0:上升沿和下降沿)
  25.     EX1 = 1;        //使能INT1中斷
  26.     EA = 1;         //使能總中斷
  27. }
  28. /*******************************************************************************
  29. * 函數名  : Exint1_ISR
  30. * 描述    : 外部中斷1中斷服務函數
  31. * 輸入    : 無
  32. * 輸出    : 無
  33. * 返回值  : 無
  34. * 說明    : 用于檢測MCP2515中斷引腳的中斷信號
  35. *******************************************************************************/
  36. void Exint1_ISR(void) interrupt 2 using 1
  37. {
  38.         CAN_Flag=1;//CAN接收到數據標志
  39. }
  40. /*******************************************************************************
  41. * 函數名  : main
  42. * 描述    : 主函數,用戶程序從main函數開始運行
  43. * 輸入    : 無
  44. * 輸出    : 無
  45. * 返回值  : 無
  46. * 說明    : 無
  47. *******************************************************************************/
  48. char Can_Tx_Buf[4];
  49. extern void delay(unsigned int k);
  50. void main(void)
  51. {
  52.         unsigned char devid;               

  53.         Init_ADXL345();                 //初始化ADXL345
  54.         devid=Single_Read_ADXL345(0X00);//讀出的數據為0XE5,表示正確       

  55.         Exint1_Init();                        //外部中斷1初始化函數
  56.         MCP2515_Init();                        //MCP2515初始化配置
  57.         while(1)
  58.         {
  59.             Multiple_Read_ADXL345();       //連續讀出數據,存儲在BUF中       
  60.                 display_x();   
  61.                 Can_Tx_Buf[0] = qian;
  62.                 Can_Tx_Buf[1] = bai;
  63.                 Can_Tx_Buf[2] = shi;
  64.                 Can_Tx_Buf[3] = ge;
  65.                 delay(1000)                        ;
  66.                 CAN_Send_Buffer(Can_Tx_Buf,4);//CAN發送指定長度的數據               
  67.         }
  68. }
復制代碼

所有資料51hei提供下載:
基于52單片機汽車后視鏡.rar (2.2 MB, 下載次數: 184)



評分

參與人數 1黑幣 +50 收起 理由
admin + 50 共享資料的黑幣獎勵!

查看全部評分

分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏9 分享淘帖 頂1 踩
回復

使用道具 舉報

沙發
ID:5212 發表于 2021-8-25 22:18 | 只看該作者
這個適用于哪些車型的CAN協議呢?
回復

使用道具 舉報

板凳
ID:47286 發表于 2021-8-27 00:49 來自手機 | 只看該作者
開車不都是先看鏡子后轉向么 這時候還沒打方向盤 鏡子怎么動
回復

使用道具 舉報

地板
ID:282795 發表于 2023-2-8 11:42 | 只看該作者
非常經典。。。。。。。。。。。。。。。。。。。。。。
回復

使用道具 舉報

5#
ID:833102 發表于 2023-7-11 17:18 | 只看該作者
666好文章
回復

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規則

手機版|小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術交流QQ群281945664

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 久久成人国产 | av成年人网站| 久久久久国产精品一区二区 | 欧美精品99 | 天天久久| 欧美日韩综合视频 | 欧美日韩亚洲三区 | 天天拍天天操 | 亚洲精品一区在线 | www.婷婷 | 成人在线观看欧美 | 福利视频网站 | 久久久久亚洲 | 美日韩精品 | 91亚洲国产精品 | 亚洲精品一区二 | 欧美a级成人淫片免费看 | 人人干人人看 | 51ⅴ精品国产91久久久久久 | 91在线免费视频 | 久久夜夜 | 亚洲一本 | 中文字幕日韩欧美一区二区三区 | 成人国产一区二区三区精品麻豆 | 一级黄色毛片免费 | 日韩三级在线 | 在线视频 中文字幕 | 一区二区在线不卡 | 欧美久久久久久久久 | 久久久久久久久久久久久久国产 | 免费看欧美一级片 | 国产精品久久久久久久久久久久冷 | 91爱爱·com| 亚洲免费精品 | 毛片久久久 | 午夜免费网 | 国产高清一二三区 | 一区二区三区国产精品 | 精品国产一级 | 丁香一区二区 | 欧美在线观看一区 |