Pomocné světla k automobilu

Nedaří se vám s projektem a nenašli jste vhodné místo, kde se zeptat? Napište sem.
Pravidla fóra
Tohle subfórum je určeno pro konzultaci ucelených nápadů, popřípadě řešení komplexnějších projektů, které opravdu není možné rozdělit na menší části.
Většinu problémů jde rozdělit na menší a ptát se na ně v konkrétních subfórech.
Aequitas
Příspěvky: 4
Registrován: 10 pro 2017, 11:17
Reputation: 0

Pomocné světla k automobilu

Příspěvek od Aequitas » 10 pro 2017, 11:23

Ahoj,prosil bych o pomoc.
snažím se udělat pomocné světla do zadní části automobilu,(blinkry,brzda,výstražná,couvací)
mám led pásek ws2812b,jde mě spíše o kod...
mám tam podmínky if,myslel jsem si že pokud dám podmínku tak ten kod se nesepne do té doby než bude třeba,ale i když mám podmínku tak se ten kod sepne,takže třeba je 2sec klid,a pak se sepne nějaky kus kodu kterej aktivuje led pasek,můžete mě prosím pomoci kde dělám chybu?

zde je celej kod

Kód: Vybrat vše

#include <FastLED.h>
int Left = 2;
int Right = 3;
int Brake = 4;
int NUM_LEDS = 96;
CRGB leds[96];

void setup() {
  Serial.begin(9600);
  pinMode(Left, INPUT);
  pinMode(Right, INPUT);
  pinMode(Brake, INPUT);
  LEDS.addLeds<WS2812B ,6, GRB>(leds, NUM_LEDS);
}

void loop() {
if(digitalRead(Brake) == HIGH){
   for(int ill = 0; ill <= 96; ill++) {
               leds[ill] = CRGB::Red; 
               FastLED.show();   
   }    
}
}
if(digitalRead(Left) == HIGH){
   for(int i = 48; i >= 0; i--) {
               leds[i] = CRGB::Orange; 
               FastLED.show(); 
               delay(2);  
   }

   for(int i = 48; i >= 0; i--) {
               leds[i] = CRGB::Black; 
               FastLED.show(); 
               delay(2);  
   }  
}
}

if(digitalRead(Right) == HIGH){
   for(int il = 48; il <= 96; il++) {
               leds[il] = CRGB::Orange; 
               FastLED.show(); 
               delay(2);  
   }

   for(int il = 48; il <= 96; il++) {
               leds[il] = CRGB::Black; 
               FastLED.show(); 
               delay(2);  
   }  
  
} 
}
}

Uživatelský avatar
pavel1tu
Příspěvky: 2054
Registrován: 26 říj 2017, 08:28
Reputation: 0
Bydliště: Trutnov
Kontaktovat uživatele:

Re: Pomocné světla k automobilu

Příspěvek od pavel1tu » 10 pro 2017, 15:33

Do auta nepatří nic co pro to auto není certifikované.
Až to jednou to tebe někdo napálí zezadu, může se vozit na tom, že ho to oslnilo - a jde to za tebou.
UNO, NANO, Mikro, PRO mini, DUE, ESP32S2, RPi PICO
Pavel1TU
"Správně napsaný kod lze číst jako knihu"

martinius96
Příspěvky: 579
Registrován: 01 srp 2017, 19:29
Reputation: 0
Bydliště: Poprad
Kontaktovat uživatele:

Re: Pomocné světla k automobilu

Příspěvek od martinius96 » 10 pro 2017, 15:45

Presne tak, inde ako na balkón by som tie diody nedával.

jankop
Příspěvky: 1030
Registrován: 06 zář 2017, 20:04
Reputation: 0
Bydliště: Brno
Kontaktovat uživatele:

Re: Pomocné světla k automobilu

Příspěvek od jankop » 10 pro 2017, 17:29

1. Máš tam nadbytečný závorky, většina podmínek je mimo smyčku loop.
2. Když já něco dělám, tak mám většinou na pinu aktivní signál LOW nikoliv HIGH
3. V autě je obvykle docela silné rušení, to může být příčina, protože nemáš nijak ošetřeny vstupy. Ani SW a nejspíš ani HW.

Aequitas
Příspěvky: 4
Registrován: 10 pro 2017, 11:17
Reputation: 0

Re: Pomocné světla k automobilu

Příspěvek od Aequitas » 10 pro 2017, 18:08

Je to na automobil určený jen na výstavu takže žádnou certifikaci nepotřebuji...
ptal jsem se na problém kde mám chybu a jestli mě někdo poradí tento problém vyřešit :) děkuji za pomoc

Uživatelský avatar
SkullKeep
Příspěvky: 291
Registrován: 23 srp 2017, 18:51
Reputation: 0
Bydliště: Brno
Kontaktovat uživatele:

Re: Pomocné světla k automobilu

Příspěvek od SkullKeep » 10 pro 2017, 19:04

Jak psal jankop:
jankop píše:
10 pro 2017, 17:29
1. Máš tam nadbytečný závorky, většina podmínek je mimo smyčku loop.
2. Když já něco dělám, tak mám většinou na pinu aktivní signál LOW nikoliv HIGH
3. V autě je obvykle docela silné rušení, to může být příčina, protože nemáš nijak ošetřeny vstupy. Ani SW a nejspíš ani HW.
Jsem trochu upravil kod:

Kód: Vybrat vše

#include <FastLED.h>
int Left = 2;
int Right = 3;
int Brake = 4;
#define NUM_LEDS  96;
CRGB leds[NUM_LEDS];

void setup() {
  Serial.begin(9600);
  pinMode(Left, INPUT);
  pinMode(Right, INPUT);
  pinMode(Brake, INPUT);
  DigitalWrite(Left,LOW);
  DigitalWrite(Right,LOW);
  DigitalWrite(Brake,LOW);
  FastLED.addLeds<WS2812B ,6, GRB>(leds, NUM_LEDS);
}

void loop() {
if(digitalRead(Brake)){
   for(int ill = 0; ill <= 96; ill++) {
               leds[ill] = CRGB::Red; 
               FastLED.show();   
   }    
    delay(200);  // cekaci doba na probliknuti
      for(int ill = 0; ill <= 96; ill++) {
               leds[i] = CRGB::Black; 
               FastLED.show();  
   }  
}
if(digitalRead(Left)){
for (int blik = 0;i <=10; i++){
   for(int i = 48; i >= 0; i--) {
               leds[i] = CRGB::Orange; 
               FastLED.show();             
   }
 delay(20);  // cekaci doba na bliknuti
   for(int i = 48; i >= 0; i--) {
               leds[i] = CRGB::Black; 
               FastLED.show(); 
    }  
   }
}

if(digitalRead(Right)){
for (int blik = 0;i <=10; i++){
   for(int il = 48; il <= 96; il++) {
               leds[il] = CRGB::Orange; 
               FastLED.show(); 
               delay(2);  
   }
 delay(20); // cekaci doba na bliknuti
   for(int il = 48; il <= 96; il++) {
               leds[il] = CRGB::Black; 
               FastLED.show(); 
               delay(2);  
    }  
   }
 }
}

:twisted: :?: :arrow: :geek: P. Q. M.

Aequitas
Příspěvky: 4
Registrován: 10 pro 2017, 11:17
Reputation: 0

Re: Pomocné světla k automobilu

Příspěvek od Aequitas » 10 pro 2017, 20:28

Děkuji za odpověd a upravu kodu,ale nefunguje to,po opravě par kodu furt stejný.

Uživatelský avatar
pavel1tu
Příspěvky: 2054
Registrován: 26 říj 2017, 08:28
Reputation: 0
Bydliště: Trutnov
Kontaktovat uživatele:

Re: Pomocné světla k automobilu

Příspěvek od pavel1tu » 10 pro 2017, 21:54

Nechápu co ty ledky mají dělat, asi jsem trubka. Je to celé koncepčně blbě.

Nemám pásek a bez něj se to těžko zkouší,

Nápověda - Není potřeba nejprve data do pásku definovat a poté dát teprve "show" ?

Kód: Vybrat vše

if(digitalRead(Brake) == HIGH){    // pokud jsou aktivovany brzdy, zacatek podminky BRZDY
      for(int ill = 0; ill <= 96; ill++) {  // LED 0-96 nastav RED - zacatek smycky pro RED
               leds[ill] = CRGB::Red; 
               }                                    //konec smycky nastaveni RED
      FastLED.show();             //rozsvit LED cervene
     delay(2000);  // cekaci doba jak dlouho budou svitit
      for(int ill = 0; ill <= 96; ill++) {  // nastaveni zhasnuti LED 0-96
               leds[i] = CRGB::Black; 
               }                                   // konec nastaveni zhasnuti
               FastLED.show();            // zhasni LED
               delay(2000)                   // cekaci doba jak dlouho budou zhasnute
   }                                                // konec IF od BRZDY
prohledl jsem ti jen smyčky, vyzkoušej to na brzdách, jestli budou fungovat podmínky spuštění podmínky či smyčky pro generování LED nevím
rozhodně to ale nebude fungovat správně při aktivaci brzd a blinkru dohromady (změní se časy blikání totálně se to rozhodí), to se musí vyřešit úplně jinak
UNO, NANO, Mikro, PRO mini, DUE, ESP32S2, RPi PICO
Pavel1TU
"Správně napsaný kod lze číst jako knihu"

Aequitas
Příspěvky: 4
Registrován: 10 pro 2017, 11:17
Reputation: 0

Re: Pomocné světla k automobilu

Příspěvek od Aequitas » 10 pro 2017, 22:14

no,původní myšlenka byla taková že celou dobu budou svítit na 50% červeně,pokud se dá blinkr tak se červená vypne a spustí se pulka pásku jako animace na blinkr,to stejný na couvání že se změní z červený na bílou,a pokud se bude brzdit tak se zapne na 100% svítivost červený

Uživatelský avatar
pavel1tu
Příspěvky: 2054
Registrován: 26 říj 2017, 08:28
Reputation: 0
Bydliště: Trutnov
Kontaktovat uživatele:

Re: Pomocné světla k automobilu

Příspěvek od pavel1tu » 10 pro 2017, 22:45

místo delay by mělo lépe fungovat fastled.delay nebo tak nějak

poradím - rozchodit třeba jen brzdy, pak pokračovat teprve s kodem dále
já vždy začínám od NULY, některý knihovny jsou neudržovaný a ne úplně ideálně funkční pro všechny případy
klidně bych začal i s testem na 1LED aby se zjistilo že to vůbec s páskem komunikuje
UNO, NANO, Mikro, PRO mini, DUE, ESP32S2, RPi PICO
Pavel1TU
"Správně napsaný kod lze číst jako knihu"

Odpovědět

Kdo je online

Uživatelé prohlížející si toto fórum: Žádní registrovaní uživatelé a 50 hostů