jeudi 11 décembre 2008

Récupérer puis Traiter les données d'une fenêtre TKinter (Entry)

TKinter est un module Python permettant de créer rapidement et simplement une interface utilisateur (GUI, IHM).
Vous trouverez dans cet article un petit exemple (intro_tkinter_basic.py) qui permettra de vous familiariser avec la récupération et le traitement des données provenant de contrôles de type Entry (champs à remplir par l'utilisateur).
Vous verrez également comment renvoyer ces données vers l'IHM dans un contrôle de type Text.
Pour cela, on utilise les deux méthodes configure() et get().

samedi 15 novembre 2008

Avez-vous VUE ?


VUE, pour Visual Understanding Environment, est un nouvel outil dans le monde des cartes mentales. Sa particularité est d'introduire la notion de chemins d'apprentissages (pathways) . Ces chemins permettent de relier les noeuds d'une carte partageant une même idée, une même thématique. De plus, chaque noeud de la carte possède sa propre diapositive (au sens Powerpoint/OOo Impress du terme), ce qui permet, lors d'une présentation, de basculer entre une approche "carte mentale" ou une approche "diaporama". Bien entendu, chaque noeud/diapo peut être agrémenté à l'envi de photos, liens, etc qui viennent enrichir la présentation.
Il faut noter qu'une version en ligne existe, utilisable à l'intérieur du navigateur sous forme d'applet Java.
Il est développé par l'université Tufts, et peut donc être téléchargé sur leurs serveurs. Développé en Java, il est donc disponible sur toutes plateformes.

lundi 3 novembre 2008

L'Homme Invisible

De petits casques très pratiques ont fait leurs apparitions dans le commerce (ici ou ). Ces casques, qui mettent en oeuvre des techniques d'annulation/réduction du bruit ambiant (noise cancelling techniques) permettent par exemple de voyager en avion dans le calme, sans avoir à subir le ronronnement permanent des réacteurs. Techniquement ( le TNS étant à la mode ces jours-ci), l'algorithme à la base du noise cancellation est un filtre numérique d'ordre assez élevé (> 100). On parle de filtre adaptatif dans la mesure où les coefficients du filtre ne sont pas des constantes mais des variables ajustées en fonction d'un critère d'erreur : la différence entre le bruit ambiant reçu au niveau du casque et la correction apportée par le filtre. Ce sont là des techniques complexes...
Examinons le fonctionnement d'un dispositif simpliste avec SwitcherCAD.
Un monde sans son.
Le principe physique à la base du concept est celui d'interférences destructives. L'idée est d'envoyer dans les écouteurs le bruit ambiant additionné d'un signal électrique semblable mais de polarité inverse.
La figure ci-dessus représente une source de tension SwCAD classique, définie par un fichier WAV (ici vista2.wav pour faire le test). La durée de simulation est de 4.7 secondes, ce qui correspond environ à la durée du son.
Créeons maintenant un fichier son défini comme l'opposé de vista2.wav, par l'utilisation d'une source SwCAD BV (Behavorial Voltage, voir l'article de référence si besoin).
Notez le signe "-" devant la définition de la source. La ligne de commande .wave permet d'exporter notre signal au format WAV (nom de fichier = vista3.wav, N = 16 bits, Fe = 44.1Hz).
Une fois lancée la simulation, vous pouvez écouter le son produit par la source Vmusik_neg enregistré sous le nom vista3.wav . Il n'y aucune différence à l'oreille.
Pour finir, toujours avec une source BV, créons un troisième son défini comme la somme de Vmusik et de Vmusik_neg.
La tension Vcancel est exportée là aussi au format WAV (fichier vista4.wav). Ecoutez le son résultant ici.....
Remarque importante : pour cette expérience, on a inversé la polarité du signal vista2. C'est donc que nous connaissons vista2. Dans le cas d'un bruit ambiant par définition aléatoire, nous n'avons pas cette connaissance, noeud du problème...

Et avec des images ?
Avec ce principe, vous pouvez jouer à l'Homme Invisible...
Prenons, au hasard, une image tirée des Simpsons, avec Tom Brady comme invité d'Homer.
C'est l'image que l'on va chercher à annuler... Pour cela, n'importe quel logiciel de traitement d'image possède une option Inverser les couleurs. Le résultat de cette opération sur l'image de départ donne :
C'est le négatif, terme désuet à l'ère des appareils photos numériques.
La photo ci-dessous représente la somme des deux images précédentes (Réalisé sans trucages) :
On a fait disparaître l'image... La photo ci-dessous comporte un calque transparent permettant de voir les deux moitiés des deux images, avec la zone grise au centre.
Moralité : Si les casques d'aujourd'hui permettent d'annuler les bruits de fond ambiants, vivement les lunettes de demain... (ou bien relire H.G. Wells)

samedi 4 octobre 2008

GNU Octave

Qu'est-ce qu'Octave ?
OCTAVE est un logiciel libre de calcul numérique, dont la particularité est de disposer d'un interpréteur en ligne. Cet interpréteur permet donc à l'utilisateur de taper ses commandes en ligne et de les voir immédiatement exécutées. Comme son concurrent payant Matlab ((c) The Mathworks), ou son concurrent gratuit Scilab de l'INRIA.
Cette propriété se retrouve également dans Python.
Pourquoi parler d'Octave ?
Tout comme SwitcherCADIII, Octave fait partie de la panoplie logicielle de tout électronicien. En ce qui nous concerne, pour les cours actuels de C2A, d'oscillateurs, et de PLL, Octave est un outil pratique permettant de simuler le comportement d'un système asservi, et de visualiser ses réponses temporelles et fréquentielles, plus particulièrement les marges de stabilité visibles sur les diagrammes de Bode et Nyquist. Prochainement, le cours de Traitement Numérique du Signal en EN pourra être suivi d'applications sur Octave.
Où trouver Octave ?
Sur Ubuntu, Octave 3.0 se trouve dans les dépôts Universe. Il faut veiller à télécharger également le paquet GNUplot, sans lequel vous n'aurez pas de possibilité d'afficher de tracés (grâce à la fonction plot). Je recommande également le paquet QtOctave, qui est un environnement de développement plus attrayant que la console linux.
Sur Windows, un fichier Installer est accessible ici, ou directement sur le site d'Octave.
L'oscillateur Bubba du DS
Octave fonctionne en mode console : ceci pose quelques problèmes lorsqu'à la fin des instructions entrées, on s'aperçoit d'une erreur au début. Pour y remédier, Octave permet donc également de travailler avec des scripts, qui sont concrètement des fichiers textes (extension .m) qui comportent une suite d'instructions Octave.
Pour l'oscillateur Bubba, le script est disponible ici. Il est directement fonctionnel dans Octave. Quelques commentaires vous aideront à faire vos premiers pas avec ce logiciel.
Par ailleurs...
L'Octave est également une unité de mesure anglo-saxonne pour désigner le volume de whisky dans un tonneau, soit 73 litres, soit 16 galons UK. Ce qui n'apporte rien à la discussion sur le calcul numérique, mais n'y enlève rien non plus.

dimanche 7 septembre 2008

Un (autre) nouvel outil pour les cartes mentales en ligne

Mind42 (Mind For Two) est un nouvel outil de conception de cartes mentales en ligne.


Si la mise en forme des noeuds ne permet pas beaucoup d'options, Mind42 présente quelques avantages :

  • le chargement de l'application dans le navigateur est rapide : on peut donc créer des cartes très rapidement.
  • il est possible d'insérer des notes façon Post-It dans les noeuds.
  • de même, on peut insérer des listes de tâches (To-Do Lists) dans les noeuds, avec gestion du % d'avancement, du temps, et des priorités des tâches.

mercredi 27 août 2008

Rendu chèvre

Un paysan possède un enclos herbeux, de forme ronde, pour sa chèvre. On pose R comme étant le rayon de l'enclos.
Il attache sa chèvre à une corde, elle-même fixée à la périphérie de son enclos. On pose L la longueur de cette corde.
Quelle doit être la longueur de la corde L, de sorte que la surface broutée par la chèvre soit égale à la surface non broutée ?

mercredi 13 août 2008

Un nouvel outil pour les cartes mentales en ligne

Spinscape est un nouvel outil en ligne pour la réalisation collaborative de cartes mentales. Basé sur le plugin Flash, comme ses concurrents, il se charge en quelques secondes dans votre navigateur. Esthétiquement, l'interface futuriste, dans les tons orangés, est très réussie.



Parmi les fonctionnalités les plus intéressantes, on trouve notamment la possibilité de réaliser des cartes sans noeud central. Peu de concurrents offrent cette fonctionnalité. On peut également ajouter des widgets pour rendre les noeuds plus vivants : youtube, google docs, etc...
En revanche, on peut regretter qu'une fois la période d'essai dépassée, les fonctionnalités "gratuites" soient très limitées.

dimanche 20 juillet 2008

Installer le plugin Tomcat pour Eclipse (Ubuntu)

0/ - Remarque préliminaire : Tomcat n'est pas inclus dans le plugin. Il faut donc le récupérer via les dépôts (infos ici, téléchargement sans passer par les dépôts directement sur le site Tomcat ici). Version utilisée ici : Tomcat 5.5

Vérification : en mode admin console, vérifier que Tomcat "tourne" :
sudo /etc/init.d/tomcat5.5 status
La réponse devrait être :
* Tomcat servlet engine is running with pid 5536

1/ - Récupération du plugin
La liste des plugins est visible ici. Plus spécifiquement, le plugin Tomcat choisi (Sysdeo) est ici.

2/ - Dézipper le fichier dans le répertoire des plugins eclipse
En mode console ( se mettre dans le répertoire contenant com.sysdeo.eclipse) :
sudo cp -r com.sysdeo.eclipse.tomcat_3.2.1 /usr/lib/eclipse/plugins/

3/ - Démarrer Eclipse à la console.
eclipse -clean

C'est terminé : pour ajuster les réglages, se reporter au fichier readme.html inclus dans le zip.

samedi 19 juillet 2008

Carte Mentale Python


Vous trouverez ici une carte mentale réalisée avec Mindomo, sur le langage Python.
Pour faciliter sa diffusion, elle est rédigée en anglais. Elle sera progressivement augmentée et améliorée, en fonction des retours d'utilisation.
Retrouvez toutes mes cartes mentales sur la page des cartes mentales de mon site.

vendredi 18 juillet 2008

Installation d'Eclipse + Pydev (Python) sur Asus EEEPC (ubuntu)

1/ - installation d'Eclipse (version 3.2 ce jour).
En mode console, taper :
~$sudo apt-get install eclipse

2/ - installation du module pydev
En mode console, taper :
~$ sudo apt-get install eclipse-pydev

3/ - Trouver le chemin de l'interpréteur sur votre machine
  • sous Windows: c:\python 2.x\python.exe (par défaut)
  • sous Ubuntu: \usr\bin (par défaut, faire whereis python en mode console pour localiser si Python besoin)
4/ - paramétrer Eclipse
Windows -> Preferences -> Pydev -> Python - Interpreter
Cliquer sur "new".