Aller au contenu

GO Print

loukatamiaou

Membres
  • Compteur de contenus

    25
  • Inscrit(e) le

  • Dernière visite

À propos de loukatamiaou

  • Date de naissance 07/08/1984

Information

  • Genre
    Masculin
  • Lieu
    tarn
  • Imprimantes
    dagoma discovery 200 avec palpeur

Visiteurs récents du profil

Le bloc de visiteurs récents est désactivé et il n’est pas visible pour les autres utilisateurs.

Récompenses de loukatamiaou

Apprentice

Apprentice (3/14)

  • First Post
  • Collaborator
  • Conversation Starter
  • Week One Done
  • One Month Later

Badges récents

5

Réputation sur la communauté

  1. Bon be ça y est j y suis enfin arrivé merci pour vos coup de pouces
  2. @inteloide bon j ai mis ces lignes dans le marlin_main ccp entre la case 600 et la case 605 fait la mise a jour du firmware ,introduit la ligne M601 X10 Y10 Z15 E-5 P18 I2 D0.8 B27 juste avant ;layer:15 . rien y fait doit je mettre cette ligne juste apres la layer
  3. Ok bon je mange et je teste .en ce qui concerne le béeper tu la brancher sur quel pin ?
  4. case 601: // Pause for filament change (New code by Inteloide) // Syntaxe : X[pos] Y[pos] Z[relative lift] : Position parking (en relatif ! doit être positif !) // E[initial retract] : longueur de filament retiré juste avant la pause (doit être négatif !) // L[later retract distance for removal] : longueur de filament (doit être négatif !) // T[time to wait] : Durée de l'attente (en secondes) // P[pin input to change continue] : Entrée sur laquelle on attent le changement d'état (18=fin de course axe X) // I[Interval between beep] : Intervale entre deux beeps (en secondes, défaut = 5) // D[Beep duration] : Durée de chaque beep (en secondes, défaut = 0.5) // B[pin of the beep] : Pin du beeper (défaut = 27) // // NB: Par défaut on attend un temps de 180 secondes // Exemple de syntaxes : // M601 X10 Y10 Z15 E-5 T300 : Remonte de 15mm, va dans un coin du plateau, attends 300 secondes // M601 X10 Y10 Z15 E-5 P18 I2 D0.8 B27 : Remonte de 15mm, va dans un coin du plateau, attends appui sur capteur axe X { // Save positions float target[4]; float lastpos[4]; target[X_AXIS]=current_position[X_AXIS]; target[Y_AXIS]=current_position[Y_AXIS]; target[Z_AXIS]=current_position[Z_AXIS]; target[E_AXIS]=current_position[E_AXIS]; lastpos[X_AXIS]=current_position[X_AXIS]; lastpos[Y_AXIS]=current_position[Y_AXIS]; lastpos[Z_AXIS]=current_position[Z_AXIS]; lastpos[E_AXIS]=current_position[E_AXIS]; //retract by E if(code_seen('E')) { target[E_AXIS]+= code_value() * global_unit_modifier; } else { #ifdef FILAMENTCHANGE_FIRSTRETRACT target[E_AXIS]+= FILAMENTCHANGE_FIRSTRETRACT ; #endif } plan_buffer_line(target[X_AXIS], target[Y_AXIS], target[Z_AXIS], target[E_AXIS], feedrate/60, active_extruder); //lift Z if(code_seen('Z')){ target[Z_AXIS]+= code_value() * global_unit_modifier; } else { #ifdef FILAMENTCHANGE_ZADD target[Z_AXIS]+= FILAMENTCHANGE_ZADD ; #endif } plan_buffer_line(target[X_AXIS], target[Y_AXIS], target[Z_AXIS], target[E_AXIS], feedrate/60, active_extruder); //move xy if(code_seen('X')) { target[X_AXIS]+= code_value() * global_unit_modifier; } else { #ifdef FILAMENTCHANGE_XPOS target[X_AXIS]= FILAMENTCHANGE_XPOS ; #endif } if(code_seen('Y')) { target[Y_AXIS]= code_value() * global_unit_modifier; } else { #ifdef FILAMENTCHANGE_YPOS target[Y_AXIS]= FILAMENTCHANGE_YPOS ; #endif } plan_buffer_line(target[X_AXIS], target[Y_AXIS], target[Z_AXIS], target[E_AXIS], feedrate/60, active_extruder); // More retract ? if(code_seen('L')) { target[E_AXIS]+= code_value() * global_unit_modifier; } else { #ifdef FILAMENTCHANGE_FINALRETRACT target[E_AXIS]+= FILAMENTCHANGE_FINALRETRACT ; #endif } plan_buffer_line(target[X_AXIS], target[Y_AXIS], target[Z_AXIS], target[E_AXIS], feedrate/60, active_extruder); //finish moves st_synchronize(); //disable extruder steppers so filament can be removed disable_e0(); disable_e1(); disable_e2(); delay(100); // Variables générales unsigned long currentMillisBeeper = 0; // Top de depart pour le chrono du beeper unsigned long previousMiliBeeper = 0; // Précédent top unsigned long startMiliBeeper = 0; // Top de départ pour l'attente unsigned long temps=180000; // Durée d'attente unsigned long intervalBeeper = 5000; // Intervale entre chaque beep (en ms) unsigned long durationBeeper = 500; // Durée du beep (en ms) int etatBeeper = LOW; // Etat du beeper int pinBeeper = 27; // Pin pour le beeper int pin_number = 18; // Pin pour fin attente bool wait_for_time=true; int pin_target; // On récupère les paramètres if(code_seen('I')) intervalBeeper = code_value()*1000; // Intervale entre chaque beep (en ms) if(code_seen('D')) durationBeeper = code_value()*1000; // Durée du beep (en ms) if(code_seen('B')) pinBeeper = code_value(); // Pin pour le beeper if(code_seen('T')) temps = code_value()*1000; // Le temps à attendre en ms if(code_seen('P')) {pin_number = code_value(); wait_for_time=false;}; // La pin à attendre // On active les entrées/sorties pinMode(pinBeeper, OUTPUT); // On active la sortie du beeper if (!wait_for_time){ // On active l'entrée si on n'est pas en temps pinMode(pin_number, INPUT); pin_target = !digitalRead(pin_number); } // On démarre l'attente startMiliBeeper = millis(); bool stop_la_boucle=false; while(!stop_la_boucle){ manage_heater(); manage_inactivity(); // on fait aller le beeper currentMillisBeeper = millis(); if ((etatBeeper == LOW) && (currentMillisBeeper - previousMiliBeeper >= intervalBeeper)) { previousMiliBeeper = currentMillisBeeper; // On garde le moment où on a changé d'état etatBeeper = HIGH; // On change l'état du beeper digitalWrite(pinBeeper, etatBeeper); // On applique le nouvel état = on fait sonner } if ((etatBeeper == HIGH) && (currentMillisBeeper - previousMiliBeeper >= durationBeeper)) { previousMiliBeeper = currentMillisBeeper; // On garde le moment où on a changé d'état etatBeeper = LOW; // On change l'état du beeper digitalWrite(pinBeeper, etatBeeper); // On applique le nouvel état } // On regarde si on doit stopper la boucle if (!wait_for_time) {//On regarde un changement d'une entrée if (digitalRead(pin_number) == pin_target) { stop_la_boucle=true; } } else {// On regarde si la tempo est finie if (currentMillisBeeper-startMiliBeeper>=temps) { stop_la_boucle=true; } } } // Finalisation de la boucle d'attente digitalWrite(pinBeeper, LOW); // pour remettre au niveau bas (0V) après la boucle d'attente pinMode(pinBeeper, INPUT); // pour remettre en entrée qui est la valeur par défaut //return to normal if(code_seen('L')) { target[E_AXIS]+= -code_value() * global_unit_modifier; } else { #ifdef FILAMENTCHANGE_FINALRETRACT target[E_AXIS]+=(-1)*FILAMENTCHANGE_FINALRETRACT ; #endif } current_position[E_AXIS]=target[E_AXIS]; //the long retract of L is compensated by manual filament feeding plan_set_e_position(current_position[E_AXIS]); plan_buffer_line(target[X_AXIS], target[Y_AXIS], target[Z_AXIS], target[E_AXIS], feedrate/60, active_extruder); //should do nothing plan_buffer_line(lastpos[X_AXIS], lastpos[Y_AXIS], target[Z_AXIS], target[E_AXIS], feedrate/60, active_extruder); //move xy back plan_buffer_line(lastpos[X_AXIS], lastpos[Y_AXIS], lastpos[Z_AXIS], target[E_AXIS], feedrate/60, active_extruder); //move z back plan_buffer_line(lastpos[X_AXIS], lastpos[Y_AXIS], lastpos[Z_AXIS], lastpos[E_AXIS], feedrate/60, active_extruder); //final untretract } break;
  5. Ça c est fait . Sur la même page y a un plugin pour cura . Je parle du pâte de ligne qui concerne le m601 et toutes c est explication ceci doit ce mettre ou exactement ?
  6. @lefresh le plugin que j ai installer sur cura c est pour nommer la couche à laquelle on veut faire une pause c est un plugin qui date de un poste du début de ce sujet. Au sujet du poste de @inteloide j ai bien compris que le plugin qu il a mis est pour sketchup .j utilise sketchup depuis longtemps j ai fait tout les plan du permis de construire de ma maison avec mais pour les stl telecharger j aime pas y a trop de trait je préfère passer avec tinkercad.bref . Le pâté de ligne de code doit ce mettre ou dans le firmware ?
  7. J ai installer cura standard pour tester ton plugin mais sans resultat faut il ajouter ton firmware dans le dossier firmware de cura ?
  8. message adresser a inteloide . j ai installer ta mise a jour du firmware marlin ccp . j aimerai tester ton m601 mais que doije faire avec tout ce codage et ou son les valeur a changer ?
  9. bon c est bon j ai tout reglé je pense que c été un probleme de xml maintenant tout fonctionne comme il faut merci pour les infos
  10. bon tout fonctionne sauf l impression qui est trop haute d environ (mm ou plus le const bool Z_MIN_ENDSTOP_INVERTING = false; est ok doit je teste l inversion des fil noir et bleu ?
  11. Bien vu plexy c était bien à cause du zip .le televerssement c est effectué en entier maintenant on va voir si tout fonctionne .
  12. Oui j ai bien telecharger le firmware je vais essayer en suivant tes étapes dans le bon sens
  13. est ce que la broche du vcc doit prendre les deux pins ?
×
×
  • Créer...