Captures d’écran Extraites du README de xtimmy86x/ha-s7plc.
À propos
Siemens S7 est une intégration qui connecte Home Assistant directement aux PLCs Siemens S7 et aux contrôleurs Logo! via le réseau local. Elle communique avec le contrôleur par le protocole S7 grâce à la bibliothèque pys7, sans MQTT, REST ni intergiciel entre les deux. Les adresses des PLCs peuvent être associées à des lumières, des interrupteurs, des volets, des boutons, à la climatisation, à des nombres, des sélecteurs, des textes, des capteurs et des capteurs binaires, et l'état de n'importe quelle entité Home Assistant peut être envoyé vers des adresses de PLC. Une connexion utilise soit l'adressage rack et slot, soit l'adressage TSAP, avec un intervalle d'analyse, des délais d'expiration et des réglages de nouvelle tentative ajustables. Un panneau latéral liste chaque entité de PLC avec des éditeurs visuel et YAML, et une carte de planification modifie les heures d'allumage et d'extinction. Des capteurs de diagnostic optionnels indiquent l'état de la connexion et des statistiques de communication, et la configuration se fait dans l'interface.
Résumé automatique du README et du code de xtimmy86x/ha-s7plc, traduit automatiquement. Une erreur, ou tu maintiens ce projet et tu veux ton propre texte ici ? Prendre contact
Prise en charge
Fonctionne en local Communique avec tes appareils sur ton propre réseau. Aucun cloud de fournisseur entre les deux.
Depuis la Marketplace S’installe depuis la Marketplace, anciennement HACS.
Maintenance active Son auteur a publié une version ou poussé une modification au cours des six derniers mois.
Fournit
- Lumières
- Climatisation
- Volets
- Interrupteurs
- Capteurs
Mise en place
Installe-la depuis la Marketplace et redémarre Home Assistant, puis ajoute-la dans Paramètres > Appareils et services.
Choisir le type de connexion
- Type de connexion
- Famille d'automates
Se connecter à l'automate S7 (Rack/Slot)
- NomUn nom convivial pour l'automate (utilisé dans les noms d'entités).
- HôteAdresse IP ou nom d'hôte de l'automate.
- PortPort ISO-on-TCP, généralement 102.
- RackNuméro du rack de la CPU (généralement 0).
- SlotNuméro du slot de la CPU (par exemple 1 pour S7-1200/1500).
- Type de connexion
- Intervalle d'interrogation (s)Fréquence d'interrogation de l'automate, en secondes. Utilise des valeurs décimales pour une précision à la milliseconde.
- Délai d'attente de l'opération (s)Durée maximale d'un cycle de lecture/écriture avant une nouvelle tentative.
- Nombre de tentativesNombre de nouvelles tentatives pour une opération échouée sur l'automate avant d'abandonner.
- Début du délai entre tentatives (s)Délai avant la première nouvelle tentative.
- Délai maximal entre tentatives (s)Délai maximal entre les nouvelles tentatives.
- Optimiser les lectures groupéesActive les lectures groupées optimisées pour améliorer les performances. Si tu rencontres des erreurs de lecture, désactive cette option.
- Activer le regroupement des écrituresRegroupe automatiquement les écritures. Quand plusieurs entités se mettent à jour en même temps, les écritures sont combinées en une seule requête vers l'automate (fenêtre de 50ms). Améliore les performances pour les scènes et les opérations en masse.
- Activer les métriques de performanceActive les métriques de performance. Collecte et rapporte des données de performance pour la surveillance et l'optimisation.
- Contrôle manuel de la connexionCrée un interrupteur qui peut suspendre la connexion à l'automate et les tentatives de reconnexion.
Se connecter à l'automate S7 (TSAP)
- NomUn nom convivial pour l'automate (utilisé dans les noms d'entités).
- HôteAdresse IP ou nom d'hôte de l'automate.
- PortPort ISO-on-TCP, généralement 102.
- TSAP localAdresse TSAP locale (par exemple 01.00 ou 03.00).
- TSAP distantAdresse TSAP distante (par exemple 01.01 ou 03.01).
- Type de connexion
- Intervalle d'interrogation (s)Fréquence d'interrogation de l'automate, en secondes. Utilise des valeurs décimales pour une précision à la milliseconde.
- Délai d'attente de l'opération (s)Durée maximale d'un cycle de lecture/écriture avant une nouvelle tentative.
- Nombre de tentativesNombre de nouvelles tentatives pour une opération échouée sur l'automate avant d'abandonner.
- Début du délai entre tentatives (s)Délai avant la première nouvelle tentative.
- Délai maximal entre tentatives (s)Délai maximal entre les nouvelles tentatives.
- Optimiser les lectures groupéesActive les lectures groupées optimisées pour améliorer les performances. Si tu rencontres des erreurs de lecture, désactive cette option.
- Activer le regroupement des écrituresRegroupe automatiquement les écritures. Quand plusieurs entités se mettent à jour en même temps, les écritures sont combinées en une seule requête vers l'automate (fenêtre de 50ms). Améliore les performances pour les scènes et les opérations en masse.
- Activer les métriques de performanceActive les métriques de performance. Collecte et rapporte des données de performance pour la surveillance et l'optimisation.
- Contrôle manuel de la connexionCrée un interrupteur qui peut suspendre la connexion à l'automate et les tentatives de reconnexion.
Après la mise en place
- NomUn nom convivial pour l'automate (utilisé dans les noms d'entités).
- HôteAdresse IP ou nom d'hôte de l'automate.
- PortPort ISO-on-TCP, généralement 102.
- RackNuméro du rack de la CPU (généralement 0).
- SlotNuméro du slot de la CPU (par exemple 1 pour S7-1200/1500).
- Type de connexionType de connexion S7 (PG pour la programmation, OP pour le pupitre opérateur, S7 Basic pour la connexion de base).
- Intervalle d'interrogation (s)Fréquence d'interrogation de l'automate, en secondes. Utilise des valeurs décimales pour une précision à la milliseconde.
- Délai d'attente de l'opération (s)Durée maximale d'un seul cycle de lecture/écriture avant une nouvelle tentative.
- Nombre de nouvelles tentativesNombre de fois où une opération PLC échouée est retentée avant d'abandonner.
- Délai initial entre les tentatives (s)Délai avant la première nouvelle tentative.
- Délai maximal entre les tentatives (s)Délai maximal entre les nouvelles tentatives.
- Optimiser les lectures par lotActive les lectures par lot optimisées pour améliorer les performances. Si tu rencontres des erreurs de lecture, désactive cette option.
- Activer le regroupement des écrituresActive le regroupement automatique des écritures. Quand plusieurs entités sont mises à jour en même temps, les écritures sont regroupées en une seule requête PLC (fenêtre de 50ms). Cela améliore les performances pour les scènes et les opérations en masse.
- Activer les métriques de performanceActive les métriques de performance. Collecte et signale des données de performance pour la surveillance et l'optimisation.
- Famille de PLC
Textes issus du code de xtimmy86x/ha-s7plc. Les textes que le dépôt ne fournit pas en français ont été traduits automatiquement.
Entités
- Capteurs binairesConnexion
- CapteursDurée de connexion, Nombre de connexions, Nombre de déconnexions, Total des opérations, Nombre de lectures, Nombre d'écritures, Total des erreurs, Taux de réussite, Taux d'erreur, Durée moyenne de lecture, Durée moyenne d'écriture, Opérations par minute et 2 autres
- InterrupteursActiver la connexion
Dépannage
- DiagnosticsTélécharge un fichier de diagnostics à joindre à un rapport de bug.
Extrait du README
Home Assistant integration for Siemens S7 PLCs and Logo! controllers Direct + lightweight custom component using pys7. No MQTT • No REST • No middleware
- ⚡ Direct PLC communication over S7 protocol via pys7
- 🧩 Multiple entity types: light, dimmer light, switch, cover, button, binary_sensor, sensor, number, select, text, climate, and Entity Sync
- 🔌 Dual connection modes: Rack/Slot or TSAP addressing
- 🧮 Value multipliers: Scale raw PLC values before Home Assistant sees them
- 🪶 Lightweight: Minimal overhead, no broker/services required
- 🛠️ Full UI configuration: Set up and manage entirely from Home Assistant's UI
- 🖥️ Native side panel: Manage every PLC entity from the Home Assistant sidebar with visual and YAML editors, live states, and validation
- 🕒 Schedule dashboard card: Edit BCD WORD or HHMM on/off times with a visual card editor, automatically loaded with the integration (guide)
- 🔍 Optional auto-discovery: Pre-populates PLCs found on your local network
- 📄 S7 STRING support for text sensors
- 🔄 State synchronization: Bidirectional sync for switches and lights with physical controls
- 📤 Entity Sync: Push any Home Assistant entity state to PLC addresses in real-time
S’affiche dans Vulpo :
carte Lumière, carte Bascule rapide, carte Volet, carte Climat, Apple Watch, centre de contrôle, Activité en direct de climatisation.Informations
- Installations
- 241 partagent leurs statistiques
- Étoiles GitHub
- 44
- Connexion
- Fonctionne en local
- Maintenance
- Mise à jour au cours des 6 derniers mois
- Version
- 8.0.0,
- Catégorie
- Hubs et protocoles, Gestion technique du bâtiment
- Type
- Intégration de la Marketplace
- Marque
- Siemens
- Prérequis
- Nécessite la Marketplace (HACS sur Home Assistant 2026.10 et les versions antérieures)
- Domaine
s7plc- Problèmes
- Signaler un problème














