Installation de la librairie
Bien débuter, installation de python, des modules et de la librairie. Lien de la librairie : https://github.com/elc-construction-electronique/Librairie-Python-ALR32XX
Last updated
Was this helpful?
Bien débuter, installation de python, des modules et de la librairie. Lien de la librairie : https://github.com/elc-construction-electronique/Librairie-Python-ALR32XX
Last updated
Was this helpful?
Python est disponible gratuitement et téléchargeable sur ce site https://www.python.org/downloads/. Nous vous conseillons de télécharger la dernière version de Python disponible pour une meilleure compatibilité avec nos modules.
Suivez ensuite le programme d'installation classique.
Notre module ALR32XX utilise des librairies Python déjà existante, une partie est incluse dans l'installation de Python mais un module nécessite une installation supplémentaire, celui-ci se nomme PySerial. Vous trouverez un tutoriel pour l'installation de Python et du module via ce lien : https://www.framboise314.fr/installer-python-et-pyserial-sur-windows/.
Il est aussi possible de télécharger le module PySerial via l'utilitaire Pip par la commande "pip install pyserial". Suivez ce lien pour plus de détail : https://pythonhosted.org/pyserial/pyserial.html
Une fois Python et le module supplémentaire téléchargé, vous pouvez télécharger notre librairie ALR32XX via notre github : https://github.com/elc-construction-electronique/Librairie-Python-ALR32XX.
Dans ce dossier vous trouverez :
La librairie ALR32XX.py : programme principal permettant de communiquer avec les alimentations
Un dossier Exemples.
Un dossier Documentation avec les notices des alimentations et une liste des fonctions de la classe.
Il est aussi possible de télécharger notre librairie via l'utilitaire pip de PyPI par la commande : pip install ALR32XX.
Vous pouvez trouver des renseignements et la version de la librairie par la commande "pip show ALR32XX" et, si besoin, la mettre à jour par "pip install ALR32XX --upgrade".
Voici un exemple de cette manipulation :
Le fichier qui nous intéresse est ALR32XX.py, il contient les fonctions pour contrôler les alimentations.
La commande pour l'inclure dans votre script est
Si le script ne se trouve pas dans le même dossier que le module ALR32XX, utilisez la librairie sys comme présenté dans l'exemple 1.
Il est maintenant temps de brancher l'alimentation à l'ordinateur par une connexion USB, RS232 ou RS485. Le gestionnaire de périphérique affiche la connexion sur un des ports COM et l'alimentation affiche une connexion USB ou REM :
Pour initialiser la communication avec l'alimentation, créez une variable pour votre alimentation comme ci-dessous :
Le programme va alors tenter une connexion automatique en envoyant un message à chaque port COM actif et si il trouve celui correspondant à l'alimentation il commencera une liaison série et vous indiquera le détail :
Si la tentative de connexion automatique échoue, il vous sera demandé de connecter l'alimentation manuellement par la fonction Choix_port(). Cette fonction va lister vos ports actifs et vous demandera d'entrer le numéro de celui qu'il faut connecter :
Une fois la connexion réussie, vous pouvez utiliser les fonctions de la librairie pour contrôler l'alimentation. Le développement du module ALR32XX étant sous forme de classe, la syntaxe d'utilisation est sous la forme variable.fonction(paramètre), par exemple pour mesurer la tension de la voie 1 :
Voici la liste des fonctions disponibles via la librairie ALR32XX avec une courte explication.
List_ports() : affiche les ports COM actifs
Choix_port() : procédure pour connecter l'alimentation manuellement. Affichage des ports actifs et sélection du port voulu.
Deconnexion() : stopper la communication série avec l'alimentation.
IDN() : lecture de l'identité de l'alimentation, retourne le nom de l'alimentation et sa version.
send_command(commande) : fonction basique pour envoyer n'importe quel message à l'alimentation. La fonction retourne la réponse de l'alimentation.
Ecrire_tension(valeur=0, voie=1) : écrire une consigne en tension sur la voie sélectionnée entre 1 et 3. La valeur en Volt (V) évoluant suivant les paramètres de l'alimentation.
Ecrire_courant(valeur=0, voie=1) : écrire une consigne en courant sur la voie sélectionnée entre 1 et 2. La valeur en Ampères (A) évoluant suivant les paramètres de l'alimentation.
Mesure_tension(voie=1) : mesurer la tension sur la voie sélectionnée entre 1 et 2 (pour les modèles à plusieurs voies).
Mesure_courant (voie=1) : mesurer le courant sur la voie sélectionnée entre 1 et 3 (pour les modèles à plusieurs voies).
Consigne_tension (voie=1) : lire la consigne en tension sur la voie sélectionnée entre 1 et 3 (pour les modèles à plusieurs voies).
Consigne_courant (voie=1) : lire la consigne en courant sur la voie sélectionnée entre 1 et 2 (pour les modèles à plusieurs voies).
OUT(mode=’ ‘, voie=1) : Connecter ou non les bornes de sorties, mode=ON ou OFF (ou 0 ou 1) et voie=1 à 3.
MODE(mode=’NORMAL‘) : modification du couplage de sortie entre NORMAL, SERIE, PARALLELE et TRACKING.
TRACK(mode=’ISOLE’) : active le mode de tracking entre ISOLE ou COUPLE.
OVP(valeur=0, voie=1) : écrire une valeur d'OCP (Over Voltage Protection) sur la voie sélectionnée entre 1 et 2.
OCP(valeur=0, voie=1) : écrire une valeur d'OCP (Over Current Protection) sur la voie sélectionnée entre 1 et 2.
OVP_OCP(paramètre='OVP', voie=1) : lire les valeurs d'OCP ou d'OVP suivant la voie sélectionnée entre 1 et 2.
Read_state_ALR(paramètre=’OUT’) : lecture du paramètre sélectionné parmis OUT (état de la sortie), REM (mode local ou remote), TRACK (mode tracking isolé ou couplé), MODE (mode série ou parallèle).
Remote(mode=’REMOTE’) : modification du mode de communication entre LOCAL et REMOTE.
STO(case_memoire) : enregistrer la configuration actuelle dans une case mémoire entre 1 et 15.
RCL(case_memoire) : rappeler la configuration actuelle d'une case mémoire entre 1 et 15.
Cette liste de fonctions est détaillée dans le dossier "Documentation" de la librairie.
Notez que ces fonctions sont données pour toute la gamme d'alimentation programmable. Toutes ses alimentations n'ayant pas les mêmes caractéristiques, certains paramètres peuvent être incompatibles.
ex : demander une tension CH3 sur une ALR3203 ne fonctionnera pas car celle-ci ne possède qu'une voie.