Projet BTS
Re: Projet BTS
Hello
Le problème est que je ne peux en aucun cas mettre un capteur haut car mon réservoir à remplir est en réalité un disjoncteur 400 000V, il est fermé de tout les cotés j'ai juste un tuyau à raccorder.
Je possède une gamme constructeur du disjoncteur avec à l'intérieur la capacité en huile exacte, j'aimerai rentré une consigne sur un afficheur (ex 50L) et que ma pompe remplisse le disjoncteur avec le volume exacte .
Je peux acheter un débitmètre à impulsion 0-10V mais Est-ce-que c'est que j'aurai un résultat plus précis ?
Merci pour votre aide
Cordialement.
Le problème est que je ne peux en aucun cas mettre un capteur haut car mon réservoir à remplir est en réalité un disjoncteur 400 000V, il est fermé de tout les cotés j'ai juste un tuyau à raccorder.
Je possède une gamme constructeur du disjoncteur avec à l'intérieur la capacité en huile exacte, j'aimerai rentré une consigne sur un afficheur (ex 50L) et que ma pompe remplisse le disjoncteur avec le volume exacte .
Je peux acheter un débitmètre à impulsion 0-10V mais Est-ce-que c'est que j'aurai un résultat plus précis ?
Merci pour votre aide
Cordialement.
Re: Projet BTS
non il te faut un capteur qui te donne un débit instantané (à l'instant t).Je peux acheter un débitmètre à impulsion 0-10V mais Est-ce-que c'est que j'aurai un résultat plus précis ?
pour avoir un volume instantané il faut "accumuler" (additionner) ton débit à chaque tranche de temps (plus la tranche de temps est petite et plus le volume est précis).
exemple : toutes les 10 ms (pour un résultat précis, c'est à programmer dans une tâche cyclique), tu rajoutes 1% du débit mesuré à ton volume (attention de bien homogéniser les unités).
ton débit est aussi la mesure "retour" de ton ensemble variateur / pompe (pour fermer la boucle).
@+
- itasoft
- Mi homme - Mi automate

- Messages : 7806
- Enregistré le : 20 oct. 2015, 10:15
- Localisation : Lyon
- Contact :
Re: Projet BTS
slts
cliquer desss pour agrandir la photo
Automaticien privé (de tout)
itasoft@free.fr
itasoft@free.fr
Re: Projet BTS
j'ai une sainte horreur de la régulation (beurk) - c'est un métier à part - donc je vais sûrement écrire pleins d'âneries ; simplement quelques idées sur la façon dont je m'y prendrai.
déjà, avant tout, je n'aime pas faire l'accumulation dans le temps d'une mesure (faire une intégrale mathématiquement parlant, voir post ci-dessus) car tu vas cumuler toutes les incertitudes de mesure à chaque instant (le capteur n'est pas parfait ...). Avoir une jauge de niveau, ou peser le poids de l'ensemble ... aurait peut-être été une meilleure idée pour gagner en précision.
ensuite un bloc PID est une fonction "standard" (que tu trouves dans toutes les bibliothèques API) qui prend en entrée une "erreur" (écart entre une consigne et une mesure) et te donne en sortie une amplitude. tu as une série de coefficient à définir (les gains) pour influencer la réponse du régulateur (en gros, pour simplifier, s'il va réagir mollement ou nerveusement à l'erreur, mais pas que ...)
le régulateur calcule à chaque instant la dérivée (la pente = différence avec la valeur précédente pour une tranche de temps) et l'intégrale (l'aire pour une tranche de temps - comme sur le post ci-dessus) et le tout est additionné (avec l'erreur elle même qui est la partie "proportionnelle") avec les coefficients respectifs.
En jouant avec les coeffs, tu peux très bien transformer ton bloc PID en simple régulateur P (ou il n'y a pas d'action dérivée ni intégrale), ou PI (pas de dérivée) ou PD ... c'est le principe du "qui peut le plus peut le moins".
donc en gros, sur un régulateur de type P (proportionel uniquement, soit le plus simple), l'amplitude U (la sortie) = G (gain) * ε (epsilon = erreur)
après pour le réglage des gains, c'est une autre histoire ... à vivre sur le terrain
le bloc PID est déjà un bon début pour réaliser un asservissement.
admettons que tu as une consigne fixe de débit (l'installation doit faire du 0,1 litre / s par ex)
pour réaliser ton asservissement, tu mettrais en place un bloc PID avec en entrée l'écart entre la consigne (0,1 litre/s) et la mesure (le débitmètre) et en sortie tu ferais un petit calcul pour obtenir une vitesse de rotation (le débit de la pompe dépend de sa vitesse de rotation, la formule est dans la doc du constructeur de la pompe) --> le moteur ne travaille que sur une certaine plage de vitesse, il faut penser à borner le calcul (ex 20 - 100 Hz pour un moteur asynchrone) ...
--> commence déjà par mettre au point cette partie (point de vue programmation puis mise en service)
ne définit que le gain de l'action proportionnelle dans un 1er temps puis joue sur les autres gains pour voir l'influence.
Concrètement dans ton cas, la consigne de débit n'est pas fixe ; elle est une fonction de l'écart entre un volume donné et un volume mesuré (cf post ci-dessus)
plus tu t'approches du volume désiré, plus tu vas fermer le robinet (logique).
c'est encore une régulation. La sortie de cette régulation donne la consigne pour la régulation suivante (celle évoquée au-dessus, la régulation du débit uniquement) --> 2 PID en cascade.
tu peux très bien simplifier en disant que la consigne de débit va suivre une courbe fixe (une fonction mathématique).
une simple droite par exemple ou des paraboles (degré 2, ..., degré 4 pour des courbes de bézier), des exponentielles inversées ...
maintenant avec tout ça, je ne sais pas si c'est la bonne méthode et si les résultats seront satisfaisants (je ne suis pas spécialiste des fluides, des régulations, des pompes ...), notamment à cause du cumul des erreurs de mesure. il y a plein d'autre façon de concevoir ce système (avec plus ou moins de bons résultats).
A cogiter
@+
déjà, avant tout, je n'aime pas faire l'accumulation dans le temps d'une mesure (faire une intégrale mathématiquement parlant, voir post ci-dessus) car tu vas cumuler toutes les incertitudes de mesure à chaque instant (le capteur n'est pas parfait ...). Avoir une jauge de niveau, ou peser le poids de l'ensemble ... aurait peut-être été une meilleure idée pour gagner en précision.
ensuite un bloc PID est une fonction "standard" (que tu trouves dans toutes les bibliothèques API) qui prend en entrée une "erreur" (écart entre une consigne et une mesure) et te donne en sortie une amplitude. tu as une série de coefficient à définir (les gains) pour influencer la réponse du régulateur (en gros, pour simplifier, s'il va réagir mollement ou nerveusement à l'erreur, mais pas que ...)
le régulateur calcule à chaque instant la dérivée (la pente = différence avec la valeur précédente pour une tranche de temps) et l'intégrale (l'aire pour une tranche de temps - comme sur le post ci-dessus) et le tout est additionné (avec l'erreur elle même qui est la partie "proportionnelle") avec les coefficients respectifs.
En jouant avec les coeffs, tu peux très bien transformer ton bloc PID en simple régulateur P (ou il n'y a pas d'action dérivée ni intégrale), ou PI (pas de dérivée) ou PD ... c'est le principe du "qui peut le plus peut le moins".
donc en gros, sur un régulateur de type P (proportionel uniquement, soit le plus simple), l'amplitude U (la sortie) = G (gain) * ε (epsilon = erreur)
après pour le réglage des gains, c'est une autre histoire ... à vivre sur le terrain
le bloc PID est déjà un bon début pour réaliser un asservissement.
admettons que tu as une consigne fixe de débit (l'installation doit faire du 0,1 litre / s par ex)
pour réaliser ton asservissement, tu mettrais en place un bloc PID avec en entrée l'écart entre la consigne (0,1 litre/s) et la mesure (le débitmètre) et en sortie tu ferais un petit calcul pour obtenir une vitesse de rotation (le débit de la pompe dépend de sa vitesse de rotation, la formule est dans la doc du constructeur de la pompe) --> le moteur ne travaille que sur une certaine plage de vitesse, il faut penser à borner le calcul (ex 20 - 100 Hz pour un moteur asynchrone) ...
--> commence déjà par mettre au point cette partie (point de vue programmation puis mise en service)
ne définit que le gain de l'action proportionnelle dans un 1er temps puis joue sur les autres gains pour voir l'influence.
Concrètement dans ton cas, la consigne de débit n'est pas fixe ; elle est une fonction de l'écart entre un volume donné et un volume mesuré (cf post ci-dessus)
plus tu t'approches du volume désiré, plus tu vas fermer le robinet (logique).
c'est encore une régulation. La sortie de cette régulation donne la consigne pour la régulation suivante (celle évoquée au-dessus, la régulation du débit uniquement) --> 2 PID en cascade.
tu peux très bien simplifier en disant que la consigne de débit va suivre une courbe fixe (une fonction mathématique).
une simple droite par exemple ou des paraboles (degré 2, ..., degré 4 pour des courbes de bézier), des exponentielles inversées ...
maintenant avec tout ça, je ne sais pas si c'est la bonne méthode et si les résultats seront satisfaisants (je ne suis pas spécialiste des fluides, des régulations, des pompes ...), notamment à cause du cumul des erreurs de mesure. il y a plein d'autre façon de concevoir ce système (avec plus ou moins de bons résultats).
A cogiter
@+
- itasoft
- Mi homme - Mi automate

- Messages : 7806
- Enregistré le : 20 oct. 2015, 10:15
- Localisation : Lyon
- Contact :
Re: Projet BTS
slts,
je tiens à préciser que mon exemple ne fait pas de régulation mais une simple intégration, la vraie régulation serait si on voulait réguler le débit de la pompe,
mais c'est pas ce qui était demandé.
je tiens à préciser que mon exemple ne fait pas de régulation mais une simple intégration, la vraie régulation serait si on voulait réguler le débit de la pompe,
mais c'est pas ce qui était demandé.
Automaticien privé (de tout)
itasoft@free.fr
itasoft@free.fr
Re: Projet BTS
@itasoft : voilà, tu as encore mis la pagaille
j'ai mis trop de temps à écrire mon post et tu t'es intercalé entre ...
bon avec tout ça, je pense que @tintor va boucler son projet BTS en 2 semaines ( ou changer de métier
, au choix )
c'est pas un sujet facile pour quelqu'un qui ne fait pas de la régulation au quotidien (j'aime bien faire les régulations de type TOR mais pas plus).
@+
j'ai mis trop de temps à écrire mon post et tu t'es intercalé entre ...
bon avec tout ça, je pense que @tintor va boucler son projet BTS en 2 semaines ( ou changer de métier
c'est pas un sujet facile pour quelqu'un qui ne fait pas de la régulation au quotidien (j'aime bien faire les régulations de type TOR mais pas plus).
@+
- itasoft
- Mi homme - Mi automate

- Messages : 7806
- Enregistré le : 20 oct. 2015, 10:15
- Localisation : Lyon
- Contact :
Re: Projet BTS
steph,
Slts,
Oui mais si tu régule la température de ton aquarium avec un simple thermostat,
tes poissons exotiques que t’as payés une fortune, tu va les faire crever, lol
Slts,
Oui mais si tu régule la température de ton aquarium avec un simple thermostat,
tes poissons exotiques que t’as payés une fortune, tu va les faire crever, lol
Automaticien privé (de tout)
itasoft@free.fr
itasoft@free.fr
- maxpeigne
- Dieu du process

- Messages : 772
- Enregistré le : 11 oct. 2015, 17:31
- Localisation : Nord pas de calais
Re: Projet BTS
En ce qui concerne le paramétrage du PID tu trouveras souvent des "AUTO-TUNE" qui dégrossiront le travail en se chargeant de régler les paramètres P, I et D. Après "y a plus qu'a" affiner 
http://automacile.fr - Site et tutoriels sur l'arduino.
Re: Projet BTS
Hello merci pour vos messages explicites !
Vous m'apprenez énormément de chose nouvelle . J'aimerais mieux comprendre la fonction PID, Ou ce situe-elle dans un système par exemple dans mon cas elle sera intégrée dans mon automate, ou dans mon variateur ou autres ?
Avec quelle logiciel elle se programme ?
J'ai essayer de trouvée des infos sur le net mais ca ne parle que de régulation de température à aucun moment je n'ai trouvé de débit.
J'avoue que tout cela m'impressionne ! Mais j'ai vraiment envie de voir ce système fonctionné.
Merci à vous, bonne journée.
Cordialement
Vous m'apprenez énormément de chose nouvelle . J'aimerais mieux comprendre la fonction PID, Ou ce situe-elle dans un système par exemple dans mon cas elle sera intégrée dans mon automate, ou dans mon variateur ou autres ?
Avec quelle logiciel elle se programme ?
J'ai essayer de trouvée des infos sur le net mais ca ne parle que de régulation de température à aucun moment je n'ai trouvé de débit.
J'avoue que tout cela m'impressionne ! Mais j'ai vraiment envie de voir ce système fonctionné.
Merci à vous, bonne journée.
Cordialement
Re: Projet BTS
Bonjour,
Comme le but est de saisir un volume sur l'IHM en consigne.
je ferais une intégration du débit instantané pour avoir un volume. tu peux utiliser un intégrateur trapézoïdale pour gagner en performance Volume:= Volume+ (débit+ débit cycle précédent) / 2 * temps
Tu mets l'intégrateur dans une tache interruptive cyclique de 10ms cela simplifira le travail et devrait être suffisamment précis. ( si j'ai bien compris tu veux un volume à plus ou moins 0.5l de précision mais par rapport à quelle volume saisi ??)
Puis j'utiliserais un bloc PID avec en consigne le volume désiré et en retour le volume intégré du débitmètre, en sortie du bloc la fréquence de rotation de la pompe (borné bien évidemment)
Puis une fois le remplissage fini je remet l'intégrateur à zéro pour le prochain cycle.
Dommage que tu ne puisses pas sécurisé par un niveau haut ou autre. Peux être que tu peux protéger avec un temps enveloppe, à voir.
Comme le but est de saisir un volume sur l'IHM en consigne.
je ferais une intégration du débit instantané pour avoir un volume. tu peux utiliser un intégrateur trapézoïdale pour gagner en performance Volume:= Volume+ (débit+ débit cycle précédent) / 2 * temps
Tu mets l'intégrateur dans une tache interruptive cyclique de 10ms cela simplifira le travail et devrait être suffisamment précis. ( si j'ai bien compris tu veux un volume à plus ou moins 0.5l de précision mais par rapport à quelle volume saisi ??)
Puis j'utiliserais un bloc PID avec en consigne le volume désiré et en retour le volume intégré du débitmètre, en sortie du bloc la fréquence de rotation de la pompe (borné bien évidemment)
Puis une fois le remplissage fini je remet l'intégrateur à zéro pour le prochain cycle.
Dommage que tu ne puisses pas sécurisé par un niveau haut ou autre. Peux être que tu peux protéger avec un temps enveloppe, à voir.


