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
 
M

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
 
M

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 .....
 
M

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 ...........
 
M

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 .....
 
M

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
 
M

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

Dudulle
Général langage MMBASIC
Réponses
8
Affichages
802
Dudulle
Dudulle
laurenttanguy
Réponses
0
Affichages
439
laurenttanguy
laurenttanguy
R
Réponses
20
Affichages
1 422
Hubert86
H
simplet
Réponses
153
Affichages
7 890
simplet
simplet
Y
Réponses
8
Affichages
1 474
Francis.
Francis.
gégé62
Réponses
34
Affichages
16 651
gégé62
gégé62
M
Réponses
17
Affichages
2 196
marceau_hadoro
M
L
Réponses
9
Affichages
3 191
nagut
nagut
monomax
Réponses
43
Affichages
11 839
monomax
monomax
horsot
Réponses
332
Affichages
75 721
Pascal76
P
Haut