Talaan ng mga Nilalaman:

DIY Givi V56 Motorsiklo Topbox Light Kit Na May Pinagsamang Mga Sinyal: 4 na Hakbang (na may Mga Larawan)
DIY Givi V56 Motorsiklo Topbox Light Kit Na May Pinagsamang Mga Sinyal: 4 na Hakbang (na may Mga Larawan)

Video: DIY Givi V56 Motorsiklo Topbox Light Kit Na May Pinagsamang Mga Sinyal: 4 na Hakbang (na may Mga Larawan)

Video: DIY Givi V56 Motorsiklo Topbox Light Kit Na May Pinagsamang Mga Sinyal: 4 na Hakbang (na may Mga Larawan)
Video: DIY Givi V56 Topbox Lighting Kit 2024, Nobyembre
Anonim
Image
Image
DIY Givi V56 Motorsiklo Topbox Light Kit Na May Pinagsamang Mga Sinyal
DIY Givi V56 Motorsiklo Topbox Light Kit Na May Pinagsamang Mga Sinyal
DIY Givi V56 Motorsiklo Topbox Light Kit Na May Pinagsamang Mga Sinyal
DIY Givi V56 Motorsiklo Topbox Light Kit Na May Pinagsamang Mga Sinyal

Bilang isang mangangabayo sa motorsiklo, lahat ako ay pamilyar sa tratuhin tulad ng hindi ako nakikita sa daan. Ang isang bagay na lagi kong idinagdag sa aking bisikleta ay isang nangungunang kahon na karaniwang may isang pinagsamang ilaw. Kamakailan-lamang na nag-upgrade ako sa isang bagong bisikleta at binili ang kahon ng Givi V56 Monokey dahil marami itong puwang para sa mga item. Ang kahon na ito ay may isang lugar para sa isang factory light kit na binubuo ng dalawang piraso ng LEDs para sa bawat panig. Ang problema ay ang kit na ito ay halos $ 70 at preno lamang ang ginagawa nito. Mayroong isang aftermarket kit na marahil ay gumagawa ng mga katulad na bagay at maaaring mas madaling i-install, ngunit ang iyong presyo ay umabot sa $ 150. Ang pagiging isang mapag-aral na tao at naghahanap ng isang dahilan upang subukan ang addressable LED strips, nagpasya akong gumawa ng isang integrated system na hindi lamang magkaroon ng mga ilaw na preno, ngunit tumatakbo ang mga ilaw (sa tuwing gumagalaw), magpapasara ng mga signal, at mga hazard na ilaw. Para lamang dito, nagdagdag pa ako ng isang pagkakasunud-sunod ng pagsisimula …. dahil kaya ko. Tandaan na tumagal ito ng maraming trabaho na dapat gawin bagaman marami akong mga bagay na dapat malaman. Sa kabila ng trabaho, Mas masaya ako sa naging resulta nito. Inaasahan kong magtatapos ito na maging kapaki-pakinabang sa iba.

Ang pangunahing pagpapatakbo ng kung paano gumagana ang sistemang ito ay ang yunit ng Arduino ay naghahanap ng mga signal sa mga pin: ilaw ng preno, ilaw sa kaliwa, at ilaw sa kanang pagliko. Upang mabasa ang 12 volt signal mula sa motorsiklo, gumamit ako ng mga optoisolator upang baguhin ang signal ng 12V sa isang 5V signal na mabasa ng Arduino. Naghihintay ang code para sa isa sa mga signal na ito pagkatapos ay naglalabas ng mga utos sa LED strip gamit ang FastLED library. Iyon ang mga pangunahing kaalaman, ngayon upang masuri ang mga detalye.

Mga gamit

Ito ang mga bagay na ginamit ko dahil sa pinaka bahagi ay nahiga ko na sila. Malinaw na, maaari silang palitan kung kinakailangan:

  1. Arduino - Gumamit ako ng isang nano para sa pagsasaalang-alang sa laki ngunit maaari mong gamitin ang anumang gusto mo hangga't mayroon kang limang mga pin na gagamitin.
  2. 5V regulator - Gumamit ako ng isang L7805CV na may kakayahang 1.5 amps. Gumagamit ang proyektong ito ng 0.72 amps para sa mga LED kasama ang lakas para sa nano, kaya't mahusay na gumagana ang 1.5 para sa proyektong ito.
  3. Mga Capacitor - kakailanganin mo ang isang 0.33 uF at isang 0.1 uF para sa boltahe regulator upang gumana nang maayos.
  4. 3x optoisolators - upang gawin ang signal conversion mula 12V hanggang 5V. Gumamit ako ng uri ng PC817X na mayroon lamang apat na mga pin na lahat na kailangan namin.
  5. Mga resistorista - kakailanganin mo ng dalawang uri, tatlo sa bawat uri. Ang una ay kailangang sapat upang mabawasan ang kasalukuyang sa pamamagitan ng optoisolator IR LED. Kakailanganin mo ng hindi bababa sa 600 ohm, ngunit ang 700 ay magiging isang mas mahusay na ideya upang hawakan ang pagbabago ng mga voltages sa motorsiklo. Ang iba pa ay kailangang nasa isang lugar sa pagitan ng 10k at 20k para sa isang mabilis na signal sa kabilang panig ng optoisolator.
  6. Prototype board - Mayroon akong ilang maliit na sapat upang magkasya sa loob ng isang maliit na kahon ng proyekto na may kaunting dami ng pagbabawas.
  7. Project box - sapat na malaki upang magkasya ang mga bahagi, ngunit sapat na maliit upang madaling magkasya.
  8. Wire - Gumamit ako ng Cat 6 ethernet wire dahil marami akong nakaupo sa paligid. Mayroon itong walong wires lahat ng naka-code na kulay na nakatulong sa lahat ng iba't ibang mga koneksyon at isang sapat na sukat na sukatin upang hawakan ang kasalukuyang mga gumuhit.
  9. Mga plug - kahit saan mo nais na madaling matanggal ang system. Gumamit ako ng isang hindi tinatagusan ng tubig na plug upang payagan ang tuktok na kahon na alisin at upang mahawakan ang anumang pag-ulan o tubig na nakukuha rito. Kailangan ko rin ng mas maliit na mga plugs para sa mga LED strips kaya hindi ko kailangang mag-drill ng malalaking butas.
  10. Ang mga kurbatang zip at zip tie adhesive mount upang i-hold ang lahat sa lugar.
  11. Paliitin ang balot upang maayos ang mga koneksyon.

Hakbang 1: Pagbuo ng Circuit

Pagbuo ng Circuit
Pagbuo ng Circuit
Pagbuo ng Circuit
Pagbuo ng Circuit
Pagbuo ng Circuit
Pagbuo ng Circuit

Malinaw na, kung sinusunod mo ang aking pagbuo, hindi mo na kailangang dumaan sa dami ng pagsubok na ginawa ko. Ang unang bagay na ginawa ko ay upang matiyak na gumana ang aking code at maayos akong makakakuha ng isang senyas mula sa mga optoisolator pati na rin maayos na makontrol ang mga LED strip. Tumagal ng isang sandali upang malaman kung paano pinakamahusay na ilakip ang mga signal pin sa mga isolator ngunit sa pamamagitan ng pagsubok at error nakita ko ang tamang oryentasyon. Gumamit lang ako ng isang karaniwang board na prototype dahil nagtatayo lamang ako ng isa at ang pag-uunawa ng isang pattern ng pagsubaybay ay kukuha ng mas maraming oras kaysa sa halagang ito. Ang tuktok na bahagi ng circuit board ay mukhang mahusay, ngunit ang ibaba ay mukhang isang maliit na gulo, ngunit hindi bababa sa ito ay gumagana.

Ang pangunahing disenyo ay nagsisimula sa pag-input ng lakas na 12V mula sa isang inilipat na mapagkukunan (isang wire na nakabukas lamang kapag nakabukas ang motorsiklo). Ang isang diagram ng mga kable ay talagang makakatulong upang mahanap ang kawad na ito. Pinakain ito sa isang bahagi ng regulator ng boltahe. Ang isang 0.33 uF capacitor ay tinali ang input na ito sa lupa sa regulator ng boltahe na pagkatapos ay bumalik sa lupa sa motorsiklo. Ang output ng voltage regulator ay magkakaroon ng isang 0.1uF capacitor na nakatali dito sa lupa. Tumutulong ang mga capacitor na ito upang makinis ang boltahe mula sa regulator. Kung hindi mo mahahanap ang mga ito sa larawan ng circuit board, nasa ilalim sila ng voltage regulator. Mula doon, ang linya ng 5V ay pupunta sa Vin sa Arduino, sa power pin na magpapakain sa mga LED strips, at dalawa sa Source side ng optoisolator na magpapakain sa mga Arduino pin na nagbibigay ng kinakailangang 5V signal.

Tulad ng para sa mga optoisolator, mayroong dalawang panig: isa na may IR LED at ang iba pa ay may transistor na may at IR detector. Nais naming gamitin ang IR LED side upang masukat ang 12V signal. Dahil ang LED ay may pasulong na boltahe na 1.2V, kailangan namin ng isang kasalukuyang nililimitahan na risistor sa serye. 12V - 1.2V = 10.8V at upang patakbuhin ang LED sa 18 mA (palagi kong nais na magpatakbo ng mas mababa sa 20 mA para sa mga panghabambuhay na kadahilanan), kakailanganin mo ang isang risistor ng R = 10.8V / 0.018A = 600 ohm. Ang mga boltahe sa mga sasakyan ay may posibilidad na tumakbo nang mas mataas, potensyal na hanggang sa 14V, kaya mas mahusay na magplano para sa na, na tungkol sa 710 ohm, kahit na ang 700 ay magiging higit sa makatwiran. Ang output para sa LED na panig pagkatapos ay magpapakain pabalik sa lupa. Para sa output side ng optoisolator, gagamitin ng input ang 5V signal mula sa regulator pagkatapos ay ang output ay kumonekta sa isa pang risistor bago pumunta sa lupa. Ang risistor na ito ay kailangan lamang na humigit-kumulang 10k - 20k ohm, hindi bababa sa iyan ang ipinakita ng aking datasheet. Magbibigay ito ng mabilis na pagsukat ng signal dahil hindi kami nakikipag-usap sa isang maingay na kapaligiran. Ang output sa pin ng Arduino ay lalabas sa pagitan ng risistor at ang output ng optoisolator upang kapag ang signal ay naka-off ang pin ay mababa at kapag ang signal ay nasa pin ay mataas.

Ang mga ilaw ng LED strip ay may tatlong mga wire na nauugnay sa kanila: Lakas, lupa, at data. Ang lakas ay kailangang 5V. Gumagamit ang proyektong ito ng 12 LEDs kabuuan (kahit na mas marami akong LEDS sa mga piraso ngunit ginagamit ko lamang ang bawat ikatlong LED) at bawat isa ay tumatagal ng 60mA kapag ang puting ilaw ay ginamit nang buong ningning. Nagbibigay ito ng isang kabuuang 720 mA. Mahusay kami sa loob ng output power para sa voltage regulator, kaya mahusay kami. Siguraduhin lamang na ang kawad ay isang sapat na sukat upang sukatin ang lakas, gumamit ako ng 24 gauge Cat 6 ethernet wire. Ang Ethernet wire ay isang bagay na naupo ako sa paligid at mayroon itong 8 kulay na naka-code na mga wire kaya't gumana ito nang maayos para sa proyektong ito. Ang mga wire lamang na kailangang pumunta sa mismong topbox ay ang lakas at lupa (na parehong nahahati sa pagitan ng mga piraso) at dalawang linya ng data (isa para sa bawat strip).

Ang natitirang mga kable ay kumokonekta sa mga pin sa arduino at pinapakain ito ng lakas. Ang mga pin na ginamit para sa proyektong ito ay ang mga sumusunod:

  1. Vin - konektado sa 5V
  2. Gnd - konektado sa lupa
  3. Pin2 - konektado sa linya ng data ng Kaliwa na strip
  4. Pin3 - konektado sa linya ng data ng Kanang strip
  5. Pin4 - konektado sa Brake signal mula sa optoisolator
  6. Pin5 - konektado sa Left turn signal mula sa optoisolator
  7. Pin6 - konektado sa Kanang turn signal mula sa optoisolator

Hakbang 2: Mga kable at Pag-install

Mga kable at Pag-install
Mga kable at Pag-install
Mga kable at Pag-install
Mga kable at Pag-install
Mga kable at Pag-install
Mga kable at Pag-install

Kapag nabuo na ang circuit, darating ang oras na talagang i-wire ito sa lugar. Gamit ang iyong schematic ng mga kable para sa iyong bisikleta, kakailanganin mong hanapin ang mga sumusunod:

  • Lumipat na supply ng kuryente
  • Lupa
  • Brake Signal In
  • Kaliwa I-Signal In
  • Kanan I-Signal In

Para sa akin, mayroong isang solong plug na mayroong lahat ng mga ito, kaya ginamit ko lang iyon. Sa sapat na oras, maaaring makahanap ako ng parehong istilo ng plug at gumawa lamang ng isang plug sa module, ngunit hindi ko ginawa, kaya tinanggal ko lamang ang pagkakabukod sa mga lugar at hinangasan ito ng bagong kawad. Gumamit ako ng mga plugs sa mga magkadikit na koneksyon upang maalis ko ang natitirang dapat kong kailanganin sa hinaharap. Mula doon inilagay ko ang Arduino, na ngayon ay nasa isang selyadong kahon ng proyekto, sa ilalim ng upuan kung saan ko ito ikinabit. Ang output cable pagkatapos ay tumatakbo kasama ang frame ng racks sa isang hindi tinatagusan ng tubig plug, pagkatapos ay ipasok ang kahon at tumatakbo kasama ang likod sa takip kung saan nahahati ito para sa bawat panig. Ang mga wires ay tumatakbo kasama ang loob ng takip hanggang sa puntong matatagpuan ang mga koneksyon para sa mga LED. Ang kawad ay tumutulong sa lugar gamit ang mga kurbatang zip na nakakabit sa Mga panlabas na grade zip tie mount na may isang adhesive backing. Mahahanap mo ang mga ito sa seksyon ng pag-install ng cable sa isang tindahan ng pagpapabuti ng bahay

Gumamit ako ng dalawang mini JST plugs sa LED strips dahil kailangan ko ng isang plug na sapat na maliit upang dumaan sa isang butas ng minimum na diameter at dahil nais kong tiyakin na may sapat na kawad upang hawakan ang kasalukuyang mga kinakailangan. Muli, maaaring ito ay labis na labis at wala akong anumang maliit na plugs na may madaling gamitin na tatlong mga wire. Ang butas sa kahon para dumaan ang mga light strip wires ay tinatakan upang hindi mailabas ang tubig. Tulad ng para sa pagpoposisyon ng mga LED strips, dahil mayroong isang bahagyang hindi pagtutugma sa spacing (mayroong tungkol sa 1 - 1.5 mm na pagkakaiba sa spacing sa pagitan ng mga butas sa reflector at mga LED) Inilagay ko ang mga ito upang hatiin nila ang pagkakaiba sa pagitan ng LED at ang butas hangga't maaari. Gumamit ako pagkatapos ng maiinit na pandikit upang maitama ang mga ito sa lugar at sealant upang ganap na mai-seal ang lugar. Ang mga LED strip ay hindi tinatagusan ng tubig, kaya't walang isyu kung basa sila. Bagaman parang maraming i-install, ginagawang mas madali ang system na alisin sa hinaharap o palitan ang mga bahagi ay kinakailangan dahil maaari itong mangyari.

Hakbang 3: Ang Code

Ang aking source code ay dapat na sa simula ng Instructable na ito. Palagi kong binibigyan ng puna ang aking code kaya't mas madaling maunawaan sa paglaon. Pagwawaksi: Hindi ako isang propesyonal na manunulat ng code. Ang code ay isinulat sa isang pamamaraan na mas madaling mag-una at ilang mga pagpapabuti ang nagawa, ngunit alam kong maaari itong maging mas pino. Gumagamit din ako ng isang mabibigat na halaga ng pagpapaandar () na pagpapaandar para sa tiyempo na hindi kasing perpekto. Gayunpaman, ang mga signal na natatanggap ng yunit ay hindi mabilis na mga signal sa paghahambing, kaya naramdaman kong makatuwiran pa rin na panatilihin ang mga ito sa paggamit ng isang bagay tulad ng millis (). Ako rin ay isang napaka abala na ama at asawa kaya ang paggastos ng oras upang mapabuti ang isang bagay na sa huli ay hindi mababago ang pagpapaandar ay hindi mataas sa listahan.

Para sa proyektong ito, isang library lamang ang kinakailangan na ang FastLED library. Ito ang mayroong lahat ng code para sa pagkontrol sa mga WS2811 / WS2812B uri ng LED strips. Mula doon, tatakpan ko ang mga pangunahing pag-andar na gagamitin.

Ang una maliban sa karaniwang mga kahulugan ay upang ideklara ang iyong dalawang mga piraso. Gagamitin mo ang sumusunod na code para sa bawat strip:

FastLED.addLeds (leds [0], NUM_LEDS);

Ang linya ng code na ito ay nagtatakda ng Pin 2 na tumutukoy sa strip na ito bilang strip 0 na may bilang ng mga LED na tinukoy ng pare-pareho na NUM_LEDS, na sa aking kaso ay nakatakda sa 16. Upang tukuyin ang pangalawang strip, ang 2 ay magiging 3 (para sa pin3) at ang strip ay mamarkahan ng strip 1.

Ang susunod na linya na magiging mahalaga ay ang kahulugan ng kulay.

leds [0] [1] = Color_high CRGB (r, g, b);

Ang linya ng code na ito ay ginagamit kahit na sa magkakaibang hitsura (karamihan sa aking paggamit ng isang pare-pareho). Talaga, ang code na ito ay nagpapadala ng isang halaga sa bawat isa sa mga LED channel (pula, berde, asul) na tumutukoy sa bawat ningning. Ang halaga ng liwanag ay maaaring matukoy ng isang bilang 0 - 255. Sa pamamagitan ng pagbabago ng antas ng liwanag para sa bawat channel, maaari mong tukuyin ang iba't ibang mga kulay. Para sa proyektong ito, nais ko ng isang puting kulay upang mapanatili ang ilaw nang maliwanag hangga't maaari. Kaya ang tanging mga pagbabagong ginagawa ko ay upang maitakda ang antas ng ningning nang pareho sa lahat ng tatlong mga channel.

Ang susunod na hanay ng code ay ginagamit para sa indibidwal na pag-iilaw sa bawat ilaw. Tandaan na para sa bawat strip, ang bawat LED ay may isang address na nagsisimula sa 0 para sa isang pinakamalapit sa koneksyon ng linya ng data hanggang sa pinakamataas na bilang ng LED na mayroon kang minus 1. Halimbawa, ang mga ito ay 16 LED strips, kaya't ang pinakamataas ay 16 - 1 = 15. Ang dahilan para dito ay dahil ang unang LED ay may label na 0.

para sa (int i = NUM_LEDS-1; i> -1; i = i - 3) {// Papalitan nito ang ilaw para sa bawat ikatlong LED na magmumula sa huli hanggang sa una. leds [0] = Kulay_low; // Set strip 0 LED color sa napiling kulay. leds [1] = Kulay_low; // Itakda ang kulay na LED 1 sa napiling kulay. FastLED.show (); // Ipakita ang itinakdang mga kulay. leds [0] = CRGB:: Itim; // Patayin ang itinakdang kulay sa prep para sa susunod na kulay. leds [1] = CRGB:: Itim; pagkaantala (150); } FastLED.show (); // Ipakita ang itinakdang mga kulay.

Ang paraan ng paggana ng code na ito ay ang isang variable (i) ay ginagamit sa loob ng isang para sa loop bilang LED address na pagkatapos ay sumangguni sa buong bilang ng mga LEDs (NUM_LEDS). Ang dahilan para dito ay nais kong magsimula ang mga ilaw sa dulo ng strip kaysa sa simula. Ang setting ay output sa parehong mga piraso (leds [0] at leds [1]) pagkatapos isang utos na ipakita ang pagbabago ay inisyu. Pagkatapos nito ay patayin ang ilaw na ito (CRGB:: Itim) at ang susunod na ilaw ay naiilawan. Ang sanggunian na Itim ay isang tukoy na kulay sa aklatan ng FastLED kaya hindi ko na kailangang mag-isyu ng 0, 0, 0 para sa bawat channel kahit na gagawin nila ang parehong bagay. Ang For loop ay nagsusulong ng 3 LEDs sa bawat oras (i = i-3) dahil ginagamit ko lang ang bawat iba pang LED. Sa pagtatapos ng loop na ito, ang pagkakasunud-sunod ng ilaw ay pupunta mula sa isang LED hanggang sa susunod na may isang naiilaw lamang bawat strip, uri ng isang epekto ng Knight Rider. Kung nais mong panatilihing naiilawan ang bawat ilaw upang bumuo ang bar, aalisin mo lamang ang mga linya na pinapatay ang mga LED na nangyayari sa susunod na hanay ng code sa programa.

para sa (int i = 0; i <dim; i ++) {// Mabilis na mawala ang mga ilaw sa tumatakbo na antas ng ilaw. rt = rt + 1; gt = gt + 1; bt = bt + 1; para sa (int i = 9; i <NUM_LEDS; i = i +3) {// Iliwanag nito ang huling tatlong ilaw para sa ilaw ng posisyon. leds [0] = CRGB (rt, gt, bt); // Set strip 0 LED color sa napiling kulay. leds [1] = CRGB (rt, gt, bt); // Itakda ang kulay na LED 1 sa napiling kulay. } FastLED.show (); antala (3); }

Ang huling halimbawa ng code na ginagamit ko para sa mga LED ay isang fade loop. Dito, gumagamit ako ng pansamantalang mga puwang para sa ningning para sa bawat channel (rt, gt, bt) at dagdagan ang mga ito ng 1 na may pagkaantala sa pagitan ng bawat pagpapakita upang makamit ang hitsura na gusto ko. Tandaan din na ang code na ito ay binabago lamang ang huling tatlong LEDs dahil ito ay kumukupas sa mga tumatakbo na ilaw kaya't nagsisimula ako sa 9 kaysa sa 0.

Ang natitirang LED code ay mga pag-ulit nito. Ang lahat ng iba pa ay nakatuon sa paligid na naghahanap ng isang senyas sa tatlong magkakaibang mga wire. Ang lugar ng Loop () ng code ay naghahanap ng mga ilaw ng preno, na kung saan ito ay mag-flash nang isang beses bago manatili sa (maaayos ito kung nais) o naghahanap ng mga signal ng pagliko. Para sa code na ito, dahil hindi ko mawari ang kaliwa at kanang mga ilaw ng pagliko ay bubukas nang eksakto sa parehong oras para sa mga peligro, mayroon akong hitsura ng code para sa alinman sa una, pagkatapos pagkatapos ng isang maliit na pagkaantala sinusuri ko upang makita kung ang parehong ay sa nagpapahiwatig nakabukas ang hazard lights. Ang isang nakakalito na bahagi ko ay ang mga signal ng turn dahil ang ilaw ay papatayin para sa ilang panahon kaya paano ko masasabi ang pagkakaiba sa pagitan ng signal na naka-on pa rin ngunit sa off time at isang kinansela na signal? Ang naisip ko ay nagpapatupad ng isang loop ng pagkaantala na nakatakdang magpatuloy nang mas mahaba kaysa sa pagkaantala sa pagitan ng mga pag-flash ng signal. Kung nakabukas pa rin ang turn signal, magpapatuloy ang loop ng signal. Kung ang signal ay hindi babalik kapag natapos ang pagkaantala, bumalik ito sa simula ng loop (). Upang ayusin ang haba ng pagkaantala, palitan ang numero para sa pare-pareho na ilawDelay na naaalala para sa bawat 1 sa ilawDelay ang mga pagbabago ng pagkaantala ng 100ms.

habang (digitalRead (leftTurn) == LOW) {para (int i = 0; i <lightDelay; i ++) {leftTurnCheck (); kung (digitalRead (leftTurn) == MATAAS) {leftTurnLight (); } pagkaantala (100); } para sa (int i = 0; i <NUM_LEDS; i = i +3) {// Papalitan nito ang ilaw para sa bawat ikatlong LED na magmumula sa huli hanggang sa una. leds [0] = CRGB (0, 0, 0); // Set strip 0 LED color sa napiling kulay. } para sa (int i = 9; i <NUM_LEDS; i = i +3) {// Ise-set up nito ang mga tumatakbo na ilaw na gagamitin lamang ang huling tatlo. leds [0] = Kulay_low; // Set strip 0 LED color sa napiling kulay. } FastLED.show (); // Bumalik ang mga setting ng output; // Kapag ang signal ng turn ay wala na, bumalik sa loop. }

Inaasahan kong ang natitirang code ay nagpapaliwanag sa sarili. Ito ay isang paulit-ulit lamang na hanay ng pagsuri at pag-arte sa mga signal.

Hakbang 4: Mga Resulta

Mga Resulta
Mga Resulta

Ang kamangha-manghang bahagi ay ang sistemang ito na gumana sa unang pagkakataon na nai-wire ko ito sa bisikleta. Ngayon, upang maging patas sinubukan ko ito ng husto sa bench bago ito, ngunit inaasahan ko pa ring magkaroon ng isang isyu o isang pagsasaayos. Lumalabas na hindi ko kailangan gumawa ng anumang mga pagsasaayos sa code pati na rin ang mga koneksyon. Tulad ng nakikita mo sa video, napupunta ang system bagaman ang pagkakasunud-sunod ng pagsisimula (na hindi mo kailangang magkaroon), pagkatapos ay nagde-default sa mga tumatakbo na ilaw. Pagkatapos nito hinahanap nito ang mga preno kung saan ito ay magpapasindi sa lahat ng mga LED sa buong ningning at i-flash ang mga ito nang isang beses bago manatili hanggang sa maipalabas ang preno. Kapag ginamit ang isang signal ng pagliko, gumawa ako ng isang epekto sa pag-scroll para sa gilid na ipinahiwatig ang pagliko at ang kabilang panig ay maaaring tumatakbo na mga ilaw o ilaw ng preno kung nakabukas. Ang mga ilaw na hazard ay magpapikit lamang sa oras kasama ng iba pang mga ilaw.

Sana sa mga karagdagang ilaw na ito, mas nakikita ako ng ibang mga tao. Sa pinakadulo, ito ay isang magandang karagdagan upang mapakita ang aking kahon nang kaunti kaysa sa iba habang nagbibigay ng utility. Inaasahan kong ang proyektong ito ay kapaki-pakinabang sa ibang tao din kahit na hindi sila gumagana sa isang ilaw sa kahon ng tuktok ng motorsiklo. Salamat!

Inirerekumendang: