#LyX 1.3 created this file. For more info see http://www.lyx.org/ \lyxformat 221 \textclass book \begin_preamble \usepackage[plainpages=false,pdfpagelabels,colorlinks=true,linkcolor=blue]{hyperref} \end_preamble \language frenchb \inputencoding default \fontscheme bookman \graphics default \float_placement !h \paperfontsize 10 \spacing single \papersize Custom \paperpackage a4 \use_geometry 1 \use_amsmath 0 \use_natbib 0 \use_numerical_citations 0 \paperorientation portrait \paperwidth 8.5in \paperheight 11in \leftmargin 1.2in \topmargin 1in \rightmargin 0.6in \bottommargin 0.6in \secnumdepth 5 \tocdepth 5 \paragraph_separation skip \defskip medskip \quotes_language english \quotes_times 2 \papercolumns 1 \papersides 2 \paperpagestyle default \layout Chapter Configuration, fichier ini \layout Section Fichiers utilisés pour la configuration \layout Standard EMC est entièrement configuré avec des fichiers textes classiques. Tous ces fichiers peuvent être lus et modifiés dans n'importe quel éditeur de texte disponible dans toute distribution Linux \begin_inset Foot collapsed true \layout Standard Ne confondez pas un éditeur de texte et un traitement de texte. Un éditeur de texte comme gedit ou kwrite produisent des fichiers uniquement en texte. Les lignes de textes sont séparées les unes des autres. Un traitement de texte comme Open Office produit des fichiers avec des paragraphes, des mises en formes des mots. Ils ajoutent des codes de contrôles, des polices de formes et de tailles variées etc. Un éditeur de texte n'a rien de tout cela. \end_inset . Soyez prudent lorsque vous modifierez ces fichiers, certaines erreurs pourraien t empêcher le démarrage d'EMC. Ces fichiers sont lus à chaque fois que le logiciel démarre. Certains d'entre eux sont lus de nombreuses fois pendant l'exécution d'CNC. \layout Standard Les fichiers de configuration inclus: \layout Description INI \begin_inset LatexCommand \index{INI} \end_inset Le fichier ini écrase les valeurs par défaut compilées dans le code d'EMC. Il contient également des sections qui sont lues directement par le HAL (Hardware Abstraction Layer, couche d'abstraction matérielle). \layout Description HAL \begin_inset LatexCommand \index{HAL} \end_inset Les fichiers hal installent les modules de process, ils créent les liens entre les signaux d'EMC et les broches spécifiques du matériel. \layout Description VAR \begin_inset LatexCommand \index{VAR} \end_inset Ce fichier contient une suite de numéros de variables. Ces variables contiennent les paramètres qui seront utilisés par l'interpréteur. Ces valeurs sont enregistrées d'une exécution à l'autre. \layout Description TBL \begin_inset LatexCommand \index{TBL} \end_inset Ce fichier contient les informations relatives aux outils. \layout Description NML \begin_inset LatexCommand \index{NML} \end_inset Ce fichier configure les canaux de communication utilisés par EMC. Il est normalement réglé pour lancer toutes les communications avec un seul ordinateur, peut être modifié pour communiquer entre plusieurs ordinateurs. \layout Description .emcrc \begin_inset LatexCommand \index{.emcrc} \end_inset Ce fichier enregistre des informations spécifiques à l'utilisateur, il a été créé pour enregistrer le nom du répertoire lorsque l'utilisateur choisit sa première configuration d'EMC. \begin_inset Foot collapsed false \layout Standard Habituellement, ce fichier est dans le répertoire home de l'utilisateur (ex: /home/user/ ) \end_inset \layout Standard Les éléments avec le repère \series bold \noun on (hal) \series default \noun default sont utilisés seulement pour les fichiers de HAL en exemples. C'est une bonne convention. D'autres éléments sont utilisés directement par EMC et doivent toujours avoir la section et le nom donné à l'item. \layout Section Organisation du fichier INI \layout Standard Un fichier INI typique suit une organisation simple; \layout Itemize commentaires. \layout Itemize sections, \layout Itemize variables. \layout Standard Chacun de ces éléments est séparé, sur une seule ligne. Chaque fin de ligne ou retour chariot crée un nouvel élément. \layout Subsection Commentaires \begin_inset LatexCommand \index{commentaires} \end_inset \layout Standard Une ligne de commentaires débute avec un ; ou un #. Si le logiciel qui analyse le fichier ini rencontre l'un ou l'autre de ces caractères, le reste de la ligne est ignorée. Les commentaires peuvent être utilisés pour décrire ce que font les éléments du fichier INI. \layout LyX-Code ; Ceci est le fichier de configuration de ma petite fraiseuse. \newline ; Je l'ai ajusté le 12 janvier 2006 \layout Standard Des commentaires peuvent également être utilisés pour choisir entre plusieurs valeurs d'une seule variable. \layout LyX-Code # DISPLAY = tkemc \begin_inset LatexCommand \index{tkemc} \end_inset \newline DISPLAY = axis \begin_inset LatexCommand \index{AXIS} \end_inset \newline # DISPLAY = mini \begin_inset LatexCommand \index{mini} \end_inset \newline # DISPLAY = keystick \begin_inset LatexCommand \index{keystick} \end_inset \layout Standard Dans cette liste, la variable DISPLAY \begin_inset LatexCommand \index{DISPLAY} \end_inset est positionnée sur axis puisque toutes les autres sont commentées. Si quelqu'un édite une liste comme celle-ci et par erreur, décommente deux lignes, c'est la première rencontrée qui sera utilisée. \layout Standard Notez que dans une ligne de variables, les caractères `` \family typewriter \series bold # \family default \series default \begin_inset Quotes erd \end_inset et `` \family typewriter \series bold ; \family default \series default \begin_inset Quotes erd \end_inset n'indiquent pas un commentaire. \layout LyX-Code INCORRECT = value # and a comment \layout Subsection Sections \layout Standard Les différentes parties d'un fichier .ini sont regroupées dans des sections. Une section commence par son nom en majuscules entre crochets [UNE_SECTION]. L'ordre des sections est sans importance. Les sections suivantes sont utilisées par emc: \layout Itemize [EMC] informations générales ( \begin_inset LatexCommand \ref{sub:Section-[EMC]} \end_inset ) \layout Itemize [DISPLAY] sélection du type d'interface graphique ( \begin_inset LatexCommand \ref{sub:Section-[DISPLAY]} \end_inset ) \layout Itemize [RS274NGC] ajustements utilisés par l'interpréteur de g-code \layout Itemize [EMCMOT] Réglages utilisés par le contrôleur de mouvements temps réel ( \begin_inset LatexCommand \ref{sub:Section-[EMCMOT]} \end_inset ) \layout Itemize [HAL] spécifications des fichiers .hal ( \begin_inset LatexCommand \ref{sub:Section-[HAL]} \end_inset ) \layout Itemize [TASK] Réglages utilisés par le contrôleur de tâche ( \begin_inset LatexCommand \ref{sub:Section-[TASK]} \end_inset ) \layout Itemize [TRAJ] Réglages additionnels utilisés par le contrôleur de mouvements temps réel ( \begin_inset LatexCommand \ref{sub:Section-[TRAJ]} \end_inset ) \layout Itemize [AXIS_0] ... [AXIS_n] Groupes de variables pour AXIS ( \begin_inset LatexCommand \ref{sub:Section-[AXIS]} \end_inset ) \layout Itemize [EMCIO] Réglages utilisés par le contrôleur d'entrées/sorties ( \begin_inset LatexCommand \ref{sub:Section-[EMCIO]} \end_inset ) \layout Subsection Variables \layout Standard Une ligne de variables est composée d'un nom de variable, du signe égal (=) et d'une valeur. \color none \color black Tout, du premier caractère non blanc qui suit le signe = jusqu'à la fin de la ligne, est passé comme valeur à la variable. Vous pouvez donc intercaler des espaces entre les symboles si besoin. Un nom de variable est souvent appelé un mot clé. \layout Standard \color black Les paragraphes suivants détaillent chaque section du fichier de configuration, en utilisant des exemples de variables dans les lignes de configuration. \layout Standard Certaines de ces variables sont utilisées par EMC. Elles doivent toujours utiliser le nom de section et le nom de variable dans leur appellation. D'autres variables ne sont utilisées que par HAL. Les noms des sections et les noms des variables indiquées sont celles qui sont utilisées dans les exemples de fichiers de configuration. \layout Section \begin_inset LatexCommand \label{sub:Détails fichier INI} \end_inset Définition des variables du fichier INI \layout Subsection \color black Section [EMC] \begin_inset LatexCommand \label{sub:Section-[EMC]} \end_inset \begin_inset LatexCommand \index{Sections du fichier INI} \end_inset \layout Description \color black VERSION\SpecialChar ~ =\SpecialChar ~ $Revision:\SpecialChar ~ 1.3\SpecialChar ~ $ Le numéro de version du fichier INI. La valeur indiquée ici semble étrange, car elle est automatiquement mise à jour lors de l'utilisation du système de contrôle de révision. C'est une bonne idée de changer ce numéro à chaque fois que vous modifiez votre fichier. Si vous voulez le modifier manuellement, il suffit de changer le numéro sans toucher au reste. \layout Description \color black MACHINE\SpecialChar ~ =\SpecialChar ~ ma\SpecialChar ~ machine \color none \color black C'est le nom du contrôleur, qui est imprimé dans le haut de la plupart des fenêtres. Vous pouvez insérer ce que vous voulez ici tant que ça reste sur une seule ligne. \layout Description \color black RS274NGC_STARTUP_CODE\SpecialChar ~ =\SpecialChar ~ G21\SpecialChar ~ G90 \color none \color black \begin_inset LatexCommand \index{RS274NGC STARTUP CODE} \end_inset Une chaine de codes NC qui sera utilisée pour initialiser l'interpréteur. Elle ne se substitue pas à la spécification des gcodes modaux du début de chaque fichier ngc. Les codes modaux des machines diffèrent, ils pourraient être modifiés par les gcodes interprétés plus tôt dans la session. \layout Subsection \color black Section [DISPLAY] \begin_inset LatexCommand \label{sub:Section-[DISPLAY]} \end_inset \begin_inset LatexCommand \index{Fichier INI-DISPLAY} \end_inset \layout Standard Les différentes interfaces du programme utilisent différentes options. Toutes les options ne sont pas supportées par toutes les interfaces. \layout Standard \series bold \color black DISPLAY\SpecialChar ~ =\SpecialChar ~ tkemc \series default \color none \color black Le nom de l'interface utilisateur à utiliser. Les options disponibles sont les suivantes: \layout Itemize axis \layout Itemize \color black keystick \layout Itemize mini \layout Itemize \color black tkemc \layout Itemize \color black xemc \layout Description POSITION_OFFSET\SpecialChar ~ =\SpecialChar ~ RELATIVE Le système de coordonnées (RELATIVE ou MACHINE) à utiliser au démarrage de l'interface utilisateur. Le système de coordonnées RELATIVE reflète le G92 et le décalage d'origine G5x actuellement actifs. \layout Description POSITION_FEEDBACK\SpecialChar ~ =\SpecialChar ~ ACTUAL Valeur de la position (COMMANDED ou ACTUAL) à afficher au démarrage de l'interface utilisateur. La position COMMANDED est la position exacte requise par emc. La position ACTUAL est la position retournée par l'électronique des moteurs. \layout Description MAX_FEED_OVERRIDE\SpecialChar ~ =\SpecialChar ~ 1.2 La correction de vitesse maximum que l'opérateur peut utiliser. 1.2 signifie 120% de la vitesse programmée. \layout Description MIN_SPINDLE_OVERRIDE\SpecialChar ~ =\SpecialChar ~ 0.5 Correction de vitesse minimum de broche que l'opérateur pourra utiliser. 0.5 signifie 50% de la vitesse de broche programmée. (utile si il est dangereux de démarrer un programme avec une vitesse de broche trop basse). \layout Description MAX_SPINDLE_OVERRIDE\SpecialChar ~ =\SpecialChar ~ 1.0 Correction de vitesse maximum de broche que l'opérateur pourra utiliser. 1.0 signifie 100% de la vitesse de broche programmée. \layout Description DEFAULT_LINEAR_VELOCITY\SpecialChar ~ =\SpecialChar ~ .25 Vitesse minimum par défaut pour les jogs linéaires, en unités machine par seconde. Seulement utilisé dans l'interface AXIS. \layout Description MAX_LINEAR_VELOCITY\SpecialChar ~ =\SpecialChar ~ 1.0 Vitesse maximum par défaut pour les jogs linéaires, en unités machine par seconde. Seulement utilisé dans l'interface AXIS. \layout Description DEFAULT_ANGULAR_VELOCITY\SpecialChar ~ =\SpecialChar ~ .25 Vitesse minimum par défaut pour les jogs angulaires, en unités machine par seconde. Seulement utilisé dans l'interface AXIS. \layout Description MAX_ANGULAR_VELOCITY\SpecialChar ~ =\SpecialChar ~ 1.0 Vitesse maximum par défaut pour les jogs angulaires, en unités machine par seconde. Seulement utilisé dans l'interface AXIS. \layout Description PROGRAM_PREFIX\SpecialChar ~ =\SpecialChar ~ ~/emc2/nc_files Répertoire par défaut des fichiers de g-codes et emplacement des M-codes définis par l'utilisateur. \layout Description INCREMENTS\SpecialChar ~ =\SpecialChar ~ 1\SpecialChar ~ mm,\SpecialChar ~ .5\SpecialChar ~ mm,\SpecialChar ~ \SpecialChar \ldots{} Définit les incréments disponibles pour le jog incremental. Voir la section \begin_inset LatexCommand \ref{sub:Section-[DISPLAY]} \end_inset pour plus d'informations. Seulement utilisé dans l'interface AXIS. \layout Description INTRO_GRAPHIC\SpecialChar ~ =\SpecialChar ~ emc2.gif L'image affichée sur l'écran d'accueil. \layout Description INTRO_TIME\SpecialChar ~ =\SpecialChar ~ 5 Durée d'affichage de l'écran d'accueil. \layout Description OPEN_FILE\SpecialChar ~ =\SpecialChar ~ /full/path/to/file.ngc Le fichier NC à utiliser au démarrage d'AXIS. \layout Subsection \color black Section [EMCMOT] \begin_inset LatexCommand \label{sub:Section-[EMCMOT]} \end_inset \begin_inset LatexCommand \index{Fichier INI-EMCMOT} \end_inset \layout Description BASE_PERIOD\SpecialChar ~ =\SpecialChar ~ 50000 \series bold \noun on (hal) \series default \noun default \begin_inset LatexCommand \index{BASE PERIOD} \end_inset \begin_inset Quotes eld \end_inset Période de base \begin_inset Quotes erd \end_inset des tâches, exprimée en nanosecondes. C'est la plus rapide des horloges de la machine. \newline Avec un système à servomoteurs, il n'y a généralement pas de raison pour que \series bold BASE_PERIOD \series default soit plus petite que \series bold SERVO_PERIOD \series default . \newline Sur une machine de type \begin_inset Quotes eld \end_inset step&direction \begin_inset Quotes erd \end_inset avec génération logicielle des impulsions de pas, c'est \series bold BASE_PERIOD \series default qui détermine le nombre maximum de pas par seconde. Si de longues impulsions de pas ou de longs espaces entre les impulsions ne sont pas requis par l'électronique, la fréquence maximum absolue est de un pas par \series bold BASE_PERIOD \series default . Ainsi, la \series bold BASE_PERIOD \series default utilisée ici donnera une fréquence de pas maximum absolue de 20000 pas par seconde. 50000ns est une valeur assez large. La plus petite valeur utilisable est liée au résultat du test de latence ( \begin_inset LatexCommand \ref{sec:Test de latence} \end_inset ), à la longueur des impulsions de pas nécessaire et à la vitesse du \begin_inset Formula $µ$ \end_inset P. \newline Choisir une BASE_PERIOD trop basse peut amener à des messages \begin_inset Quotes eld \end_inset Unexpected realtime delay \begin_inset Quotes erd \end_inset , des bloquages ou des reboots spontanés. \layout Description SERVO_PERIOD\SpecialChar ~ =\SpecialChar ~ 1000000 \series bold \noun on (hal) \series default \noun default \begin_inset LatexCommand \index{SERVO PERIOD} \end_inset Période de la tâche \begin_inset Quotes eld \end_inset Servo \begin_inset Quotes erd \end_inset , exprimée également en nanosecondes. Cette valeur sera arrondie à un multiple entier de \series bold BASE_PERIOD \series default . Elle est utilisée aussi sur des systèmes basés sur des moteurs pas à pas \newline C'est la vitesse avec laquelle la nouvelle position des moteurs est traitée, les erreurs de suivi vérifiées, les valeurs des sorties PID sont rafraichies etc. \newline Sur la plupart des systèmes \series bold cette \series default valeur n'est pas à modifier. Il s'agit du taux de mise à jour du planificateur de mouvement de bas niveau. \layout Description TRAJ_PERIOD\SpecialChar ~ =\SpecialChar ~ 1000000 \series bold \noun on (hal) \series default \noun default \begin_inset LatexCommand \index{TRAJ PERIOD} \end_inset Période du planificateur de trajectoire, exprimée en nanosecondes. Cette valeur sera arrondie à un multiple entier de \series bold SERVO_PERIOD \series default . \newline Excepté pour les machines avec une cinématique particulière (ex: hexapodes) Il n'y a aucune raison de rendre cette valeur supérieure à \series bold SERVO_PERIOD \series default . \layout Subsection Section [TASK] \begin_inset LatexCommand \label{sub:Section-[TASK]} \end_inset \begin_inset LatexCommand \index{Fichier INI-TASK } \end_inset \layout Description CYCLE_TIME\SpecialChar ~ =\SpecialChar ~ 0.001 Période exprimée en secondes, à laquelle EMCTASK va tourner. Ce paramètre affecte l'intervalle de polling lors de l'attente de la fin d'un mouvement, lors de l'exécution d'une pause d'instruction et quand une commande provenant d'une interface utilisateur est acceptée. Il n'est généralement pas nécessaire de modifier cette valeur. \layout Subsection Section [HAL] \begin_inset LatexCommand \label{sub:Section-[HAL]} \end_inset \begin_inset LatexCommand \index{Fichier INI-HAL } \end_inset \layout Description HALFILE\SpecialChar ~ =\SpecialChar ~ example.hal Exécute le fichier 'example.hal' au démarrage. Si \series bold HALFILE \series default est spécifié plusieurs fois, les fichiers sont exécutés dans l'ordre de leur apparition dans le fichier ini. Presque toutes les configurations auront au moins un \series bold HALFILE \series default . Les systèmes à moteurs pas à pas ont généralement deux de ces fichiers, un qui spécifie la configuration générale des moteurs ( \family typewriter core_stepper.hal \family default ) et un qui spécifie le brochage des sorties ( \family typewriter xxx_pinout.hal \family default ) \layout Description HAL\SpecialChar ~ =\SpecialChar ~ command Exécute 'command' comme étant une simple commande hal. Si \series bold HAL \series default est spécifié plusieurs fois, les commandes sont exécutées dans l'ordre où elles apparaissent dans le fichier ini. Les lignes \series bold HAL \series default sont exécutées après toutes les lignes \series bold HALFILE \series default . \layout Description SHUTDOWN\SpecialChar ~ =\SpecialChar ~ shutdown.hal Exécute le fichier 'shutdown.hal' quand emc s'arrête. Selon les pilotes de matériel utilisés, il est ainsi possible de positionner les sorties sur des valeurs définies quand emc s'arrête normalement. Cependant, parce qu'il n'y a aucune garantie que ce fichier sera exécuté (par exemple, dans le cas d'une panne de l'ordinateur), il ne remplace pas une véritable chaîne physique d'arrêt d'urgence ou d'autres logiciels de protection des défauts de fonctionnement. \layout Description POSTGUI_HALFILE\SpecialChar ~ =\SpecialChar ~ example2.hal \emph on (Seulement avec l'interface AXIS) \emph default Exécute 'example2.hal' après que l'interface graphique ait créé ses HAL pins. \layout Subsection \color black Section [TRAJ] \begin_inset LatexCommand \label{sub:Section-[TRAJ]} \end_inset \begin_inset LatexCommand \index{Fichier INI-TRAJ } \end_inset \layout Standard \color black La section [TRAJ] contient les paramètres généraux du module planificateur de trajectoires d' EMCMOT. Vous n'aurez pas à modifier ces valeurs si vous utilisez EMC avec une machine à trois axes en provenance des USA. Si vous êtes dans une zone métrique, utilisant des éléments matériels métriques , vous pourrez utiliser le fichier stepper_mm.ini dans lequel les valeurs sont déjà configurées dans cette unité. \layout Description \color black COORDINATES\SpecialChar ~ =\SpecialChar ~ X\SpecialChar ~ Y\SpecialChar ~ Z \color none \color black Les noms des axes à contrôler. X, Y, Z, A, B, C, U, V, et W sont valides. Seuls les axes nommés dans \color none \series bold \color black COORDINATES \series default \color none \color black seront acceptés dans le g-code. Cela n'a aucun effet sur l'ordonnancement des noms d'axes depuis le G-code (X- Y- Z-) jusqu'aux numéros d'articulations. Pour une \begin_inset Quotes eld \end_inset cinématique triviale \begin_inset Quotes erd \end_inset , X est toujours l'articulation 0, A est toujours l'articulation 4, U est toujours l'articulation 7 et ainsi de suite. Il est permis d'écrire les noms d'axe par paire (ex: X Y Y Z pour une machine à portique) mais cela n'a aucun effet. \layout Description \noun on \color black AXES\SpecialChar ~ =\SpecialChar ~ 3 \noun default Une unité de plus que le plus grand numéro d'articulation du système. Pour une machine XYZ, les articulations sont numérotées 0, 1 et 2. Dans ce cas, les AXES sont 3. Pour un système XYUV utilisant une \begin_inset Quotes eld \end_inset cinématique triviale \begin_inset Quotes erd \end_inset , l'articulation V est numérotée 7 et donc les AXES devraient être 8. Pour une machine à cinématique non triviale (ex: scarakins) ce sera généralemen t le nombre d'articulations contrôlées. \layout Description \color black HOME\SpecialChar ~ =\SpecialChar ~ 0\SpecialChar ~ 0\SpecialChar ~ 0 \color none \color black Coordonnées de l'origine machine de chaque axe. De nouveau, pour une machine 4 axes, vous devrez avoir 0 0 0 0. Cette valeur est utilisée uniquement pour les machines à cinématique non triviale. Sur les machines avec cinématique triviale, cette valeur est ignorée. \layout Description \color black LINEAR_UNITS= \color none \color black \begin_inset LatexCommand \index{LINEAR UNITS} \end_inset Le nom des unités utilisées dans le fichier INI. Les choix possibles sont 'in', 'inch', 'imperial', 'metric', 'mm'. \newline Cela n'affecte pas les unités linéaires du code NC (pour cela il y a les mots G20 et G21). \layout Description \color black ANGULAR_UNITS= \begin_inset LatexCommand \index{ANGULAR UNITS} \end_inset Le nom des unités utilisées dans le fichier INI. Les choix possibles sont 'deg', 'degree' (360 pour un cercle), 'rad', 'radian' (2pi pour un cercle), 'grad', ou 'gon' (400 pour un cercle). \newline Cela n'affecte pas les unités angulaires du code NC. Dans le code RS274NGC, les mots A-, B- et C- sont toujours exprimés en degrés. \layout Description \color black DEFAULT_VELOCITY\SpecialChar ~ =\SpecialChar ~ 0.0167 \color none \color black La vitesse initiale de jog des axes linéaires, en unités par seconde. La valeur indiquée ici correspond à une unité par minute. \layout Description \color black DEFAULT_ACCELERATION\SpecialChar ~ =\SpecialChar ~ 2.0 \color none \color black Dans les machines à cinématique non triviale, l'accélération utilisée pour \begin_inset Quotes eld \end_inset teleop \begin_inset Quotes erd \end_inset jog (espace cartésien), en unités machine par seconde par seconde. \layout Description \color black MAX_VELOCITY\SpecialChar ~ =\SpecialChar ~ 5.0 \color none \color black \begin_inset LatexCommand \index{MAX VELOCITY} \end_inset Vitesse maximale de déplacement pour les axes, exprimée en unités machine par seconde. La valeur indiquée est égale à 300 unités par minute. \layout Description \color black MAX_ACCELERATION\SpecialChar ~ =\SpecialChar ~ 20.0 \color none \color black \begin_inset LatexCommand \index{MAX ACCELERATION} \end_inset Accélération maximale pour les axes, exprimée en unités machine par seconde par seconde. \layout Description POSITION_FILE\SpecialChar ~ =\SpecialChar ~ position.txt Si réglée à une valeur non vide, les positions des articulations sont enregistrées dans ce fichier. Cela permet donc de redémarrer avec les mêmes coordonnées que lors de l'arrêt \begin_inset Foot collapsed false \layout Standard Cela suppose, que hors puissance, la machine ne fera aucun mouvement pendant tout son arrêt. C'est utile pour les petites machines sans contact d'origine machine. \end_inset . Si vide, les positions ne seront pas enregistrées et commenceront à 0 à chaque fois qu'EMC démarrera. \layout Subsection \color black Section [AXIS_] \begin_inset LatexCommand \label{sub:Section-[AXIS]} \end_inset \begin_inset LatexCommand \index{Fichier INI-AXIS} \end_inset \layout Standard \color black Les sections [AXIS_0], [AXIS_1], etc. contiennent les paramètres généraux des composants individuels du module de contrôle. La numérotation des sections axis commencent à 0 et vont jusqu'au nombre d'axes spécifié dans la variable [TRAJ] AXES, moins 1. \layout Description \color black TYPE\SpecialChar ~ =\SpecialChar ~ LINEAR Type des axes, soit LINEAR, soit ANGULAR. \color none \layout Description UNITS\SpecialChar ~ =\SpecialChar ~ inch \begin_inset LatexCommand \index{UNITS} \end_inset Ce réglage écrase celui des variables [TRAJ] UNITS si il est spécifié. (ex: [TRAJ]LINEAR_UNITS si le TYPE de cet axe est LINEAR, [TRAJ]ANGULAR_UNITS si le TYPE de cet axe est ANGULAR) \layout Description MAX_VELOCITY\SpecialChar ~ =\SpecialChar ~ 1.2 Vitesse maximum pour cet axe en unités machine par seconde. \layout Description MAX_ACCELERATION\SpecialChar ~ =\SpecialChar ~ 20.0 Accélération maximum pour cet axe en unités machine par seconde au carré. \layout Description BACKLASH\SpecialChar ~ =\SpecialChar ~ 0.000 Valeur de compensation du jeu en unités machine. Peut être utilisée pour atténuer de petites déficiences du matériel utilisé pour piloter cet axe. \layout Description COMP_FILE\SpecialChar ~ =\SpecialChar ~ file.extension Fichier dans lequel est enregistrée une structure de compensation spécifique à cet axe. Les valeurs internes sont des triplets représentant les positions suivantes: \layout Enumerate Positions nominales \layout Enumerate Positions en marche positive \layout Enumerate Positions en marche négative. \layout Standard La position nominale est celle où devrait être le mobile. La position en marche positive signifie, où se trouve le mobile pendant le déplacement dans le sens positif. La position en marche négative signifie, où se trouve le mobile pendant le déplacement dans le sens négatif. Un triplet par ligne. Actuellement la limite d'EMC2 est de 256 triplets par axe. Si COMP_FILE est spécifié, BACKLASH est ignoré. Les valeurs sont en unités machine. \layout Description COMP_FILE_TYPE\SpecialChar ~ =\SpecialChar ~ 1 En spécifiant une valeur non nulle, le format des triplets du fichier COMP_FILE sera différent. Pour COMP_FILE_TYPE = 0, les valeurs des triplets seront: position nominale, position en marche positive, position en marche négative. Pour COMP_FILE_TYPE différent de 0, les valeurs dans COMP_FILE seront: position nominale, écart sens positif, écart sens négatif. Comparées au valeurs définies au dessus elles correspondent à, nominale, nominale-position en marche positive, nominal-position en marche négative. \layout Standard Exemple de triplet avec COMP_FILE_TYPE = 0: 1.00 1.01 0.99. \layout Standard Le même exemple de triplet avec COMP_FILE_TYPE = 1: 1.00 -0.01 0.01 \layout Description \color black MIN_LIMIT\SpecialChar ~ =\SpecialChar ~ -1000 \color none \color black \begin_inset LatexCommand \index{MIN LIMIT} \end_inset Limite minimum des mouvements de cet axe (limite soft), en unités machine. Quand cette limite tend à être dépassée, le contrôleur arrête le mouvement. \layout Description \color black MAX_LIMIT\SpecialChar ~ =\SpecialChar ~ 1000 \color none \color black \begin_inset LatexCommand \index{MAX LIMIT} \end_inset Limite maximum des mouvements de cet axe (limite soft), en unités machine. Quand cette limite tend à être dépassée, le contrôleur arrête le mouvement. \layout Description MIN_FERROR\SpecialChar ~ =\SpecialChar ~ 0.010 \begin_inset LatexCommand \index{MIN FERROR} \end_inset Valeur indiquant, en unités machine, de combien le mobile peut dévier à très petite vitesse de la position commandée. Si MIN_FERROR est plus petit que FERROR, les deux produisent une rampe de points de dérive. Vous pouvez imaginer un graphe sur lequel une dimension représente la vitesse et l'autre, l'erreur tolérée. Quand la vitesse augmente, la quantité d'erreurs de suivi augmente également et tend vers la valeur FERROR. \layout Description \color black FERROR\SpecialChar ~ =\SpecialChar ~ 1.0 \color none \color black \begin_inset LatexCommand \index{FERROR} \end_inset FERROR est le maximum d'erreurs de suivi tolérable, en unités machine. Si la différence entre la position commandée et la position retournée excède cette valeur, le contrôleur désactive les calculs des servomoteurs, positionne toutes les sorties à 0.0 et coupe les amplis des moteurs. Si MIN_FERROR est présent dans le fichier .ini, une vitesse proportionnelle aux erreurs de suivi est utilisée. Ici, le maximum d'erreur de suivi est proportionnel à la vitesse, quand FERROR est appliqué à la vitesse rapide définie dans [TRAJ]MAX_VELOCITY et proportionnel aux erreurs de suivi pour les petites vitesses. L'erreur maximale admissible sera toujours supérieure à MIN_FERROR. Cela permet d'éviter que de petites erreurs de suivi sur les axes stationnaires arrêtent les mouvements de manière impromptue. Des petites erreurs de suivi seront toujours présentes à cause des vibrations, etc. La polarité des valeurs de suivi détermine comment les entrées sont interprétée s et comment les résultats sont appliqués aux sorties. Elles peuvent généralement être réglées par tâtonnement car il n'y a que deux possibilités. Le programme utilitaire USRMOT peut être utilisé pour les ajuster intéractiveme nt et vérifier les résultats, de sorte que les valeurs puissent être mises dans le fichier INI avec un minimum de difficultés. \layout Subsubsection Variables relatives aux prises d'origine \begin_inset LatexCommand \label{sub:Variables relatives aux prises d'origine} \end_inset \layout Standard Les cinq prochains paramètres sont relatifs aux prises d'origine. \layout Description HOME_OFFSET\SpecialChar ~ =\SpecialChar ~ 0.0 Position du contact d'origine machine de l'axe ou impulsion d'index, en unités machine. \layout Description HOME_SEARCH_VEL\SpecialChar ~ =\SpecialChar ~ 0.0 \begin_inset LatexCommand \index{HOME SEARCH VEL} \end_inset Vitesse du mouvement inital de prise d'origine, en unités machine par seconde. Une valeur de zéro suppose que la position courante est l'origine machine. Si votre machine n'a pas de contact d'origine, laissez cette valeur à zéro. \layout Description HOME_LATCH_VEL\SpecialChar ~ =\SpecialChar ~ 0.0 Vitesse du mouvement final de prise d'origine pour le dégagement du contact d'origine, en unités machine par seconde. \layout Description HOME_USE_INDEX\SpecialChar ~ =\SpecialChar ~ NO Si l'encodeur utilisé pour cet axe fournit une impulsion d'index et qu'elle est gérée par la carte contrôleur, vous pouvez mettre sur Yes. Quand il est sur yes, il aura une incidence sur le type de séquence de prise d'origine utilisé. \layout Description HOME_IGNORE_LIMITS\SpecialChar ~ =\SpecialChar ~ NO Certaines machines utilisent une limite d'axe comme contact d'origine machine. Cette variable devra être positionnée sur yes si c'est le cas de votre machine. \layout Subsubsection Variables relatives aux servo \begin_inset LatexCommand \label{sub:Variables relatives aux servo} \end_inset \layout Standard Les entrées suivantes concernent les systèmes à servomoteurs, comme la carte du système univstep de Pico Systems. \begin_inset Foot collapsed true \layout Standard Référez vous au \begin_inset Quotes eld \end_inset Manuel de l'intégrateur d'EMC2 \begin_inset Quotes erd \end_inset pour des informations complémentaires sur les systèmes à servomoteurs et leur contrôle en PID. \end_inset Cette description suppose que les unités en sortie du composant PID sont des Volts. \layout Description \color black P\SpecialChar ~ =\SpecialChar ~ 50 \color none \series bold \noun on \color default (hal) \series default \noun default \color none \color black La composante \color none \family typewriter \series bold \color black p \family default \series default roportionnelle du gain de l'ampli moteur de cet axe. Cette valeur multiplie l'erreur entre la position commandée et la position actuelle en unités machine, elle entre dans le calcul de la tension appliquée à l'ampli moteur. Les unités du gain \color none \family typewriter \series bold \color black P \family default \series default \color none \color black sont des Volts sur des unités machine, exemple: \begin_inset Formula $\frac{volt}{mm}$ \end_inset si l'unité machine est le millimètre. \layout Description \color black I\SpecialChar ~ =\SpecialChar ~ 0 \color none \series bold \noun on \color default (hal) \series default \noun default \color none \color black La composante \color none \family typewriter \series bold \color black i \family default \series default ntégrale du gain de l'ampli moteur de cet axe. Cette valeur multiplie l'erreur cumulative entre la position commandée et la position actuelle en unités machine, elle entre dans le calcul de la tension appliquée à l'ampli moteur. Les unités du gain \color none \family typewriter \series bold \color black I \family default \series default \color none \color black sont des Volts sur des unités machine par seconde, exemple: \begin_inset Formula $\frac{volt}{mm\, s}$ \end_inset si l'unité machine est le millimètre. \layout Description \color black D\SpecialChar ~ =\SpecialChar ~ 0 \color none \series bold \noun on \color default (hal) \series default \noun default \color none \color black La composante \color none \family typewriter \series bold \color black d \family default \series default érivée du gain de l'ampli moteur de cet axe. Cette valeur multiplie la différence entre l'erreur courante et les précédentes , elle entre dans le calcul de la tension appliquée à l'ampli moteur. Les unités du gain \color none \family typewriter \series bold \color black D \family default \series default \color none \color black sont des Volts sur des unités machine sur des secondes, exemple: \begin_inset Formula $\frac{volt}{mm/s}$ \end_inset si l'unité machine est le millimètre. \layout Description \color black FF0\SpecialChar ~ =\SpecialChar ~ 0 \color none \series bold \noun on \color default (hal) \series default \noun default \color none \color black Gain à priori (feedforward) d'orde 0. Cette valeur est multipliée par la position commandée, elle entre dans le calcul de la tension appliquée à l'ampli moteur. Les unités du gain FF0 sont des Volts sur des unités machine, exemple: \begin_inset Formula $\frac{volt}{mm}$ \end_inset si l'unité machine est le millimètre. \layout Description \color black FF1\SpecialChar ~ =\SpecialChar ~ 0 \color none \series bold \noun on \color default (hal) \series default \noun default \color none \color black Gain à priori (feedforward) de premier orde. Cette valeur est multipliée par l'écart de la position commandée par seconde, elle entre dans le calcul de la tension appliquée à l'ampli moteur. Les unités du gain FF1 sont des Volts sur des unités machine par seconde, exemple: \begin_inset Formula $\frac{volt}{mm\, s}$ \end_inset si l'unité machine est le millimètre. \layout Description \color black FF2\SpecialChar ~ =\SpecialChar ~ 0 \color none \series bold \noun on \color default (hal) \series default \noun default \color none \color black Gain à priori (feedforward) de second orde. Cette valeur est multipliée par l'écart de la position commandée par seconde au carré, elle entre dans le calcul de la tension appliquée à l'ampli moteur. Les unités du gain FF2 sont des Volts sur des unités machine par des secondes au carré, exemple: \begin_inset Formula $\frac{volt}{mm\, s^{2}}$ \end_inset si l'unité machine est le millimètre. \layout Description OUTPUT_SCALE\SpecialChar ~ =\SpecialChar ~ 1.000 \layout Description OUTPUT_OFFSET\SpecialChar ~ =\SpecialChar ~ 0.000 \series bold \noun on (hal) \series default \noun default \color none \color black Ces deux valeurs sont, l'échelle et le facteur d'offset de l'ampli moteur de cet axe. La seconde valeur (offset) est soustraite de la valeur de sortie calculée (en Volts) puis divisée par la première valeur (facteur d'échelle), avant d'être écrite dans le convertisseur D/A. Les unités du facteur d'échelle sont des Volts réels par Volts en sortie de DAC. Les unités de la valeur d'offset sont en Volts. Ces valeurs peuvent être utilisées pour linéariser un DAC. \newline Plus précisément, quand les sorties sont écrites, EMC converti d'abord les unités quasi-SI des sorties concernées en valeurs brutes, exemple: Volts pour un amplificateur DAC. Cette mise à l'échelle ressemble à cela: \begin_inset Formula \[ raw=\frac{{output-offset}}{scale}\] \end_inset La valeur d'échelle peut être obtenue par analyse des unités, exemple: les unités sont [unités SI en sortie]/[unités de l'actuateur]. Par exemple, sur une machine sur laquelle une tension de consigne de l'ampli de 1 Volt donne une vitesse de 250 mm/sec : \begin_inset Formula \[ amplifier[volts]=(output[\frac{mm}{sec}]-offset[\frac{mm}{sec}])/250\frac{mm}{sec\, volt}\] \end_inset Notez que les unités d'offset sont en unités machine, exemple: mm/sec et qu'elles sont déjà soustraites depuis la sonde de lecture. La valeur de cet offset est obtenue en prenant la valeur de votre sortie qui donne 0,0 sur la sortie de l'actuateur. Si le DAC est linéarisé, cet offset est normallement de 0.0. \newline L'échelle et l'offset peuvent être utilisés pour linéariser les DAC, d'où des valeurs qui reflètent les effets combinés du gain de l'ampli, de la non linéarité du DAC, des unités du DAC, etc. Pour ce faire, suivez cette procédure: \begin_deeper \layout Enumerate \color black Construire un tableau de calibrage pour la sortie, piloter le DAC avec la tension souhaitée et mesurer le résultat. Voir le tableau\SpecialChar ~ \begin_inset LatexCommand \ref{cap:Mesure des tensions de sortie} \end_inset pour un exemple de mesures de tension. \layout Enumerate \color black Effectuer un \begin_inset Quotes eld \end_inset least squares \begin_inset Quotes erd \end_inset linéaire pour obtenir les coefficients a, b tels que: \begin_inset Formula \[ meas=a*raw+b\] \end_inset \layout Enumerate \color black Notez que nous voulons des sorties brutes de sorte que nos résultats mesurés soient identiques à la sortie commandée. Ce qui signifie: \begin_deeper \layout Enumerate \begin_inset Formula \[ cmd=a*raw+b\] \end_inset \layout Enumerate \begin_inset Formula \[ raw=(cmd-b)/a\] \end_inset \end_deeper \layout Enumerate \color black En conséquence, les coefficients a et b d'ajustement linéaire peuvent être directement utilisés comme valeurs d'échelle et d'offset pour le contrôleur. \end_deeper \layout Description \color black MAX_OUTPUT\SpecialChar ~ =\SpecialChar ~ 10 \color none \series bold \noun on \color default (hal) \series default \noun default \color none \color black La valeur maximale pour la sortie de la compensation PID pouvant être envoyée sur l'ampli moteur, en Volts. La valeur calculée de la sortie sera fixée à cette valeur limite. La limite est appliquée avant la mis à l'échelle de la sortie en unités brutes. \layout Description \color black MIN_OUTPUT\SpecialChar ~ =\SpecialChar ~ -10 \color none \series bold \noun on \color default (hal) \series default \noun default \color none \color black La valeur minimale pour la sortie de la compensation PID pouvant être envoyée sur l'ampli moteur, en Volts. La valeur calculée de la sortie sera fixée à cette valeur limite. La limite est appliquée avant la mis à l'échelle de la sortie en unités brutes. \layout Standard \begin_inset Float table wide false collapsed false \layout Standard \begin_inset LatexCommand \label{cap:Mesure des tensions de sortie} \end_inset Mesure des tensions de sortie \layout Standard \align center \begin_inset Tabular \begin_inset Text \layout Standard \family roman \series medium \shape up \size normal \emph off \bar no \noun off \color none Raw (brutes) \end_inset \begin_inset Text \layout Standard \family roman \series medium \shape up \size normal \emph off \bar no \noun off \color none Mesurées \end_inset \begin_inset Text \layout Standard \family roman \series medium \shape up \size normal \emph off \bar no \noun off \color none -10 \end_inset \begin_inset Text \layout Standard \family roman \series medium \shape up \size normal \emph off \bar no \noun off \color none -9.93 \end_inset \begin_inset Text \layout Standard \family roman \series medium \shape up \size normal \emph off \bar no \noun off \color none -9 \end_inset \begin_inset Text \layout Standard \family roman \series medium \shape up \size normal \emph off \bar no \noun off \color none -8.83 \end_inset \begin_inset Text \layout Standard \family roman \series medium \shape up \size normal \emph off \bar no \noun off \color none 0 \end_inset \begin_inset Text \layout Standard \family roman \series medium \shape up \size normal \emph off \bar no \noun off \color none -0.03 \end_inset \begin_inset Text \layout Standard \family roman \series medium \shape up \size normal \emph off \bar no \noun off \color none 1 \end_inset \begin_inset Text \layout Standard \family roman \series medium \shape up \size normal \emph off \bar no \noun off \color none 0.96 \end_inset \begin_inset Text \layout Standard \family roman \series medium \shape up \size normal \emph off \bar no \noun off \color none 9 \end_inset \begin_inset Text \layout Standard \family roman \series medium \shape up \size normal \emph off \bar no \noun off \color none 9.87 \end_inset \begin_inset Text \layout Standard \family roman \series medium \shape up \size normal \emph off \bar no \noun off \color none 10 \end_inset \begin_inset Text \layout Standard \family roman \series medium \shape up \size normal \emph off \bar no \noun off \color none 10.87 \end_inset \end_inset \end_inset \layout Description \color black INPUT_SCALE\SpecialChar ~ =\SpecialChar ~ 20000 \color none \series bold \noun on \color default (hal) \series default \noun default \color none \color black \begin_inset LatexCommand \index{INPUT SCALE} \end_inset \color default Spécifie le nombre d'impulsions qui correspond à un mouvement d'une unité machine. Un second chiffre, si spécifié, sera ignoré. \color black \newline Par exemple, sur un codeur de 2000 impulsions par tour \begin_inset LatexCommand \index{codeur} \end_inset , un réducteur de 10 tours/pouce et des unités demandées en mm, nous avons: \begin_inset Formula \begin{eqnarray*} input\_ scale & = & 2000\frac{impulsions}{tour}*10\frac{tours}{pouce}\\ & = & 20000\frac{impulsions}{pouce}\end{eqnarray*} \end_inset \layout Subsubsection Variables relatives aux moteurs pas à pas \begin_inset LatexCommand \label{sub:Variables relatives aux moteurs pas à pas} \end_inset \layout Description \color black SCALE\SpecialChar ~ =\SpecialChar ~ 4000 \color none \series bold \noun on \color default (hal) \series default \noun default \color none \color black \begin_inset LatexCommand \index{INPUT SCALE} \end_inset \color default Spécifie le nombre d'impulsions qui correspond à un mouvement d'une unité machine. Pour les sytèmes à moteurs pas à pas, c'est le nombre d'impulsions de pas nécessaires pour avancer d'une unité machine. Pour les systèmes à servo, c'est le nombre d'impulsions de retour signifiant que le mobile a avancé d'une unité machine. Un second chiffre, si spécifié, sera ignoré. \color black \newline Par exemple, un pas moteur de 1.8 degré, en mode demipas, avec une réduction de 10 tours/pouce et des unités souhaitées en mm, nous avons: \begin_inset Formula \begin{eqnarray*} input\_ scale & = & \frac{{2\, pas}}{1.8\, degre}*360\frac{degres}{tour}*10\frac{tours}{pouce}\\ & = & 4000\frac{pas}{pouce}\end{eqnarray*} \end_inset D'anciens fichiers de configuration .ini et .hal utilisaient INPUT_SCALE pour cette valeur. \layout Description STEPGEN_MAXACCEL\SpecialChar ~ =\SpecialChar ~ 21.0 \series bold \noun on (hal) \series default \noun default Limite d'accélération pour le générateur de pas. Elle doit être 1% à 10% supérieure à celle de l'axe MAX_ACCELERATION. Cette valeur améliore les réglages de la \begin_inset Quotes eld \end_inset boucle de position \begin_inset Quotes erd \end_inset de stepgen. \layout Description STEPGEN_MAXVEL\SpecialChar ~ =\SpecialChar ~ 1.4 \series bold \noun on (hal) \series default \noun default Les anciens fichiers de configuration avaient également une limite de vitesse du générateur de pas. Si spécifiée, elle doit auss être 1% à 10% supérieure à celle de l'axe MAX_VELOCITY. Des test ultérieurs ont montré que l'utilisation de STEPGEN_MAXVEL n'améliore pas le réglage de la boucle de position de stepgen. \layout Subsection Section [EMCIO] \begin_inset LatexCommand \label{sub:Section-[EMCIO]} \end_inset \begin_inset LatexCommand \index{Fichier INI-EMCIO} \end_inset \layout Description CYCLE_TIME\SpecialChar ~ =\SpecialChar ~ 0.100 La période en secondes, à laquelle EMCIO va tourner. La mettre à 0.0 ou à une valeur négative fera qu'EMCIO tournera en permanence. Il est préférable de ne pas modifier cette valeur. \layout Description TOOL_TABLE\SpecialChar ~ =\SpecialChar ~ tool.tbl Ce fichier contient les informations des outils. \layout Description TOOL_CHANGE_POSITION\SpecialChar ~ =\SpecialChar ~ 0\SpecialChar ~ 0\SpecialChar ~ 2 Spécifies la position XYZ ou le mobile se déplacera lors d'un appel d'outil. \the_end