Bonjour à tous,
Je suis coincé sur un code avec un random sur les relais.
Je souhaite faire fonctionner en aléatoire juste 3 relais (ils peuvent aussi s'activer les 3 en même temps).
J'utilise une carte arduino uno basique et un relais 8.
voila mon code
Ton code actuel n'en allume qu'un à la fois. Donc tu ne peux pas les allumer tous en même temps.
La définition de ton besoin est incomplète.
Est-ce qu'il doit toujours y avoir 3 sorties actives?
Les sorties étant actives pour un temps aléatoire, indépendamment les unes des autres, est-ce que l'on attend qu'une sortie soit devenue inactive pour en activer une nouvelle, ou on attend que toutes les sorties soient devenues inactives, ou bien on en active une nouvelle toutes les n secondes?
Autrement pour gérer des phénomènes liés au temps il y a cette librairie
Mais tu pourras en trouver d'autres sur le net aussi.
Bonjour,
Si justement, ils peuvent s'allumer tous en même temps!
Ce que je veux c'est juste que 3 s'allument sur les 8.
merci de votre réponse en tout cas
Pour résumer, à chaque tour de loop() on allume ou on éteint au hasard 3 LED sur 3 ports sur 8, choisis au hasard, on fait une pause, on éteint toutes les LED puis on recommence une nouvelle séquence.
Juste?
Le plus trivial, c'est de faire un tableau contenant les possibilités (je crois qu'il y en a 56, mais c'est pas sûr). On prends une possibilité au hasard, et on l'affiche.
Pour 8 relais qui ont chacun 2 états, on peut l'écrire sur un octet. En binaire, cela peut faire par exemple 0b01001100 avec bit à 1 -> relais collé, bit à 0 -> relais décollé. Le tableau commence par exemple par
Une autre optionc’est de faire un tableau de 8 cases qui contient les chiffres de 0 à 7 (ou les numéros des pins dans notre cas) et à chaque tour de loop on le mélange et on prend les 3 premiers (ou un nombre aléatoire entre 1 et 3 si on en veut jusqu’à 3)
Il semblerait qu'il y ait une variable supplémentaire puisque @surveritisme introduit une durée aléatoire différente pour chacune des sorties, d'où mes questions au #5.
Pour être clair, on ne sait pas ce que l'OP veut faire exactement.
A partir d'un état donné, par exemple les relais 6, 7 et 8 activées, on ne peut pas avoir une nouvelle fois les sorties 6, 7 et 8 activées. Le nouvel état n'est pas un "mélange quelconque", mais un "mélange quelconque différent du précédent". Mais dans notre cas présent cela peut suffire.
Pas faux, cela permettra de répondre comme @surveritisme le pense et pas comme nous avons compris qu'il le pense