<html>
<head>
<meta content="text/html; charset=ISO-8859-1"
http-equiv="Content-Type">
</head>
<body bgcolor="#FFFFFF" text="#000000">
Bonjour,<br>
<br>
Si les réponses en fréquence sont identiques, c'est peut-être en
repassant en temps que cela ne va pas.<br>
C'est donc la fft qu'il faut surveiller.<br>
J'ai eu ce problème de fft que j'ai résolu en appliquant les règles
standard sur la fréquence d'échantillonnage.<br>
Il est utile de tester la fft sur un créneau par exemple, en
vérifiant sa validité par fft inverse<br>
(tu dois obtenir le sinc par fft, et tu dois retrouver le créneau
par fft-1)<br>
De plus, si tu affiche les données par plot2d par exemple , la mise
à l'échelle doit être gérée aussi.<br>
Cdt<br>
JLuc<br>
<br>
<br>
<div class="moz-cite-prefix">Le 10/12/2013 08:24, Binoyte a écrit :<br>
</div>
<blockquote
cite="mid:CAJO2YB7qsWdY1RaKF9BNVGkDrxBPFXWD650gtObLy+B2AyL8HA@mail.gmail.com"
type="cite">
<div dir="ltr">
<div>
<div>
<div>Bonjour,<br>
<br>
Je fais face aujourd'hui à une problématique de traitement
du signal, ce qui n'est pas du tout ma spécialité. J'ai
fait l'acquisition d'un signal qui est assez propre mais
quand je le dérive, ça devient inexploitable tant le bruit
est important. <br>
<br>
Je décide donc de filtrer le signal avant la dérivée en
appliquant un filtre passe-bas de type Butterworth ayant
une fréquence de coupure de 1/3 F échantillonnage. <br>
<br>
Je défini d'abord l'objet filtre `oFiltre` : <br>
<br>
<span style="font-family:courier new,monospace"> [pols
, gain] = zpbutt(ordre, omega_c);<br>
oFiltre = gain / real(poly(pols,'s'));<br>
oFiltre.dt='c';</span><br>
<br>
J'applique ensuite ce filtre à mes données : <br>
<br>
<span style="font-family:courier new,monospace"> num =
coeff( numer(oFiltre) );<br>
den = coeff( denom(oFiltre) );<br>
filtrees = filter(num, den, donnees);</span><br>
<br>
Les résultats ne sont pas du tout satisfaisants. En
comparant avec ce que j'obtiens avec d'autres logiciels,
comme Labview par exemple, je constate que les réponses en
fréquence des filtres Scilab et Labview sont identiques,
mais que les données filtrées sont différentes. <br>
<br>
Je pense qu'il y a une erreur dans mon script Scilab, car
un détail me dérange. Nul part n’apparaît la fréquence
d'échantillonnage. La variable `donnees` n'est qu'un
vecteur et la fonction `filter()` n'a aucun moyen pour
deviner le pas de temps. Je pense qu'il doit me manquer
une mise à l'échelle, à l'instar de la fonction `diff()`<br>
<br>
<span style="font-family:courier new,monospace">
diff(y,deg) * fs; </span><br>
<br>
</div>
Si quelqu'un à des pistes je suis preneur !<br>
<br>
</div>
Merci d'avance,<br>
<br>
</div>
Benoît<br>
<div>
<div>
<div>
<div><br>
<br>
</div>
</div>
</div>
</div>
</div>
<br>
<fieldset class="mimeAttachmentHeader"></fieldset>
<br>
<pre wrap="">_______________________________________________
users-fr mailing list
<a class="moz-txt-link-abbreviated" href="mailto:users-fr@lists.scilab.org">users-fr@lists.scilab.org</a>
<a class="moz-txt-link-freetext" href="http://lists.scilab.org/mailman/listinfo/users-fr">http://lists.scilab.org/mailman/listinfo/users-fr</a>
</pre>
</blockquote>
<br>
<div class="moz-signature">-- <br>
<meta http-equiv="content-type" content="text/html;
charset=ISO-8859-1">
<title>repons</title>
<br>
<br>
<br>
<br>
<small>Jean-Luc BABIGEON <br>
CNRS/Lal/Dacc <br>
Laboratoire de L'accélérateur Linéaire <br>
Centre scientifique d'Orsay - Bat 200 - BP 34 <br>
91898 - Orsay Cedex <br>
tel 0164468247 ou 8427 -<a moz-do-not-send="true"
href="mailto:babigeon@lal.in2p3.fr" target="_blank">babigeon@lal.in2p3.fr</a>
</small><br>
<br>
</div>
</body>
</html>