protocole Modbus

L'intégration des autres protocoles dans Domoticz
papoo
Messages : 1370
Enregistré le : 10 janv. 2016, 11:29
Localisation : Limoges (87)
Contact :

Re: protocole Modbus

Message par papoo » 04 mars 2018, 19:10

je suppose que ton script ne contient pas que cela?
poste nous ton script complet, histoire que l'on puisse t'aider
domoticz beta/RaspBerry PI3 stretch
https://pon.fr github

Disable adblock

This site is supported by ads and donations.
If you see this text you are blocking our ads.
Please consider a Donation to support the site.


bonebuster
Messages : 19
Enregistré le : 12 nov. 2017, 08:54

Re: protocole Modbus

Message par bonebuster » 04 mars 2018, 20:22

voici mon script

Code : Tout sélectionner

#!/usr/bin/python
# -*- coding: utf-8 -*-

# cde_modbus.py arg:adresse arg:valeur
# adresse = adresse modbus 
# valeur = 0 forcé le coil à 0 / 1 forcé le coil à 1 / 2 inversé le coil apres lecture de l'état

import sys
from pymodbus.client.sync import ModbusTcpClient as ModbusClient

#ouverture de la communication Modbus
#l'adresse de l'automate Serveur Modbus TCP 
client = ModbusClient('192.168.1.251')

#si le nombre d'argument est supérieur à 2 prise en compte de la commande via Modbus TCP
if len(sys.argv) > 2:
	# argument 1 -> l'adresse du coil sur le serveur
	adresse = int(sys.argv[1])
	# argument 2 -> Etat du coil souhaité
	valeur = int(sys.argv[2])
	
	#en mode bouton enOcean
	if (valeur == 2):
		#lecture de l'état avant inversion de la commande
		rr = client.read_coils(adresse, 1)
		# inversion en fonction de l'état	
		if (rr.bits[0] == 1):
			rq = client.write_coil(adresse, 0)
		else:
			rq = client.write_coil(adresse, 1)
			
	#en mode bouton Domoticz , ecriture de l'état souhaité
	else:
		rq = client.write_coil(adresse,valeur)

#fermeture de la connexion Modbus TCP
client.close()
chaque appel genère la même erreur

papoo
Messages : 1370
Enregistré le : 10 janv. 2016, 11:29
Localisation : Limoges (87)
Contact :

Re: protocole Modbus

Message par papoo » 04 mars 2018, 22:28

ajoute un "&" a la fin de ta ligne de commande afin de retourner à Domoticz sans attendre

Code : Tout sélectionner

script:///usr/bin/python /home/pi/domoticz/scripts/python/cde_modbus_v350.py 237 1 &
domoticz beta/RaspBerry PI3 stretch
https://pon.fr github

bonebuster
Messages : 19
Enregistré le : 12 nov. 2017, 08:54

Re: protocole Modbus

Message par bonebuster » 05 mars 2018, 07:11

@papoo

Merci beaucoup
effectivement plus d'erreur

c'est nickel

Disable adblock

This site is supported by ads and donations.
If you see this text you are blocking our ads.
Please consider a Donation to support the site.


Répondre