Connectez facilement les scripts Python aux projets PLCnext Engineer à l'aide de gRPC Reflection
Ce post vient en complément de cet autre post de 2025.
Les fichiers et bibliothèques peuvent être trouvés dans le même référentiel github que celui de l'ancien message.
L'approche fonctionne à la fois pour l'AXC F 2152 et l'AXC F 3152. La différence, encore une fois, réside dans la manière d'installer les bibliothèques requises.
IMPORTANT : L'approche a été testée et fonctionne pour FW 2025.X
Pour l'AXC F 2152 :
Les bibliothèques grpcio et grpcio-reflection doivent être compilées de manière croisée hors périphérique et installées manuellement. Ces bibliothèques (déjà compilées pour Python 3.12) sont disponibles dans le dépôt github.
Avis : Contrairement à l'ancien article, l'utilisation de la réflexion permet de sauter complètement l'utilisation et la compilation des fichiers protobuf. Les instructions suivantes vous permettent de créer un conteneur avec Python 3.12 où vous pouvez exécuter les scripts qui utilisent gRPC.
- Créez un dossier dans /opt/plcnext à utiliser pour la communication gRPC. Cet exemple attribuera le nom « grpc2152 » à ce dossier. Dans grpc2152, créez la structure de dossiers suivante :
grpc2152/
├──── whl_files312/
│ └─── (content of the whl_files312 folder from the given github repo)
│
└── gRPC_with_Reflection_26_0.py
- Connectez-vous à votre automate via une session SSH, connectez-vous en tant qu'utilisateur root (su) et obtenez la version allégée de python 3.12 :(à ce stade, une connexion Internet est nécessaire pour obtenir l'image python)
$ podman pull docker.io/library/python:3.12.13-slim
- Exécutez le conteneur et attachez-le (liant le dossier grpc2152 en tant que volume et un deuxième volume (run) nécessaire à la connexion au socket grpc) :
$ podman run -it -v /opt/plcnext/grpc2152/:/grpc2152 -v /run/:/run --restart=always --name grpctester python:3.12.13-slim /bin/bash
- Une fois connecté à la console du conteneur, accédez au dossier whl_files312 et installez les bibliothèques grpcio nécessaires.
$ cd /grpc2152/whl_files312/
$ pip install *.whl
-
Téléchargez et démarrez le projet PLCnext Engineer "TestingGRPC.pcwex" depuis le référentiel github.
-
Testez la fonctionnalité grpc depuis la console du conteneur en exécutant le script "gRPC_with_Reflection_26_0.py". En mode débogage, le contenu des variables doit être renseigné avec les valeurs de texte du script et également affiché sur la console après avoir été lu à partir du projet PLCnext Engineer.
Pour l'AXC F 3152.
Suivez la même procédure donnée pour le 2152 au lieu d'utiliser les bibliothèques du référentiel, installez les bibliothèques directement depuis pypi.org
$ pip install grpcio==1.76.0
$ pip install grpcio-reflection==1.76.0
Remarque :
Le Makers Blog présente des applications et des témoignages d'utilisateurs de membres de la communauté qui ne sont ni testés ni examinés par Phoenix Contact. Utilisez-les à vos propres risques.
Technologie industrielle
- PCB sans halogène
- 10 blogs et podcasts de fabrication à suivre
- Comment un bon entretien affecte la qualité de la découpe au laser
- La différence entre un générateur CA et CC
- Relais à deux directions - Fonctionnement, schéma de circuit et utilisation
- 7 métriques pour aider votre équipe de direction à prendre de meilleures décisions
- Le centre de ressources industrielles de Delaware Valley déménage son siège social au Navy Yard, élargissant ainsi sa présence régionale
- Optimisation des contrôleurs de domaine pour un paysage omnicanal en évolution
- Coût d'expédition des matières recyclables :comment les métaux contribuent à garantir le retour sur investissement