Détecter variation brusque valeur analogique
-
- Générateur de blocs fonctions
- Messages : 144
- Enregistré le : 23 sept. 2019, 18:21
Détecter variation brusque valeur analogique
Bonjour,
Sur un vérin pneumatique est installé un capteur de position transmettant un signal 4-20Ma selon la position de celui-ci.
En temps normal le vérin bouge lentement afin de mettre un pression une pièce et j'aimerai générer un défaut pièce cassé. Pour cela il me suffit de détecter un changement brusque de la positon de la tige mais je ne sais pas comment programmer cela. Avez vous des idées ?
Sur un vérin pneumatique est installé un capteur de position transmettant un signal 4-20Ma selon la position de celui-ci.
En temps normal le vérin bouge lentement afin de mettre un pression une pièce et j'aimerai générer un défaut pièce cassé. Pour cela il me suffit de détecter un changement brusque de la positon de la tige mais je ne sais pas comment programmer cela. Avez vous des idées ?
Re: Détecter variation brusque valeur analogique
Bonjour
je ferais quelque chose comme cela
ton signal analogique vari de 0 à 27648 points
tu mémorise la valeur actuelle du nombre de point de ton entrée PEW toutes les 100ms
tu a donc une valeur
exemple
8500 point et si la valeur suivante ( 100ms) est 8500 + ou - X points alors du crée ton défaut
X points a toi de voir de combien bouge ton entrée analogique avec une pièce HS
Sinon tu sais qu'une pression normale sur ta pièce est de X points et du fait une tolérance a + ou - X points sinon défaut
Bonne fin de journée
Cordialement
je ferais quelque chose comme cela
ton signal analogique vari de 0 à 27648 points
tu mémorise la valeur actuelle du nombre de point de ton entrée PEW toutes les 100ms
tu a donc une valeur
exemple
8500 point et si la valeur suivante ( 100ms) est 8500 + ou - X points alors du crée ton défaut
X points a toi de voir de combien bouge ton entrée analogique avec une pièce HS
Sinon tu sais qu'une pression normale sur ta pièce est de X points et du fait une tolérance a + ou - X points sinon défaut
Bonne fin de journée
Cordialement
Re: Détecter variation brusque valeur analogique
J'ai exactement le même soucis que toi ici : http://forum-automatisme.net/viewtopic. ... 688#p22688
Si quelquefois tu te sens petit, inutile, démoralisé ou dépressif, n'oublies jamais que tu as été un jour le plus rapide et le meilleur spermatozoïde de ta bande ...
Re: Détecter variation brusque valeur analogique
Bonsoir,
Effectivement l'idée est de calculer une variation. La variation n'est ni plus ni moins qu'une dérivée.
Tu utilises par exemple un tableau de 20 valeurs que tu prends une toutes les 100ms ou tour de cycle. Tu compares ta valeur en cours avec la précédente. Si ta comparaison est supérieure à un seuil tu set un bit.
D'ailleurs prend la valeur absolue de ta comparaison comme ça tu es tranquille.
J'espère que cela t'aidera.
Effectivement l'idée est de calculer une variation. La variation n'est ni plus ni moins qu'une dérivée.
Tu utilises par exemple un tableau de 20 valeurs que tu prends une toutes les 100ms ou tour de cycle. Tu compares ta valeur en cours avec la précédente. Si ta comparaison est supérieure à un seuil tu set un bit.
D'ailleurs prend la valeur absolue de ta comparaison comme ça tu es tranquille.
J'espère que cela t'aidera.
Re: Détecter variation brusque valeur analogique
Salut,
Mathématiquement, la dérivée d'une position (par rapport au temps) est la vitesse.
Tu sais calculer le coefficient directeur d'une droite entre 2 points connues (x1,y1) et (x2, y2) --> coeff = (y2 - y1) / (x2 - x1) = delta y / delta x ??
Ben là c'est pareil, sauf que x c'est le temps et y c'est la position.
Donc vitesse = delta pos / delta temps
delta temps = temps écoulé depuis la mesure précédente
delta pos = position actuelle - position précédente
Maintenant tu peux aller un cran plus loin car la dérivée d'une vitesse c'est l'accélération.
Donc accélération = delta vitesse / delta temps
Et il me semble qu'une "variation brusque" = accélération ou décélération forte
Quand ton vérin est à l'arrêt ou en vitesse de croisière, son accélération est nulle
conseil : il faut être précis avec "delta temps"
si ta cible est un S7-1200 ou 1500, il y a un bloc standard qui mesure ce delta temps : https://support.industry.siemens.com/cs ... 0&lc=fr-FR
il faut appeler le bloc "RUNTIME" une seule fois à chaque cycle de scrutation (dans l'OB1 par ex)
ou mettre ton programme de détection dans un OB cyclique (OB30 ...) et dans ce cas le delta temps devient une constante que tu choisis
Il faut souvent filtrer la mesure et/ou ses dérivées par une moyenne glissante (c'est un filtre passe bas)
Mais essaye déjà sans dans un premier temps.
@+
Mathématiquement, la dérivée d'une position (par rapport au temps) est la vitesse.
Tu sais calculer le coefficient directeur d'une droite entre 2 points connues (x1,y1) et (x2, y2) --> coeff = (y2 - y1) / (x2 - x1) = delta y / delta x ??
Ben là c'est pareil, sauf que x c'est le temps et y c'est la position.
Donc vitesse = delta pos / delta temps
delta temps = temps écoulé depuis la mesure précédente
delta pos = position actuelle - position précédente
Maintenant tu peux aller un cran plus loin car la dérivée d'une vitesse c'est l'accélération.
Donc accélération = delta vitesse / delta temps
Et il me semble qu'une "variation brusque" = accélération ou décélération forte
Quand ton vérin est à l'arrêt ou en vitesse de croisière, son accélération est nulle
conseil : il faut être précis avec "delta temps"
si ta cible est un S7-1200 ou 1500, il y a un bloc standard qui mesure ce delta temps : https://support.industry.siemens.com/cs ... 0&lc=fr-FR
il faut appeler le bloc "RUNTIME" une seule fois à chaque cycle de scrutation (dans l'OB1 par ex)
ou mettre ton programme de détection dans un OB cyclique (OB30 ...) et dans ce cas le delta temps devient une constante que tu choisis
Il faut souvent filtrer la mesure et/ou ses dérivées par une moyenne glissante (c'est un filtre passe bas)
Mais essaye déjà sans dans un premier temps.
@+
- itasoft
- Mi homme - Mi automate
- Messages : 7086
- Enregistré le : 20 oct. 2015, 10:15
- Localisation : Lyon
- Contact :
Re: Détecter variation brusque valeur analogique
Slts,
Si c’est juste pour générer un Défaut "pièce cassée" suffirait avec un bit horloge de comparer l’écart entre la mesure à N avec celle à N-1 pendant le cycle de compression si écart > maxi then SET DEFAUT
Reste à savoir, quand la pièce casse le vérin il fait quoi exactement ??
Si c’est juste pour générer un Défaut "pièce cassée" suffirait avec un bit horloge de comparer l’écart entre la mesure à N avec celle à N-1 pendant le cycle de compression si écart > maxi then SET DEFAUT
Reste à savoir, quand la pièce casse le vérin il fait quoi exactement ??
Automaticien privé (de tout)
itasoft@free.fr
itasoft@free.fr
Re: Détecter variation brusque valeur analogique
Bonjour,
Si le vérin serre la pièce, il faut peut-être détecter le serrage (ralentissement) avant la casse (Ré-avance vérin), ou si la cote de serrage est connue, simplement détecter le dépassement. Voila pourquoi, une description de la mécanique ne serait pas du luxe!
Et du coup, à quoi sert la mesure analogique actuellement?
Un petit croquis expliquant le principe pourrait éclaircir la chose.itasoft a écrit : ↑02 juin 2021, 07:35 Slts,
Si c’est juste pour générer un Défaut "pièce cassée" suffirait avec un bit horloge de comparer l’écart entre la mesure à N avec celle à N-1 pendant le cycle de compression si écart > maxi then SET DEFAUT
Reste à savoir, quand la pièce casse le vérin il fait quoi exactement ??
Si le vérin serre la pièce, il faut peut-être détecter le serrage (ralentissement) avant la casse (Ré-avance vérin), ou si la cote de serrage est connue, simplement détecter le dépassement. Voila pourquoi, une description de la mécanique ne serait pas du luxe!
Et du coup, à quoi sert la mesure analogique actuellement?
-
- Générateur de blocs fonctions
- Messages : 144
- Enregistré le : 23 sept. 2019, 18:21
Re: Détecter variation brusque valeur analogique
Il s'agit d'un banc de test de roue / jante de vélo le grosse roue est entraîné via un moteur a une vitesse choisie fixe, une consigne de pression permet d'exercé une force sur la roue.
Si la jante explose et que le pneu crève le vérin bourge brusquement vers le bas.
Si la jante explose et que le pneu crève le vérin bourge brusquement vers le bas.
Re: Détecter variation brusque valeur analogique
Bonjour,
J'imagine que la charge n'est pas appliquée en début de cycle.
Par conséquent, voici de quelle manière, je procéderais:
1 ) mise en contact et rotation sans charge (pression vérin basse)
2 ) Estimation et mémorisation de la cote X sur un tour de roue mini
3 ) Mise charge et surveillance non dépassement de la cote X + Tolérance.
Cela te permettra de détecter la casse, mais également le faux rond, l'ovalité de ta roue s'il y a.
J'imagine que la charge n'est pas appliquée en début de cycle.
Par conséquent, voici de quelle manière, je procéderais:
1 ) mise en contact et rotation sans charge (pression vérin basse)
2 ) Estimation et mémorisation de la cote X sur un tour de roue mini
3 ) Mise charge et surveillance non dépassement de la cote X + Tolérance.
Cela te permettra de détecter la casse, mais également le faux rond, l'ovalité de ta roue s'il y a.