Python API

Pythonest un langage de programmation de haut niveau largement utilisé pour la programmation. Python est un langage de programmation qui vous permet de travailler plus rapidement et d’intégrer plus efficacement vos systèmes. La syntaxe de Python permet aux programmeurs d’exprimer des concepts en moins de lignes de code par rapport à d’autres langages, ce qui le rend convivial et facile à apprendre.

La section précédenteexplique les avantages de l’utilisation de l’API RoboDK avec un langage de programmation largement utilisé pour la programmation de robots tels que Python.

Python est installé automatiquement et intégré avec RoboDK par défaut. Sélectionner Outils➔Options➔Autrespour changer les paramètres par défauts. (Localisation de Python et Python Editor).

RoboDK API - Image 1

L’API Robodk pour Python est divisée en deux modules :

Le module robolink (robolink.py) : Le module robolink est l’interface entre Robodk et Python. Tout objet de l’arborescence de la station Robodk peut être récupéré à l’aide d’un objet Robolink et est représenté par l’objet Item. Il est possible d’effectuer des opérations différentes sur cet élément selon la classe de Robolink.Item

Le module robodk (robodk.py) : Le module robodk est une boîte à outils robotique pour Python qui permet d’effectuer des transformations de pose et d’obtenir des angles d’Euler pour différentes marques de robots. Tous les post-processeurs dépendent de ce module robodk.

Les modules Python sont situés dans le dossier C:/Robodk/Python/ et ils sont copiés automatiquement dans le chemin du dossier Python lorsque Robodk est installé ou lorsque les paramètres Python par défaut sont sélectionnés (voir l’image précédente).

Les sous-sections suivantes montrent comment créer un programme simple pour la simulation, la programmation hors ligne et la programmation en ligne. D’autres exemples sont disponibles sur la page de l’API Python pour Robodk. De plus, la bibliothèque Robodk contient des exemples de macros Python dans le dossier C:/Robodk/Library/Macros/.

Simulation Python

Suivre ces étapes pour démarrer un projet exemple en utilisant un robot UR et simuler un mouvement avec le robot.

1.Sélectionner FichierRoboDK API - Image 2 Ouvrir

2.Ouvrir le robot UR10

3.Sélectionner Fichier➔RoboDK API - Image 3 Ouvrir

4.Ouvrir Paint_gun.tool

5.Ouvrir l’exemple de programme Python SampleOfflineProgramming.pydepuis C:/RoboDK/Library/Macros/

6.Double cliquer sur RoboDK API - Image 5SampleOfflineProgramming pour démarrer la simulation. Le robot doit dessiner un hexagone autour de la localisation actuelle et la trajectoire de l’outil TCP sera dessiné en jaune. (Clic droit sur le programme et choisir RoboDK API - Image 6Run Python Script)

7.Faire un clic droit sur RoboDK API - Image 7 SampleOfflineProgramming et sélectionner Modifier programme Python. Le programme doit apparaitre dans une fenêtre tel que montre l’image suivante.

La macro Sampleofflineprogramming dessinera un polygone de côté n_sides et de rayon R à l’emplacement actuel du robot, par rapport au repère du robot. Si vous le souhaitez, déplacer le robot vers un emplacement différent en changeant les dimensions du polygone et relancer le programme.

Cet exemple est similaire au programme montré dans la section de Programmation hors-lignesur le site internet (avec vidéo).

RoboDK API - Image 8

Python OLP

Les programmes Python peuvent être générés hors ligne en utilisant le même code Python utilisé pour simuler le robot (comme indiqué dans la section précédente de Python Simulation). La programmation hors ligne permet de générer des programmes de robot qui peuvent être exécutés sur un contrôleur de robot spécifique :

1.Faire un clic droit sur un programme RoboDK API - Image 9Python

2.Sélectionner Générer programme robot (F6)

Dans ce cas, le programme n’est pas simulé mais exécuté rapidement pour obtenir le résultat : un programme robot spécifique à un contrôleur robot.

harsRoboDK API - Image 10

RDK = Robolink()

RDK.setRunMode(RUNMODE_MAKE_ROBOTPROG)

Programmation En Ligne Python

Les programmes Python peuvent être exécutés directement sur le robot en utilisant le même code Python utilisé pour la simulation robot (comme indiqué dans la section Simulation Python). La programmation en ligne permet d’exécuter un programme générique sur un contrôleur de robot spécifique en utilisant un Pilote/Drivers Robot :

1.Faire un clic droit sur RoboDK API - Image 11 le programme Python

2.Sélectionner Run on robot

Le programme s’exécutera sur le robot pendant que le programme Python est en train de s’exécuté.

RoboDK API - Image 12

RDK = Robolink()

RDK.setRunMode(RUNMODE_RUN_ROBOT)


Dépannage de la configuration de Python dans RoboDK

Si vous avez installé RoboDK après avoir installé Python, il est possible que RoboDK ne parvienne pas à exécuter correctement les scripts Python ou à générer des programmes. Cette section présente les étapes à suivre pour configurer correctement l'interpréteur Python dans RoboDK et exécuter des scripts Python sans problème.

Vous devez suivre ces étapes si vous voyez un message d'erreur tel que : « Set the path to the Python interpreter in Tools-Options-Python » ou « Failed to run Python script. Set the path to the Python interpreter in: Tools-Options-Python tab ».

Suivez ces étapes pour configurer correctement le chemin de l'interpréteur Python si vous avez déjà Python installé :

3.Sélectionnez le menu Démarrer de Windows et tapez python.

4.Faites un clic droit sur la version de Python que vous souhaitez utiliser avec RoboDK et sélectionnez Ouvrir l'emplacement du fichier.

RoboDK API - Image 13

Répétez cette procédure dans le dossier qui s'ouvre :

5.Faites un clic droit sur Python 3.7 et sélectionnez Ouvrir l'emplacement du fichier.

RoboDK API - Image 14

6.Sélectionnez Copier sur le chemin dans la barre de titre du chemin.

RoboDK API - Image 15

Indiquez le chemin de Python dans les paramètres de RoboDK :

7.Ouvrez RoboDK.

8.Sélectionnez Outils-Options.

9.Sélectionnez l'onglet Python.

10.Collez le chemin dans le champ de l'interpréteur Python en ajoutant /python.exe, comme indiqué dans l'image suivante. L'utilisation de barres obliques ou de barres obliques inverses devrait fonctionner dans les deux cas.

RoboDK API - Image 16