Schéma de connexion Arduino pour un clignotant en marche. Exécution des clignotants sur la bande WS2812 et Arduino. Vidéo comment fonctionne notre phare

J'ai dit l'année dernière "Gop" - il est temps de sauter :)
Faites plutôt l'examen promis des clignotants en marche.
J'ai commandé 1 mètre de ruban WS2812B noir (144 LED) dans un tube en silicone, lors de la commande j'ai choisi "Noir 1m 144led IP67" (peut-être que quelqu'un aimera la couleur blanche du substrat, il y a un tel choix).

Une petite mise en garde

J'ai reçu un ruban soudé à partir de deux pièces d'un demi-mètre. L'inconvénient de ceci est le point vulnérable de la soudure (les contacts peuvent être rompus avec le temps) et l'écart accru entre les LED.
Avant d'acheter, vérifiez auprès du vendeur pour ce moment

Les fils de contact ont été soudés au ruban des deux côtés pour la connexion en série de plusieurs pièces, car Je n'en avais pas besoin, puis j'ai scellé les fils d'un côté, scellé le tout avec un scellant neutre et enroulé un peu plus de ruban électrique noir.



Fixé au verre avec du ruban adhésif transparent double face, par exemple.

Détails de l'installation

Il a dégraissé les surfaces, a d'abord collé du ruban adhésif sur le tube (je l'appellerai ainsi, même si la section transversale est rectangulaire), a coupé l'excès saillant d'un ruban plus large, a poussé les bords du tube dans les fentes entre les plafond et les parties supérieures des panneaux décoratifs des piliers arrière (j'ai caché les fils de contact avec un connecteur derrière un panneau ), l'ai centré et a commencé à le presser contre le verre, en retirant lentement la couche protectrice du ruban adhésif.
Malheureusement, il n'y a pas de vidéo - il n'y avait pas les mains libres pour tourner et les voitures de chacun sont différentes.
Si quelque chose n'est pas clair, demandez dans les commentaires.
Le test de chaleur d'été a été un succès - rien ne s'est détaché ou n'a flotté.
Le seul point négatif est que l'angle d'inclinaison du verre est faible, les LED brillent davantage vers le haut. Par une journée ensoleillée, il est difficile de voir, mais comme ce sont des signaux en double, alors

Passons maintenant à la farce électronique.
J'ai utilisé, mais il n'y a pas si longtemps découvert

Pour environ le même coût, nous obtenons plus de petits pains

L'esquisse fonctionnera sur Wemos sans aucune modification particulière lors de la programmation dans l'IDE Arduino, et si vous implémentez un petit serveur Web, puis lorsque vous y êtes connecté via Wi-Fi, vous pouvez modifier les valeurs de variables telles que le temps de retard entre les clignotements, la quantité de décélération lors d'un freinage d'urgence, etc.
Ici, à l'avenir, si quelqu'un est intéressé par la mise en œuvre d'un projet sur l'ESP8266, je peux poster un exemple pour modifier les paramètres via l'interface Web, les enregistrer dans l'EEPROM, puis les lire.
Le serveur Web peut être lancé, par exemple, par un clignotant allumé et un appui sur la pédale de frein lorsque le contact est mis (dans la procédure de configuration, interroger l'état des entrées correspondantes).

Pour la mise en œuvre du mode clignotant avec freinage brusque, a été acheté
Le croquis suit le niveau de décélération lorsque la pédale de frein est enfoncée, s'il dépasse 0,5 G (décélération brutale, mais sans grincement des freins), alors un mode clignotant est activé pendant quelques secondes pour attirer une attention supplémentaire.
Les signaux de commande vers les entrées Arduino provenant du "plus" des arrêts, des clignotants et de la marche arrière sont alimentés par des isolateurs galvaniques - des optocoupleurs avec des résistances de limitation de courant, qui forment finalement un niveau BAS aux entrées Arduino (ils sont constamment attirés vers le positif jusqu'à 10 kΩ résistances).
Alimentation - 5 volts via un convertisseur DC-DC buck.
Le tout est plié en sandwich et emballé dans une boîte adaptée, sur laquelle une flèche marquait le sens d'installation pour la bonne orientation du capteur de gravité

Schéma et photo



La valeur nominale des résistances de rappel (vers le positif) est standard - 10 kOhm, la limitation du courant de l'optocoupleur des résistances est de 1 kOhm. J'ai abandonné les optocoupleurs des anciennes cartes, deux PC123, deux PC817.


Sur la première photo, vous pouvez voir deux conclusions supplémentaires, je les ai faites pour les clignotants. Étant donné que dans ma voiture, lorsque le levier de la colonne de direction est activé, un court-circuit à la masse se produit, j'ai connecté les fils au bloc de levier et aux entrées Arduino. Si le levier de la colonne de direction commute plus ou prend le signal des ampoules "+" des clignotants gauche / droite, connectez-les via une isolation galvanique.



Eh bien, maintenant le croquis lui-même (Arduino IDE)

#comprendre #comprendre // quelques commentaires généraux // J'ai éteint une LED de bord à la fois. ils brillaient sur les panneaux décoratifs des racks // vu dans l'exemple de cette boucle for (int i = 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 = 50 ; // puis change les boucles dans le bloc STOP pour (int i = 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); }

J'ai essayé de le commenter autant que possible, mais si j'ai des questions, j'essaierai d'ajouter des commentaires (je le place donc dans le texte de la critique, et non dans le fichier joint). Soit dit en passant, cela s'applique également à d'autres points de l'examen - je le compléterai également s'il y a des questions importantes dans les commentaires.

Et enfin, une démonstration de travail (pour la vidéo j'ai utilisé un sketch avec un mode démo).

Mise à jour. Le croquis avec le mode démo a été spécialement conçu pour tout faire tenir dans une courte vidéo.
Le feu stop ne clignote que lors d'un freinage brusque (comme décrit ci-dessus), en douceur et en position debout dans les embouteillages, il s'allume simplement, sans irriter les conducteurs derrière.
La luminosité dans l'obscurité n'est pas excessive. les lumières sont dirigées plus vers le haut que vers l'arrière en raison de l'inclinaison du verre.
Les lumières standard fonctionnent comme d'habitude, cette bande les duplique.


Bonjour à tous les bricoleurs ! Aujourd'hui, nous allons examiner l'une des nombreuses applications de la bande LED WS2812B sur les LED RVB adressables. Ces bandes (ainsi que les LED WS2812B montées séparément) peuvent être utilisées pour éclairer l'arrière-plan Ambilight des écrans d'ordinateur et des téléviseurs, un éclairage LED dynamique dans une voiture, des peintures, des cadres photo, un aquarium, etc. Ils sont largement utilisés dans l'élaboration de la conception de tout local, sous la forme d'illuminations du Nouvel An ou de spectacles de lumière. L'utilisation de ruban LED type WS2812B permet d'obtenir un grand nombre de projets intéressants.

La LED WS2812B est une LED RVB logée dans un seul boîtier avec la puce WS2801.


La LED WS2812B elle-même est un élément SMD conçu pour un montage en surface. En interne, la LED est composée de cristaux rouges, verts et bleus dans un seul boîtier. Avec cette LED, une grande variété de couleurs de lumière peut être obtenue.

La LED RVB est contrôlée via la carte microcontrôleur Arduino.
J'ai reçu des Chinois une bande LED WS2812B.C'est un morceau de 1 mètre de long avec le nombre de LED -144 pièces. J'ai longtemps voulu essayer différentes expériences. Avec l'aide des bibliothèques pour Arduino - Adafruit Neopixel et Fast led, vous pouvez obtenir de nombreux effets d'éclairage très inhabituels. Mais ensuite j'ai décidé d'essayer de faire des clignotants dynamiques pour la voiture dans le soi-disant "style Audi". attractif.

La carte Arduino Uno sert de contrôleur pour contrôler la bande LED, vous pouvez également utiliser d'autres cartes - Arduino Nano, Arduino Pro mini).
Regardez tout le processus dans la vidéo :


Liste des outils et matériaux.
- Carte Arduino Uno ;
- carte abaisseur 12V \ 5V à 3A;
- résistances 100KΩ-4pcs;
- résistances 47Kom-4pcs;
- résistances 500 Ohm-1 pièce;
-boutons (pour simuler l'activation des signaux) -4 pièces ;
-planche à pain
-Tournevis;
alimentation de laboratoire
-fer à souder;
-batiste;
-testeur.
-les fils de connexion.

La première étape. Assemblage du circuit.


J'ai assemblé le circuit à l'aide d'une planche à pain (bradboard). Les résistances connectées aux entrées numériques de l'Arduino sont nécessaires pour convertir les signaux d'entrée du véhicule de 12 à 5 volts. Résistance de 500 ohms pour protéger la ligne de contrôle de la bande LED WS2812B.
Photo du tableau


En tant que convertisseur de 12V à 5V, j'ai utilisé une carte prête à l'emploi d'Aliexpress. N'importe quel transducteur avec des paramètres appropriés peut être utilisé. Le convertisseur est nécessaire pour une alimentation stable des bandes LED Arduino et WS2812B.


Deuxième étape. Programmation Arduino.

Les entrées numériques de la carte Arduino n°3,4 sont utilisées pour activer le virage à gauche et à droite. Broche numéro 5 - active le signal d'arrêt, broche numéro 6 - active la marche arrière. Broche numéro 8 - le signal de contrôle de la bande WS2812B.

Dans l'IDE Arduino, téléchargez le croquis (lien ci-dessus). Deux options pour le croquis - une pour l'avant de la voiture, l'autre pour l'arrière. Utilisez ce dont vous avez besoin. Au début du croquis, vous pouvez définir le nombre de LED dont vous avez besoin. Vous pouvez également régler la vitesse des clignotants en fonction de votre voiture. Vous pouvez également modifier la luminosité des LED à l'aide du paramètre strip.Color (103,31,0) - modifiez les deux premiers chiffres de 0 à 255. C'est-à-dire que vous pouvez expérimenter un peu.

Lorsque vous appuyez sur le bouton souhaité, nous donnons un signal pour activer le paramètre souhaité. Avec l'assemblage correct du circuit, il commence généralement à fonctionner immédiatement.

Photo au travail.






Belle expérience s'est avérée avec cette construction de week-end. c'etait intéressant

Considérons la création d'un clignotant en marche comme une Audi, en utilisant l'exemple d'un phare d'une voiture Renault Clio. Faisons des clignotants et des DRL dans un seul appareil.

Ce dont vous avez besoin pour cela : Bande LED composée de LED ws2812b Contrôleur Arduino nano(peut être utilisé dans n'importe quel autre facteur de forme) Chargeur de voiture pour téléphones portables avec sortie USB. Puisque le contrôleur Arduino a besoin d'une tension de 5V, nous utiliserons ce chargeur comme convertisseur de tension de 12V à 5V. Stabilisateur de tension pour 5V KR142EN5V (KREN5V) ou tout autre analogue importé. 3 résistances 10 kOhm, comme résistance pull-up.

Diagramme de connexion

Le contrôleur arduino doit être connecté au réseau de la voiture via un convertisseur 12V -> 5V afin que la tension soit fournie au circuit dès l'allumage du "contact". Au stabilisateur de tension KREN5V, vous devez connecter le fil positif du clignotant actuel. Cet article traite de la connexion et du firmware d'un seul clignotant, afin de créer un deuxième clignotant, vous devez également connecter la deuxième bande LED à n'importe quelle sortie numérique libre de l'Arduino (par exemple 7), ainsi que d'ajouter le code pour cela dans le firmware selon notre exemple.

Micrologiciel du contrôleur

Pour travailler avec des LED de pixels, vous aurez besoin d'une bibliothèque ... Vous pouvez l'installer comme suit : Sketch -> Connect library -> Manage library. Ensuite, dans le menu de recherche, entrez le nom de la bibliothèque Adafruit_NeoPixel.h et cliquez sur le bouton d'installation. Après cela, insérez le croquis dans le programme et remplacez le nombre de LED dans le code (nous utilisons 22 diodes):

#comprendre // connecter la bibliothèque
Bande Adafruit_NeoPixel = Adafruit_NeoPixel (22, 8, NEO_GRB + NEO_KHZ800);
int t, t1, t2, t3, t4, p2, p1 = 0 ; // variable de temps
void setup () (
pinMode (2, ENTREE);
pinMode (3, ENTREE);
pinMode (4, ENTREE);
digitalWrite (2, FAIBLE);
digitalWrite (3, FAIBLE);
digitalWrite (4, FAIBLE);

strip.begin ();
strip.show ();

}
boucle vide () (
if (digitalRead (2) == LOW) (// Si le clignotant est éteint
pour (int i = 0; i< 23; i++) {
strip.setPixelColor (i, strip.Color (255,255,255)); // R = 255, G = 255, B = 255 - couleur blanche de la LED, lorsqu'elle est allumée, nous allumons les feux de circulation
}
strip.show ();
}

if ((digitalRead (2) == HIGH) & (t == 1)) (// vérifier si le clignotant est allumé
pour (int i = 0; i< 23; i++) {
strip.setPixelColor (i, strip.Color (0, 0, 0)); // éteint toutes les diodes
}
strip.show ();
pour (entier k = 0; k< 3; k++){ // цикл до трех - сигнал «перестроения» , при кратковременном включении мигает 3 раза,

pour (int i = 0; i< 23; i++){

if (digitalRead (2) == HIGH) (k = 0;) // si pendant le clignotement du clignotant nous obtenons un autre signal de touche, alors réinitialiser le compteur pour que le clignotant clignote au moins 3 fois de plus
strip.setPixelColor (i, strip.Color (255, 69, 0)); // R = 255, G = 69, B = 0 - Couleur LED

retard ((t4) / 22);
strip.show ();

}
if (digitalRead (2) == HIGH) (t4 = t4 + 20;) // si toutes les diodes sont allumées en jaune, mais que le signal du relais est toujours allumé, alors nous augmentons le temps de combustion
if (digitalRead (2) == LOW) (t4 = t4-20;) // si toutes les diodes sont allumées en jaune, mais que le signal du relais est toujours allumé, alors nous augmentons le temps de combustion

pour (int i = 0; i< 23; i++){

strip.setPixelColor (i, strip.Color (0, 0, 0)); // R = 0, G = 0, B = 0 - Couleur LED

retard ((t3) / 22);
strip.show ();

}
if ((digitalRead (2) == LOW)) (t3 = t3 + 20;)
if ((digitalRead (2) == HIGH)) (t3 = t3-20;)
}

if ((digitalRead (2) == HIGH) & (t == 0)) (// vérifier si le clignotant est allumé

t1 = millièmes (); // rappelez-vous à quelle heure vous avez allumé
pour (int i = 0; i< 22; i++) {
strip.setPixelColor (i, strip.Color (255, 69, 0)); // lorsque vous allumez le clignotant pour la première fois, allumez toutes les diodes en jaune
}
strip.show ();
while (digitalRead (2) == HIGH) ()
t2 = millièmes (); // rappelez-vous à quelle heure le clignotant s'est éteint
t4 = t2-t1 ;

pour (int i = 0; i< 22; i++) {
strip.setPixelColor (i, strip.Color (0, 0, 0)); // éteint les diodes lorsque le signal du relais de tour disparaît
}
strip.show ();
while (digitalRead (2) == LOW) (
si ((millis () - t2)> 2000) (pause ;)
}
si ((millis () - t2)<2000) {
t3 = millis () - t2; // heure d'extinction des clignotants
t = 1 ; // flag, nous savons que la valeur de temps a été enregistrée.
}
}

if (digitalRead (4) == HIGH) (// signaux spéciaux
pour (int j = 0; j< 16; j++) {
pour (int i = 0; i< 22; i++) {
strip.setPixelColor (i, strip.Color (255, 0, 0)); // R = 255, G = 0, B = 0 - Couleur LED
}
strip.show ();
retard (20);
pour (int i = 0; i< 22; i++){

}
strip.show ();
retard (20);
}

pour (int j = 0; j< 16; j++) {
pour (int i = 0; i< 22; i++) {
strip.setPixelColor (i, strip.Color (0, 0, 255)); // R = 0, G = 0, B = 255 - Couleur LED
}
strip.show ();
retard (20);
pour (int i = 0; i< 22; i++){
strip.setPixelColor (i, strip.Color (0, 0, 0)); // R = 0, G = 0, B = 0 - Couleur LED
}
strip.show ();
retard (20);
}
}

if (digitalRead (3) == HIGH) (// stroboscope
pour (int j = 0; j< 24; j++) {
pour (int i = 0; i< 22; i++) {
strip.setPixelColor (i, strip.Color (255, 255, 255)); // R = 255, G = 255, B = 255 - Couleur LED
}
strip.show ();

retard (15);
pour (int i = 0; i< 22; i++){
strip.setPixelColor (i, strip.Color (0, 0, 0)); // R = 0, G = 0, B = 0 - Couleur LED
}
strip.show ();
retard (15);
}
retard (500);

Faites de même pour le deuxième clignotant en utilisant le code.

Vidéo comment fonctionne notre phare

De nombreux automobilistes, afin d'améliorer l'apparence de leur voiture, accordent leur "Swallow" avec des lumières LED. L'une des options de réglage est un clignotant en marche qui attire l'attention des autres usagers de la route sur lui-même. L'article fournit des instructions pour l'installation et la configuration des clignotants avec feux de position.

[Cacher]

instructions de montage

Les lampes LED sont des éléments semi-conducteurs qui brillent sous l'influence d'un courant électrique. L'élément principal en eux est le silicium. Selon les impuretés utilisées, la couleur des bulbes change.

Galerie de photos "Variantes possibles d'indicateurs de direction dynamiques"

Outils et matériaux

Pour faire un clignotant en marche de vos propres mains, vous aurez besoin des outils suivants:

  • fer à souder;
  • pinces coupantes ou pinces latérales;
  • fer à souder et matériel de soudure;
  • testeur.

À partir de consommables, vous devez préparer de la fibre de verre. Elle est nécessaire à la fabrication d'un circuit imprimé sur lequel sera placé l'élément semi-conducteur. Les LED requises sont sélectionnées. En fonction des caractéristiques des LED et des valeurs du courant et de la tension du réseau de bord, les caractéristiques des résistances de protection sont calculées. À l'aide des calculs, le reste des composants du réseau est sélectionné (vidéo d'Evgeny Zadvornov).

Séquence de travail

Avant de faire les clignotants, vous devez choisir un schéma approprié.

Ensuite, sur la base du schéma, réalisez une carte de circuit imprimé et appliquez des marquages ​​dessus pour accueillir les futurs éléments.

L'assemblage consiste en une séquence d'actions :

  1. Tout d'abord, vous devez mettre la voiture hors tension en débranchant la borne négative de la batterie.
  2. Ensuite, vous devez retirer les anciens indicateurs de direction et les démonter soigneusement.
  3. Dévissez les vieilles ampoules.
  4. Les joints doivent être nettoyés de la colle, dégraissés, lavés et laissés sécher.
  5. A la place de chaque ancien élément, un nouveau feu de circulation est installé.
  6. De plus, l'assemblage et l'installation des lanternes s'effectuent dans l'ordre inverse.
  7. Après l'installation, les fils sont connectés.

A l'étape suivante, une alimentation stabilisée supplémentaire est connectée au réseau. Son entrée est alimentée par un relais intermédiaire et la sortie est connectée à une diode. Il est préférable de le placer dans le tableau de bord.

Lors de la connexion des LED, assurez-vous que l'anode est connectée au positif de l'alimentation et la cathode au négatif. Si la connexion n'est pas effectuée correctement, les éléments semi-conducteurs ne brilleront pas et peuvent même griller.


Caractéristiques d'installation et de configuration des indicateurs de direction de marche

Vous pouvez installer des clignotants dynamiques à la place des LED classiques. Pour cela, une carte avec des LED et des résistances de limitation de courant est retirée et démontée. Sur le répéteur, vous devez déchirer le verre du boîtier. Ensuite, découpez soigneusement le réflecteur et retirez-le.

À la place du réflecteur à distance, une carte SMD 5730 est installée, sur laquelle se trouvent les LED jaunes. Le répéteur ayant une forme incurvée, la planche devra être stratifiée et légèrement pliée. Pour l'ancienne carte, vous devez couper la partie avec le connecteur et la souder pour connecter le contrôleur. Ensuite, tous les composants sont remis à leur place.

Pour ajuster la synchronisation des lumières LED en marche, un interrupteur est soudé au microcontrôleur. Lorsqu'une vitesse appropriée est trouvée, des cavaliers sont soudés au lieu d'un interrupteur. Lors de la connexion de deux broches à la terre, le temps minimum entre les clignotements des LED est de 20 ms. Lorsque les contacts sont fermés, ce temps est de 30 ms.


Prix ​​d'émission

Vous pouvez faire un clignotant de feux de circulation à partir des feux de jour. Leur coût est de 600 roubles. Comme sources lumineuses dans ce cas, vous pouvez prendre des LED RVB "pixels" à raison de 7 pièces pour chaque clignotant en cours d'exécution. Le coût d'un élément est de 19 roubles. Pour contrôler les LED, vous devez acheter un Arduino UNO d'une valeur de 250 roubles. Ainsi, le coût total sera de 1060 roubles.

Vous avez aimé l'article ? A partager entre amis :