Commande de l’imprimante via le WEB :Repetier-Server

Un Post pour la mise en place de repetier-Server sur un RaspberryPi

Quelques spécifications :

  • Accès depuis un navigateur web à une ou plusieurs imprimantes 3D
  • Fonctionnement autonome
  • gestion à distance de l’imprimante
  • pas de visualisation de la trajectoire ( pour alléger l’application)
  • libère le PC
  • pas de génération de gcode (slicer pas intégré)
  • Le script envoi le gcode à l’imprimante
d’abord quelques copies d’écran du navigateur:

Etape 1 : installation.

L’installation se fera sur un raspberry.

  1. récuperez le fichier tgz sur le site web de repetier Repetier-Server 0.24 for Raspberry Pi.
  2. Dézipper le fichier dans le home de la session pi par exemple.
  3. ensuite toutes les instructions se trouve dans le fichier install.txt.
je reprend les grandes lignes :
The distribution works with the Debian-Wheezy linux version for the pi!

Copy executable to /usr/bin
> sudo cp RepetierServer /usr/bin

Copy a sample config file to /etc
> sudo cp repetier-server.conf /etc

Create a environment where the server can store it's data and printer configs.
> sudo mkdir /var/lib/Repetier-Server /var/lib/Repetier-Server/configs /var/lib/Repetier-Server/www /var/lib/Repetier-Server/storage /var/lib/Repetier-Server/languages

Create configurations for your printer in /var/lib/Repetier-Server/configs. You find 2
examples in the configs subdirectory.

examples : mendel.cfg

version=”1.0″;
active=false;
printer:{
name=”Original Mendel”;
slugName=”orig_mendel”; // Unique name with ascii chars without space,tab. Is used for path names.
connection:{
device=”/dev/ttyUSB0″;
baudrate=115200;
pingPong=true; // Allow sending more then one command if it fits into printer cache
readCacheSize=127; // Size of the printer cache. May be 63 for some printer.
/* Communication protocol used to communicate with this printer:
0 = ascii protocol – works with all reprap firmwares
1 = Repetier-Protocol V1 – requires Repetier-Firmware
2 = Repetier-Protocol V2 – requires Repetier-Firmware 0.80 or higher */
protocol=0;
okAfterResend=true; // Does your firmware send a ok after sending a resend for that line?
};
dimension:{
xmin=0.0;
ymin=0.0;
zmin=0.0;
xmax=195.0;
ymax=195.0;
zmax=195.0;
};
homing:{
xhome=0.0; // Coordinates after homing x axis
yhome=0.0; // Coordinates after homing x axis
zhome=0.0; // Coordinates after homing x axis
};
speed:{
xaxis=50.0; // Move speed in mm/s for manual moves
yaxis=50.0; // Move speed in mm/s for manual moves
zaxis=2.0; // Move speed in mm/s for manual moves
eaxisExtrude=2.0; // Move speed in mm/s for manual moves
eaxisRetract=20.0; // Move speed in mm/s for manual moves
};
extruder:{
count=1; // Number of extruder on that device
tempUpdateEvery=1; // Update temperature every x seconds
};
};
The device name /dev/ttyUSBxx may change depending on the order the printer is enabled.
Copy the content of www and languages to the created directories
> sudo cp -r ../www/* /var/lib/Repetier-Server/www
> sudo cp ../languages/* /var/lib/Repetier-Server/languages

Create a start init script to run the server as daemon upon boot time.
> sudo cp ../linux/Repetier-Server.init /etc/init.d/Repetier-Server
> sudo chmod 755 /etc/init.d/Repetier-Server

Activate start script:
> sudo update-rc.d Repetier-Server defaults

Now your start script is active on next reboot. To start/stop manually use
> sudo /etc/init.d/Repetier-Server start
> sudo /etc/init.d/Repetier-Server stop

Restart server:
> sudo /etc/init.d/Repetier-Server restart

Etape 2 : utilisation

a suivre

Posted in Uncategorized | Leave a comment

Montage d’un Carte AZTEEG X1

Principale étape du montage d’une carte AZTEEG X1

Liste des composants :

  • 1 carte AzteegX1
  • 5 borniers – 4 contacts à vis pas 2.54
  • 3 borniers – 3 contacts à vis pas 2.54
  • 2 borniers – 2 contacts à vis pas 2.54
  • 12 jumpers
  • 4 cartes pololu A4988 ou équivalents
  • 4 radiateurs 8x10mm
  • 1 radiateur pour Mosfet
  • 1 connecteur molex 2 broches pour le ventilo

Première étape : montage des connecteurs, Je préfère monter des borniers à vis. C’est le gage d’un bon contact lors du fonctionnement de l’imprimante.

 



S
ouder les connecteurs sur la carte avec un bon fer à souder.

 

 

Deuxième étape : Mettre les jumpers qui permettent de spécifier le mode de commande des moteurs pas à pas.

Si vous mettez les 3 vous fonctionnerez en 1/16° de pas. C’est une bonne idée pour les 4 commande, X,Y,Z et Extrudeur

 

 

Troisième étape : Montage des drivers de commande pour les moteurs pas à pas type pololu A4988

pour faciliter la soudure des broches sur les pololus, je vous suggère :

  1. de couper en 2 la rampe de broche,
  2. d’insérer ces broches sur la carte azteeg,
  3. de poser dessus les pololus, dans le bon sens, potar coté bouton Reset, et sur le dessus ( voir photo).
  4. de souder les 4 cotés de chaque pololu et de terminer par toutes les autres broches
  5. coller ensuite un radiateur sur chaque puce du pololu. Attention que celui ci ne fasse pas de court circuit. j’utilise une colle au silicon. mais vous pouvez aussi mettre du scotch double face 3M

Sans être forcement nécessaire les radiateurs permettent un refroidissement plus efficace du driver. Sans cela il peut arriver que la puce chauffe trop, elle se met alors en sécurité, et l’axe s’arrête, le temps de refroidir ( qqs secondes) .  Ce temps d’arrêt compromet alors l’impression car toutes les commandes envoyées par le processeur sont perdues. et vous observez sur la pièce un décalage d’une couche. Nous verrons plus loin comment régler de manière efficace le potentiomètre sur le pololu qui permet de régler le courant maximal qui passe dans le moteur.

 

 

 

 

 

 

Quatrième étape : montage du radiateur sur le Mosfet de commande du lit chauffant (Bed)

Monter le radiateur sur le Mosfet le plus près du bord de la carte ( c’est le Mosfet de commande du lit chauffant), utilisez une vis M3-8 avec écrou et rondelle pour la fixation, avec une petite goutte de graisse thermique entre le mosfet et le radiateur.

Le montage du radiateur sur l’autre Mosfet ( chauffage du nozzle) n’est pas nécessaire, la puissance commutée est faible ( environ 20W), alors que celui du bed peut monter jusqu’a 130W.

 

 

 

 Cinquième étape : téléchargement du Firmware.

Vous aurez besoin :

  • firmware MarlinV1 par exemple ( fonctionne aussi avec teacup, sprinter, repetier,..)
  • IDE arduino version 023 ( windows, Mac OS X Linux 32bits 64 bits )
  • Patch pour l’IDE à de-zipper et copier dans le répertoire hardware de l’IDE arduino 023
  • et le driver FTDI pour le port USB suivant votre système d’exploitation

La carte Azteeg X1 est compatible avec les cartes sanguino et sanguinololu. Par la suite on utilisera ces spécifications pour le réglage de l’environnement.

Brancher un cable USB/miniUSB entre le PC et la carte. bien vérifier la position du strap sur la carte ( voir flèche rouge sur la photo ci dessous) celui ci doit être positionner “USB”, ce qui permet au port USB d’alimenter la carte. Par la suite il sera possible de positionner ce strap sur l’autre position afin d’utiliser l’alimentation extérieur. (si besoin)

Une petite led au centre de la carte doit s’allumé pour préciser la bonne alimentation de la carte. Si le driver associé au port USB ne s’installe pas , télécharger et installer le driver FTDI VCP depuis le site de FTDI.
Vous pouvez alors lancer l’IDE ARDUINO 023.

Et éditer le firmware Marlin en sélectionnant le fichier marlin.pde

slectionner tools/board/sanguino W/AT 1284P 16Mhz,et tools/serial port/ COMxx

Quelques variables sont à régler dans les fichiers configuration.h et pins.h pour adapter le firmware à la carte et à votre imprimante.

 

 

 

 

 

modification en gras dans le texte ci dessous.

Fichier configuration.h

// 62 = Sanguinololu 1.2 and above
// 63 = Melzi
// 7  = Ultimaker
// 71 = Ultimaker (Older electronics. Pre 1.5.4. This is rare)
// 8  = Teensylu
// 9  = Gen3+
// 70 = Megatronics
// 90 = Alpha OMCA board
// 91 = Final OMCA board
// Rambo = 301

#ifndef MOTHERBOARD
#define MOTHERBOARD 62
#endif

Fichier pins.h

#if MOTHERBOARD == 63
#define MELZI
#endif
#if MOTHERBOARD == 62 || MOTHERBOARD == 63
#undef MOTHERBOARD
#define MOTHERBOARD 6
#define SANGUINOLOLU_V_1_2
#endif
#if MOTHERBOARD == 6
#define KNOWN_BOARD 1
#ifndef __AVR_ATmega644P__
#ifndef __AVR_ATmega1284P__
#error Oops!  Make sure you have 'Sanguino' selected from the 'Tools -> Boards' menu.
#endif
#endif

#define X_STEP_PIN         15
#define X_DIR_PIN          21
#if X_HOME_DIR < 0
# define X_MIN_PIN          18
# define X_MAX_PIN          -1
#else
# define X_MIN_PIN          -1
# define X_MAX_PIN          18
#endif

#define Y_STEP_PIN         22
#define Y_DIR_PIN          23
#if Y_HOME_DIR < 0
# define Y_MIN_PIN          19
# define Y_MAX_PIN          -1
#else
# define Y_MIN_PIN          -1
# define Y_MAX_PIN          19
#endif

#define Z_STEP_PIN         3
#define Z_DIR_PIN          2
#if Z_HOME_DIR < 0
# define Z_MIN_PIN          20
# define Z_MAX_PIN          -1
#else
# define Z_MIN_PIN          -1
# define Z_MAX_PIN          20
#endif

#define E0_STEP_PIN         1
#define E0_DIR_PIN          0

#define LED_PIN            -1

#define FAN_PIN 4

Les autres paramètres  dépendent du type de matériel que vous utilisez sur votre imprimante.

quelques exemples de paramètre pour la Prism Paoparts:

Fichier configuration.h

// This determines the communication speed of the printer
//#define BAUDRATE 250000
#define BAUDRATE 115200
#define TEMP_SENSOR_0 6
#define TEMP_SENSOR_1 0
#define TEMP_SENSOR_2 0
#define TEMP_SENSOR_BED 6
#define DEFAULT_AXIS_STEPS_PER_UNIT   {78.7402,78.7402,3200/1.25,760*1.1}  // default steps per unit for ultimaker
#define DEFAULT_MAX_FEEDRATE          {500, 500, 2, 45}    // (mm/sec)
#define DEFAULT_MAX_ACCELERATION      {9000,9000,50,10000}    // X, Y, Z, E maximum

Compiler et uploader le firmware sur la carte. 2 led installées près de la connectique USB sur la carte doivent clignoter pendant le transfert.
Pour vérifier le bon fonctionnement du firmware sur la carte , une fois téléchargé, ouvrir la console série de l’IDE arduino023( Tools/Serial Monitor) , régler sa vitesse à 115200 bauds. Le firmware doit alors vous répondre ( vous pouvez appuyer sur le bouton reset de la carte).
sur la photo ci dessous le firmware retourne une erreur normale, car les thermistances de régulation de la température du nozzle et du bed  ne sont pas encore branchées, le firmware l’identifie et “arrête” par sécurité le fonctionnement de l’extrudeur ( extruder switched off)

 Sixième étape : Cablage moteur, extrudeur, lit chauffant.

 

(a suivre)

Posted in L'électronique | 16 Comments

Prochain Workshop de construction d’imprimantes 3D à Grenoble les 25 & 26 Mai 2013

toutes les informations sont sur le site d’echosciences


Posted in Uncategorized | Leave a comment

Workshop les 16 et 17 Février à Grenoble

Et voila la 2° édition du Workshop dans les locaux du Fablab de Grenoble – La casemate.

C’est 4 imprimantes Prism, un peu ‘PaoPartisées’  ;) qui sont sorties de la casemate le dimanche soir, après 2 journée de travail intense.

vivement la 3° édition.

 

 

 

 

Le fablab de Grenoble:  dans une ancienne casemate. un environnement exceptionnel.

 

Et très international : So Scottish !!!

Posted in Uncategorized | 92 Comments

Workshop grenoble les 8 et 9 décembre

 

8 et 9 décembre 2012, La casemate de Grenoble accueillait son premier Workshop de montage d’imprimante 3D.

Ont participé à l’aventure: le Fablab du CCSTI, le LOG ( laboratoire Ouvert Grenoblois), GI-Nova la plateforme universitaire de l’université de Grenoble et Paoparts pour la fourniture des kits et bien sur les nouveaux reprappers qui sont reparti avec leur imprimante.

 

 

Dimanche 9 décembre à 19h00 : Et voila le travail, 3 nouvelles Prism.

Solidarité: il faut être à 4 pour le montage de l’embase

 

Dimanche 9 décembre 13h00 : Opération câblage : bonjour le gros plat de nouilles

 

 

Dimanche 9 décembre à 12h00 : pizzas pour tout le monde. reste à télécharger le firmware, calibrer les machines et apprendre l’usage des slicers. Chacun personnalise son imprimante en choisissant la couleur, et les logos. La découpeuse laser du fablab n’a pas chômé.

 

Dimanche 9 décembre à 9h00 : Le travail reprend. Après une journée de neige ininterrompu, c’est le grand beau. les grenoblois foncent tous dans les stations de ski. La casemate est de nouveau en ébullition, les nouveaux reprappers vont s’attaquer au montage de l’électronique.

 

Samedi à 16h40, après 7 heures de travail intense, les mécaniques des Prism1.5 sont presque opérationnelles

Posted in Uncategorized | 25 Comments

La prism revisitée.

Ci après quelques photos du modèle prism proposé lors du workshop de Grenoble les 8 et 9 décembre 2012.

Posted in Uncategorized | Leave a comment

Raspberry Pi et Reprap

Comment utiliser un Raspberry Pi pour remplacer le PC host qui envoie les Gcodes à la carte de commande?

Attention dans cet article il n’est nullement question de piloter directement l’imprimante avec le raspberry, mais uniquement d’utiliser celui ci pour envoyer les gcodes à la carte contrôleur. Le Raspeberry Pi est un mini PC autonome pour un cout ridicule de $25.95

câblage de l’ensemble :

Le Raspberry est relié via le port USB à la carte de commande de l’imprimante. En utilisant un câble FTDI avec la carte GEN7 ou directement avec des câbles USB/USB pour les cartes GEN6, Ramps.

Un câble réseau permet de relier le Raspberry au monde extérieur, ce qui permettra de télécharger les fichiers stl ou gcodes vers le Raspberry par l’intermédiaire de commande SCP , ou bien de déporter l’affichage avec un service VNC.

Et sans oublier l’alimentation du raspberry. J’utilise pour cela un petit transfo avec câble avec terminaison microUSB. Attention à la qualité du transfo, surtout en provenance d’asie. Sans être un critère déterminant un transfo un peu épais est gage au moins qu’il existe des composants à l’intérieur ;)

Nul besoin d’écran, de clavier , voire de souris supplémentaires. Toutes les commandes seront passées au Rapsberry soit en ssh, soit en utilisant un serveur VNC à partir d’un PC fixe ou portable, qui pourra être déconnecté une fois le job lancé. Sur la photo ci contre , le raspberry est rangé dans une boite imprimée en PLA crée par Redpeppr, fichier stl disponible ( pour le moment!) sur thingiverse . On voit au premier plan l’alimentation « ventrue »…

La carte SD du Raspberry

Le plus simple est de partir de la config Raspbian “wheezy” téléchargeable à l’URL http://downloads.raspberrypi.org/images/raspbian/2012-09-18-wheezy-raspbian/2012-09-18-wheezy-raspbian.zip

C’est une image ISO qu’il faut inscrire sur la carte SD ( je vous conseille une carte minimal de 4Go ). pour cela vous utiliserez l’utilitaire DD sous linux, ou Win32DiskImager pour Windows pour copier l’image ISO sur la carte SD. Attention copier simplement le contenu de l’image ISO sur la carte SD n’est pas suffisant pour la rendre « bootable ».

Une fois les fichiers « transférés » sur la carte SD, avec les utilitaires décrits ci dessus, vous devez renommer le fichier boot_enable_ssh.rc en boot.rc sur la carte SD , pour activer au démarrage le service ssh, ce qui vous évitera par la suite de brancher un écran avec prise HDMI ( pas facile à trouver …)  – cette partie ci dessus je ne l’ai pas testé car j’avais sous la main une big TV LCD.

Une fois la carte prête, il suffit de l’insérer dans le Raspberry Pi, et d’alimenter la bête.

La connexion SSH

Une fois le Raspberry alimenté, vous pouvez vous connecter au raspberry en ssh à partir d’un PC connecté sur le même réseau. Pour avoir l’adresse IP récupéré par le rapsberry un petit coup d’œil sur le serveur DHCP de votre box est une bonne idée. Dans l’exemple ci dessous avec une freebox, en allant dans l’interface de configuration ( http://mafreebox.freebox.fr ) on récupère l’adresse IP 192.168.0.37 qui a été récupéré par le Raspberrypi.

pour cet exemple mon serveur DHCP est réglé assez cool, toute machines connectés sur le réseau récupère une adresse IP… il sera temps par la suite de remettre de l’ordre dans les sécurités associées aux adresses MAC… et d’identifier avec un bail statique le Raspberry.

Puis avec un émulateur ssh, putty par exemple sous windows, ou directement la commande ssh sous linux faites :

  • ssh 192.168.0.37 ( c’est l’adresse récupérée par le Raspberry)

Un écran de connection apparaît,

- le login par défaut est : pi

- le mot de passe : raspberry , attention le clavier est réglé sur Qwerty par défaut, il faut donc taper  si vous avez un clavier Azerty: rqsberry comme mot de passe.

la première chose à faire est de spécifier le bon type de clavier, si vous utiliser un azerty il faut taper :

  • sudo setxkbmap fr

Les drivers USB FTDI

Voila vous êtes sous Raspberry avec une distrib Debian adapté à la bête.

C’est pas le tout, mais l’objectif est de connecter la carte Rapsberry à la carte de commande de l’imprimante. Ce qui est sympa c’est que les drivers FTDI sont inclus dans le noyau. Si vous branchez le câble USB ou USB/FTDI entre le Raspberry et la carte contrôleur, vous retrouverez le port directement opérationnel. tapez dans la fenêtre ssh la commande

  • ls /dev/ttyU*

et vous retrouver le port monté pour l’occasion.

/dev/ttyUSB0 par exemple.

Les utilitaires de dialogue avec la carte « REPRAP »

Le Raspberry n’étant pas un foudre de guerre, je vais en décevoir plus d’un, mais je vous conseille d’utiliser la ligne de commande pour dialoguer avec la carte de commande. Vous pouvez installer des Hosts graphiques, mais finalement à l’usage vous verrez cela n’est pas forcement nécessaires. Je vous explique la démarche pour installer les utilitaires liés à Printrun développé par Kliment. Avant d’installer ces utilitaires, il faut installer quelques dépendances :

  • sudo apt-get update
  • sudo apt-get install python-serial python-wxgtk2.8 python-tk git-core

si vous voulez juste utiliser un dialogue en ligne de commande il vous suffit d’installer comme seule dépendance :

  • sudo apt-get install python-serial

Il faut ensuite récupérer les fichiers de pronterface sur github , que vous enregistrez alors un fichier tarballgz : kliment-printrun-xxxxxxx.tar.gz

Vous décompressez de fichier en utilisant la commande :

  • tar -xvf kliment-printrun-xxxxxxx.tar.gz

un répertoire kliment-printrun-xxxxx est créé que vous pouvez renommer en printrun.

 

Dialogue en ligne de commande avec la carte contrôleur

Vous pouvez alors commencer le dialogue. Nous allons utiliser l’utilitaire pronsole.py écrit en python que vous retrouvez dans le répertoire printrun nouvellement créé.

Déplacer vous dans ce répertoire

  • cd printrun

puis lancer l’utilitaire de dialogue avec la carte, c’est du python:

  • python pronsole.py

un ptit help pour avoir toutes les commandes.

Et help topic, vous donne de l’aide sur le topic…. facile.

  •  connect : pour se connecter à la carte. Par défaut il se connecte avec le port /dev/ttyUSB0
  • move X 20 : déplacement en X de 20 mm dans le sens positif
  • home Y : mise en position origine suivant l’axe Y
  • bedtemp 55 : met en chauffe le bed pour une température de 55°
  • settemp 200 : met en chauffe le nozzle a 200°
  • extrude : extrude 5 mm de fil
  • monitor 3: donne l’état du job avec les températures du bed et de l’extrudeur toutes les 3 secondes
  • load mongcode.gcode : charge le fichier gcode que vous avez préalablement généré avec slc3r ou skeinforge.
  • print : lance l’impression du fichier chargé par la commande load.

Vous voilà prêt pour la commande de votre imprimante à la mode ligne de commande.

Attention quand vous fermez la fenêtre SSH, vous interrompez le job, et l’impression s’arrête. Pour se déconnecter sans souci , voir la suite avec l’installation d’un serveur VNC.

Un serveur VNC pour faciliter et surveiller.

Il peut être intéressant d’utiliser aussi un serveur vnc sur le raspberry pour déporter l’écran graphique. J’ai utilisé pour cette distribution le serveur VNC tighvncserver.

Faites dans la fenêtre ssh :

  • sudo apt-get install tightvncserver

et pour le lancer

  • /usr/bin/tightvncserver

le script de démarrage demande un mot de passe pour sécuriser la connexion. Un serveur VNC tourne maintenant sur le raspberry.

Il vous suffit alors d’installer un client VNC sur votre PC portable, téléphone android, tablette, … J’utilise par exemple sur le PC portable le client VNC : VNC-viewer http://www.realvnc.com/download/viewer/, l’appli Android androidVNC pour mes appareils android ( tablette et smartphone)

Avec ce client VNC vous pouvez alors déporter une fenêtre graphique, et travailler sur le Raspberry comme si vous aviez connecté un écran, un clavier et une souris.

Vous pouvez alors dans une fenêtre terminal lancer la console pronsole.py, comme vous l’avez fait précédemment dans la fenêtre ssh. L’avantage c’est que vous pouvez quitter le client VNC sans que cela interrompe le job en cours. Vous pouvez alors éteindre votre PC portable et laisser le Raspberry bosser tout seul.

Résultats :

Sur mon Samsung Galaxy, en pleine impression de pièce pour la Foldarap:) 14 % du travail. Ca c’est la classe… je vérifie comme cela le job, direct en pleine rue….

Et depuis mon portable.

Et une webcam pour surveiller.

En utilisant le logiciel guvcviewer, Il ouvre une fenêtre graphique. Celle peut être visualiser à partir de l’écran déporté grâce au client VNC.

installation des paquets pour installer guvcviewer

 

  • sudo apt-get install guvcview

 

j’ai utilisé une webcam Logitech directement reconnue, et qui est auto-alimentée par le port USB sans effondrer l’alimentation du Raspberry.

N’hésitez pas, si vous voyez des erreurs : pierrot@paoparts.com

 

Posted in Uncategorized | 60 Comments

Prochaine commande de PLA et ABS

la prochaine commande de PLA et ABS aura lieu fin aout début septembre.

Profitez en pour nous faire connaitre vos désidérata en couleur .

Une seul adresse : sophie.choye@paoparts.com

Posted in PAL et ABS | Leave a comment

Ventilateur pour l’extrudeur, commandé par la GEN7 avec Teacup

Le SevenSwitch

Le SevenSwitch est un circuit additionnel à la GEN7 permettant la commande de système auxiliaire : ventilateur, enceinte thermostatée, éclairage, voyant, buzzer(!) , …. Ce circuit peut utiliser une sortie PWM de l’ATMega pour faire varier en continu cette commande. Il est a noter qu’on trouve sur le WEB des commandes d’actionneur, directement depuis une sortie de l’ATMega. Gaffe ça peut être dangereux pour le microcontroleur. En  dehors de l’intensité maximale que peut fournir l’ATMega (40mA) , des retours de courant fréquent avec les moteurs électriques peuvent faire fumer le composant. Vous trouverez rapidement le SevenSwitch en vente sur la boutique si le besoin s’en fait sentir.

La sortie toute récente de ce sevenswitch (merci Markus) était l’occasion rêvée pour mettre en place un ventilateur permettant de refroidir le PLA dès sa dépose. Ce ventilateur est  surtout utile pour éviter que le PLA(ou ABS) ne s’effondre lors de la construction de  ponts (bridges), mais aussi lors de la réalisation de pièces avec de petites sections. les dernières versions de Slic3r intègre cette fonctionnalité (voir onglet cooling).
Un petit coup de ventilateur pour forcer la solidification au bon moment et le tour est joué.
Vous pouvez aussi utiliser ce ventilateur pour refroidir la partie montante de votre nozzle, surtout si vous trouvez que la chaleur du nozzle remonte trop vers le chariot et vient ramollir la pièce x-carriage.

Le ventilateur, un 40x40mm, est porté par l’extrudeur. il existe plein de configurations possible pour fixer le ventilateur sur le chariot X qui porte l’extrudeur, je vous laisse voir sur thingverse ces différentes solutions.fan-extrudeur

 

Pour la partie logiciel les codes G à utiliser sont:

  •   M106 pour activer le ventilateur
  •   M107 pour l’éteindre

Vous pouvez, suivant le firmware (a priori pas le TEACUP ), spécifier la vitesse de rotation entre 0 et 255 avec la commande M106 S255.

Pour le câblage sur la GEN7.

Le plus simple, et sans risque pour l’ATMEGA, est de se reprendre sur le conn6 de la carte GEN7. Pour cela il ne faut pas utilisez pas les fins de course Max. Ce conn6 est utilisé pour télécharger le bootloader dans le microcontroleur. Autant dire que ce connecteur est très peu utilisé, les Atmega étant souvent fourni avec le bootloader si vous les achetez auprès de Markus ou de Paoparts.
Sur ce connecteur vous avez accès à la pin7 du port PB6 appelé DIO06 (ouf!) du microcontroleur. C’est ce port E/S que nous allons utiliser pour piloter le sevenswitch qui lui même commande le ventilateur. Ce port est aussi câblé pour le capteur fin de course XMax, vérifiez bien que vous ne l’utilisez pas.
RMQ : vous pouvez aussi utiliser le port PD4 – DIO12 disponible sur le connecteur MISC si vous avez soudée une embase sur la carte GEN7.
GEN7-conn6 pour FanIl suffit alors de tirer 2 fils du conn6:
- pin1: commande DIO06—> fil blanc/brun
- pin6: masse —> fil brun

sur la photo j’ai utilisé 2 connecteur 2 prises molex dont 1 fiche à chaque fois n’est pas utilisée…. je n’avais que cela sous la main.

ces 2 fils sont reliés à l’entrée du SevenSwitch (prise CONN2), voir l’image ci contre.Le ventilateur est connecté sur la sortie du sevenswitch (prise HEATER).
Le SevenSwitch est alimenté avec une prise MOLEX issue de l’alimentation ( prise CONN1).

 

 

 

 

 

 

 

Le FirmWare:

Il faut maintenant régler le firmware, pour qu’il prenne en compte les commandes M106 et M107 et spécifier le port utilisé. Sous Teacup il faut rajouter 2 lignes dans le fichier config.h, ligne en gras ci dessous.

*********************************************************************************

// name port
DEFINE_HEATER(extruder, DIO4)
DEFINE_HEATER(bed, DIO3)
DEFINE_HEATER(fan, DIO6) // FAN A RAJOUTER- utilisation de PB6 sur broche 7 - GEN7 conn6 - broche 1 et 6 - remplace XMAX

/// and now because the c preprocessor isn’t as smart as it could be,
/// uncomment the ones you’ve listed above and comment the rest.
/// NOTE: these are used to enable various capability-specific chunks of code, you do NOT need to create new entries unless you are adding new capabilities elsewhere in the code!
/// so if you list a bed above, uncomment HEATER_BED, but if you list a chamber you do NOT need to create HEATED_CHAMBER
/// I have searched high and low for a way to make the preprocessor do this for us, but so far I have not found a way.

#define HEATER_EXTRUDER HEATER_extruder
#define HEATER_BED HEATER_bed
#define HEATER_FAN HEATER_fan // FAN A RAJOUTER
*****************************************************************************

Compilez votre nouveau firmware en utilisant l’IDE Arduino, téléchargez le firmware sur votre carte, et testez tout cela en utilisant l’interface Host Repetier par exemple.
Attention pour que cela fonctionne il faut que l’alimentation ne soit pas en veille ( led verte allumée), vous pouvez faire sortir la carte du mode veille en mettant en chauffe le lit chauffant, ensuite  tapez la commande M106 dans l’interface de dialogue, si tout se passe bien le ventilateur se met en route.

Slic3r :

Régler la configuration de votre slicer, en activant la fonction cooling. Celui ci intégrera les commandes M106 et M107 dans votre codeG au bon moment.

 

La suite:

profiter jusqu’au bout de la commande en PWM et des capacités du SevenSwitch pour faire varier la vitesse du ventilateur:
il faut modifier ( je n’ai pas encore eu le temps de regarder cela)  les lignes du fichier gcode_process.c du code du firmware TEACUP à partir des lignes numéro 509
******************************************************

case 106:
//? --- M106: Fan On ---
//?
//? Example: M106
//?
//? Turn on the cooling fan (if any).
//?

#ifdef ENFORCE_ORDER // wait for all moves to complete
queue_wait();
#endif
#ifdef HEATER_FAN
heater_set(HEATER_FAN, 255);
#endif
break;

***************************************************

Posted in EXTRUDEUR | 20 Comments

Caisson inférieur pour Prusa

Caisson Paoparts

    Fini l’alimentation qui traine sur le coté,
    les fils qui dépassent partout,
    la carte de commande pas protégé,

Avec ce nouveau caisson, construit dans l’esprit Reprap. Celui ci permet de surélever l’imprimante, ce qui permet d’y glisser tout ce qui traine. Des flasques que vous pouvez réaliser en bois ou plastique, ferment tout cela.
L’alimentation de PC est directement fixée sur le flasque arrière
1 ventilateur permet le refroidissement de la carte ( driver et Mosfet). j’ai même déporté les LED sur la face avant.

pour le montage c’est simple:
1 – vous insérez (vissez) les 4 tiges filetés M8 de 100mm dans des perçages de diamètre 8 que vous avez effectué dans les frame-vertex-withfoot ( gaffe c’est fragile, j’ai mis des petits bracelets plastiques pour éviter que ça s’ouvre) ou bien vous choisissez d’imprimer les 4 nouveaux frame_vertex dans l’archive zip ci joint, qui comprennent les perçages.
2 – vous glissez les 4 flasques, puis les 4 brides basses sur les tiges filetées, vous terminez par un écrou M8.
3 – vous clipsez ensuite les pinces supérieures,
4 – vous percez les flasques pour pouvoir faire passer des vis M4x16 sur les brides sup et brides basses.
et voila reste plus qu’a fixer l’alimentation , le ventilo, la carte GEN7 sur son support.

les fichiers STL : caisson-prusa
Si vous le désirez nous pouvons vous fournir ce kit sur la boutique Paoparts, n’hésitez pas à nous contacter.

Posted in PRUSA | Leave a comment