Régulation pour pompe à vide Kamoer

L’intérêt de la régulation est de pouvoir une consigne en terme vide en Kpa. Pour rappel 100Kpa est égal à 0.1 bar.

Il faut un capteur de pression différentiel, apte à mesurer une dépression. J’ai fixé mon choix sur le MPX5100 de Freescale qui permet de mesurer jusqu’à 400Kpa, ce qui est suffisant pour mon utilisation. Le brochage est le suivant :

  1. Vout, à connecter sur une entrée analogique de l’arduino. Dans mon cas, j’ai utilisé A1, car A0 est utilisé pour les boutons.
  2. GND
  3. VCC – 5V

Pour obtenir une valeur de pression il faut multiplier la valeur mesurée au moyen d’analogRead() par 1.111.

Le fonctionnement du programme est le suivant. On règle la consigne de vide avec les touches Haut/Bas avec une précision de 5Kpa. J’ai mis un réglage de la calibration de la pression au 0 sur la touche Select. Le démarrage se fait par la touche Left. Cela a pour effet de mémoriser la consigne dans l’EEPROM. On la retrouve lors de la prochaine mise en route. L’arrêt moteur est sur la touche Droite.

Après démarrage le moteur tourne à fond (commande à 255), jusqu’à ce que la pression atteigne la valeur de la consigne. Cela permet de vider le sac à vide. Lorsque la consigne est atteinte, le moteur est ralenti à une valeur basse, puis la régulation prend la main. Une valeur trop basse de commande a pour effet de bloquer la pompe. 30-40 semble être le minimum. La valeur du vide va osciller autour de la consigne pour se stabiliser rapidement. La régulation est réalisée à 1Khz avec Kp=0.1.

Sur la première ligne, le LCD affiche la version du programme et la consigne de vide.

Sur la seconde ligne, le LCD affiche la valeur courante du vide, la valeur de la commande moteur, et la calibration.

Dans la vidéo suivante, on voit la régulation pour une consigne de 205Kpa. Le vide du sac à été réalisé dans un précédent test, la vidéo montre surtout la phase de stabilisation qui est très rapide.

 

Le code pour un shield V1 est disponible ici.

Le code pour un shield V2 est disponible ici (Merci Jean-Jacques). La différence entre les deux versions est due aux valeurs différentes des résistances pour la détection des touches.

Une utilisation commerciale n’est pas autorisée. Merci de laisser un commentaire si vous réalisez le montage.

Nomenclature des composants:

Commentaire (6)

  • pascal Lebourgeois| 7 décembre 2020

    Bonjour,
    Je suis très intéressé par votre projet, avez vous un schéma à communiquer , le lien disponible sur cette page pour le codage arduino ne fonctionne pas ???
    Merci par avance de ce partage.
    Cdlt
    Pascal LEBOURGEOIS

    https://lebourgeoispascal.wixsite.com/mon-coin-passion

    • Gilles| 7 décembre 2020

      Bonjour Pascal, je viens de tester le lien, il marche bien chez moi. Je n’ai pas mis de schéma car c’est tres simple. Il faut utiliser A1 pour l’entrée du capteur. La pompe est connectée par 3 fils: le PWM sur D11, le 0v et le 12V sur le connecteur d’alimentation.

  • pascal Lebourgeois| 30 décembre 2020

    Bonsoir Gilles, merci pour ta réponse , désolé mais quand je clique sur “ici” rien ne se passe pourrais tu me l’expédier sur mon adresse Email ou par messenger ? lebourgeois.pascal@gmail.com

  • jean-jacques poncin| 2 avril 2021

    Bonjour Gilles,
    J’ai enfin pu réaliser ton petit montage (pompe attendue 2mois). J’ai un petit problème dans la commande de consigne. Tout semble fonctionner correctement avec une consigne à 100kpa après le téléversement du programme, la pompe régule correctement mais je ne peux pas modifier la consigne. Toute action sur les touches , même la touche de sélection est sans effet. Seule la touche “BAS” déclenche la mise en route de la pompe au lieu de la touche “Gauche”.
    Le LCD keypad est la version 2, ce n’est pas le même que le tien, peut-^tre le pb vient-il de là.
    Si tu as une piste je te remercie de me l’indiquer. J’ai fait des photos de mes branchements que je peux t’envoyer.
    Amicalement.

    • Gilles| 2 avril 2021

      Bonjour Jean-Jacques, Bravo pour ta réalisation. Le problème vient effectivement de la version2 du keypad. Les valeurs des constantes pour la reconnaissance des touches ne sont pas les mêmes. Regarde l’exemple dans la doc de la version 2. Je veux bien poster le programme pour la version 2, une fois que cela marche 😉

      • jean-jacques poncin| 2 avril 2021

        Je te remercie pour ta réponse rapide, je regarde ça et je te tiens au courant.

  • Répondre

    Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *