Bonjour,
Je travaille sur l'automatisation d'un robot 2D qui doit distribuer du béton pour l'industrie des prédalles, prémurs etc.
Voilà le système en manuel: https://youtu.be/871kg4CSfgA?t=45s
Le but est de remplacer le travail de l'opérateur (souvent ils mettent trop de béton, mais rassurez vous on le met pas au chômage vu qu'il est nécessaire au process, il a juste moins de choses à faire) par un algorithme. J'ai tout fait depuis 0 sur un automate industriel (le code fait 6000 lignes), tout fonctionne et on est satisfait à 90%... et c'est pour les 10% restants que j'ai besoin d'aide
La partie qui pose problème concerne le pilotage du flux de béton (la cascade qui se déplace). J'ai réussi à définir une masse linéique à déposer et le but du jeu est de piloter la chute du béton avec l'avance du système. Globalement mon algo fonctionne bien (il y a pas de secret, on force l'un des paramètres qu'on cherche à maintenir constant avec un régulateur, et le second paramètre doit s'adapter au premier... maitre-esclave). Cependant j'ai un problème de vitesse du processus.
La quantité de béton présente est mesurée par une balance, la position du chariot par un laser. Ces 2 systèmes me donnent une nouvelle mesure toutes les 15ms.
Comme je travaille avec des vitesses je fais une différence avec (nouvelle_valeur - ancienne) / temps, rien de bien sorcier.
Cependant si j'utilise ma donnée telle qu'elle cela ne fonctionne pas. J'ai du bruit, même au repos j'ai un signal qui présente aléatoirement des pics...
Les données de positions me sont données sous forme de DINT, la vitesse que je calcule est un REAL, je pense avoir fait un transtypage correct dans mon automate (langage ST).
Est-ce que ces pics sont dûs à un problème de passage d'un type à un autre, ou est-ce du bruit normal (en fonctionnement le signal est vraiment, mais vraiment, pas beau)?
Afin de corriger cela j'utilise un filtre, je l'ai calibré sur une période de 200ms, soit environ 14 échantillons. C'est plus propre mais on est loin d'un beau signal lisse, et accessoirement c'est lent...
Je souhaite pilote mon avance et mon flux via 2 PID indépendants, seulement dans ces conditions on a un contrôle à maximum 5Hz.
Je voulais savoir si cela été jouable ou pas parce que là on a vraiment quelque chose de lent, ce qui est problèmatique dans les phases de démarrage/arrêt (petit monticule à la position de départ)?
Pour mon filtre, mon problème vient il d'un problème à cause des types utilisés ou est-ce du bruit normal, est quel est le nombre d'échantillons minimums à avoir pour pouvoir travailler?
Je suis vraiment bloquer, j'ai l'impression que j'ai les capteurs qui freinent mon process et limitent ses performances. J'en ai parlé à mes chefs qui m'ont dit que c'était comme cela et qu'on doit faire avec...
Merci pour vos avis!
-----