Charger le firmware sur une imprimante Rostock

  • Auteur de la discussion serge bombourg
  • Date de début
S
speedjf37
Compagnon
Bonjour,

Config.h

J'avais suggéré d'ajouter:
#include "macros.h"

et de désactiver pour commencer:

//#define ENABLE_AUTO_BED_LEVELING // Delete the comment to enable (remove // at the start of the line)


Configuration_adv.h

// Pourquoi cela ? (utile sur une cartésienne avec 2 moteurs sur l'axe Z)
#define Z_DUAL_ENDSTOPS


#define Z_HOME_BUMP_MM 5 // deltas need the same for all three axis

// Il est dit identique sur les 3 axes (pourquoi différent sur le Z ?)

#define HOMING_BUMP_DIVISOR {10, 10, 20} // Re-Bump Speed Divisor (Divides the Homing Feedrate)


JF
 
C
cr-_-
Compagnon
La réponse que j'obtiens, à m119:


17:38:01.862 : Reporting endstop status
17:38:01.862 : x_max: open
17:38:01.862 : y_max: open
17:38:01.862 : z_min: open
17:38:01.862 : z_max: TRIGGERED

Pour moi si les endstop ne sont pas actifs (les axes pas en bout de course) tu devrais avoir :

17:38:01.862 : Reporting endstop status
17:38:01.862 : x_max: open
17:38:01.862 : y_max: open
17:38:01.862 : z_max: open

donc pas de z_min et le z_max open, lors du homing je parie que c'est Z qui ne monte pas, ce qui semble logique puisque le endstop est considéré comme actif

donc en correction c'est soit du câblage soit de la config :)
 
C
cr-_-
Compagnon
En lisant vite fait ta config ça se confirme:
const bool X_MIN_ENDSTOP_INVERTING = false; // set to true to invert the logic of the endstop.
const bool Y_MIN_ENDSTOP_INVERTING = false; // set to true to invert the logic of the endstop.
const bool Z_MIN_ENDSTOP_INVERTING = true; // set to true to invert the logic of the endstop.

le Z est différent
 
S
serge bombourg
Apprenti
J'ai fais les modifs.

Pour #define Homming_BUMP (10,10,10) au pif, je ne sais pas ce que c'est.
Pour le reste j'ai modifié, mais j'ai une erreur.
Il e semble pas apprécier le macros.h:

In file included from /Marlin.h:22,
from blinkm.cpp:5:
/Configuration.h:813:20: error: macros.h: No such file or directory
 
S
serge bombourg
Apprenti
Peut-être un probème arduino, j'utilise la version 1.0.6 des version plus ressentes , comme la version 1.6.11, ne fonctionne pas ........
 
S
serge bombourg
Apprenti
Effectivement, je ne trouve pas de fichier macros.h dans cette version .....
 
S
speedjf37
Compagnon
Bonjour,

le fichier macro.h est dans les fichiers de Marlin !

il est particulièrement utilisé dans sanity_check.h
pour faire des vérification de configuration

#ifndef MACROS_H
#define MACROS_H

// Macros for bit masks
#define BIT(b) (1<<(b))
#define TEST(n,b) (((n)&BIT(b))!=0)
#define SET_BIT(n,b,value) (n) ^= ((-value)^(n)) & (BIT(b))

// Macros for maths shortcuts
#define RADIANS(d) ((d)*M_PI/180.0)
#define DEGREES(r) ((r)*180.0/M_PI)

// Macros to contrain values
#define NOLESS(v,n) do{ if (v < n) v = n; }while(0)
#define NOMORE(v,n) do{ if (v > n) v = n; }while(0)

// Macros to support option testing
#define _CAT(a, ...) a ## __VA_ARGS__
#define SWITCH_ENABLED_0 0
#define SWITCH_ENABLED_1 1
#define SWITCH_ENABLED_ 1
#define ENABLED(b) _CAT(SWITCH_ENABLED_, b)
#define DISABLED(b) (!_CAT(SWITCH_ENABLED_, b))

#define COUNT(a) (sizeof(a)/sizeof(*a))

#endif //__MACROS_H

JF
 
S
speedjf37
Compagnon
J'ai fais les modifs.

Pour #define Homming_BUMP (10,10,10) au pif, je ne sais pas ce que c'est.
Pour le reste j'ai modifié, mais j'ai une erreur.
Il e semble pas apprécier le macros.h:

In file included from /Marlin.h:22,
from blinkm.cpp:5:
/Configuration.h:813:20: error: macros.h: No such file or directory

Homming_BUMP c'est la gestion de la vitesse de retour après activation des fins de course
 
S
serge bombourg
Apprenti
OK . Mais dans quel répertoire, faut-il l'incorporer, ce code, Je ne le trouve nul part dans arduino. Je connais très mal arduino, et, c'est très spécial, comme système........
arduino 1.0.6 ne semble pas connaître ce fichier ........
 
S
serge bombourg
Apprenti
Je vais essayer de l'incorporer dans le répertoire marlin ........
 
S
serge bombourg
Apprenti
J'ai fais les modifications, et j'ai mis votre texte -> le fichier, de macros.h , dans Marlin,
et j'obtiens .....

12:44:24.264 : Reporting endstop status
12:44:24.264 : x_max: open
12:44:24.264 : y_max: open
12:44:24.264 : z_min: open
12:44:24.264 : z_max: TRIGGERED

Par contre je n'ai toujours pas de fonctionnement correct . En X et Y , le nombre de pas change suivant si on est en + ou en -,
et le déplacement latéral , monte ou descend (suivant + ou -).

En Z toujours pas le même nombre de pas (si + ou si -).
Et le bouton descend fait monter et le bouton monté fait descendre (ça, je pense qu'on peutl'inverser par cablage ou par parametrage .......) .
 
S
speedjf37
Compagnon
Bonjour,

Afin d’arrêter de tourner en rond voici mes propositions:

Pour valider le câblage l'électronique les moteurs et les fins de course , je suggère de désactiver l'option DELTA dans config.h

//#define DELTA

compiler téléverser puis tester les déplacement des moteurs (sens ,distance) et les fins de course (activation/desativation de chaque axe et M119 à chaque changement)

JF
 
M4vrick
M4vrick
Compagnon
Pas besoin de faire aussi compliqué.
Pour les fins de course il suffit de les actionner un à un avec le doigt pour voir si le comportement attendu est vu avec la commande M119
 
M4vrick
M4vrick
Compagnon
Déplacement en Z, les trois moteurs doivent bosser à l'unisson. Sinon il est facile de voir lequel pose soucis et dans quel sens.
 
S
serge bombourg
Apprenti
M4vric .... A aucun moment je 'ai jamais dis que les 3 moteurs ne fonctionnaient pas ensemble en Z,
c'est même une des rares choses qui fonctionne, mis, à part que le déplacement pour une même commande, par exemple : ''10'',
ne fait pas le même nombre de pas en montée qu'en descente.!!!!!!!!!

Bon je vais faire les manip. conseillées pour essayer d'avancer .....
 
M4vrick
M4vrick
Compagnon
Est-ce que tu fais bien le homing (G28) avant de faire des essais de montée et descente ?
 
S
serge bombourg
Apprenti
Pour l'instant j'essais de faire déplacer les axes ''X,Y,Z'', ce serait déjà pas mal......
Si je fais le homing, l'axe ''Z'' part en butée en bas,
les autres axes ne bougent pas.
et je suis obligé d'arrêter en panique ...........
 
M4vrick
M4vrick
Compagnon
Sans le homing l'imprimante ne sais pas où elle est.
Dans l'ordre il faut:

- Tester les fins de course et s'assurer qu'ils font bien ce qu'on attends d'eux (Je crois avoir vu que par défaut tu as un Zlimit activé, pas normal ca)
- Tester le homing pour s'assurer que les moteurs tournent tous dans le même sens (et avoir la main sur le bouton d'arret de l'alim au cas où en effet).
- Tester les déplacements
 
S
serge bombourg
Apprenti
J'ai inversé IINVERS_Z_DIR false pour être dans le bon sens sur l'axe des Z.
Ma commande en Z me fait un déplacement dans le sens des X !!!!!????????????????
Quand je fais un homing l'axe des Z descend, les switches Z, X n'ont pas d'effet !!!!!
Seul le switch Y l'arrête est déclenche le déplacement de la tête, entre les colonnes X,Y ( plus prés du X).
Et tout se bloque .....
 
M4vrick
M4vrick
Compagnon
avec la commande M119 tu as bien vérifié que tous tes switchs fin de course fonctionnent ?
 
S
serge bombourg
Apprenti
Swiches non activés:
14:06:23.989 : Reporting endstop status
14:06:23.989 : x_max: TRIGGERED
14:06:23.989 : y_max: TRIGGERED
14:06:23.989 : z_min: open
14:06:23.989 : z_max: open
Swich "X" activé:
14:06:42.993 : Reporting endstop status
14:06:42.993 : x_max: TRIGGERED
14:06:42.993 : y_max: TRIGGERED
14:06:42.993 : z_min: open
14:06:42.993 : z_max: open
Swich "Y"activé:
14:06:56.736 : Reporting endstop status
14:06:56.736 : x_max: TRIGGERED
14:06:56.736 : y_max: TRIGGERED
14:06:56.736 : z_min: TRIGGERED
14:06:56.736 : z_max: open
Swich "Y" activé:
14:07:32.493 : Reporting endstop status
14:07:32.493 : x_max: TRIGGERED
14:07:32.493 : y_max: TRIGGERED
14:07:32.493 : z_min: open
14:07:32.493 : z_max: open

Cela ne correspond à rien.
Seul le "Y" a de l'influence sur le "Z" !!!!!!!!!!!!!!!!!!!!!!!!!!!!!
J'ai re-démonté et vérifié les switches et leurs connexions sur la carte ......
Ils sont conducteurs lorsqu'ils sont inactivés.

J'aimerais comprendre la logique de ce logiciel ......

Un point aussi très étrange, je ne sais pas pourquoi, "Reporting endstop status",
me donne ces valeurs, alors que seules sont connectées les entrés: Xmin, Ymin, Zmin, Zmax .....
Comment trouve-il moyen de me lire Xmax, et , Ymax.?????????????????????????
 
S
speedjf37
Compagnon
Un point aussi très étrange, je ne sais pas pourquoi, "Reporting endstop status",
me donne ces valeurs, alors que seules sont connectées les entrés: Xmin, Ymin, Zmin, Zmax .....
Comment trouve-il moyen de me lire Xmax, et , Ymax.?????????????????????????

le logiciel lit les entrées en fonctions des paramètres !!!!
Xmax, et , Ymax. sont donc déclarés VOIR PARAMETRES

si le switch Y correspond à Zmin la c'est un problème de cablage ou d'attribution d'entrée.

Quelques photos avec la carte et le cablage pourraient nous aider.

Tous cela peut expliquer le fonctionnement

JF
 
M4vrick
M4vrick
Compagnon
Oui tu as un problème de câblage quelque part la.
Tu devrais avoir les 3 switchs max au même état au repos, dans ton cas (si ce sont bien des normalement fermés) TRIGGERED.
Et ensuite chacun à son tour devrait passer en état open quand tu appuies dessus.

Tant que tu n'as pas ce comportement pas la peine d'aller plus loin, l'imprimante considère que le chariot en Z est bloqué contre le fin de course la.
 
S
serge bombourg
Apprenti
Ci-joint la carte utilisée.

Avec respectivement sur l'entrée Xmin, Ymin, Zmin le switch X.

Le switch de test de la tête sur Zmax.
Les moteurs sur les entrés correspondantes, bien sur ......
Ect .......
Les switches sont fermés au repos et ouvert si on appui dessus .....
J'ai testé le cablage, et les switches ....
Le cablage est OK.
quand au problème d'attribution d'entrées !!!!!!, , on trouve ça dans quel coins ?????????
Idem pour X et Y max ??????? Voir la pièce jointe Carte_Delta.zip Voir la pièce jointe Configuration.zip Voir la pièce jointe Configuration_adv.zip
 
C
cr-_-
Compagnon
Bonsoir,

Un truc que je ne comprends pas
c'est quoi le switch de test ?

sur une delta c'est les endstop max qu'il faut cabler

si tu as un capteur pour l'autocalibration c'est sur Zmin qu'il faut le câbler

Ensuite il faut différencier les tours x y et z et les déplacement x y et z

Pour le début il faut ne s'occuper que du déplacement et du homing des tours
donc lorsque les chariot sont tout en haut tu dois avoir Xmax Ymax et Zmax TRIGGERED
quand un des carpeur est relaché le TRIGGERED correspondant doit redescendre
 
S
serge bombourg
Apprenti
Je me suis mal exprimé , ce que je nome, à tord, est le switch test, c'est ce que tu nomes autocalibration ......
Pour les connexions Je confondais, avec la logique normale ou la référence de départ est la position minimum.
Bon là cela semble être le contraire !!!! Je vais corriger cela ......
Je ne vois pas bien ce que tu entends par différencier tours et déplacement (XYZ) ???????

Je vais faire la manip...............
 
S
serge bombourg
Apprenti
Effectivement, il y a un mieux .....
Tous les switches relâchés On à open.
Chaque switch (Xmax,Ymax, Zmax, Zmin) appuyé on passe pour ce switch à triggered ......
Bon, là je le fais à la main. Si je fais un homing je part dans la nature .....
 

Sujets similaires

Y
Réponses
8
Affichages
538
Francis.
Francis.
D
Réponses
25
Affichages
3 270
jonathan59
J
D
Réponses
20
Affichages
9 258
demdandeinfos
D
M
Réponses
17
Affichages
1 532
marceau_hadoro
M
L
Réponses
9
Affichages
2 656
nagut
nagut
horsot
Réponses
332
Affichages
67 521
Pascal76
P
Haut