Sinal de curva dinâmica. Como tornar você mesmo sinais dinâmicos de volta (com acumulação) do kit DIY definido do AliExpress

Ou em guirlandas, etc.

De alguma forma eu pedi um kit DIY definido com luzes de condução de AliExpress em LEDs (). Atraiu o preço engraçado de 63 rublos e a capacidade de praticar elementos de rádio SMD.



Este designer consiste em uma placa de circuito impresso com um tamanho de 20x55mm e, respectivamente, o conjunto de componentes de rádio necessários. O Conselho indica os sites de instalação de todos os componentes e suas denominações, portanto, não há dificuldades com a instalação de especial.

Todo o processo de fabricação e operação do esquema pode ser visto no vídeo:

Lista de ferramentas e materiais
-Napt circulação de luzes no CD4017 ou K561I8 () Chip ();
-Chave de fenda;
- tesoura;
-Paller;
-kembrik;
-Cemural bateria de um telefone celular;
-Block poder para 12V;
- fios finais;
-Folged textolite para placa de circuito impresso;
-Microshem k561tm2;
-resistores;
-Transistores KT815 (ou análogos);
-Lodiodos.

Passo um. PCB de lixo definido com AliExpress.

Tudo o que você precisa reconstruir os componentes do conjunto na taxa. Em vista dos tamanhos em miniatura de elementos de rádio SMD usados \u200b\u200ba "terceira mão" com uma lupa. Primeiro, os resistores, condensadores e outros componentes do circuito além do chip. No final, cantamos chips e LEDs.

Este esquema funciona de 3 a 15V. O gerador de pulso é montado no chip NE555, então os pulsos são alimentados com o contador decimal com o decodificador CD4017 (K561i8), a dez dos quais os LEDs por meio de resistores limitadores estão conectados. A velocidade de comutação das luzes de corrida é regulada por um resistor aparado.

Esquema de designer.


Meu esquema ganhou quando você liga pela primeira vez.

Passo dois. Modernização do esquema de luzes de corrida.
Mais tarde, no processo de experiências, o chip CD4017 foi enfrentado. Rapidamente nos fios tinham que substituí-lo por um analógico doméstico de K561i8.
Eu queria obter efeitos de iluminação mais interessantes das luzes de corrida. Como resultado, colecionei outra placa de circuito impresso com gatilhos K561TM2 e chaves de energia no KT815. O pulso de cada rendimento K561i8 é alimentado à entrada do gatilho no princípio "trava" que está na saída do gatilho, o sinal permanece constante para a chegada do pulso de reset do pé 11 CD4017 (K561i8). 9 canais estão escondidos sobre o ciclo. As chaves de energia nos transistores KT815 são projetadas para conectar a carga a 1-1,5a. Se você precisar conectar uma carga mais poderosa, é necessário substituir os transistores KT815, respectivamente, mais poderosos. Desde que eu apliquei quatro microcircuits2 K561TM2, então o esquema para oito canais acabou. Nesse esquema, você pode obter 9 canais de controle LED, mas você precisa adicionar outro chip k561tm2 ao esquema, conectando um gatilho (o chip K561tm2 consiste em dois gatilhos) e adicione uma tecla transistor.

Esquema após o retrabalho ..



Para verificar o trabalho, conectado a cada um dos oito canais das fatias de fita LED com três LEDs.


Substituiu um resistor de 50kom para 470kom para expandir os limites de ajuste de freqüência. Encontrado B.

O designer de luzes de corrida com AliExpress é uma placa de circuito impresso e um conjunto de componentes de rádio. Tudo que você precisa é colocar os componentes da taxa.

Mas, dele, você pode obter efeitos mais interessantes das luzes de corrida. Por exemplo, para sinais de volta automotivos ou em um sinal de parada ou simplesmente em guirlandas para o feriado.


Este esquema pode operar na faixa de tensão de 315 volts. O gerador de pulso é montado no chip NE555, então os pulsos são alimentados com o contador decimal com o decodificador - chip CD4017 (ou K561i8), para as saídas dos quais os LEDs através de resistores de limite de corrente estão conectados.

A velocidade de comutação das luzes de corrida é regulada por um resistor aparado. Adicione um diagrama com gatilhos e teclas transistor de saída. Não há necessidade de programar nada, etc. Como resultado, você pode obter efeitos de iluminação mais interessantes das luzes de corrida. Você precisa fazer outra placa de circuito impresso com gatilhos k561tm2 e chaves de força no KT815. O pulso de cada rendimento K561i8 é alimentado à entrada do gatilho de acordo com o princípio "trava" que está na saída do sinal do gatilho permanece constante antes da chegada do pulso da descarga da saída 11 do chip CD4017 (K561Y8) . O ciclo inclui 9 canais.

Muitos entusiastas de carros para melhorar a aparência do carro, ajustam sua "engolir" por luzes led. Uma das opções de ajuste é o sinal de giro em execução, o que chama a atenção para outros participantes no movimento. O artigo fornece instruções para instalar e configurar sinais de curva com luzes em execução.

[Esconder]

Instruções de montagem

As lâmpadas LED são elementos semicondutores, brilhando sob a influência da corrente elétrica. O elemento principal neles é silício. Dependendo de quais as impurezas são usadas, a cor das lâmpadas muda.

Galeria de fotos "opções possíveis para sinais de curva dinâmica"

Ferramentas e materiais

Para fazer um sinal de giro em execução com suas próprias mãos, as seguintes ferramentas serão necessárias:

  • ferro de solda;
  • aparadores ou tábuas;
  • ferro de solda e material para solda;
  • testador.

De consumíveis você precisa preparar uma fibra de vidro. É necessário para a fabricação de uma placa de circuito impresso em que o elemento semicondutor será localizado. Selecione os LEDs necessários. Dependendo das características dos LEDs e dos valores da corrente e da tensão da rede a bordo, as características dos resistores de proteção são calculadas. Usando cálculos, os componentes restantes da rede são selecionados (pelo autor Eugene Zadvornov).

Seqüência de desempenho

Antes de fazer sinais de volta, você precisa escolher um esquema adequado.

Em seguida, com base no esquema, faça uma placa de circuito impresso e aplique marcação a ele para acomodar elementos futuros.

A montagem consiste em uma seqüência de ações:

  1. Primeiro, você deve desenvolver o carro desligando o terminal negativo da bateria.
  2. Em seguida, você precisa remover os sinais velhos de volta e desmontar cuidadosamente eles.
  3. Lâmpadas antigas devem ser desativadas.
  4. As articulações das articulações devem ser limpas a partir de cola, desengate, lavar e soltar.
  5. Um novo sinal de giro que funciona fogo é instalado no local de cada elemento antigo.
  6. Em seguida, a montagem e a instalação das lanternas são feitas na ordem inversa.
  7. Após a instalação, os fios estão conectados.

Na próxima etapa, uma fonte de energia estabilizada adicional está incluída. Cabe à sua entrada de um relé intermediário, e a saída está conectada ao diodo. Coloque melhor no painel de instrumentos.

Ao conectar os LEDs, é necessário garantir que o anodo esteja conectado à fonte de alimentação mais, e o cátodo é menos. Se a conexão estiver incorreta, os elementos semicondutores não brilharão e até matarão.


Características da instalação e ajuste de ponteiros de giro em execução

Você pode definir sinais de curva dinâmica em vez de LEDs comuns. Para isso extraído, uma placa com LEDs e resistores limíticos de corrente é desmontada. No repetidor, você precisa rasgar o vidro do caso. Então você deve cortar cuidadosamente o refletor e removê-lo.

A placa SMD 5730 é definida para o local do Remote Refletor, no qual os LEDs amarelos estão localizados. Como o repetidor é uma forma curva, a taxa terá que agrupar e dobrar um pouco. A placa antiga que você precisa para cortar a parte com o conector e soldar para conectar o controlador. Em seguida, todos os componentes são devolvidos ao local.

Para ajustar o tempo de viagem LED luzes para o microcontrolador, uma solda de comutação. Quando uma velocidade adequada é encontrada, os jumpers são soldados em vez do interruptor. Ao conectar duas conclusões com uma massa do tempo mínimo entre surtos de LEDs, será 20 ms. Ao entrar em contato com contatos, desta vez será 30 ms.


Preço de pergunta

Você pode fazer um sinal de volta correndo fogo a partir de luzes de corrida diurna. Seu custo é de 600 rublos. Como fontes de luz neste caso, você pode tomar LEDs RGB "Pixels" na quantidade de 7 peças para cada sinal de giro em execução. O custo de um elemento é de 19 rublos. Para gerenciar LEDs, você deve comprar arduino uno vale 250 rublos. Assim, o custo total será de 1060 rublos.

Disse no último mais ano "GOP" - é hora de pular :)
Em vez disso, faça a visão geral prometida dos sinais de giro em execução.
1 metro de fita preta WS2812B (144 LEDs) foi encomendada em um tubo de silicone, quando a encomenda escolheu "Black 1m 1444led IP67" (talvez alguém gostará da cor branca do substrato, existe tal escolha).

Uma pequena cautela

Eu vim fita, vendesse de duas peças de meio metro. O menos deste é um local vulnerável do pico (contatos podem ser quebrados) e uma lacuna ampliada entre LEDs.
Antes de comprar, verifique com o vendedor este momento

Para a fita foram soldadas em ambos os lados. Fios de contato para uma conexão consistente de várias peças, porque Eu não precisei disso, então, de um lado, o fio estava espremido, tudo foi costurado com um selante neutro e uma pequena fita preta envolvida.



Fodido para o vidro usando fita adesiva transparente de dupla face, por exemplo,.

Detalhes da instalação

Desengordured a superfície, colada pela primeira vez a fita adesiva ao tubo (eu chamá-lo, pelo menos uma seção transversal e retangular), cortar as fitas excessivas salientes, dormiu as bordas do tubo no slot entre o teto e as partes superiores Dos painéis decorativos dos racks traseiros (os fios de contato com o conector HID em um painel), centrado e começou a pressionar para o vidro, puxando lentamente a camada protetora da fita.
Infelizmente, não há mãos livres para fotografar, e todo mundo tem carros diferentes.
Se algo é incompreensível - pergunte nos comentários.
Verificação de calor de verão foi bem sucedida - nada escavou e não nadou.
O único menos é o ângulo de inclinação do vidro é gentil, os LEDs brilham mais. Em um dia ensolarado, é muito visível, mas desde que estes são sinais duplicados, então

Agora vá para o enchimento eletrônico.
Eu usei, mas não há muito tempo descobri por mim mesmo

Sobre o mesmo custo obter mais pães

Skatch sem alterações especiais funcionará em WemoS ao programar no ambiente do Arduino IDE, e se você implementar um pequeno servidor da Web, quando conectado a um Wi-Fi, poderá alterar os valores de tais variáveis \u200b\u200bcomo o tempo de atraso entre os flashes , o valor de desaceleração durante a frenagem de emergência etc.
A seguir, se alguém tiver interesse na implementação do projeto no ESP8266, eu posso postar um exemplo para alterar as configurações através da interface da Web, salvá-los na EEPROM, lendo subseqüente.
O lançamento do servidor da Web pode ser implementado, por exemplo, através da ligação no sinal de volta e pressionando os freios quando você liga a ignição (no procedimento de instalação para pesquisar o estado das entradas correspondentes).

Para implementar um regime piscando com uma frenagem aguda foi comprada
No esboço, o nível de desaceleração é monitorado quando o pedal do freio é pressionado se ele exceder 0,5g (desaceleração aguda, mas sem squealizar freios), então um modo piscando é ativado para atrair atenção adicional.
Os sinais de controle nas entradas do Arduino com o "Plus" de paradas, os sinais de giro e os traços traseiros são alimentados por eletrodometrão - optocuplos com limitação de resistores de corrente, que finalmente formam o nível baixo nas entradas do Arduino (constantemente atraídas pelo Plus através do 10kom resistores).
Fonte de alimentação - 5 volts através de um conversor DC-DC para baixo.
Todo este caso é composto por um sanduíche e embalado em uma caixa adequada, na qual a seta notou a direção da instalação para a orientação correta do sensor de gravidade

Esquema e foto



A denominação de pull-ups (para o plus) dos resistores é padrão - 10 COM, limitando os optocupladores de resistores - 1k. Opoparas abandonou as placas antigas, dois caíram PC123, dois - PC817.


Na primeira foto você pode ver duas saídas adicionais, eu os fiz para sinais de turno. Desde no meu carro, quando você liga uma alavanca de roubo, um fechamento ocorre no chão, eu conecte os fios à blocos de alavanca e entradas Arduino. Se a alavanca subworched se desloca mais ou assumir o sinal de lâmpadas "+" do sinal de volta esquerda / direita, ligue-os através da junção galvânica.



Bem, agora Skatch próprio (Arduino IDE)

#Incluir. #Incluir. // vários comentários gerais // eu desliguei um LED extremo, porque Eles foram detectados nos painéis decorativos das prateleiras // visto no exemplo desse ciclo para (int i \u003d 1; i<143; i++) //если отключать не нужно, заменяем на for (int i=0; i<144; i++) //задний ход и аварийка у меня не используются, т.к. в первом случае яркость никакая, во втором надо подключать входы к лампам поворотников //поворотники и стоп-сигнал одновременно не включаются, чтобы это реализовать, нужно переписывать соответствующий код скетча (делить ленту на три секции, подбирать тайминги миганий, менять диапазон переменных циклов). //Дерзайте - все в ваших руках // Пин для подключения управляющего сигнала светодной ленты const int PinLS = 2; //Пины для подключения датчиков //если более удобно будет подключать контакты в другом порядке - просто поменяйте значения переменных const int buttonPinL = 3; const int buttonPinR = 4; const int buttonPinS = 6; const int buttonPinD = 5; //начальные статусы входов (подтянуты к плюсу) int buttonStateS = HIGH; int buttonStateD = HIGH; int buttonStateL = HIGH; int buttonStateR = HIGH; // пауза pause_pov1 (в миллисекундах) нужна, чтобы синхронизировать циклы "пробегания" полоски и включения лампочки поворотника // такое может быть, если используется меньше половины светодиодов // в моем случае паузы нет (pause_pov1 = 0) int pause_pov1 = 1; // этой паузой регулируем длительность состояния, когда все светодиоды выключены //я определял опытным путем - включал поворотник, засекал по отдельности время ста мыргов лампочкой и ста беганий полоски, разницу делил на 100, на полученное время увеличивал или уменьшал значение переменной (в зависимости от того, отставали или убегали вперед лампочки) int pause_pov2 = 62; // переменная для получения значения ускорения int ix; Adafruit_NeoPixel strip = Adafruit_NeoPixel(144, PinLS, NEO_GRB + NEO_KHZ800); Adafruit_ADXL345_Unified accel = Adafruit_ADXL345_Unified(12345); void setup() { pinMode(buttonPinS, INPUT); pinMode(buttonPinD, INPUT); pinMode(buttonPinL, INPUT); pinMode(buttonPinR, INPUT); strip.begin(); // гасим ленту for (int i=0; i<144; i++) strip.setPixelColor(i, strip.Color(0,0,0)); strip.show(); accel.begin(); // ограничиваем измеряемый диапазон четырьмя G (этого хватит с большим запасом) accel.setRange(ADXL345_RANGE_4_G); accel.setDataRate(ADXL345_DATARATE_100_HZ); } void loop() { // СТОПЫ: если включены - высший приоритет //Чтобы сделать меняющуюся по ширине полоску в зависимости от интенсивности торможения //(уточнение - никакой светомузыки, ширина полосы после нажатия на тормоз не меняется!) //от плавного торможения до тапки в пол. //Добавляем еще одну переменную, например, ix2, //присваиваем ей значение ix с коэффициентом умножения, //заодно инвертируем и округляем до целого //ix = event.acceleration.x; //ix2 = -round(ix*10); //ограничиваем для плавного торможения в пробках //(чтобы не менялась при каждом продвижении на 5 метров) //if (ix2<10) ix2 = 0; //и для резкого торможения. //Реальный диапазон изменения переменной ix - от 0 до -5 //для максимальной ширины полосы при G равном или большем 0.5 //if (ix2 >50) ix2 \u003d 50; // Em seguida, altere os ciclos no bloco de parada para (int I \u003d 1; i<143; i++) на for (int i=51-ix2; i<93+ix2; i++) //Получаем минимальную ширину полоски ~30 см (для стояния в пробке) и максимальную для резкого торможения //конец комментария buttonStateS = digitalRead(buttonPinS); if (buttonStateS == LOW) { sensors_event_t event; accel.getEvent(&event); ix = event.acceleration.x; // проверка резкого торможения - мигающий режим // значение 5 - это 0,5G, минус - торможение if (ix < -5) { for (int is=0; is<15; is++) { for (int i=1; i<143; i++) strip.setPixelColor(i, strip.Color(240,0,0)); strip.show(); delay(10 + is*10); for (int i=1; i<143; i++) strip.setPixelColor(i, strip.Color(0,0,0)); strip.show(); delay(10 + is*3); buttonStateS = digitalRead(buttonPinS); if (buttonStateS == HIGH) return; } } // помигали - и хватит, включаем постоянный режим, если педаль тормоза еще нажата // или если не было резкого торможения и предыдущее условие не сработало if (buttonStateS == LOW) { for (int i=1; i<143; i++) strip.setPixelColor(i, strip.Color(200,0,0)); strip.show(); while(buttonStateS == LOW){ buttonStateS = digitalRead(buttonPinS); delay(50); } // плавно гасим for (int is=0; is<20; is++) { for (int i=1; i<143; i++) strip.setPixelColor(i, strip.Color(190 - is*10,0,0)); strip.show(); delay(10); } // СТОПЫ конец } } else // если СТОПЫ выключены { // ЗАДНИЙ ХОД: если включен - средний приоритет buttonStateD = digitalRead(buttonPinD); if (buttonStateD == LOW) { for (int i=1; i<37; i++) strip.setPixelColor(i, strip.Color(63,63,63)); for (int i=107; i<143; i++) strip.setPixelColor(i, strip.Color(63,63,63)); strip.show(); while(buttonStateD == LOW){ buttonStateD = digitalRead(buttonPinD); delay(50); } //плавно гасим for (int is=0; is<16; is++) { for (int i=1; i<37; i++) strip.setPixelColor(i, strip.Color(60 - is*4,60 - is*4,60 - is*4)); for (int i=107; i<143; i++) strip.setPixelColor(i, strip.Color(60 - is*4,60 - is*4,60 - is*4)); strip.show(); delay(10); } } buttonStateL = digitalRead(buttonPinL); buttonStateR = digitalRead(buttonPinR); // если включена аварийка if (buttonStateL == LOW && buttonStateR == LOW) { for (int il=0; il<71; il++) { strip.setPixelColor(71-il, strip.Color(63,31,0)); strip.setPixelColor(il+72, strip.Color(63,31,0)); strip.show(); delay(pause_pov1); } for (int il=0; il<71; il++) { strip.setPixelColor(71-il, strip.Color(0,0,0)); strip.setPixelColor(il+72, strip.Color(0,0,0)); strip.show(); delay(pause_pov1); } delay(pause_pov2); } // если включен ЛЕВЫЙ ПОВОРОТНИК if (buttonStateL == LOW && buttonStateR == HIGH) { for (int il=0; il<71; il++) { strip.setPixelColor(il+72, strip.Color(220,120,0)); strip.show(); delay(pause_pov1); } for (int il=0; il<71; il++) { strip.setPixelColor(il+72, strip.Color(0,0,0)); strip.show(); delay(pause_pov1); } delay(pause_pov2); } // если включен ПРАВЫЙ ПОВОРОТНИК if (buttonStateL == HIGH && buttonStateR == LOW) { for (int il=0; il<71; il++) { strip.setPixelColor(71-il, strip.Color(220,120,0)); strip.show(); delay(pause_pov1); } for (int il=0; il<71; il++) { strip.setPixelColor(71-il, strip.Color(0,0,0)); strip.show(); delay(pause_pov1); } delay(pause_pov2); } //правый поворотник конец } //конец условия else Стоп // задержка для следующего опроса датчиков delay(10); }

Eu tentei obtê-lo no máximo, mas se houvesse perguntas, tentarei adicionar comentários (portanto, eu tenho no texto da revisão, não um arquivo anexado). Isso, a propósito, diz respeito a outros itens de revisão - também irei complementá-lo se houver perguntas significativas nos comentários.

E finalmente, uma demonstração de trabalho (para o vídeo que usei o esboço com o modo de demonstração).

Upd. Skatch com o modo de demonstração especificamente para acomodar tudo em um vídeo curto.
O sinal de parada pisca apenas com uma frenagem afiada (foi escrito acima), com um liso e em pé em engarrafamentos, simplesmente queima, não irritando os motoristas por trás.
Brilho no escuro não é excessivo, porque Os dormentes devido a vidro de inclinação são dirigidos para cima do que de volta.
Luzes completas funcionam como de costume, esta faixa os duplica.

Eu pretendo comprar +97 Adicionar aos favoritos Eu gostei da revisão +89 +191