Machine à un axe, mesure niveau liquide

  • Auteur de la discussion greg_elec
  • Date de début
G

greg_elec

Compagnon
Bonjour à tous.
Attention je ne suis pas un pro de la chose sinon je ne poserais pas de question.
Voici la description du projet :

Machine à qualifier des capteurs de niveau de liquide

J'ai une vis à bille qui entraine un charriot sur lequel est fixé le capteur.
Pour faire tourner la vis a bille j'ai un moteur pas a pas commandé par un driver step/dir
Pour connaitre la position du chariot j'ai une règle DRO en 5V avec A et B avec une console d'affichage DRO.

Actuellement pour déplacer le chariot j'utilise une manivelle avec sortie A et B que j'ai converti en step/dir avec un montage à portes XOR.
Cela fonctionne bien mais 2000 tours de manivelle pour ce déplacer de 10 mm sachant que la course totale de la machine est de 900 mm cela est fatiguant .
Il est impératif que je fasse un arrêt tous les 10 mm pour effectuer une mesure électronique

Si je pouvait automatiser ce serait super.
J'ai à ma disposition :
Un PC
une carte bluepill avec du code @pailpoe pour récupérer les infos de la règle
Par contre je suis ouvert sur d'autres solutions de pilotage.
 
G

greg_elec

Compagnon
Oui mais le problème n'est pas la; car cette partie mesure est réalisée par le boitier électronique sur lequel est branché le capteur .
Je sais comment automatiser cette mesure .
Le fonctionnement voulu :
Je paramètre la taille du déplacement en 100ème de mm (DEP)
j'appuie sur un bouton
La machine descend d'un déplacement c'est dire la valeur donnée par la règle à T0 +DEP
Le moteur s'arête et une sortie s'active pour faire la mesure
j'appuie sur un bouton
La sortie se désactive
La machine descend d'un déplacement c'est dire la valeur donnée par la règle à T1 +DEP
Le moteur s'arête et une sortie s'active pour faire la mesure
ect ...

existe-t-il des boitiers de gestion genre GRBL (Exemple) qui fonctionnent avec des règles de mesure ?
 
G

greg_elec

Compagnon
Alors pourquoi tourner la manivelle ? :shock: ce n'est pas clair.
Car j'ai un générateur step/drive avec un potar pour la vitesse et un inter pour le dir et un inter pour le stop
ce que je voudrais c'est à partir de mon PC donner une consigne de dep et que le déplacement ce fasse jusqu'à ce que la règle indique la consigne d'arrivée
 
J

jpbbricole

Compagnon
Bonjour Greg

En fait, il te faut un programme à qui tu dis 100, tu presses un bouton, et ta vis à bille "avance" de 100 100ème de mm ?
D'autres pression sur le bouton, répéteraient le même mouvement, jusqu'à l'introduction d'une nouvelle valeur,
Si oui, je peux te faire un exemple.
Ces déplacements sont toujours relatifs par rapport à la position actuelle ou il faut prévoir un mode absolu, c'est à dire une position par rapport au 0 de départ, au cas où il faudrait un système de mise à 0.
existe-t-il des boitiers de gestion genre GRBL (Exemple) qui fonctionnent avec des règles de mesure ?
Je ne pense pas que l'utilisation de GRBL pour cette application soit nécessaire.
Pour connaitre la position du chariot j'ai une règle DRO en 5V avec A et B avec une console d'affichage DRO.
Il n'est pas nécessaire de connecter le système DRO à ce montage, vu que l'on connais le pas de la VAB ainsi que du nombre de pas/tours du MPAP.

Cordialement
jpbbricole
 
W

wika58

Compagnon
AMHA, si on a un moteur PAP et une VAB, il n y a pas besoin de règle (DRO).

Un FdC "Origine" et on compte le nombre de pas à envoyer au MPAP pour avancer de XXX mm.
 
G

greg_elec

Compagnon
Ah merci bien cela me soulage , j'utiliserais quand même la règle pour le contrôle sur la DRO .
Maintenant il faut que j'intègre dans la carte bluepill (IDE Arduino) :
le retour de la règle pour éviter de saisir manuellement la position
le paramétrage du point de départ (mode absolu ?)
le bouton départ
et la génération des step (si cela pouvais être un paramètre envoyé du PC ce serait top)

Pour saisir et envoyer des infos du PC à la bluepill je sais programmer pour faire du dialogue port série.
peut être ajouter un inter pour dire à la bluepill qu'elle est en attente des paramètres du PC ou qu'elle est en mode "TRAVAIL"
Suis-je sur la bonne piste ?
Pour ceux qui veulent m'aider sur la partie programmation arduino -Bluepill je peux poster le code que j'utilise actuellement qui remonte vers le port série l'état de la règle
 
J

jpbbricole

Compagnon
Bonjour Greg

Au départ, je te propose de faire un programme sur un Arduino "normal", un UNO en l'occurrence, histoire de faciliter le développement, après, on peut toujours l'intégrer au Bluepill, et mixer les données.
le paramétrage du point de départ (mode absolu ?)
Donc contact de position 0 et routine de homing, à l'allumage de l'installation.
la génération des step (si cela pouvais être un paramètre envoyé du PC ce serait top)
Oui, tout sera possible depuis le PC depuis le moniteur de l'IDE Arduino ou tout autre émulateur de terminal, il y aura un bouton pour la commande, bouton qui sera doublé par une commande comme Start.
Le programme commandera les signaux du MPAP, compatible avec un driver A4988, STEP, DIR et ENA.

Les commandes seraient
Zero
Position
// Déplacement Implicite en mm.
Position+ // Déplacement Relatif en mm.
$MpapPasTour
$MpapVitesse
$VabPasmm100
// Pas de la vis à bille en 1/100mm.
par exemple.

C'est un bon départ?

Cordialement
jpbbricole
 
Dernière édition:
G

greg_elec

Compagnon
Ok j'ai une carte Uno donc pas de soucis.
mon driver MPAP est un TB6600 avec STEP, DIR et ENA avec entrées sur optocoupleur avec + commun
Pour le homing je me servirait de la manivelle je rentre en "OU" en collecteur ouvert sur les entrées ,ça je connais c'est mon métier.
 
J

jpbbricole

Compagnon
Bonsoir Greg
Pour le homing je me servirait de la manivelle je rentre en "OU" en collecteur ouvert sur les entrées ,ça je connais c'est mon métier.
J'ai pas compris le OU en collecteur ouvert et la manivelle pour le homing, pour moi, un simple contact fermé à la position 0 suffit et on peut faire le homing (position 0) automatiquement.
mon driver MPAP est un TB6600 avec STEP, DIR et ENA avec entrées sur optocoupleur avec + commun
Ca j'ai, c'est OK.


Cordialement
jpbbricole
 
G

greg_elec

Compagnon
En fait la position zéro dépend de la taille du capteur et j'ai plusieurs tailles à tester ex :( 500 mm; 550 mm, 600 mm ect)
donc il faut que je puisse arriver à ce point Zéro soit à la manivelle ou par paramètre. L'avantage de la manivelle c'est que l'on peut facilement aller vite et doucement pour s'arrêter pil-poil au bon endroit .
 
J

jpbbricole

Compagnon
Bonsoir Greg

En fait la position zéro dépend de la taille du capteur...
Ok, c'est claire, donc il faut prévoir un bouton, doublé d'une commande (Zero) pour indiquer au programme que l'on à la position 0.

A+
Cordialement
jpbbricole
 
G

greg_elec

Compagnon
Exactement!
tiens j'ai retrouvé le "OU" à collecteur ouvert


ou collecteur ouvert.png
 
J

jpbbricole

Compagnon
Bonsoir Greg

C'est claire, merci. Je m'attaque au programme.

A+
Cordialement
jpbbricole
 
G

greg_elec

Compagnon
$MpapPasTour ça c'est le nombre de pulse pour descendre d'un centième ?ou pour descendre de 1 mm ce serait mieux
 
J

jpbbricole

Compagnon
Bonsoir Greg
Non, $MpapPasTour est fixe, en général 200 comme pour un MPAP Nema17, il me faut cette donnée + le pas de ta VAB pour calculer le nombre de pas pour faire 1 mm.
 
G

greg_elec

Compagnon
Je préférerai le passer en paramètre car suivant les réglages du tb6600 ce n'est pas toujours la même chose ,
ou bien tu me dit dans quelle variable du code tu le mets et je pourrais modifier je ne suis pas si bête que ça ...
en fait depuis un peu plus de 6 mois j'ai du mal à me concentré sur le code et comme j'ai beaucoup de choses en suspend c'est encore plus dur .
 
G

greg_elec

Compagnon
j'ai fait des mesures: 100 pulses donnent un déplacement de 12.53 mm
 
J

jpbbricole

Compagnon
Bonjour Greg
j'ai fait des mesures: 100 pulses donnent un déplacement de 12.53 mm
??
Bizarre! Si je prends le cas d'un MPAP Nema 17 avec 200 pas/tour avec micros pas à 1, avec une demi rotation on a un déplacement de 12.53 mm ce qui suppose un pas de la VAB de 25.06 mm!
Est-ce-que cette valeur t'a été donnée par ton système de mesures?

A+
Cordialement
jpbbricole
 
G

greg_elec

Compagnon
Oui c'est gràce à la regle branchée à la DRO que j'ai mesuré cela . je peux vérifier le paramétrage du TB6600.
 
J

jpbbricole

Compagnon
Peux-tu mettre une photo de ton installation, spécialement la VAB et le MPAP.
 
G

greg_elec

Compagnon
Je viens de refaire un test 10000 impulsions donnent 25.05 mm

vab mesure.jpg


vab2.jpg


vab1.jpg


ref-PAP.jpg


config tb6600.jpg


tb6600.jpg
 
F

Fred69

Compagnon
Je ne comprends pas bien,
d'après ce que je vois, tu as un moteur 200 pas par tour en 16 ème de pas donc 16 x 200 = 3200 micro pas.
il me semble que tu as une vis au pas de 2mm,
toutes les 3200 impulsions elle provoque une avance de 2mm.
Donc pour 10000 impulsions elle doit avancer de 10000 / 3200 = 3.125 tours
soit 6.25 mm ?
(note : corrigé, j'ai été un peu vite)
 
Dernière édition:

Sujets similaires

misty soul
Réponses
2
Affichages
841
paysan
P
B
Réponses
54
Affichages
1 956
thierry74
thierry74
G
Réponses
10
Affichages
1 272
gustavox
gustavox
S
Réponses
4
Affichages
670
greg_elec
G
R
Réponses
2
Affichages
277
RogerM30
R
V
Réponses
11
Affichages
1 186
laurent12100
L
Haut