Stepconf est un programme qui génère des fichiers de configuration EMC pour une classe spécifique de machine CNC: celles qui sont pilotées via un port parallèle standard et contrôlées par des signaux de type step & direction.
D'éventuels traitements des signaux, une opto-isolation ou des filtres RC, peuvent imposer des contraintes de temps supplémentaires aux signaux, il convient de les ajouter à celles du pilote.
Pour chacune des pins, choisir le signal qui correspond au brochage de votre port parallèle. Cochez la case inverser si le signal est inversé (0V pour vrai / actif, 5V pour faux / inactif).
Inclure un panneau PyVCP personnalisé Si coché, le panneau de contrôle PyVCP panel.xml sera affiché dans la partie droite de la fenêtre principale d'AXIS.
Pompe de charge Si votre carte de contrôle gère une pompe de charge, dans la liste déroulante des sorties, sélectionner Pompe de charge sur la sortie qui doit correspondre à l'entrée Pompe de charge de la carte. La sortie pompe de charge sera connectée en interne par Stepconf. Le signal de pompe de charge sera d'environ la moitié de la fréquence maxi des pas affichée sur la page des informations machine.
Ces options ne sont accessibles que quand PWM broche, Phase A codeur broche ou index broche sont configurés sur le brochage du port parallèle.
Si PWM broche apparaît dans le réglage du port parallèle, les informations suivantes doivent être renseignées:
Lorsque les signaux appropriés, provenants d'un codeur de broche, sont connectés au port parallèle, EMC peut être utilisé pour le filetage avec broche synchronisée sur un tour. Ces signaux sont:
Si Phase A codeur broche et Index broche apparaissent dans le réglage des broches du port, l'information suivante doit être renseignée:
Cliquez “Appliquer” pour enregistrer les fichiers de configuration. Ensuite, vous pourrez relancer ce programme et ajuster les réglages entrés précédemment.
Avec Stepconf il est facile de définir certaines valeurs comme celles de l'accélération et de la vitesse. Entrez d'abord les éléments corrects pour les Pas moteur, les Micropas, les Poulies, et le pas de vis. Puis entrez une valeur aproximative de Vitesse. Enfin, cliquez sur Tester cet axe.
Commencez avec une faible valeur d'accélération (par exemple, 2 in/s^2 ou 50mm/s^2) et la vitesse que vous espérez atteindre. À l'aide des boutons de jog, positionnez l'axe vers son centre. Soyez prudent, car avec peu d'accélération, l'axe peut prendre une surprenante longueur pour ralentir et s'arrêter.
Après avoir mesuré les longueurs de déplacement disponibles dans chaque direction, entrez la moyenne de ces distances dans la zone test, en gardant à l'esprit que, après un décrochage le moteur peut repartir dans la direction inattendue. Cliquez sur Envoi. La machine va commencer à faire des allers et retours sur cet axe. Dans cet essai, il est important que la combinaison entre l'accélération et la zone de test, permette à la machine d'atteindre la vitesse sélectionnée et de s'y déplacer sur, au moins, une courte distance (plus cette distance sera longue, meilleur sera le test). La formule: distance=0.5*vitesse*vitesse/accélération donne la distance minimum requise avec les vitesse et accélération spécifiées. Il est souhaitable de pousser sur la table dans la direction inverse du mouvement pour simuler les efforts de coupe. Si la machine cale, réduire la vitesse et relancer le test.
Si la machine ne présente aucun décrochage, cliquez sur le bouton Exécuter. L'axe revient alors à sa position de départ. Si cette position est incorrecte, c'est que l'axe a calé ou a perdu des pas au cours de l'essai. Réduire la vitesse et relancer le test. Si la machine ne se déplace pas, cale, ou perd des pas même à faible vitesse, vérifiez les éléments suivants:
Une fois que vous avez trouvé une vitesse à laquelle l'axe ne perd plus de pas et à laquelle les mesures sont exactes pendant le test, réduisez la de 10% et utilisez la comme vitesse maximum pour cet axe.
Avec la vitesse maximale que vous avez trouvé à l'étape précédente, entrez une valeur d'accélération approximative. Procédez comme pour la vitesse, en ajustant la valeur d'accélération en plus ou en moins selon le résultat. Dans cet essai, il est important que la combinaison de l'accélération et de la zone test permette à la machine d'atteindre la vitesse sélectionnée. Une fois que vous avez trouvé une valeur à laquelle l'axe ne perd plus de pas pendant le test, la réduire de 10% et l'utiliser comme accélération maximale pour cet axe.
Entrez les valeurs suivantes dans la page de configuration de la broche:
Vitesse 1: | 0 | PWM 1: | 0 |
Vitesse 2: | 1000 | PWM 1: | 1 |
Finissez les étapes suivantes de la configuration, puis lancez EMC2 avec votre configuration. Mettez la machine en marche et allez dans l'onglet Données manuelles. démarrez le moteur de broche en entrant: M3 S100. Modifiez la vitesse de broche avec différentes valeurs comme: S800. Les valeurs permises vont de 1 à 1000.
Pour deux différentes valeurs de Sxxx, mesurez la vitesse de rotation réelle de la broche en tours/mn. Enregistrez ces vitesses réelles de la broche. Relancez Stepconf. Pour les Vitesses, entrez les valeurs réelles mesurées et pour les PWM, entrez la valeur Sxxx divisée par 1000.
Parce que la plupart des interfaces ne sont pas linéaires dans leurs courbes de réponse, il est préférable de:
Par exemple, si votre broche tourne entre 0tr/mn et 8000tr/mn, mais que vous l'utilisez généralement entre 400tr/mn et 4000tr/mn, prenez alors des valeurs qui donneront 1600tr/mn et 2800tr/mn.
La course de chaque axe est bien délimitée. Les extrémités physiques d'une course sont appelées les butées mécaniques.
Avant la butée mécanique se trouve un contact de fin de course. Si ce contact est rencontré pendant les opérations normales, EMC coupe la puissance du moteur. La distance entre le fin de course et la butée mécanique doit être suffisante pour permettre au moteur, dont la puissance a été coupée, de s'arrêter malgré l'inertie du mobile.
Avant le contact de fin de course se trouve une limite soft. Cette limite logicielle est introduite après la prise d'origine machine. Si une commande manuelle ou un programme gcode dépasse cette limite, ils ne seront pas éxécutés. Si un mouvement en jog cherche à dépasser la limite logicielle, il sera interrompu sur cette limite.
Le contact d'origine machine peut être positionné n'importe où, le long d'une course (entre les butées mécaniques).
Si aucun mécanisme externe ne désactive la puissance moteur quand un contact de limite est enfoncé, un des contacts de fin de course peut être utilisé comme contact d'origine machine.
La position zéro est la position correspondante au 0 de l'axe dans le système de coordonnées machine. Habituellement la position zéro doit se trouver entre les deux limites soft. Sur les tours, le mode vitesse de surface constante requiert que la coordonnée X=0 corresponde au centre de rotation de la broche quand aucun correcteur d'outil n'est actif.
La position de l'origine est la position, située le long de l'axe, sur laquelle le mobile sera déplacé à la fin de la séquence de prise d'origine. Cette position doit se situer entre les limites soft. En particulier, la position de l'origine ne doit jamais être égale à une limite soft.
Une machine peut être utilisée sans contact de fin de course. Dans ce cas, seules les limites soft empêcheront la machine d'atteindre les butées mécaniques. Les limites soft n'opérent qu'après que la POM soit faite sur la machine. Puisqu'il n'y a pas de contact, la machine doit être déplacée à la main et à l'oeil, à sa position d'origine machine avant de presser le bouton POM des axes ou le sous-menu Machine->Prises d'origines machine->POM de l'axe.
Un machine peut être utilisée sans contact d'origine machine. Si la machine dispose de contacts de fin de courses, mais pas de contact d'origine machine, il est préférable d'utiliser le contact de fin de course comme contact d'origine machine (exemple, choisissez Limite mini + origine X dans le réglage du port). Si la machine ne dispose d'aucun contact, ou que le contact de fin de course n'est pas utilisable pour une autre raison, alors la prise d'origine machine peut être réalisée à la main. Faire la prise d'origine à la main n'est certes pas aussi reproductible que sur des contacts, mais elle permet tout de même aux limites soft d'être utilisables.
Faire générer les impulsions de pas au logiciel présente un grand avantage, c'est gratuit. Quasiment chaque PC dispose d'un port parallèle capable de sortir sur ses broches les signaux de pas générés par le logiciel. Cependant, les générateurs d'impulsions logiciels ont aussi quelques désavantages:
Le temps de latence est le temps nécessaire au PC pour arrêter ce qu'il est en train de faire pour répondre à une requête externe. Dans notre cas, la requête est le battement de coeur périodique qui sert de référence pour les impulsions de pas. Plus la latence est basse, plus le coeur pourra battre vite et donc, plus rapides et plus douces seront les impulsions de pas.
Le temps de latence est beaucoup plus important que la vitesse du µP. Un vieux Pentium II qui répond aux interruptions avec 10 microsecondes entre chacune peut donner de meilleurs résultats qu'un rapide P4 en Hyperthreading.
Le CPU n'est pas le seul facteur déterminant le temps de latence. Les cartes mères, les cartes vidéo, les ports USB et de nombreuses autres choses peuvent détériorer le temps de latence. La meilleure façon de savoir ce qu'il en est sur votre PC est de lancer un latency test de HAL.
Pour exécuter le test, il suffit d'ouvrir une console et de taper: latency-test . Vous devriez voir quelque chose comme ceci:
Pendant que le test est en cours d'exécution, il faut abuser de l'ordinateur. Déplacez les fenêtres sur l'écran. Connectez vous à l'Internet. Copiez quelques gros fichiers sur le disque dur. Jouer de la musique. Lancez une démo OpenGL telle que glxgears. L'idée est de charger le PC au maximum pour que le temps de latence soit mesuré dans le pire des cas. Ne pas exécuter EMC2 ou Stepconf pendant que latency-test est en cours d'exécution.
Le chiffre max jitter dans cet exemple est de 17894 nanosecondes, soit 17.9 microsecondes. Enregistrer ce chiffre et entrez le dans Stepconf quand il le demande.
Dans cet exemple de test de latence il n'a fallu que quelques secondes pour afficher cette valeur. Vous devrez peut être lancer le test pendant plusieurs minutes. Parfois même, dans le pire des cas, rien ne provoque de latence ou seulement des actions particulières. Par exemple, une carte mère Intel marchait très bien la plupart du temps, mais toutes les 64 secondes elle avait une très mauvaise latence de 300µs. Heureusement, il existe un correctif (voir Fixing Dapper SMI Issues)
Alors, que signifient les résultats ? Si le résultat de votre Max Jitter est en dessous d'environ 15-20 microsecondes (15000-20000 nanosecondes), l'ordinateur pourra donner d'excellents résultats avec la génération logicielle des pas. Si le temps de latence est à plus de 30-50 microsecondes, vous aurez de bons résultats, mais la vitesse maximum sera un peu décevante, spécialement si vous utilisez des micropas ou si le pas de votre vis est fin. Si les résultats sont de 100uS ou plus (100,000 nanosecondes), alors le PC n'est pas un bon candidat à la génération des pas. Les résultats supérieurs à 1 milliseconde (1,000,000 nanosecondes) éliminent, dans tous les cas, ce PC pour faire tourner EMC, en utilisant des micropas ou pas.
Notez que si vous obtenez une latence élevée, il peut être possible de l'améliorer. Un PC avait une très mauvaise latence (plusieurs millisecondes) en utilisant la carte graphique interne. Un carte graphique Matrox d'occasion à $5US a résolu le problème. EMC n'exige pas de matériel de pointe.
Le câblage idéal des contacts externes serait une entrée par contact. Toutefois, un seul port parallèle d'ordinateur offre un total de 5 entrées, alors qu'il n'y a pas moins de 9 contacts sur une machine 3 axes. Au lieu de cela, plusieurs contacts seront câblés ensemble de diverses façons afin de nécessiter un plus petit nombre d'entrées.
Les figures ci-dessous montrent l'idée générale du câblage de plusieurs contacts à une seule broche d'entrée. Dans chaque cas, lorsqu'un contact est actionné, la valeur vue sur l'entrée va passer d'une logique haute à une logique basse. Cependant, EMC s'attend à une valeur VRAIE quand un contact est fermé, de sorte que les cases Inverser correspondantes devront être cochées sur la page de réglage du port parallèle.
Les combinaisons suivantes sont permises dans Stepconf:
Les deux dernières combinaisons sont également appropriées quand le type contact + origine est utilisé.