Table des matières:

Système de feux tricolores à 4 voies utilisant 5 modules Arduinos et 5 modules sans fil NRF24L01 : 7 étapes (avec photos)
Système de feux tricolores à 4 voies utilisant 5 modules Arduinos et 5 modules sans fil NRF24L01 : 7 étapes (avec photos)

Vidéo: Système de feux tricolores à 4 voies utilisant 5 modules Arduinos et 5 modules sans fil NRF24L01 : 7 étapes (avec photos)

Vidéo: Système de feux tricolores à 4 voies utilisant 5 modules Arduinos et 5 modules sans fil NRF24L01 : 7 étapes (avec photos)
Vidéo: Li-Fi 2018 | Découverte #1 - RIM ROBOTIQUE - 2024, Juillet
Anonim
Image
Image
Ambitieux? Peut-être!
Ambitieux? Peut-être!

Il y a quelque temps, j'ai créé un Instructable détaillant une seule paire de feux de circulation sur une planche à pain.

J'ai également créé un autre Instructable montrant le cadre de base pour l'utilisation d'un module sans fil NRF24L01.

Cela m'a fait réfléchir !

Il y a beaucoup d'amateurs dans le monde qui construisent des villes modèles et des chemins de fer, et ont presque toujours des feux de circulation d'une certaine description.

Certains sont des modèles de travail, et d'autres sont uniquement à des fins esthétiques.

Puis-je créer un modèle fonctionnel d'un système de feux tricolores et les connecter sans fil ?

Je me suis assis et j'ai réfléchi à ma liste d'exigences possibles. Ce qui s'est passé un peu comme ça.

Contrôlez 4 sens de circulation, comme un carrefour.

Chaque direction ayant deux lumières; et chaque paire reçoit ses instructions sans fil à partir d'une sorte d'unité de contrôle.

Pouvoir définir et modifier la séquence de fonctionnement des lumières,

  • 1, 2, 3, 4 - dans le sens des aiguilles d'une montre
  • 1, 3, 4, 2
  • 1, 4, 2, 3
  • 1, 4, 3, 2 – dans le sens inverse des aiguilles d'une montre
  • 1, 2, 4, 3
  • 1, 3, 2, 4
  • 1 + 3, 2 + 4 – 2 activé 2 désactivé
  • 1 + 3, 2, 4
  • 1, 3, 2 + 4

Tout le séquençage doit être contrôlé par une seule unité de commande, et les unités réceptrices allument et éteignent uniquement les lumières.

Quand j'ai dit faire un modèle, je voulais dire, faire un vrai modèle, rien d'extraordinaire, mais quelque chose qui ressemblerait en fait à quelque chose comme la vraie chose, peut-être, peut-être ish.

Étape 1: Ambitieux ? Peut-être

Exigences des pièces principales:

Une unité de contrôle et quatre jeux de lumières = cinq Arduinos et cinq modules sans fil. AliExpress à la rescousse (encore).

Huit stands de feux tricolores. J'ai une mauvaise imitation d'une imprimante 3D, qui a tendance à fournir plus de fourrage que de produits utilisables, mais j'ai pensé que j'essayerais quand même. J'en ai trouvé sur Thingiverse, www.thingverse.com/thing:2157324

Ce modèle semblait être le moins complexe pour mon imprimante. J'en voulais huit, alors je poussais toujours ma chance. En fin de compte, j'ai découvert qu'après quelques tentatives infructueuses, si j'orientais le modèle dans une certaine direction (d'avant en arrière), j'obtenais des résultats raisonnables. Au total, j'en ai imprimé treize et j'en ai obtenu huit utilisables.

C'était la liste des pièces principales triée. Les pièces restantes, je les avais déjà.

La liste complète des pièces est

  • 5 x Arduino UNO
  • 5 x cartes sans fil NRF24L01
  • 5 x cartes de dérivation YL-105 (ou similaires) pour les NRF24L0
  • 8 LED rouges
  • 8 x LED jaunes (je n'ai pas de LED orange)
  • 8 LED vertes
  • 4 LED RVB
  • 28 résistances de 220 Ohm
  • Planches à pain / PCB ??
  • 8 x feux de circulation modèle
  • 6 x 8 en-têtes à broches longues (le sixième était pour l'espacement sur la carte de commande, voir la vidéo)
  • Tube rétractable
  • Fils de cavalier
  • Morceau de panneau dur ou quelque chose de plat
  • D'autres morceaux de bois ??
  • Peindre ??
  • Colle chaude
  • Temps, Patience et alcool au choix

Étape 2: Rédaction du code pour l'unité de contrôle

C'est le peu que je devais faire en premier, juste au cas où je ne pourrais pas le gérer, ce qui aurait été un écueil.

C'était de loin la partie la plus complexe du projet, mais aussi la plus intéressante pour moi.

J'ai dû m'asseoir et définir toutes les combinaisons possibles de changements de lumière et comment ils fonctionneraient ensemble de manière synchrone.

Comme tout bon design, ça a commencé, sur le papier, avec une très longue liste de nombres, et parce que je voulais pouvoir avoir plusieurs séquences opératoires possibles, la liste s'est encore allongée.

Mais, une fois que j'étais heureux d'avoir tout ce que je pensais être nécessaire et, après avoir regardé les pages de chiffres pendant un moment, mon TOC s'est déclenché et j'ai commencé à voir des tendances.

En organisant les modèles, j'ai réussi à rassembler tout le séquençage en un seul tableau à 3 dimensions et deux tableaux à 2 dimensions.

Tout ce que j'avais à faire maintenant, c'était de trouver un moyen de manipuler ces tableaux pour créer le bon séquençage et les étapes légères.

Cela a pris du temps, mais j'ai réussi à le réaliser en moins de cinquante lignes de code, commentaires compris, etc.

Le code pour cela n'est pas pour les âmes sensibles, mais si vous comprenez les tableaux multidimensionnels, il ne devrait pas être trop difficile à suivre. Ou une courbe d'apprentissage pour le reste.

Le fait est que je pense que cela fonctionne et qu'il ne devrait pas être nécessaire de changer de toute façon. Mais…………

Étape 3: Mod de carte de dérivation NRF24L01

Module de carte de dérivation NRF24L01
Module de carte de dérivation NRF24L01
Module de carte de dérivation NRF24L01
Module de carte de dérivation NRF24L01
Module de carte de dérivation NRF24L01
Module de carte de dérivation NRF24L01
Module de carte de dérivation NRF24L01
Module de carte de dérivation NRF24L01

Le module NRF24L01 et la carte de dérivation YL-105, malheureusement, ne sont pas très conviviaux.

La carte de dérivation résout en partie le problème et, plus important encore, la rend tolérante au 5v, mais elle n'est toujours pas compatible avec la planche à pain.

Alors je suis devenu un peu inventif.

Dans ma collection de "trucs", j'ai un certain nombre d'en-têtes à 6 broches avec de longues broches. Le genre qui est requis pour faire des boucliers Arduino.

J'en ai pris un et j'ai plié les broches à 90 degrés.

J'ai retiré l'un des rails d'alimentation d'une planche à pain et j'ai branché l'en-tête sur le bord de la planche à pain.

Cela a laissé les broches d'alimentation sur la carte de dérivation. Ils sont maintenant sur le chemin.

Je les ai donc retirés et placés de l'autre côté de la planche de dérivation de sorte qu'ils dépassent maintenant de l'arrière de la planche.

Aux fins de ce Instructable, j'ai besoin de cinq modules NRF24L01, donc je les ai montés tout le long de la planche à pain, puis j'ai fixé le rail d'alimentation le long de toutes les broches d'alimentation sur la carte de dérivation.

Il avait l'air assez bien rangé jusqu'à ce que je connecte les Arduinos et il y avait un peu de monde.

De plus, ce qui est le plus important, une fois le rail d'alimentation connecté, tous les Arduinos seraient connectés à la même source et c'était ce que j'essayais d'éviter, alors j'ai démonté la majeure partie à nouveau.

Je garderai la carte avec quelques modules NRF24L01 dessus pour le prototypage à l'avenir, donc pas une perte de temps totale.

Étape 4: Unités de feux de circulation

Unités de feux de circulation
Unités de feux de circulation
Unités de feux de circulation
Unités de feux de circulation
Unités de feux de circulation
Unités de feux de circulation

J'ai trouvé quelques petites planches à pain à 170 points d'attache. Ceux-ci n'ont pas de rail d'alimentation, donc ma carte de dérivation modifiée conviendrait toujours. Bien que légèrement incliné en raison de la hauteur de la planche de dérivation.

J'ai construit les quatre commandes de feux de circulation de la même manière, les fils de même couleur, le positionnement, etc. Ils sont maintenant vraiment autonomes.

Pour l'unité de contrôle, j'ai mis le module NRF24L01 sur un PCB avec les LED RGB. J'ai utilisé RVB car, même si je n'avais pas besoin de voir toutes les lumières, juste le rouge et le vert, elles prennent moins de place.

Connecté les LED à l'Arduino de la manière normale et ajouté un peu de code pour afficher l'état rouge ou vert de chaque ensemble de feux de circulation.

J'ai essayé d'être cohérent avec mes couleurs de câblage afin de pouvoir facilement voir si j'avais fait quelque chose de différent sur l'une des cartes.

J'ai quelques jeux de câbles Dupont courts, et comme les câbles sont collés ensemble, cela a rendu cette partie assez facile.

NRF24L01:

  • CE Orange Vers Arduino broche 10 (défini dans le code)
  • CSN Jaune Vers Arduino broche 9 (définie dans le code)
  • SCK Vert Vers Arduino broche 13 (obligatoire)
  • MOSI Blue To Arduino pin 11 (obligatoire)
  • MISO Purple To Arduino pin 12 (obligatoire)
  • Vcc Rouge à 5v. Si vous n'utilisez pas les cartes de dérivation, cela doit être de 3,3 V.
  • GND marron vers Arduino GND

Unités lumineuses et broches Arduino vers LED:

  • Rouge pour LED rouge
  • Orange pour la LED jaune (je n'ai pas de LED orange)
  • Vert pour la LED verte
  • Noir pour GND

Mon seul écart par rapport à cela a été lorsque j'ai connecté l'Arduino de contrôle aux LED RVB. J'ai utilisé des fils blancs et gris parce que je n'avais plus de fils rouges.

Étape 5: Feux de circulation et tests

Image
Image
Feux de circulation et essais
Feux de circulation et essais
Feux de circulation et essais
Feux de circulation et essais

C'est le code terminé et chaque contrôle autonome est également terminé. Tout ce dont j'ai besoin maintenant, ce sont les feux de circulation eux-mêmes.

Comme je l'ai déjà dit, j'ai trouvé un modèle simple sur Thingiverse et j'ai réussi à en imprimer huit qui n'avaient pas l'air trop mal.

J'ai équipé les LEDS de leur résistance de 200 Ohm requise et d'un lien et d'un fil de terre.

Rétrécissez les fils et collez le tout à chaud.

J'ai décidé de les peindre en noir une fois toutes les LED installées. Mauvaise idée, j'aurais dû le faire avant.

J'ai tout câblé pour un test avant d'aller plus loin.

Étape 6: Le carrefour

Les carrefours
Les carrefours
Les carrefours
Les carrefours
Les carrefours
Les carrefours
Les carrefours
Les carrefours

J'ai décidé de les monter tous sur une planche, alors maintenant je devais créer une sorte de sosie de carrefour.

Je vis au Royaume-Uni, nous conduisons donc du mauvais côté de la route ici, et j'ai donc rendu mon carrefour aussi convivial pour le Royaume-Uni que mes faibles compétences artistiques le permettraient.

C'était assez simple, ça prenait juste du temps; et je suis sûr qu'il n'y a pas de carrefour qui ressemble à ça, mais le mien n'a pas de nids-de-poule.

Je ne voulais pas sacrifier définitivement mes Arduinos à ce projet, j'ai donc fait un compromis en remplissant chacun d'entretoises de 10 mm et en collant à chaud les entretoises à la base de la carte.

Ce que j'ai fait cependant, c'est coller à chaud la mini planche à pain sur le côté de l'Arduino.

Premièrement, il tenait le NRF24L01 et le panneau de dérivation à la base du carrefour, et deuxièmement, j'utilise rarement un Arduino sans une planche à pain quelconque de toute façon, ils seront donc toujours utiles comme ça.

Étape 7: Tout est fait

Terminé
Terminé
Terminé
Terminé

Tous les fichiers de code ont été inclus.

Je ne suis pas passé par le code ici car ce Instructable est assez long sans lui.

J'espère que cela a été un Instructable utile, même s'il ne montre que comment contrôler un certain nombre d'autres cartes Arduino sans fil avec le NRF24L01 à un prix très raisonnable.

Si vous avez des questions, n'hésitez pas à laisser un commentaire et je ferai de mon mieux pour vous aider.

Conseillé: