0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

基于Arduino Nano R3實(shí)現(xiàn)摩托車尾燈的設(shè)計(jì)方案

科技觀察員 ? 來源:hackster.io ? 作者:hackster.io ? 2022-05-03 17:34 ? 次閱讀

介紹:

從表面上看,這是一個(gè)非常簡單的項(xiàng)目。它讀取 3 個(gè)開關(guān)并驅(qū)動 2 個(gè) LED 燈條。但是,這不是典型的獨(dú)立 Arduino 項(xiàng)目。將其集成到現(xiàn)有電氣系統(tǒng)中存在一些細(xì)微差別。

以下是構(gòu)建此項(xiàng)目所需的技能和項(xiàng)目。

如果愿意深入研究自行車的電氣系統(tǒng),您需要找到并利用:

開關(guān) 12V 線

左轉(zhuǎn)向信號

右轉(zhuǎn)信號線

剎車燈線

三個(gè) 12V 繼電器(我選擇了小型簧片式繼電器)

5 v 電源能夠持續(xù) 5 A(不是峰值額定值)

兩個(gè) - 5x8 WS2812 LED 矩陣(或您選擇的矩陣)

性能板

用于連接所有電線的接線端子

金屬絲

poYBAGJX6m-AI6UcAAF23Yo2Zw8309.png

示意圖注釋

該項(xiàng)目的目標(biāo)是將 Arduino 與自行車的電氣系統(tǒng)完全隔離。這就是繼電器用于觸發(fā) Arduino 引腳的原因。您可能可以使用分壓器并避免使用繼電器。

如果您有一輛帶有 LED 轉(zhuǎn)向燈的新型自行車,請檢查您的燈的電壓。它可能正好是 5V,所以可以直接饋入 Arduino 引腳。

你可能會覺得奇怪的是我使用模擬來讀取剎車/轉(zhuǎn)向信號。這樣做只是為了簡化原型板的焊接,所以我沒有在 Arduino Nano 的一側(cè)進(jìn)行所有連接。

切換的 12V 輸入線位于我自行車上現(xiàn)有的 10A 電路上。

不要給項(xiàng)目供電!每個(gè) LED 矩陣可以消耗 2.5 A!如圖所示,我有一個(gè)雙輸出電源,每個(gè)輸出都能達(dá)到 4A,而且效果很好!兩個(gè) 3 安培 BEC 電路可能也可以工作。如果您的 Arduino LED 在轉(zhuǎn)向信號運(yùn)行時(shí)閃爍,請使用 Arduino 專用電源,或?yàn)?Arduino 提供 12V 電源到 VIN 引腳。

poYBAGJX6nWAKIc2AAR2U9M_KEc808.png

構(gòu)建電路板

我使用了 Adafruit perma 面包板(本質(zhì)上是帶有面包板痕跡的穿孔板)。我希望內(nèi)置的痕跡能讓構(gòu)建更干凈。這不是一個(gè)完美的解決方案,需要刮掉一些痕跡。

花時(shí)間設(shè)計(jì)PCB

放入接頭以便可以更換 Nano,但這也會增加構(gòu)建的厚度

拓展一下我想試試 TI MSP430 而不是 Arduino

pYYBAGJX6nqAKjqbAAa7gochOxg786.png

構(gòu)建測試夾具

如果您正在修改代碼,您將需要構(gòu)建一個(gè)測試夾具,以便您可以在辦公桌上進(jìn)行開發(fā)和測試,而不是在連接到自行車的車庫中進(jìn)行這項(xiàng)工作。我建立了一個(gè) 3 按鈕項(xiàng)目盒,為三個(gè)繼電器中的每一個(gè)提供 9v。三個(gè)按鈕分別代表:左、右、剎車信號,您可以測試所有組合。

poYBAGJX6n6AEJRuAANJ58OVsm8181.png

Arduino項(xiàng)目

我很早就了解到,最好將 LED 動畫封裝在類庫中。這使得動畫可重復(fù)使用。

類庫的缺點(diǎn)是編寫起來有點(diǎn)痛苦。缺乏調(diào)試工具(我習(xí)慣于使用 Microsoft Visual Studio 和 Eclipse),而且當(dāng)事情不正常時(shí),幾乎沒有什么線索可以說明哪里出了問題。我的最佳建議是慢慢構(gòu)建功能并保存?zhèn)浞莞北尽.?dāng)您遇到問題時(shí),請仔細(xì)檢查您最近所做的更改。C/C++ 中最常見的災(zāi)難性錯(cuò)誤可能是緩沖區(qū)溢出。

編譯這個(gè) Arduino 草圖需要下載 4 個(gè)庫:

Adafruit neopixel 庫

BlinkLed

CascadeLed

尾燈

BlinkLed 類庫
在類庫的頭文件中查看調(diào)用序列的詳細(xì)信息。您還可以在草圖中找到用于實(shí)例化和調(diào)用剎車燈和行車燈的示例。將一組像素傳遞給光和頻率。

例子:

字節(jié)最大停止 = 25;

字節(jié) StopPix[MAXSINGLEROW] = { 3, 4, 5, 6, 7, 11, 12, 13, 14, 15, 19, 20, 21, 22, 23, 27, 28, 29, 30, 31, 35, 36 , 37, 38, 39};

BlinkLed LStopLed = BlinkLed(&lstrip, &StopPix, maxstop, R, G, B, 19);

BlinkLed RStopLed = BlinkLed(&rstrip, &StopPix, maxstop, R, G, B, 19);

CascadeLed 類庫
在類庫的頭文件中查看調(diào)用序列的詳細(xì)信息。您還可以在草圖中找到用于實(shí)例化和調(diào)用轉(zhuǎn)向信號信號的示例。將二維像素陣列傳遞給光和頻率。然后該類將循環(huán)遍歷像素行并按該順序點(diǎn)亮它們。

警告:為簡單起見,我選擇創(chuàng)建常量來定義數(shù)組大小。為了便于使用,這會消耗一些內(nèi)存。如果您選擇驅(qū)動每組超過 40 個(gè)像素,您可能需要更改定義在 CascadeLed\ArrayConstants.h 中的常量。

例子:

常量字節(jié) maxrow = 5;

常量字節(jié) maxcol = 8;

字節(jié) Rightpix[MAXROW][MAXCOL] = { { 0, 1, 2, 3, 4, 5, 6, 7}, { 8, 9, 10, 11, 12, 13, 14, 15}, {16, 17 , 18, 19, 20, 21, 22, 23}, {24, 25, 26, 27, 28, 29, 30, 31}, {32, 33, 34, 35, 36, 37, 38, 39}} ;

CascadeLed RightLed = CascadeLed(&rstrip, &Rightpix, maxrow, maxcol, RT, GT, BT, 80, 900);

TailLight.ino Arduino 草圖
這里不多說。控制回路非常簡單:

void loop() {

byte leftpin = (analogRead(LEFTPIN) > 50);

byte brakepin = (analogRead(BRAKEPIN) > 50);

byte rightpin = (analogRead(RIGHTPIN) > 50);

// animate or clear the turn signals

// PsudoOn is true when pin is high or between turn signal blinks (pin is actually low)

bool lPsudoOn = LeftLed.Blink(leftpin);

bool rPsudoOn = RightLed.Blink(rightpin);

// animate or clear the brake lights LStopLed.Blink(brakepin); RStopLed.Blink(brakepin);

// only turn on running lights. Let the overlays turn it off // Clear will interfere with overlapping lights

if (!lPsudoOn && !brakepin) LRunLed.Set(true);

if (!rPsudoOn && !brakepin) RRunLed.Set(true);

}

備注:
轉(zhuǎn)向信號開關(guān)會中斷像素動畫,因?yàn)殚W爍比一個(gè)動畫序列更快。CascadeLed 類有一個(gè)超時(shí)值來吸收閃爍的“關(guān)閉”部分并假裝信號仍然打開。這個(gè)偽開啟被傳遞回主控制回路,因此它需要知道是否應(yīng)該考慮開啟或關(guān)閉轉(zhuǎn)向信號,而不是使用當(dāng)前引腳值。

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報(bào)投訴
  • 繼電器
    +關(guān)注

    關(guān)注

    132

    文章

    5350

    瀏覽量

    148935
  • 電氣系統(tǒng)
    +關(guān)注

    關(guān)注

    1

    文章

    356

    瀏覽量

    24265
  • Arduino
    +關(guān)注

    關(guān)注

    188

    文章

    6469

    瀏覽量

    187109
收藏 人收藏

    評論

    相關(guān)推薦

    車尾燈控制電路設(shè)計(jì)論文.doc

    方波,所以循環(huán)點(diǎn)亮這個(gè)過程所需要的時(shí)間約為0.5S*4。當(dāng)S2 S1 S0 =010時(shí)候汽車右轉(zhuǎn),所以汽車尾燈右面3個(gè)燈按照R1→R1R2→R1R2
    發(fā)表于 05-29 07:53

    基于AT89S52單片機(jī)的汽車尾燈控制器設(shè)計(jì)

    本帖最后由 luna 于 2011-3-3 11:46 編輯 為了減少交通事故隱患和提高汽車、摩托車等機(jī)動車輛尾燈電路的使用壽命,本文設(shè)計(jì)了一種利用AT89S52單片機(jī)對汽車尾燈
    發(fā)表于 03-02 16:56

    基于FPGA的汽車尾燈控制電路設(shè)計(jì)與實(shí)現(xiàn)

    分析汽車尾燈控制 電路設(shè)計(jì)原理 ,采用 和硬件描述語言 實(shí)現(xiàn)車尾燈控制 電路的設(shè)計(jì),具有可編程性、線路簡單、可靠性高等特點(diǎn) ,并通過仿真對結(jié)果進(jìn)行了驗(yàn)證。 隨著集成電路工藝 技術(shù)的高速發(fā)展
    發(fā)表于 11-10 09:14

    電動車尾燈改LED真相

    個(gè)關(guān)鍵問題其它問題就迎刃而解了。先從電路講 燃油摩托車尾燈改LED一改就成,遠(yuǎn)沒有電動車這么麻煩,電動車與燃油摩托車尾燈電路最大不同點(diǎn)是:剎車線,電動車剎車尾燈亮的同時(shí),要取這個(gè)電壓通過剎車線給控制器
    發(fā)表于 12-29 20:25

    如何實(shí)現(xiàn)車尾燈控制設(shè)計(jì)

    用multisim實(shí)現(xiàn)車尾燈控制設(shè)計(jì),要能實(shí)現(xiàn)所有的要求
    發(fā)表于 06-24 15:34

    基于Proteus的汽車尾燈控制系統(tǒng)該如何去設(shè)計(jì)?

    車尾燈控制系統(tǒng)是由哪些部分組成的?基于Proteus的汽車尾燈控制系統(tǒng)該如何去設(shè)計(jì)?如何對汽車尾燈控制系統(tǒng)進(jìn)行測試并驗(yàn)證?
    發(fā)表于 06-15 06:39

    車尾燈控制設(shè)計(jì)

    車尾燈控制設(shè)計(jì)原理     當(dāng)汽車左轉(zhuǎn)(按下X2)Y1,Y2,Y3 車尾燈順序點(diǎn)亮;當(dāng)汽車右轉(zhuǎn)(按下X3)Y4,Y5,Y6
    發(fā)表于 12-13 14:21 ?77次下載

    車尾燈VHDL設(shè)計(jì)

    車尾燈VHDL設(shè)計(jì) 汽車尾燈VHDL設(shè)計(jì) 標(biāo)簽/分類: 1.系統(tǒng)設(shè)計(jì)要求     用6個(gè)發(fā)光管模擬6個(gè)汽車尾燈(左右各3個(gè))
    發(fā)表于 08-21 15:32 ?4825次閱讀

    基于Multisim的汽車尾燈控制方案

    本文設(shè)計(jì)一種基于 Multisim 的汽車尾燈控制設(shè)計(jì),要求實(shí)現(xiàn)汽車左轉(zhuǎn)彎、右轉(zhuǎn)彎、停止等條件下尾燈的點(diǎn)亮與熄滅情況。 設(shè)計(jì)要求 假設(shè)汽車尾部左右兩側(cè)各有三個(gè)指示燈(用發(fā)光二極管模
    發(fā)表于 10-08 17:17 ?2.8w次閱讀
    基于Multisim的汽<b class='flag-5'>車尾燈</b>控制<b class='flag-5'>方案</b>

    車尾燈控制電路工作原理及設(shè)計(jì)

    車尾燈控制電路掌握著汽車尾燈的變化規(guī)律。那么汽車尾燈控制電路的工作原理及它是怎樣設(shè)計(jì)的呢?作者通過搜集整理資料,對于汽車尾燈控制電路(汽車電子控制技術(shù))相關(guān)知識進(jìn)行
    發(fā)表于 11-01 17:03 ?6.6w次閱讀
    汽<b class='flag-5'>車尾燈</b>控制電路工作原理及設(shè)計(jì)

    車尾燈邏輯檢測裝置的設(shè)計(jì)

    監(jiān)測裝置,并對汽車尾燈系統(tǒng)的總體設(shè)計(jì)方案、硬件電路、結(jié)構(gòu)特點(diǎn)、工作原理及其調(diào)試方法進(jìn)行了詳細(xì)的分析介紹。該系統(tǒng)實(shí)現(xiàn)了正常運(yùn)行、左轉(zhuǎn)、右轉(zhuǎn)、臨時(shí)剎車等4種常用的汽車尾燈狀態(tài),且制作簡單,
    發(fā)表于 11-21 10:46 ?15次下載
    汽<b class='flag-5'>車尾燈</b>邏輯檢測裝置的設(shè)計(jì)

    車尾燈氣密性檢測是如何做到的

    車尾燈密封不到位會使得尾燈內(nèi)會出現(xiàn)結(jié)霧、積水、亮度低、光散射效果差等車燈問題,造成尾燈無法正常使用甚至是內(nèi)部電路短路產(chǎn)生故障。 因此,汽車尾燈必須要做好密封處理來
    發(fā)表于 01-22 16:35 ?990次閱讀

    使用Arduino Nano R3進(jìn)行紅外遙控的數(shù)字時(shí)鐘

    電子發(fā)燒友網(wǎng)站提供《使用Arduino Nano R3進(jìn)行紅外遙控的數(shù)字時(shí)鐘.zip》資料免費(fèi)下載
    發(fā)表于 11-03 11:30 ?1次下載
    使用<b class='flag-5'>Arduino</b> <b class='flag-5'>Nano</b> <b class='flag-5'>R3</b>進(jìn)行紅外遙控的數(shù)字時(shí)鐘

    【大大芯方案】引領(lǐng)尾燈視覺潮流,大聯(lián)大推出基于NXP 產(chǎn)品的汽車尾燈方案

    電子(Lextar)PC35R14的汽車尾燈方案。? 圖示1-大聯(lián)大世平基于NXP和NOVOSENSE以及Lextar產(chǎn)品的汽車尾燈方案的展
    的頭像 發(fā)表于 11-02 18:10 ?666次閱讀
    【大大芯<b class='flag-5'>方案</b>】引領(lǐng)<b class='flag-5'>尾燈</b>視覺潮流,大聯(lián)大推出基于NXP 產(chǎn)品的汽<b class='flag-5'>車尾燈</b><b class='flag-5'>方案</b>

    車尾燈電流高速采集監(jiān)測方案

    車尾燈電流高速采集監(jiān)測方案,照亮安全駕駛的每一步 在夜幕低垂的街道上,每一輛行駛的汽車背后,都閃爍著汽車尾燈的光芒。這光芒背后,是穩(wěn)定的電流在默默支撐。電流的大小與穩(wěn)定性,不僅決定了汽車尾燈
    的頭像 發(fā)表于 11-25 11:20 ?876次閱讀