Aller au contenu

GO Print

Affichage du numéro de la couche en cours


Messages recommandés

Voici une astuce pour pouvoir voir le numéro de la couche en cours d’impression.

il faut commencer par modifier configuration.h 

#define DISABLE_Z false

#define DISABLE_X false
#define DISABLE_Y false
#define DISABLE_Z false // ancienne valeur true permet de voir Z sur l'écran

puis ajouter les lignes suivantes dans dogm_lcd_implementation.h en dessous de #include "Configuration.h"

la déclaration des variables nb_couche et z_en_cours

#include "Configuration.h"

int nb_couche=0;//numero de la couche en cours
float z_en_cours;// position Z en cours

puis ajouter les lignes suivantes après

if (axis_known_position[Z_AXIS])

  if (axis_known_position[Z_AXIS])
    {
    lcd_print(ftostr32sp(current_position[Z_AXIS]));
    if (current_position[X_AXIS] == 100 && current_position[Y_AXIS] == 200)//test la position de depart pour initialiser la première couche
    {
      nb_couche=0;
      z_en_cours = current_position[Z_AXIS];//initialisation de la couche en cours
    }
    }
  else
    lcd_printPGM(PSTR("---.--"));
  u8g.setColorIndex(1); // black on white
  
 // test si est imprime plusiuers objets
  if (z_en_cours > current_position[Z_AXIS])// test si extrudeur est redescendu
  {
    nb_couche = 1;// impression première couche
    z_en_cours = current_position[Z_AXIS];
  }
  
// test du changement de niveau de la couche 
  if (z_en_cours != current_position[Z_AXIS])
  {
    nb_couche++;// incrementation du nombre de couche
    z_en_cours = current_position[Z_AXIS];
  }  
    
 
//affichage du numero de la couche  
    u8g.setPrintPos(40, 28); 
    lcd_print('C');
    lcd_print(ftostr32sp(nb_couche));
  

Voici ce que donne l'affichage en cours d'impression

 

 

DSC_0242.JPG

DSC_0243.JPG

  • J'aime 1
Lien vers le commentaire
Partager sur d’autres sites

petite amélioration du programme

mettre z_en_cours=200 pour initialiser la première couche 

puis simplifier le code comme ci-dessous

  if (axis_known_position[Z_AXIS])
    lcd_print(ftostr32sp(current_position[Z_AXIS]));
  else
    lcd_printPGM(PSTR("---.--"));
  u8g.setColorIndex(1); // black on white
  
 // test si est on commence la première couche
  if (z_en_cours > current_position[Z_AXIS])// test si extrudeur est redescendu
  {
    nb_couche = 1;// impression première couche
    z_en_cours = current_position[Z_AXIS];
  }
  
// test du changement de niveau de la couche 
  if (z_en_cours != current_position[Z_AXIS])
  {
    nb_couche++;// incrementation du nombre de couche
    z_en_cours = current_position[Z_AXIS];
  }  
    
 
//affichage du numero de la couche  
    u8g.setPrintPos(40, 28); 
    lcd_print('C');
    lcd_print(ftostr32sp(nb_couche));
  • J'aime 2
Lien vers le commentaire
Partager sur d’autres sites

  • 1 month later...
  • 2 weeks later...
il y a 34 minutes, gisclace a dit :

@phg31150, une petite recherche sur google te donne la solution en deux secondes et je suis sûr que sur le forum la réponse est déjà présente.

@gisclace, Franchement merci pour cette réponse ultra constructive ¬¬

Lien vers le commentaire
Partager sur d’autres sites

C'est pas fait pour être constructif, mais franchement ce genre de message .... le forum est entre autre une zone d'entre aide, mais c'est agréable de sentir un minimum de bonne volonté de la part du demandeur.

Un message du type : "Bonjour, je n'y connais rien en arduino, je n'ai jamais touché à ça, je suis complétement perdu dans les types de cartes et j'ai peur de faire une boulette malgré mes recherches", te donnera plus  réponse et nous donnera envie d'aider plutôt que : "bonjour, j'ai la flemme de chercher, vous pouvez me donner la solution. (sans merci)".

  • J'aime 3
Lien vers le commentaire
Partager sur d’autres sites

@gisclace, Sans vouloir me confondre en excuse, je suis vraiment désolé si je t'ai offensé:$. Mais je suis dans le cas de la deuxième partie de ton message. Mon intention était simplement d'être concis. En ce qui concerne les remerciement, je suis quelqu'un de très bien élevé et polis, donc dans tout les cas j'aurais remercié la personne m'ayant fournis une réponse. Ceci étant dit, je ne souhaite pas non plus polluer ce post.

Donc après recherche sur Google sans résultats suffisamment clair j'ai donc recherché sur le site, mais la fonction recherche n'est pas très au point, j'ai donc posé la question sur le post qui me semblait le plus adapté a me fournir une réponse.

Cordialement PHG

P.S : pour des réponses a ce message mais hors sujet du post faitent-le en M.P, S.V.P.

Modifié (le) par phg31150
Lien vers le commentaire
Partager sur d’autres sites

il y a 8 minutes, phg31150 a dit :

Donc après recherche sur Google sans résultats suffisamment clair j'ai donc recherché sur le site, mais la fonction recherche n'est pas très au point, j'ai donc posé la question sur le post qui me semblait le plus adapté a me fournir une réponse.

Ha ça j'aurais dit : as-tu testé de prendre arduino mega 2560 ? ;)

 

Et pour clore le sujet :

Ne le prends pas directement pour toi, mais on a trop souvent des gens qui passent et qui nous prennent juste pour un sav et qui clairement ne prennent pas la peine de faire la moindre recherche.

Lien vers le commentaire
Partager sur d’autres sites

attention, ca peut etre aussi un probleme de communication.

Sur quel OS es tu (Linux, Windows, ...) => voir si la carte est bien détecté

Sous Windows => gestionnaire de périphériques

Sous Linux => ls -al /dev/ttyACM0

As tu bien sélectionné le serial port dans le menu Tools ?

Est ce que la vitesse de connexion est correcte ?

 

Edit : Oubli ce que j'ai dit au dessus. C'est juste qu'il y a une erreur dans le programme

Modifié (le) par Desloo
Lien vers le commentaire
Partager sur d’autres sites

Je tourne sous Windows, le COM4 est sélectionné ce qui correspond au port de ma easy et la vitesse de com est 115200 comme dans mon gestionnaire de périphériques.

L'erreur complète est :

\Imp3D\Hex_DiscoEasy+ecran\DiscoEasy\DiscoEasy.ino:52:110: fatal error: U8glib.h: No such file or directory

     #include <U8glib.h> // library for graphics LCD by Oli Kraus (https://github.com/olikraus/U8glib_Arduino)

                                                                                                        ^

compilation terminated.

exit status 1
Erreur de compilation pour la carte Arduino/Genuino Mega or Mega 2560

Lien vers le commentaire
Partager sur d’autres sites

Il te manque la librairie U8glib_Arduino.

Tu la télécharge via le lien donné, tu mets tout dans "mesDocuments/Arduino/librairies", tu relances arduino et dis nous si c'est bon.

La vitesse me semble étrange par contre (si ça plante, mets 25000)

Modifié (le) par gisclace
Lien vers le commentaire
Partager sur d’autres sites

Merci pour vos réponses qui m'on fait avancer, 1 pour la Lib manquante et 2 j'ai réduit la vitesse de com. Mais voila il y a une nouvelle erreur que je ne comprend pas car j'ai suivi le post de @Vivion91 et je me retrouve avec ceci :

In file included from sketch\ultralcd.cpp:79:0:

sketch\dogm_lcd_implementation.h: In function 'void _draw_axis_label(AxisEnum, const char*, bool)':

dogm_lcd_implementation.h:333: error: 'Z_axis' was not declared in this scope

         if (axis_known_position[Z_axis])

                                 ^

exit status 1
'Z_axis' was not declared in this scope

Lien vers le commentaire
Partager sur d’autres sites

tu utilises une variable non déclaré dans le static ou en global.

Z_AXIS est en majuscule :)

chaque variable est sensible à la casse.

Edit : n'oublie pas de refaire ta conf Z ensuite car tu auras perdu ton réglage.

Modifié (le) par Desloo
Lien vers le commentaire
Partager sur d’autres sites

Des nouvelles du front:D (désolé pour l'attente vie de famille oblige). le N° de la couche s'affiche :banana:Mais, parce qu'il y a un mais, la ligne où s'affiche la couche clignote en permanence avec un sablier logo de la tête d'impression apres le N° de la couche et la ligne du dessous (celle en blanc) clignote elle aussi alternant les valeurs de XYZ et une autre valeur de Z 

 

IMG_20161208_211051.jpg

Modifié (le) par phg31150
Lien vers le commentaire
Partager sur d’autres sites

Créer un compte ou se connecter pour commenter

Vous devez être membre afin de pouvoir déposer un commentaire

Créer un compte

Créez un compte sur notre communauté. C’est facile !

Créer un nouveau compte

Se connecter

Vous avez déjà un compte ? Connectez-vous ici.

Connectez-vous maintenant
  • Sur cette page :   0 membre est en ligne

    • Aucun utilisateur enregistré regarde cette page.
  • YouTube / Les Imprimantes 3D .fr

×
×
  • Créer...