Créer un retour fictif de positionnement d'un portail en contact sec

Mon problème

Bonjour,

J’ai un portail à double bâtant. J’y est installé un module wifi Tuya et le portail s’ouvre aussi avec une télécommande rf 868. Sur chaque porte du portail, j’ai installer 2 capteurs de porte: Un capteur pour identifier le positionnement fermé et un deuxième pour le positionnement ouvert. grâce à ces capteur, j’ai créé des états « Ouvert, Fermé et entreouvert ». Pour aller plus loin dans le positionnement de mes portes, je souhaite créer un positionnement fictif en pourcentage de mes portes (0% fermé, …, 100% ouvert).

J’ai calculé le temp d’ouverture et de fermeture des portes, elles mettent environs 17 secondes.

Fonctionnement du portail :
une activation : ouverture (si fermé)/ fermeture (si ouvert)
deuxième activation : arrêt
troisième activation : reprise à l’inverse de la 1ère activation.

J’espère avoir été relativement clair

A vous relire

Ma configuration


System Health

version core-2022.5.1
installation_type Home Assistant OS
dev false
hassio true
docker true
user root
virtualenv false
python_version 3.9.9
os_name Linux
os_version 5.10.103-v8
arch aarch64
timezone Europe/Paris
Home Assistant Community Store
GitHub API ok
GitHub Content ok
GitHub Web ok
GitHub API Calls Remaining 5000
Installed Version 1.24.5
Stage running
Available Repositories 1105
Downloaded Repositories 18
Home Assistant Cloud
logged_in true
subscription_expiration 14 mai 2022, 02:00
relayer_connected true
remote_enabled true
remote_connected true
alexa_enabled true
google_enabled false
remote_server eu-central-1-3.ui.nabu.casa
can_reach_cert_server ok
can_reach_cloud_auth ok
can_reach_cloud ok
Home Assistant Supervisor
host_os Home Assistant OS 7.6
update_channel stable
supervisor_version supervisor-2022.05.0
docker_version 20.10.9
disk_total 116.7 GB
disk_used 24.0 GB
healthy true
supported true
board rpi4-64
supervisor_api ok
version_api ok
installed_addons Samba share (9.6.1), deCONZ (6.13.0), File editor (5.3.3), Mosquitto broker (6.1.1), SSH & Web Terminal (10.1.3), Duck DNS (1.14.0), ESPHome (2022.3.1), eWeLink Smart Home (1.2.4), Node-RED (11.1.2), AppDaemon (0.8.2), room-assistant (2.20.0), Zigbee2mqtt (1.25.1-1), Studio Code Server (5.0.2), Check Home Assistant configuration (3.10.0)
Dashboards
dashboards 1
resources 4
views 6
mode storage
Sonoff
version 3.0.4 (8a202d5)
cloud_online 4 / 5
local_online 3 / 4

Salut,

Je suis pas sur de comprendre, tu as des capteurs qui donnent la position réelle (ouvert/piéton/fermé) et tu veux obtenir une position (calculé sur la base des 17s j’imagine) en % ?
Fictif étant moins bien que réel (surtout calculé sur le temps), quel serait l’usage ? A la limite 0%=fermé,50%=pieton,100%=ouvert et basta

Une petite question: quel genre de capteur as-tu installé pour les positions ouvert fermé ?

Salut Pulpy,

J’ai deux capteur Aqara sur chacune des portes. donc je sais exactement quand est ouvert et fermé chaque porte (ouvert pour piéton / fermé pour piéton (porte 1); ouvert pour les voitures / fermé pour les voitures (porte 1 et porte 2).

Oui je souhaite créer une position en pourcentage calculé sur la base du temps d’ouverture.

Je souhaite pouvoir relancé la fermeture des portes lors d’un arrêt intempestif (je ferme le portail via HA et ma femme le ferme via le bip; on ferme le portail et les enfants passe devant les capteurs; etc…).

J’aimerais pouvoir faire porte arrêtée entre 100% et %,50 j’ouvre la porte et la referme, entre 50% et 0% je relance la fermeture simple.

J’espère que c’est plus claire.

Pas vraiment en fait… A partir du moment ou tu as l’info véritable de la position, je vois pas très bien ce que le pourcentage apporte de plus :
If position == "50" c’est pareil que if position == "pieton" tout ce que tu décris là est déjà faisable
En plus comme 17s c’est forcement pas tout à fait exact, tu peux générer des erreurs sur ces 1/10 de s qui manquent
Et pour finir les positions intermédiaires (toutes sauf 0,50 et 100), ne vont pas servir beaucoup

Il suffit de connaitre la combinaison des capteurs pour « fermer », c’est la position n’est pas bonne, tu refermes. Et le portail gérera le reste tout seul

As tu regardé du côté de cette intégration ?

Justement non lors du passage d’une personne pendant la fermeture le portail s’ouvre automatiquement, et lors d’un arrêt involontaire du portail pendant sa fermeture, le portail s’arrête et si je relance la fermeture, il s’ouvre.

Actuellement, j’ai programmer sur Nod Red un flux en cas d’arrêt (portail entreouvert) au bout de 17s, une refermeture automatique en fonction de ces deux cas cité ci dessus.

Je pensais qu’en créant un positionnement fictif, je pourrais identifier l’arrêt plutôt et faire se refermer le portail plus rapidement que mon flux actuel (qui boucle toute les 17s).

Non, je vais aller voir.

Imaginons un cas : ton portail s’arrête involontairement à 70%
Tu peux venir de 100% → 70% ou bien de 50% → 70% … Tu n’a pas l’info du sens…

Dans ces 2 cas, tu fais 2 fermetures consécutives, la deuxième étant conditionnée au fait que le portail n’est pas déjà fermé.
Soit le portail se ferme du 1er coup et tu skip la deuxième. Soit il est ouvert et la deuxième fermeture va faire le boulot

Si grace au capteur de porte Aqara, je connait la position de départ donc je sais si je suis en ouverture ou fermeture.

Je suis plutôt sur 3 fermetures consécutive. une première fois la porte inverse sa marche, une deuxième fois re arrêt de la porte, une troisième fois la porte repart en fermeture. Sauf cas du passage ou la porte s’ouvre donc juste à relancer la fermeture.

J’ai mis une capture d’écran de mon flux actuel pour avoir une meilleur idée .

Bonjour,
Je viens de tester cette intégration mais cela ne fonctionne pas.
Lorsque je lance le cover en ouverture la porte s’ouvre complètement même si je lui demande une demi ouverture.
Voici mon code, ai-je fais une erreur quelque part ?

  - platform: cover_time_based_synced
    devices:
      portail_2_time_based:
        name: Portail_2
        travelling_time_up: 17
        travelling_time_down: 1
        close_switch_entity_id: switch.porte_pieton
        open_switch_entity_id: switch.porte_pieton
        send_stop_at_ends: yes #optional
        aliases: #optional
          - portail_2_time_based

Merci