Contrôle d'éclairage (chenillard) d'un portail d'entrée sur IPX V5

Bonjour à toute la commu !

Comme beaucoup ici je pense avoir été un grand habitué de la V4 et je prends donc mes marques avec la V5. J’ai un projet assez sympa mais sur lequel je dois avouer me casser les dents …

Voici le projet résumé :

J’ai un portail d’entrée autonome (piloté par la carte du fabricant) et fonctionnel. Ce portail d’entrée dispose de 2 cellules photoélectriques, l’une placée à l’extérieur du terrain, l’autre placée côté intérieur de l’allée (jusqu’ici rien d’extraordinaire me direz-vous).

Là où ça devient intéressant :

Le portail est à la fin du terrain et une belle allée carrossable y emmène, tout le long, 6 spots délimitent l’allée placés chacun à environ une dizaine de mètre. L’idée est d’allumer ces spots un à un façon “chenillard” avec un délai d’1 à 2s entre chaque allumage (puis de les éteindre lors du passage de la seconde cellule ou bien après un certain temps pour simplifier).

Le déclenchement se ferait soit du sens extérieur vers intérieur lorsqu’on rentre sur le terrain (allumage des spots progressif 1 à 6) via la cellule “extérieur”, soit du sens intérieur vers extérieur lorsqu’on sort du terrain (allumage des spots progressif 6 à 1) via la cellule “intérieur”.

Il faut que j’ajoute à cela une fonction “allumage forcé” (l’info des cellules n’est plus prise en compte et les spots restent tous allumés).

Les cellules sont de types impulsionnelles et branchées en entrée Digital In, les spots sont branchés sur les sorties relais.

Le projet n’est pas du complexité folle mais je dois avouer que je galère …

Je pense savoir qu’il faut privilégier le moteur de scénarios et qu’il faudra surement passer par des variables IO de transition.

Pour l’instant j’arrive simplement à déclencher un allumage progressif via l’activation de l’entrée Digital In puis en utilisant plusieurs objets Délais (dans l’exemple il est vrai que l’ensemble des instructions de Start Délai pourraient être mises à la suite).

Lorsque j’essaie cependant de faire une fonction d’extinction dans l’autre sens (déclenchée lorsque le véhicule passe la seconde cellule) les allumages interfèrent (bref cela fait n’importe quoi).

Je ne pense pas avoir la bonne méthodologie et j’ai du mal à comprendre comment fonctionnent les variables IO (est-il possible d’assigner des valeurs 0 ou 1 “à la main” dans ces variables ?).

En effet les objets Délais devront déclencher à la suite du temps écoulés parfois des allumages de spot et parfois des extinctions et il faut que j’arrive à inhiber cette fonction lors de l’allumage forcé.

J’en appel à votre grand savoir faire !

Merci d’avance !

Bonjour,

des widgets sont à disposition sur dashboard et Liveview. C’est jouable aussi par le moteur de scénario.
Voici un peu de lecture :

Pouvez vous faire un croquis ? la cellule « intérieur » est déportée à l’autre extrémité de l’allée ?
Pas si simple de déterminer le sens de circulation avec une distance si grande entre les 2 cellules (le vehicule ne cache pas les cellules simultanément)

Il est possible d’utiliser l’état du spot le plus proche de chaque cellule en tant que 2eme information. En effet, si la cellule extérieure est activée alors que le spot 1 est éteint, alors le véhicule vient de l’extérieur. Inversement, si le spot 1 est allumé lorsque la cellule extérieure est activée, alors le véhicule sort.

//entrée sur terrain

  • Cellule1ETNONSpot1ETNONIO_Allumage_forcéONIO_SENS_ENTREE
  • IO_SENS_ENTREEONDélai1.startDélai2.startDélai3.startDélai4.startDélai5.startDélai6.start
  • IO_SENS_ENTREEETDélai1.outputONSpot1
  • IO_SENS_ENTREEETDélai2.outputONSpot2
  • IO_SENS_ENTREEETDélai6.outputONSpot6
  • IO_SENS_ENTREEETCellule2OFFSpot1Spot2Spot3Spot4Spot5Spot6IO_SENS_ENTREE

//sortie du terrain

  • Cellule2ETNONSpot6ETNONIO_Allumage_forcéONIO_SENS_SORTIE
  • IO_SENS_SORTIEONDélai1.startDélai2.startDélai3.startDélai4.startDélai5.startDélai6.start
  • IO_SENS_SORTIEETDélai1.outputONSpot6
  • IO_SENS_SORTIEETDélai2.outputONSpot5
  • IO_SENS_SORTIEETDélai6.outputONSpot1
  • IO_SENS_SORTIEETCellule1OFFSpot1Spot2Spot3Spot4Spot5Spot6IO_SENS_SORTIE

bonne journée

Bonjour et merci pour cette réponse si rapide !

Voici un petit schéma rapide de l’ensemble, pour faciliter la compréhension j’ai plus mis en avant la situation plus que le câblage. A savoir que la partie hardware pure et dure est fonctionnelle (je vois bien les 2 Digital In répondre aux coupures des faisceaux et j’arrive bien à activer chaque spot).

Il y aurait donc un sens “sortie” qui déclenche les spots 6 –> 1 et un sens “entrée” qui déclenche les spots 1 –> 6.

J’arrive (à peu près) à faire ce qu’il faut pour un sens mais la combinaison des 2 produits des résultats disons “pas ouf”.

Merci encore !

Ma réponse correspond à ce schéma (on a de la chance, c’est le même que le votre :slight_smile: )

Pour la gestion d’un allumage forcé, il y a quelques modifs à faire, par exemple vous pouvez ajouter une condition pour bloquer l’extinction automatique.
Exemple avec la sortie :
IO_SENS_SORTIEETCellule1ETNONIO_Allumage_forcéOFFSpot1Spot2Spot3Spot4Spot5Spot6IO_SENS_SORTIE

et cette règle pour l’allumage forcé (sans chenillard)
IO_Allumage_forcéON/OFFSpot1Spot2Spot3Spot4Spot5Spot6

Ne pas oublier de désactiver IO_SENS_ENTREE et IO_SENS_SORTIE comme proposé.

Il faudra penser à désactiver la sortie de tous les délais, à défaut, utilisez des objets type impulsions avec TA=retard à l’allumage et TB pour une désactivation auto.

Remarque : avec le principe de la seconde cellule qui éteint tout, il y aura forcément des loupés si les 2 cellules sont coupées, mais pas par le même déclencheur (2ème véhicule, piéton, animal, …)
exemple : vous entrez et le chien passe la cellule 2 pour venir à votre rencontre : tout s’éteint

Il vaut mieux conditionner l’extinction des spots sur une temporisation :
Voici la prog :

//entrée sur terrain

  • Cellule1ETNONSpot1ETNONIO_Allumage_forcéONIO_SENS_ENTREEtempo_ecl.start
  • IO_SENS_ENTREEONDélai1.startDélai2.startDélai3.startDélai4.startDélai5.startDélai6.start
  • IO_SENS_ENTREEETDélai1.outputONSpot1
  • IO_SENS_ENTREEETDélai2.outputONSpot2
  • IO_SENS_ENTREEETDélai6.outputONSpot6

//sortie du terrain

  • Cellule2ETNONSpot6ETNONIO_Allumage_forcéONIO_SENS_SORTIEtempo_ecl.start
  • IO_SENS_SORTIEONDélai1.startDélai2.startDélai3.startDélai4.startDélai5.startDélai6.start
  • IO_SENS_SORTIEETDélai1.outputONSpot6
  • IO_SENS_SORTIEETDélai2.outputONSpot5
  • IO_SENS_SORTIEETDélai6.outputONSpot1

//extinction automatique

  • NONtempo_ecl.outputETNONIO_Allumage_forcéOFFSpot1Spot2Spot3Spot4Spot5Spot6IO_SENS_SORTIEIO_SENS_ENTREE
  • NONtempo_ecl.outputETNONIO_Allumage_forcéOFFDélai1.outputDélai2.outputDélai3.outputDélai4.outputDélai5.outputDélai6.output

//allumage forcé

  • IO_Allumage_forcéON/OFFSpot1Spot2Spot3Spot4Spot5Spot6
1 « J'aime »

Bonjour

Peut être utiliser deux objets Fader ( un pour chaque sens) et des comparateurs pour chaque spots.

-Une impulsion pour déclencher le sens de passage

-les comparateurs font le “chenillard” ( valeur fader = x allume spot y)

C’est juste une autre idée.

Bonne journée

1 « J'aime »

bien vu, c’est effectivement une autre solution fonctionnelle, la V5 permet d’aborder des problématiques sous plusieurs angles, grâce à ses diverses objets. Il existe toujours plusieurs solutions à un pb. Chacun peut ainsi choisir l’approche qui lui convient.
Cependant, une programmation avec analogiques est toujours un peu plus touchy (ça n’engage que moi). Dans votre exemple, il faut 12 comparateurs mais les règles seront sensiblement les mêmes qu’avec les Délais.

1 « J'aime »

Bonjour et premièrement merci (avec du retard …) pour les diférents retours.

J’ai pu prendre le temps d’implémenter tout cela et la solution proposée marche au top ! Que ce soit en sens “Entrée” / “Sortie” ainsi que la marche forcée.

Maintenant que cela fonctionne il y a quelque chose d’assez évident auquel je n’avais pas pensé qui est une désactivation automatique des éclairages en journée …

Après avoir épluché le forum et le wiki la solution la plus directe serait d’utiliser le module météo et de créer une IO “Jour/Nuit” qui va chercher les infos de lever et coucher du soleil.

Première question j’ai l’impression que l’API d’Openweather semble être passée en freemium et j’avoue que ça m’ennuie un peu de sortir la CB juste pour avoir une info d’éphéméride … Connaitriez-vous un autre site ou bien un moyen plus simple afin d’avoir une heure automatisée de coucher/lever du soleil qui pourrait fonctionner avec le module météo embarqué ?

Une fois le module météo opérationnel est-ce que cette condition supplémentaire au sein du Rule Engine pourra être directement utilisée ou bien faut-il passer par un comparateur supplémentaire comme vu sur un topic comparant l’heure interne de l’appareil avec l’heure du Sunset ou Sunrise ?

J’essaye de trouver un moyen relativement simple pour automatiser le fait que les lampes ne s’allument pas en journée (sans passer par un capteur externe type lumandar) et je sens que cette fonctionnalité peut vite devenir complexe.

Dans tous les cas je vous remercie encore pour l’aide et la réactivité de ce forum !

Bonjour Redisdead,

peut-être que ce wiki vous aidera.

Bonne journée

Bonjour,

le module comporte une IO « Day/Night » directement exploitable avec le moteur de scénario.

il y a également la possibilité d’utiliser une condition basée sur une plage horaire associée à la lumière du jour grâce à un X-THL extérieur pour la saisonnalité.
Bonne journée