Étape 8: logiciel
Logiciel a été développé en deux parties, l’une à l’intérieur de la carte Arduino et autre part à l’intérieur des PC sous windows. Arduino code possède également deux pièces, initialiser et boucle. Initialiser le mouvement tous les trois curseurs à leur domicile du poste et puis déplacent l’extrémité chaude à zéro point de consigne. Dans la boucle article carte Arduino attend des commandes de port série et exécute eux qui envoie des impulsions aux conducteurs de moteur pas à pas pour déplacer les curseurs et extrudeuse dans un sens positif ou négatif.
Partie de PC de notre code se compose de plusieurs sections, interprétation de Gcode, cinématique inverse de mécanisme delta et calculs de la commande. Après avoir préparé le Gcode de chaque partie d’impression par Repetier nous devons interpréter et extraction coordonnées extrémité chaude et mouvement de l’extrudeuse. Nous devrions établir de nombreux paramètres comme couche ratio épaisseur et remplissage à l’intérieur de Repetier pour correspondre à nos spécifications de l’imprimante 3D. Après extraction des coordonnées, nous utilisons une fonction qui calcule la position de chaque curseur basé sur XYZ requis d’extrémité chaude. Il utilise la relation de la cinématique inverse delta mécanisme basée sur des paramètres comme la position de montage et longueur bras parallèle de sliders. Dernière partie de notre code calcule les commandes nécessaires pour déplacer les curseurs et extrudeuse sur base des coordonnées d’extrémité chaude. Commande correspond à un octet qui montre les impulsions nécessaires dans une direction positive et négative, comme illustré à la Figure. Le code source de la carte Arduino est ici « zpulsecwextr2.ino ».
La fonction qui calcule les mouvements de curseur de XYZ de hotend est « xyztoslideZ123.m ». Il est écrit dans l’OCTAVE, et vous pouvez l’exécuter sous Octave ou Matlab. XE est la position des points d’attache sur l’effecteur et XS est la position de points de fixation sur les curseurs.
zspulsecwextr2.INO xyztoslideZ123.m