精品国产人成在线_亚洲高清无码在线观看_国产在线视频国产永久2021_国产AV综合第一页一个的一区免费影院黑人_最近中文字幕MV高清在线视频

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

怎樣制作Arduino OBD2掃描儀

454398 ? 來源:網絡整理 ? 作者:網絡整理 ? 2019-11-14 17:43 ? 次閱讀

步驟1:準備ELM327板以繞過USB橋接芯片

ELM327電纜外殼上的標簽,用細小的星形螺釘擰下4個螺釘

然后拿出木板。

提示: 借用Girlfrien/妻子的表情,并在連接到OBD2連接器的連接器的一側做一個標記,以這種方式將其取出時會知道它會走到哪一邊,因為它可以雙向移動,因此在此可指示的情況下,無需移除上述連接器。

將2線連接到板上的TX和RX引腳,在隨附的照片中,我包括了USB Bridge芯片的引腳排列信息。請小心,盡管我設法取消焊接了一些我無法放回的組件,但幸運的是,此后它仍然可以工作。

提示:對arduino進行編程,以便對其進行編程寫入串行監視器時,它們之間有一些短的延遲,然后將跳線電纜連接到arduino的TX引腳上,并與電路板的另一端相碰,以查看在哪里可以進行一些串行活動,表面安裝的LED閃爍為發生通信,不幸的是,這在RX端不起作用,但是在圖片中很容易看到我將其焊接到板上的位置。

注意: USB電纜通過4針連接器連接到板上,我將中間的2條切掉,以便ELM327在連接時無法與PC通信,這樣,它僅從PC的USB端口和板上的串行控制器獲取電源將不會被允許Arduino與之交談的PC占用

一旦將其放回盒子中,我就將其錄音因為在我的吉普車中,箱子擋住了我的路,無法在駕駛員座位上駕駛它,所以我將把外殼用于其他用途。

步驟2:將Arduino LCD Shield連接到Arduino

將Arduino LCD Shield連接到arduino,然后將其連接到要編程的PC。

下面是我的Arduino Sketch,我注意到格式混亂有了一些代碼,我可以獲得一些與此版本有關的信息,您也可以在此處查看代碼。

http://techtinker.co.za/viewtopic.php?f=14&t=17

// include the library code:

#include

//Declare Serial Read variables

int CmdCount=1;

byte inData;

char inChar;

String BuildINString=“”;

String DisplayString=“”;

long DisplayValue;

String SentMessage=“”;

int ByteCount=0;

long A;

int B;

int WorkingVal;

String WorkingString=“”; //Declare Buttons

int MenuID=0; // initialize the library with the numbers of the interface pins

LiquidCrystal lcd(8, 9, 4, 5, 6, 7); void setup()

{

// set up the LCD‘s number of columns and rows:

lcd.begin(16, 2);

// Print a message to the LCD.

lcd.setCursor(0, 0);

Bootup();//Simulate Bootup process doesnt have to be here this only makes it look cool

Retry:

lcd.setCursor(0, 0);

lcd.print(“Connecting.。..。. ”);

lcd.setCursor(0, 1);

lcd.print(“ ”);

Serial.begin(38400);

delay(500);

//Send a test message to see if the ELM327 Chip is responding

SentMessage = “ATI”;

Serial.println(“ATI”);delay(500);ReadData();

if (BuildINString.substring(1,7)==“ELM327”)

{

lcd.setCursor(0, 0);

lcd.print(“Welcome.。. ”);

lcd.setCursor(0, 1);

lcd.print(“Connection OK ”);

delay(1500);

}

else

{

lcd.setCursor(0, 0);

lcd.print(“Error ”);

lcd.setCursor(0, 1);

lcd.print(“No Connection! ”);

delay(1500);

goto Retry;

}

delay(1500);

} void loop() {

int x;

x = analogRead (0);

//Serial.println(x);

lcd.setCursor(10,1);

if (x 》 800 and x 《 820){lcd.print (“Select ”);}

if (x 》 620 and x 《 630){if (MenuID》0){MenuID--;}delay(250);}//Left

if (x 》 400 and x 《 415){lcd.print (“Down ”);}

if (x 》 190 and x 《 215){lcd.print (“Up ”);}

if (x 》 -10 and x 《 10){if (MenuID《11){MenuID++;}delay(250);} //Right if (MenuID==0){lcd.setCursor(0, 0);lcd.print(“01 Coolant Temp ”);lcd.setCursor(0, 1);lcd.print(DisplayString);SentMessage = “01 05”;Serial.println(“01 05”);delay(300);ReadData();}

if (MenuID==1){lcd.setCursor(0, 0);lcd.print(“02 IAT Temp ”);lcd.setCursor(0, 1);lcd.print(DisplayString);SentMessage = “01 0F”;Serial.println(“01 0F”);delay(300);ReadData();}

if (MenuID==2){lcd.setCursor(0, 0);lcd.print(“03 Ambient Temp ”);lcd.setCursor(0, 1);lcd.print(DisplayString);SentMessage = “01 46”;Serial.println(“01 46”);delay(300);ReadData();}

if (MenuID==3){lcd.setCursor(0, 0);lcd.print(“04 Throttle % ”);lcd.setCursor(0, 1);lcd.print(DisplayString);SentMessage = “01 11”;Serial.println(“01 11”);delay(300);ReadData();}

if (MenuID==4){lcd.setCursor(0, 0);lcd.print(“05 CAT 1 Temp ”);lcd.setCursor(0, 1);lcd.print(“Not Implemented ”);}

if (MenuID==5){lcd.setCursor(0, 0);lcd.print(“06 CAT 2 Temp ”);lcd.setCursor(0, 1);lcd.print(“Not Implemented ”);}

if (MenuID==6){lcd.setCursor(0, 0);lcd.print(“07 CAT 3 Temp ”);lcd.setCursor(0, 1);lcd.print(“Not Implemented ”);}

if (MenuID==7){lcd.setCursor(0, 0);lcd.print(“08 CAT 4 Temp ”);lcd.setCursor(0, 1);lcd.print(“Not Implemented ”);}

if (MenuID==8){lcd.setCursor(0, 0);lcd.print(“09 RPM ”);lcd.setCursor(0, 1);lcd.print(DisplayString);SentMessage = “01 0C”;Serial.println(“01 0C”);delay(300);ReadData();}

if (MenuID==9){lcd.setCursor(0, 0);lcd.print(“10 Vehicle Speed ”);lcd.setCursor(0, 1);lcd.print(DisplayString);SentMessage = “01 0D”;Serial.println(“01 0D”);delay(300);ReadData();}

if (MenuID==10){lcd.setCursor(0, 0);lcd.print(“11 Air Flow Rate ”);lcd.setCursor(0, 1);lcd.print(DisplayString);SentMessage = “01 10”;Serial.println(“01 10”);delay(300);ReadData();}

if (MenuID==11){lcd.setCursor(0, 0);lcd.print(“12 Barometric ”);lcd.setCursor(0, 1);lcd.print(DisplayString);SentMessage = “01 33”;Serial.println(“01 33”);delay(300);ReadData();}

步驟3:掛鉤直到您的車輛

對Arduino進行編程后,請確保將Arduino的TX/RX引腳連接到ELM327板上的TX/RX引腳。

該代碼通過發送命令“ ATI”來確保其能夠與ELM327芯片通信,如果i t并非液晶顯示屏上將顯示“錯誤,無連接”,如果它可以正常工作的話,它將在液晶顯示屏上顯示歡迎消息。

從那里,您只需按左右按鈕即可在

冷卻液溫度,IAT溫度,環境溫度,油門%,RPM,車輛速度,空氣流速,大氣壓力

您可以添加如果愿意,可以根據需要將更多菜單更改為

有關更多PID的信息,請參見Wikihttp://en.wikipedia.org/wiki/OBD-II_PIDs。

您可以使用再次插入窗口的手機支架來固定它,并使用USB手機充電器為Arduino供電,ELM327將通過引腳16上的OBD端口供電,引腳16為正,引腳4/5為負。

責任編輯:wv

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 掃描儀
    +關注

    關注

    2

    文章

    417

    瀏覽量

    67823
  • Arduino
    +關注

    關注

    187

    文章

    6464

    瀏覽量

    186677
收藏 人收藏

    評論

    相關推薦

    如何將三維激光掃描儀與BIM結合使用

    將三維激光掃描儀與BIM(建筑信息模型)結合使用,可以充分發揮兩者的優勢,提高工程測量的精度和效率。以下是將三維激光掃描儀與BIM結合使用的具體步驟和注意事項: 一、前期準備 確定掃描目標 : 明確
    的頭像 發表于 11-28 10:18 ?76次閱讀

    三維激光掃描儀使用技巧 三維激光掃描儀測量精度分析

    三維激光掃描儀使用技巧 三維激光掃描儀的使用技巧涵蓋了多個方面,旨在確保掃描過程的準確性和高效性。以下是一些關鍵的使用技巧: 穩定操作環境 :確保掃描過程中有一個穩定的操作環境,避免震
    的頭像 發表于 11-28 10:07 ?73次閱讀

    大幅掃描儀掃描地圖怎么操作

    1. 準備掃描儀和地圖 在開始掃描之前,確保您的大幅掃描儀已經安裝并正確配置。您可能需要安裝特定的驅動程序或軟件,以便掃描儀能夠與您的計算機通信。 檢查
    的頭像 發表于 10-14 15:47 ?458次閱讀

    蔡司激光三維掃描儀有效掃描金屬材料

    蔡司激光三維掃描儀因其高精度和多功能性,在工業檢測、逆向工程、質量控制等領域得到了廣泛應用。對于金屬材料的掃描,用戶常常關心的是ZEISS激光三維掃描儀是否能夠有效地完成這項任務。本文蔡司代理-三本
    的頭像 發表于 09-26 15:08 ?412次閱讀
    蔡司激光三維<b class='flag-5'>掃描儀</b>有效<b class='flag-5'>掃描</b>金屬材料

    何為電磁干擾(EMI)掃描儀,哪里需要它?

    什么是電磁干擾掃描儀?電磁干擾掃描儀(Electromagneticinterferencescanner)又稱EMI掃描儀,是屬于電磁兼容(EMC)測所試設備,具備干擾頻譜分析、定頻干擾成像功能
    的頭像 發表于 08-30 13:02 ?345次閱讀
    何為電磁干擾(EMI)<b class='flag-5'>掃描儀</b>,哪里需要它?

    如何選擇電磁干擾(EMI)掃描儀,看看這幾點

    在上期講完了電磁干擾(EMI)掃描儀的定義和應用以后,我們應該如何去選擇一款合適的電磁干擾(EMI)掃描儀?在當今復雜的電子設備環境中,選擇合適的電磁干擾(EMI)掃描儀對于確保產品質量、符合標準
    的頭像 發表于 08-30 13:02 ?433次閱讀
    如何選擇電磁干擾(EMI)<b class='flag-5'>掃描儀</b>,看看這幾點

    lidar激光雷達掃描儀有什么用

    LiDAR(Light Detection and Ranging,激光探測與測距)是一種利用激光技術進行距離測量和成像的技術。LiDAR激光雷達掃描儀具有高精度、高分辨率、快速掃描等特點,廣泛應用
    的頭像 發表于 08-29 16:58 ?636次閱讀

    [can開發板] 一款低價can/obd2總線Linux開發板

    CAN總線/汽車CAN總線/OBD2通訊/OBD分析/USB轉CAN/DBC編解碼/帶遠程訪問功能的CAN/OBD開發板 實物圖 特點 === CPU:全志H3芯片 - ARM
    發表于 07-05 16:46

    泰來三維|如何輕松玩轉三維掃描儀中手持快速掃描模式

    如何輕松玩轉三維掃描儀中手持快速掃描模式,EinScan Pro 2X 2020系列EinScan Pro 2X plus三維掃描儀包含普通
    的頭像 發表于 01-11 15:44 ?447次閱讀
    泰來三維|如何輕松玩轉三維<b class='flag-5'>掃描儀</b>中手持快速<b class='flag-5'>掃描</b>模式

    泰來三維| FARO Orbis是如何與 Focus Premium 激光掃描儀一起協同工作

    Faro Orbis掃描儀能夠同時提供移動掃描和固定式掃描。Orbis 掃描儀允許操作人員在行走和靜止掃描之間進行無縫切換,同時連續獲取36
    的頭像 發表于 12-19 15:41 ?427次閱讀

    蔡司激光手持三維掃描儀藍光3D掃描儀問題探討

    掃描儀廠家三本精密儀器,一起來探討蔡司激光手持三維掃描儀藍光3D掃描儀問題1:光學掃描受外部光源的影響有多大?解答:對外部光源需要穩定不在太陽光下即可,所以基本上所有車間都是滿足需求
    的頭像 發表于 12-14 15:44 ?1050次閱讀
    蔡司激光手持三維<b class='flag-5'>掃描儀</b>藍光3D<b class='flag-5'>掃描儀</b>問題探討

    藍光三維掃描儀和激光掃描儀問題解答

    關于藍光三維掃描儀和激光掃描儀問題解答,掃描儀廠家三本精密儀器講解如下:問題1:藍光和激光的掃描,效果哪個更好,兩者有什么優缺點?解答:藍光設備屬于固定拍照式,精度較高,針對中小零件,
    的頭像 發表于 12-14 15:08 ?946次閱讀
    藍光三維<b class='flag-5'>掃描儀</b>和激光<b class='flag-5'>掃描儀</b>問題解答

    多功能安全掃描儀工具介紹

    Trivy(發音)是一款全面且多功能的安全掃描儀。Trivy 擁有用于查找安全問題的掃描儀,以及可以找到這些問題的目標。 目標(Trivy 可以掃描的內容):
    的頭像 發表于 12-13 10:20 ?739次閱讀
    多功能安全<b class='flag-5'>掃描儀</b>工具介紹

    無縫切換,集移動和固定于一體的混合掃描儀-FARO Orbis 移動掃描儀

    rbis 有力地體現創新和擴大服務市場,兼有 FARO 技術和 GeoSlam 和 HoloBuilder所帶來的功能。具有移動掃描儀不具備的功能和基于三腳架的激光掃描儀的精度,為 3D 現實捕獲
    的頭像 發表于 12-06 10:47 ?559次閱讀
    無縫切換,集移動和固定于一體的混合<b class='flag-5'>掃描儀</b>-FARO Orbis 移動<b class='flag-5'>掃描儀</b>