Sscilab_logo_minicilab est un logiciel open source gratuit de calcul numérique qui propose environnement de développement pour les applications scientifiques et l’ingénierie. Scilab est téléchargeable sur le site  www.scilab.org/fr pour différents systèmes d’exploitation (GNU/Linux, MacOSX et Windows XP/Vista/7/8).

Pour le traitement du signal, Scilab fournit des outils pour visualiser et analyser des signaux dans les domaines temporel et fréquentiel. On retrouve par ailleurs un ensemble de fonctions permettant d’effectuer la synthèse et la simulation de filtre Numérique. Comme Scilab est aussi capable de lire et écrire des fichiers audio au format .wav ce logiciel permet d’illustrer de façon concrète des opérations de traitement numérique du signal.

Dans le cadre de la découverte du traitement numérique de signal avec mes étudiants S2 du DUT Geii1 voici un petit  script permettant de tracer la réponse fréquentielle (frmag) d’un filtre, de définir un signal sinusoïdal échantillonné et observer le traitement (filter) effectué par un filtre numérique comme exemple d’application.

// Exemple d’utilisation de Scilab
// pour une introduction au traitement numérique du signal
// http://poujouly.net
// Définition d’un filtre numérique
Fe=10e3;
num=[0.415 0 -0.415];
den=[1 -1.68 0.917];
// Calcul & Tracé de la réponse fréquentielle
[H,fr]=frmag(num,den,5000);
subplot(311);
plot(fr*Fe,H);
title(‘reponse fréquentielle du filtre’);
// Recherche des caractéristiques du filtre passe bande
[Valmax,indice]=max(H);
disp(fr(indice)*Fe,’fréquence du gain maximum :’);
disp(Valmax,’amplification maximale :’);
// Création d’un signal sinusoidal
n=1:150;Te=1/Fe;Fo=800;
E=sin(2*%pi*Fo*n*Te)
// Application du filtre & visualisation
S=filter(num,den,E)
subplot(312);
plot2d3(n,E,3);
title(‘Signal sinusoidal (800Hz) en entrée’);
subplot(313);
plot2d3(n,S,5);
title(‘Signal en sortie du filtre’);

L’exécution du script renvoie la figure suivante :

figure0

et on obtient dans la console les indications suivantes :

console

Je publierai prochainement quelques exemples d’utilisations avec les fichiers wav.