Le fonctionnement mécanique de la machine est relativement simple. Elle est composée d’un bâti fixe de forme rectangulaire sur lequel se déplace une structure selon l’axe x. Cette structure soutient elle-même la tête de tissage, libre de se déplacer selon l’axe y. Le positionnement de la tête de tissage suit donc un système cartésien dans le plan xy (voir schéma cinématique).
Ces déplacements linéaires sont assurés par des moteurs pas à pas et la conversion rotation-translation est réalisée par des roues et des courroies crantées.
La taille de la poulie est telle qu’un tour de moteur correspond à 6cm de translation.
Le choix des moteurs pas à pas permet d’avoir un système en boucle ouverte car ces moteurs peuvent être facilement contrôlés en position. En effet ces moteurs fonctionnent par pas, un pas correspondant (en mode pas complet) à 1/200 tour c’est à dire 1,9°. En comptant le nombre de pas on peut facilement placer le moteur dans une position souhaitée. C’est ainsi que l’on déplace la tête de tissage précisément dans le plan.
La traduction d’une position souhaitée pour la tête de tissage (émanant du code Matlab) en une commande concrète à fournir aux moteurs est réalisé par une carte Arduino Nano ainsi que des drivers (permettant d’envoyer suffisamment de puissance aux moteur sans griller la carte). Sur cette carte électronique nous utilisons un code fiable développé pour contrôler des imprimantes 3D : il s’agit de grbl. Il utilise du gcode, un format de communication standard pour contrôler les déplacement. Ainsi par exemple, la commande « G0 X150 Y70 » signifie que la tête de tissage doit se déplacer (en ligne droite) jusqu’au point de coordonnée (150,70) en mm.
Cette carte doit être configurée avec quelques informations comme la conversion entre pas et distance parcourue, dans notre cas 1 pas → 1/200 tour → 60*1/200=0,3 mm. Le positionnement est donc précis à 0,3 mm près (en réalité d’autres sources d’erreur rentrent en compte). Ce code gère aussi les accélérations permettant ainsi des démarrages et arrêts en douceur en respectant des accélérations et des vitesses limites choisies dans la configuration.
Ce système de positionnement est relatif, c’est à dire que tous les déplacements sont définis par rapport à la position initiale de la machine. Or on ne connaît pas la position initiale de la machine lors de l’allumage. Il est donc nécessaire d’initialiser la machine dans une position connue à chaque démarrage. On utilise pour cela des capteurs inductifs de position placé sur chacun des axes. En pratique, lors d’un redémarrage, la machine va se déplacer en direction des capteurs, quand ces derniers s’activent, c’est que la tête de tissage à atteint la position d’initialisation connue.
Pour plus de sécurité, nous utilisons également des capteurs de fin de course. Il s’agit d'interrupteurs qui sont mécaniquement activés lorsque la tête s’approche trop des extrémités de la zone de tissage. C’est capteurs sont directement reliés à la carte et leurs fermetures stoppent immédiatement le mouvement de la tête afin d’éviter un endommagement de la machine.
Capteurs de fin de course
Il s’agit maintenant de planter les épingles au niveau des points décidés par le traitement logiciel. Le plantage d’une épingle utilise toutes les mobilités de la tête de tissage : moteur pas à pas pour se positionner au-dessus du point considéré, servomoteurs pour orienter la pince dans l’espace puis vérins pneumatiques pour planter l’épingle.
La communication entre Matlab et l’Arduino Mega contrôlant les servomoteurs ainsi que les vérins pneumatiques se fait au moyen d’une transmission série. Le fichier ‘communicationMatlab.cpp’ se charge d’interpréter en continu ce qui est reçu sur le port série de l’Arduino Mega. Chaque action au niveau de la machine est associée à une lettre éventuellement suivie de paramètres.
Ci-contre un tableau décrivant la nomenclature choisie.
Servomoteurs
Comme nous souhaitons pouvoir planter les aiguilles avec un certain angle, nous avons besoin de pouvoir incliner la pince. Pour cela, nous utilisons deux servomoteurs Dynamixel RX-64 situés au niveau de la pince. Ils permettent une rotation autour des deux axes X et Y de déplacement du bras. Ils sont commandés depuis l’Arduino Mega par l’intermédiaire d’une carte RS485 Breakout. Les deux servomoteurs sont branchés en série.
Nous avons développé notre code Arduino pour pouvoir facilement les commander. Lors de l’utilisation, il suffit de fournir aux servomoteurs les deux angles qu’ils doivent respectivement atteindre et maintenir.
La machine plante les épingles une par une et vient chercher la nouvelle épingles à planter à un point défini. Aujourd’hui il est nécessaire de positionner à la main une nouvelle épingle à ce point entre chaque aller-retour.
Afin d’automatiser cette tâche, les BTS mécanique partenaire du projet ont développé un magasin à épingles.
Ce dispositif est constitué d’un bol vibrant permettant le déclassage des épingles. Elles sont ensuite guidée vers un plateau tournant qui met à disposition les épingles une par une pour la pince.
Ce dispositif est en fin de développement mais n’a pas encore été implanté sur la machine.
Vérins pneumatiques
Nous utilisons deux vérins pneumatiques, un pour faire monter et descendre la pince, et l’autre pour la fermer et l’ouvrir. Ces deux vérins sont alimentés en air comprimé (pression environ égale à 6 bars) grâce à un compresseur d’air branché à l’entrée du circuit pneumatique. Pour piloter l’arrivée d’air comprimé dans les vérins, nous utilisons la carte Arduino Mega ainsi qu’une carte 4 relais pour contrôler l’ouverture et la fermeture des valves d’entrée du système pneumatique.
Schéma électrique du système :
La Tricotisseuse dispose de plusieurs mécanismes qui permettent de guider le fil lors de son tricotissage.
Tout d’abord, un simple support circulaire permet à la bobine de se dérouler sans problème.
Ensuite un système de canne permet de maintenir une tension constante dans le fil. Il est important de garder une certaine tension pendant le tricotissage afin que le fil ne s'emmêle pas. Aussi il est préférable que cette tension soit constante pour des raisons esthétiques.
Enfin, afin de guider le fil au niveau de la tête de tissage ,la machine est équipé d’un tube de métal ainsi que deux pièces imprimées en 3D pour limiter la friction aux embouchures. Il part de la sortie du régulateur de tension et arrive au niveau de la zone de tissage.