Aller au contenu

Filament ABS

diiity

auto level et servo sur delta

Messages recommandés

Bonjour,

Je désire automatiser mon auto level sur ma delta mini G2 par l'intermédiaire un servo  ou d'un capteur capacitif.

http://www.geeetech.com/wiki/index.php/Delta_Rostock_mini_G2

Pour ce qui est du servo après une recherche sur le net j'ai fait ceci mais ça ne fonctionne pas.

J'ai modifié la ligne
/*********************************************************************\
* R/C SERVO support
* Sponsored by TrinityLabs, Reworked by codexmas
**********************************************************************/

#define NUM_SERVOS 1 // Servo index starts with 0 for M280 command
#define SERVO_ENDSTOPS {-1, -1, 0} // Servo index for X, Y, Z. Disable with -1
#define SERVO_ENDSTOP_ANGLES {0,0, 0,0, 180,105} // X,Y,Z Axis Extend and Retract angles

puis dans pin_ultimaker.h j'ai modifié l'attribution des pins comme ceci:

#define SDPOWER -1
#define SDSS 53
#define LED_PIN 13
#define FAN_PIN 7=>>> remplacer par -1
#define PS_ON_PIN 12
#define KILL_PIN -1
#define SUICIDE_PIN 54 //PIN that has to be turned on right after start, to keep power flowing.
#define SERVO0_PIN 13 =>>>> remplacer par 7

comme ça ne marche pas j'ai changé ]#define SERVO0_PIN par #define SERVO1_pin pensant que ce doit être le même numéro c'est pareil.

Vous avez une idée?

diiity

 

Partager ce message


Lien à poster
Partager sur d’autres sites

tu parles de cela: dans pins_ultimaker.h?

#define SDPOWER -1
#define SDSS 53
#define LED_PIN 13
#define FAN_PIN  13
#define PS_ON_PIN 12
#define KILL_PIN -1
#define SUICIDE_PIN 54 //PIN that has to be turned on right after start, to keep power flowing.
#define SERVO0_PIN 7

Je joins mon marlin

marlin servo.rar

Partager ce message


Lien à poster
Partager sur d’autres sites

Je viens d'avertir @telson que son liens est HS.

En fait lorsque tu détermine dans le fichier configuration.h la variable MOTHERBOARD, lors de l'appel à pin.h arduino fera ensuite appel au bon fichier pin_xxxxx.h (pour toi donc il semble que ce soit pins_ultimaker.h).

Ensuite ne ne peux t'en dire plus, a toi déjà d'essayer sous Ardiuno de compiler (sans téléverser) afin de voir dans un premier temps y-a des erreurs.

Partager ce message


Lien à poster
Partager sur d’autres sites

ok merci, mais cette variable c'est comment, c'est quoi?

Tu parles de cela:

// This determines the communication speed of the printer
#define BAUDRATE 250000

// This enables the serial port associated to the Bluetooth interface
//#define BTENABLED              // Enable BT interface on AT90USB devices

// The following define selects which electronics board you have.
// Please choose the name from boards.h that matches your setup
#ifndef MOTHERBOARD
  #define MOTHERBOARD 7
#endif

// Optional custom name for your RepStrap or other custom machine
// Displayed in the LCD "Ready" message
#define CUSTOM_MACHINE_NAME "Delta Serge"  //delta G2S

// Define this to set a unique identifier for this printer, (Used by some programs to differentiate between machines)
// You can use an online service to generate a random UUID. (eg http://www.uuidgenerator.net/version4)
// #define MACHINE_UUID "00000000-0000-0000-0000-000000000000"

 

diiity

Modifié (le) par diiity

Partager ce message


Lien à poster
Partager sur d’autres sites

Le lien marche bien mais il faut prendre le dernier message du sujet :

Le 04/07/2016 at 15:14, telson a dit :

voici le document mis à jour avec le sommaire fonctionnel :

Veuillez vous connecter pour afficher ce contenu.

Par contre je ne sais pas qui à mis : masquer le contenu.....

Pourquoi modifier #define SERVO0_PIN 13, il serait plutôt intéressant de savoir où se situe cette broche sur ta carte, c'est forcément une sortie pour un servomoteur et cela devrait fonctionner.......

Partager ce message


Lien à poster
Partager sur d’autres sites

ca donc et le 7 correponderait au pin de pin_ultimaker qui à l'origine est 13 mais que j'ai changer en 7, c'est ça?

le fichier BORD.H
#define BOARD_MELZI_1284        66   // Melzi with ATmega1284 (MaKr3d version)
#define BOARD_AZTEEG_X3         67   // Azteeg X3
#define BOARD_AZTEEG_X3_PRO     68   // Azteeg X3 Pro
#define BOARD_ULTIMAKER         7    // Ultimaker
#define BOARD_ULTIMAKER_OLD     71   // Ultimaker (Older electronics. Pre 1.5.4. This is rare)
#define BOARD_ULTIMAIN_2        72   // Ultimainboard 2.x (Uses TEMP_SENSOR 20)
#define BOARD_3DRAG             77   // 3Drag Controller
#define BOARD_K8200             78   // Vellemann K8200 Controller (derived from 3Drag Controller)
 

et là le fichier pin_ultimaker.h

#define SDPOWER            -1
#define SDSS               53
#define LED_PIN            13
#define FAN_PIN            -1 // avant 7
#define PS_ON_PIN          12
#define KILL_PIN           -1
#define SUICIDE_PIN        54  //PIN that has to be turned on right after start, to keep power flowing.
#define SERVO0_PIN         7  // untested avant 13, peut être remplacer 0 de SERVO0_pin par 1 ou dns config.h mettre 0 à la place de 1

Partager ce message


Lien à poster
Partager sur d’autres sites

#define BOARD_ULTIMAKER  vas définir une varaible dont la valeur est 7

Au début de ton Marlin( si tu peux dépose le ici car moi je vais te donner des explication depuis un Marlin générique) tu dois trouver un truc comme:

#ifndef MOTHERBOARD
   #define MOTHERBOARD BOARD_RAMPS_14_EFZ
#endif

et également

#include "pins.h"

 

Et si tu regarde bien avant tu trouve

#include "boards.h"

CE qui veux dire que le fichier board.h est sourcé (toutes ses varaibles utilisées sont montées en mémoire)

et dans ce fichier tu trouve (pour toi)

#define BOARD_ULTIMAKER 7 // Ultimaker

Maintenant regarde dans pin.h tu y trouvera :

#elif MB(ULTIMAKER)
  #include "pins_ULTIMAKER.h"
#elif MB(ULTIMAKER_OLD)
#include "pins_ULTIMAKER_OLD.h"

Ces include vont charger le fichier correcpondant (par exemple pins_ULTIMAKER.h) et dans ce fichier tu trouve un ensemble de #define pour l'ensemble des pins (pins du micro-contrôleur de ta carte) de ta carte de contrôle.

Je ne te dis pas de changer puis que les seuls carte que je connaisse à ce jour sont RAMP et Melzi, mais d'étudier ces différents appels. Ta solution dois certainement s'y trouver.

Partager ce message


Lien à poster
Partager sur d’autres sites
il y a 38 minutes, telson a dit :

Pourquoi modifier #define SERVO0_PIN 13, il serait plutôt intéressant de savoir où se situe cette broche sur ta carte, c'est forcément une sortie pour un servomoteur et cela devrait fonctionner.......

D'autant plus que le fichier pin_utltimaker.h @diiitynous dit avoir la LED_PIN (led traditionnel d'Arduino).

@diiitymets ton Marlin ici, nous allons essayer de le comprendre et t'aider.

Modifié (le) par nicephore

Partager ce message


Lien à poster
Partager sur d’autres sites

Sache également q'un servo moteur dispose de 3 fils (ou 4 pour ceux qui ont un retour d'information de position)

De façon générique les broches sont:

GND noir

+5vcc rouge

SIGNAL blanc ou jaune

Tu peux donc brancher ton servo dans un sens ou l'autre sans risquer de le griller lui ou ta carte. Le but est de trouver le bon sens ou de cherche la plan de masse de ta carte et de placer le fil noir de ton servo donc sur cette piste (le +5vcc est tjrs au centre)

Partager ce message


Lien à poster
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.

×