Introduction
|
|
Le traducteur Daihen traduit les fonctionnalités de base de FASTSUITE Edition 2 en un programme de robot Daihen prêt à l'emploi.
|
|
|
|
|
Préparation de l'implantation
|
|
La configuration est effectuée dans le tableau de bord Cartographie des ports de l'atelier implantation et utilisée ultérieurement pour le téléchargement (et la connexion au Contrôleur Robot Virtuel). La configuration est nécessaire pour que le traducteur fonctionne correctement. Les contrôleurs de robot Daihen organisent les ressources dans ce qu'on appelle des mécanismes. Le bras du robot est généralement le mécanisme n° 1, un rail ou un portique est le mécanisme n° 2, le positionneur de pièce est le mécanisme n° 3, etc. La représentation du numéro de mécanisme OTC dans le logiciel est l'ID de groupe dans le tableau de bord de la cartographie des ports, qui divise les axes en différents groupes de mouvement. Chaque groupe de mouvement peut avoir jusqu'à 9 liaisons. Ces informations sont lues à partir de la disposition et traitées lors de la création du programme du robot. Il est donc important d'attribuer le groupe et l'index d'axe corrects aux axes du robot.
|
|
|
|
|
Traducteur Daihen
|
|
Le traducteur Daihen prend en charge :
Cartographie des repères outils.
Mouvement articulaire, linéaire et circulaire.
Type de cible cartésien et articulaire pour tous les mouvements.
Événements liés à la vitesse, à la précision et à l'accélération.
L'événement texte est utilisé pour ajouter une commande régulière ou un commentaire dans le programme du robot Daihen.
Régler le signal et attendre le signal (ports logiques).
Signaux booléens uniquement.
Définir les ports de ressources et attendre les ports de ressources.
Signaux booléens uniquement.
|
|
Il y a certaines restrictions :
Avec FASTSUITE Edition 2 version R2024.1, seul le traducteur (Python) est disponible. Pour créer un chargement, l'application Custom Definition doit être utilisée.
Implémentation via la personnalisation
Les mouvements de robots multiples (synchronisés) sont pris en charge par défaut.
|
|
|
Infrastructure
|
|
Le traducteur Daihen est dérivé de l'implémentation de base du traducteur.
|
|
|
|
Pour faciliter la création de programmes, le programme Daihen est divisé en plusieurs sections.
|
|
|
|
Ces sections sont organisées en tableaux de chaînes de caractères. Les tableaux de chaînes sont initialisés dans la fonction __init__().
|
|
|
|
Pour ajouter du contenu aux tableaux de sections, il est recommandé d'utiliser les fonctions existantes :
|
|
|
|
L'avantage est que des éléments tels que la numérotation des lignes et l'espacement des marges sont automatiquement conservés.
|
|
|
|
|
En-tête de sortie
|
|
Le traducteur doit parcourir l'ensemble du programme pour rassembler toutes les données nécessaires avant de construire l'en-tête. Cette étape est cruciale pour s'assurer que toutes les informations de l'en-tête sont compilées. Les méthodes invoquées sont CreateJobHeader() -> CreateOutputFile().
Au lieu d'utiliser la méthode OutputHeader() de base, le traducteur Daihen opte pour une approche différente car OutputHeader() est exécuté avant le processus de bouclage.
|
|
|
|
|
Gestion des mouvement
|
|
La fonction HandleMotion() gère le mouvement et les événements avant et après le mouvement.
Le mouvement ainsi que les valeurs cartésiennes et articulaires sont affichés sur la même ligne que les sections sources - aucune section de données n'est nécessaire :
|
|
|
|
|
|
Les commandes ou les signaux sont également traités.
|
|
|
Sortie de la source
|
|
Dans la section source, la séquence de points est définie en fonction du type de mouvement.
|
|
|
|
|
|
Les coordonnées des points correspondants du robot sont évaluées et converties dans un format approprié, à l'aide du type de cible de mouvement (cibles articulaires ou cartésiennes). Les valeurs d'axe de tous les autres mécanismes (rail, positionneur, etc.) sont toujours émises en tant que cibles articulaires.
|
|
|
Gestion des événements
|
|
Le traducteur de base appelle la méthode HandleEvent() pour les événements intégrés et personnalisés. Ensuite, la méthode OutputEvent() est invoquée pour traiter l'événement qui a été appelé.
|
|
|
|
|
|
Événement texte
|
|
Les deux événements texte ci-dessous produisent les commandes/commentaires indiqués dans la sortie.
|
|
|
|
|
|
Évenement temporisation
|
|
L'événement temporisation insère une commande TEMPORISATION pour arrêter le robot pendant un certain nombre de secondes.
|
|
|
|
|
|
Événement port logique
|
|
Les événements ports définissent un signal ou attendent un signal. Ils ne sont généralement pas connectés à un acteur, comme une pince.
|
|
|
|
|
|
Événement régler les ports ressource
|
|
Les événements régler les ports ressource définissent un signal connecté à un acteur, comme une pince. Après avoir sélectionné la ressource souhaitée dans E2, tous ses ports d'entrée sont affichés et peuvent être activés pour définir ou réinitialiser l'état des ports.
|
|
|
|
|
|
Événement attendre les ports ressource
|
|
Les événements attendre les ports ressource attendent qu'un signal connecté à un acteur change d'état. Après avoir sélectionné la ressource souhaitée dans le logiciel, tous ses ports de sortie sont affichés et peuvent être activés pour évaluer l'état du port.
|
|
|
|
|
|
|
Groupes de mouvement
|
|
Pour simplifier la sortie des coordonnées des points, les données de FASTSUITE Edition 2 sont transférées dans une structure de données séparée avec des groupes de mouvements et des liaisons. Cette structure de données correspond à la structure du fichier Daihen, ce qui facilite grandement la sortie. La définition des groupes de mouvement et des liaisons se trouve à la fin du traducteur Daihen.
|
|
|
|
|
Constantes et paramètres pour une personnalisation supplémentaire
|
|
Constantes
|
|
Sous la définition de la classe se trouve la définition de la constante.
|
|
|
|
Ils peuvent également être utilisés dans les dérivations en les faisant précéder de la commande self.
|
|
|
|
Index minimum et maximum des repères outil
|
|
Daihen lui-même ne prend en charge que les indices de repères outil dans une fourchette commune. Les repères base ne sont pas pris en charge par le contrôleur FD19 et ne sont donc pas édités dans le programme.
|
|
|
|
Vitesse, précision et accélération
|
|
Les profils de mouvement sont ajoutés à la définition du point, de sorte que les événements du profil de mouvement modifient les variables de la classe qui sont ensuite prises en compte dans la sortie du point.
|
|
|
|