Difference between revisions of "Projets:Lab:2015:SolderStation:Firmware"
(→Le firmware) |
(→Le firmware) |
||
Line 103: | Line 103: | ||
[[File:Rotation.PNG|400px|left|]] | [[File:Rotation.PNG|400px|left|]] | ||
<br style="clear: both" /> | <br style="clear: both" /> | ||
+ | |||
+ | '''Etape 5 : suite des opérations ''' | ||
Chargez le programme dans l’IDE Arduino en double-cliquant sur le fichier | Chargez le programme dans l’IDE Arduino en double-cliquant sur le fichier |
Latest revision as of 09:14, 15 November 2015
Sept pages du Wiki et deux fichiers sont associées à ce manuel : * Les instructions de chargement du firmware (version Française) * Une presentation générale de l'appareil (version Française) * Le guide de montage illustré (version Française) * File:BOM Station CMS.xls La liste d'achat au format xls * File:BOM Montage.xls La liste de montage au format xls * Loading the firmware, (English version) * Assembly Manual, (English version) * A quick general presentation of the solder station(English version) * Bausatzanleitung, mit Bilder (Deutsche Seite)
Le firmware
En aucun cas, la panne ne doit recevoir une tension permanente continue de 12V. Un tel traitement a pour conséquence de porter son extrémité au rouge vif, grillant à la fois la résistance de chauffe, le capteur, et rendant la panne inutilisable. Il est donc vital, une fois le montage achevé, et avant même d’avoir branché la panne sur son connecteur « jack stéréo », de bien vérifier la présence du signal carré PWM en sortie de Q1.
Cette vérification peut se faire de deux manières :
- Soit en vérifiant la présence de ce signal en extrémité de câble avec un oscilloscope
- Soit en ouvrant la fenêtre de communication série de l’IDE Arduino, dans laquelle doit s’afficher, durant les premières seconde de boot du microcontroleur, la température de la sonde (20°C lorsque la panne n’est pas branchée), la valeur du PWM, la température de consigne
Si ces tests ne sont pas concluants, c’est qu’une erreur a été commise dans le montage ou que la programmation de l’Arduino a échoué. Ne pas brancher la panne tant que le problème n’a pas été résolu.
Le code Arduino chargé de la régulation en température est l’œuvre de Yann « Dyblast », inspiré par le travail de Martin Kumm DC3MKB. Yann a effectué un travail fantastique de nettoyage et d’optimisation du code, intégrant d’importantes modifications. Et notamment :
- Une routine de contrôle permanent de la sortie PWM avec une sécurité interdisant tout emballement thermique et donnant à l’utilisateur une idée du rapport cyclique en cours
- Une fonction de gestion d’un écran LCD couleur affichant en temps réel à la fois la température de fonctionnement, le point de consigne et les indications de largeur d’impulsion pwm
- La prise en compte de plusieurs configurations matérielles allant de la platine originale de DC3MKB au pcb de l’Electrolab (différent de la version originale en raison de la miniaturisation apportée par le « Nano » et pour des raisons de simplicité de routage)
- L’utilisation d’un encodeur rotatif pour le réglage de la température, jugé plus ergonomique que deux boutons poussoir de type « up-down » (le pcb d’affichage supporte à la fois la commande « boutons » et la commande
Les sources sont accessibles sur Github, à l’adresse suivante
https://github.com/diorcety/SolderStation
Les « hardeux canal historique » qui n’entendent rien à la chose informatique doivent télécharger tout le contenu de ce dépôt (bouton « Dowload Zip »), puis extraire l’archive (sous Windows), dans le répertoire Utilisateur/Documents/Arduino/. Opération qui créera 4 répertoires distincts. Par défaut, ce chemin permet à l’interface de développement Arduino de retrouver automatiquement le contenu du répertoire « libraries ».
Avant que de lancer la compilation du programme (action « téléverser » dans l’IDE Arduino), il faut éditer le fichier config.h situé dans le répertoire SolderStation (notepad++ ou autre éditeur)
Etape 1 : modification du fichier de configuration principal
Etape 2
Etape 3
… et changer la ligne
//#define CONFIG_NAME CONFIG_XXX
en
#define CONFIG_NAME CONFIG_ELECTROLAB
En d’autres termes, “décommentez” la ligne et spécifiez la configuration souhaitée.
Pour information (lire lignes 28 à 30), «CONFIG_DC3MKB » compile le code originel de Martin Kumm (pour Arduino Uno et piggy-back intégrant l’électronique de puissance et l’afficheur), tandis que CONFIG_XXX correspond à la configuration de Yann « Dyblast » (pinout proche de celui de DC3MKB mais incompatible avec celui de l’Electrolab et afficheur lcd couleur de la température et des points de consigne). Une troisième version « Electrolab avec afficheur LCD couleur » est en cours d’étude.
Sauvegardez votre modification
Etape 4 : modification du sens de rotation de l'encodeur
Ce paramètre est situé dans le fichier "config_electrolab.h"
la ligne
#define ROTATING_UP_DOWN_DIVIDER -4 //
peut être modifiée par
#define ROTATING_UP_DOWN_DIVIDER 4 //
Etape 5 : suite des opérations
Chargez le programme dans l’IDE Arduino en double-cliquant sur le fichier
- Utilisateur/Documents/Arduino/ SolderStation.ino
Compilez et téléchargez votre firmware dans l’Arduino (icone flèche « téléversez »)
Notez qu’il est possible de vérifier le bon fonctionnement du microcontroleur en cours de fonctionnement en ouvrant une fenêtre de «moniteur série » (Ctrl-Shift-M). La température de consigne et la température réelle de la panne s’affiche en mode défilant.