PyTool Modbus est un excellent outil pour le développement, le débogage et la surveillance Modbus.
Il dispose d'une capacité de script Python qui vous offre la plus grande flexibilité.
Pourquoi la capacité de script est-elle souhaitable pour l'outil Modbus ?
Les ingénieurs électriciens trouvent pratique d'utiliser un appareil portable comme un téléphone ou une tablette Android pour déboguer ou surveiller la communication Modbus sur le terrain, en usine ou en laboratoire.
Mais presque tous les systèmes de communication Modbus ont leur propre format de données.
Rechercher dans une mer de données hexadécimales comme "02a5b4ca....ff000803" et essayer de comprendre ce qui se passe n'est pas du tout agréable.
C'est là que PyTool Modbus vient en aide.
Avec la possibilité d'exécuter un script Python personnalisé, PyTool Modbus peut lire et analyser toutes les données reçues, les afficher comme vous le souhaitez et même agir en conséquence lorsque cela est nécessaire.
Il existe des exemples de script pour un démarrage rapide. Il suffit de copier et coller l'un d'eux pour les essayer.
Il existe également une interface de contrôle Modbus pratique pour une utilisation générale.
Il prend en charge les pilotes série USB de flux principal, notamment :
pilote FTDI
Pilote CDC ACM
Pilote CP210x
Pilote CH34x
pilote PL2303
Guide général des scripts
==================
* La version Python utilisée dans cette application est 3.8.
* Cette application n'est pas conçue comme un éditeur de script bien que le script puisse être modifié dans le champ de script.
Le meilleur moyen est d'utiliser votre éditeur de script préféré, puis de copier et coller le script.
* Utilisez toujours 4 espaces pour l'indentation afin d'éviter des erreurs étranges.
* La plupart des packages de la bibliothèque Python standard sont disponibles pour l'importation.
* Si la boucle while est nécessaire, utilisez toujours `app.running_script` comme condition afin d'arrêter le script correctement.
* Utilisez `app.version` pour obtenir la chaîne de version de l'application.
* Utilisez `app.get_output()` pour obtenir le champ de sortie du script sous forme de chaîne.
* Utilisez `app.set_output(object)` pour afficher `object` dans le champ de sortie du script sous forme de chaîne.
* Utilisez `app.print_text(object)` comme raccourci pour `app.set_output(app.get_output() + str(object))` pour ajouter du texte au champ de sortie du script.
* Utilisez `app.clear_text()` comme raccourci pour `app.set_output("")` pour effacer le champ de sortie du script.
* Utilisez `app.fc01_read_coils(mbid, addr, num)` pour envoyer la demande de code de fonction 01.
mbid (int) : ID Modbus
addr (int): Adresse de données
num (int) : nombre de données
return (list of int): Liste des données demandées
* Utilisez `app.fc02_read_discrete_inputs(mbid, addr, num)` pour envoyer la demande de code de fonction 02.
mbid (int) : ID Modbus
addr (int): Adresse de données
num (int) : nombre de données
return (list of int): Liste des données demandées
* Utilisez `app.fc03_read_holding_registers(mbid, addr, num)` pour envoyer la demande de code de fonction 03.
mbid (int) : ID Modbus
addr (int): Adresse de données
num (int) : nombre de données
return (list of int): Liste des données demandées
* Utilisez `app.fc04_read_input_registers(mbid, addr, num)` pour envoyer la demande de code de fonction 04.
mbid (int) : ID Modbus
addr (int): Adresse de données
num (int) : nombre de données
return (list of int): Liste des données demandées
* Utilisez `app.fc05_write_single_coil(mbid, addr, val)` pour envoyer la demande de code de fonction 05.
mbid (int) : ID Modbus
addr (int): Adresse de données
val (int): Valeur de données
return (int): Nombre de données (toujours 1)
* Utilisez `app.fc06_write_single_register(mbid, addr, val)` pour envoyer la demande de code de fonction 06.
mbid (int) : ID Modbus
addr (int): Adresse de données
val (int): Valeur de données
return (int): Nombre de données (toujours 1)
* Utilisez `app.fc15_write_multiple_coils(mbid, addr, vals)` pour envoyer la demande de code de fonction 15.
mbid (int) : ID Modbus
addr (int): Adresse de données
vals (liste d'entiers) : liste de valeurs de données
return (int): nombre de données
* Utilisez `app.fc16_write_multiple_registers(mbid, addr, vals)` pour envoyer la demande de code de fonction 16.
mbid (int) : ID Modbus
addr (int): Adresse de données
vals (liste d'entiers) : liste de valeurs de données
return (int): nombre de données
* Utilisez `app.msg_out` et `app.msg_in` pour vérifier les messages de demande et de réponse.
* Utilisez `app.log_file(text)` pour enregistrer un fichier journal dans le stockage.
Le fichier journal se trouve ici [Répertoire de stockage]/PyToolModbus/log_[UTC Timestamp].txt.
text (str): Contenu du texte
return (str) : chemin complet du fichier
Date de mise à jour
4 juil. 2021