mercredi 21 décembre 2011

Wolfram Alpha pour l'électronique

Lors de séances sur informatique, il est souvent demandé de petits calculs mathématiques en rapport avec le sujet électronique du moment. C'est toujours rigolo de voir sortir l'étudiant sortir une calculette (voire un téléphone cellulaire), alors que le PC utilisé relié à internet ouvre de plus grandes possibilités que le simple calcul.
Le moteur de recherche de Google permet déjà de faire des calculs simples, et des conversions d'unités.
Le moteur de recherche Wolfram|Alpha va plus loin. Pour rappel, Wolfram|Alpha est le moteur de recherche bien connu imaginé par Stephen Wolfram, auteur de nombreux logiciels dont Mathématica.
  • le calcul
Il suffit d'entrer la calcul souhaité pour obtenir instantanément le résultat.
Exemple avec 1,618, notons que je n'ai pas réussi à lui faire reconnaître le nombre d'Or à partir de la valeur numérique précédente.
  • les conversions
Là aussi, tout comme Google, W|A sait faire les conversions, comme les Celsius en Kelvin.
  • les calculs mathématiques avancés
Il devient plus intéressant de demander des calculs plus compliqués mathématiquement parlant, comme le produit de 2 fonctions sinusoïdales, la dérivée de Acos(wt) par rapport au temps, ou encore le tracé temporel d'un signal en modulation d'amplitude de type MAPC...
  • les résistances
Même plus besoin de connaître le code des couleurs des résistances ! 8200 kohms ? Comment faire une résistance de 9500 ohms en combinant des résistances de la série E6 : voir le bas de cette page ! Une résistance rouge/rouge/rouge ? Réponse ici !
  • les fonctions de transfert
  • les fonctions d'approximation pour le filtrage électrique
Un exemple avec un gabarit de Butterworth qui s'ajuste "live" !

Il y aurait d'autres choses à dire, peut-être dans un second article, sur les systèmes asservis, les séries de Fourier, etc..

mercredi 28 septembre 2011

Mindows, les prémices.

Dans ce billet, je me disais qu'il serait agréable d'avoir un bureau, au sens gestionnaire de fenêtre, sous forme de carte mentale.
Aujourd'hui, je suis (presque) exaucé ! Le programme en question se nomme Gnome Pie.

On peut voir au centre la couronne et les applications disponibles. L'intérêt est aussi de pouvoir paramétrer GnomePie pourvisualiser ses dossiers (signets) les plus utilisés. Bientôt ses propres contacts ?

Plus d'infos ici, la photo est tirée de la même page. Pour l'instant, disponible sur Ubuntu seulement.

samedi 28 mai 2011

Tutoriel (3/3) : installation Android sous Ubuntu 11.04 avec Netbeans 7.0

NetBeans est prêt, l'AVD a été défini, on a raccroché le SDK Android à NetBeans, on peut démarrer un nouveau projet.
Cette dernière partie est quasiment une traduction française d'une page tirée du wiki NetBeans disponible ici.

Étape 6 : le projet
  • Dans NetBeans, choisir dans le menu Fichier puis Nouveau Projet.
  • après le clic sur Suivant, il faut définir les paramètres du projet :
Ne pas oublier : le nom du projet, le nom du package, ainsi que la bonne version d'android (an rapport avec l'AVD défini à l'étape 5, donc ici android 2.2).
  • le nouveau projet défini, NetBeans ouvre à gauche l'arborescence du package : ici une seule Activité est présente.
  • ouvrir MainActivity.java dans SourcePackages.
  • dans les imports, rajouter la ligne import.android.widget.TextView;
  • modifier le cœur de la méthode OnCreate en rajoutant les lignes :
  • choisir ensuite Exécuter le programme principal (touche raccourci F6).
  • on arrive à la fenêtre de choix de l'AVD : le nôtre doit apparaître dans la liste.

  • valider et patienter. La création et le lancement de l'AVD peut prendre plusieurs minutes.
  • enfin, l'écran du téléphone émulé s'ouvre :

Bon courage pour la suite !

Tutoriel (2/3) : installation Android sous Ubuntu 11.04 avec Netbeans 7.0

Passons maintenant à l'étape 3 :

Étape 3 : SDK Android
Le fichier SDK Readme.txt est instructif : on peut constater que le SDK ne contient aucune plateforme cible. Il va falloir télécharger les outils du SDK, et ensuite créer une cible.
  • à l'aide du navigateur de fichier, se rendre dans le répertoire précédent, puis Tools.
  • rendre le fichier android exécutable (si besoin).
  • lancez ce fichier android par clic gauche.

Commençons par télécharger effectivement le SDK. Menu Installed Package puis Update All.
Étape 4 : choix d'une cible (AVD = Android Virtual Device)
On va maintenant créer un "téléphone virtuel" sur lequel les applications développées seront testées.
  • toujours pour le même programme, choisir l'onglet Virtual Devices.
  • nommer une cible, et surtout, la version d'android cible (dans la photo ci-dessous, j'ai choisi la version 2.2 et 512Mo de RAM sur la carte SD)
Étape 5 : Retour à NetBeans...

Raccordons le SDK téléchargé à NetBeans.
  • choisir dans le menu Outils puis Options.
  • choisir l'onglet Android
  • indiquer le chemin du SDK, comme choisi en haut de cette page à l'étape 3.

Il est temps d'attaquer la partie 3 du tutoriel et démarrer un premier projet.

Tutoriel (1/3) : installation Android sous Ubuntu 11.04 avec Netbeans 7.0

Voici les étapes à suivre pour démarrer la programmation Android grâce à l'excellent EDI NetBeans, dans sa dernière mouture numérotée 7.0. Attention, la version des dépôts est la 6.9 : il est recommandé de préalablement la désinstaller complètement.

Étape 1 : Télécharger la dernière version de NetBeans


  • se rendre à l'adresse http://netbeans.org/downloads/. Changer la langue de l'IDE en français.
  • récupérer par exemple la Version C/C++, une des plus volumineuses. Si vous n'avez pas Java d'installé, choisir la version Java SE. Installation par les dépôts si vous le souhaitez.
  • sur le fichier téléchargé, netbeans-7.0-ml-cpp-linux.sh , faire clic droit pour autoriser l'exécution (menu Permission). Faire ensuite un clic gauche et lancer l'exécution.
  • suivre la procédure d'installation jusqu'à son terme.

  • Ensuite, dans la barre de menus, choisir Outils / Plugins : l'onglet Mise à jour vous propose ds mises à jour, qu'il est recommandé d'accepter. Il vous faudra redémarrer l'IDE.
Étape 2 : installation du plugin Android pour NetBeans
Le plugin est disponible à l'adresse http://kenai.com/projects/nbandroid/pages/Install.
Repérer l'adresse de mise à jour que l'on va paramétrer dans NetBeans :
http://kenai.com/projects/nbandroid/downloads/download/updatecenter/updates.xml
  • dans NetBeans, retouner dans Outils / Plugins / onglet Paramètres.
  • clic sur Ajouter, indiquer comme sur l'image ci-dessous les paramètres du plugin.

  • après cette étape, passer sur l'onglet Plugins Disponibles, repérer les nouveaux plugins android comme sur l'image ci-dessous :

Choisir android et le Android Test Runner for Netbeans 7.0+ (ATTENTION à ne pas prendre une autre version !)
  • lancer l'installation des plugins. Il vous faudra accepter l'installation bien que les plugins ne soient pas signés si vous souhaitez continuer
Passons à la partie 2 du tutorial pour le SDK Android.

samedi 7 mai 2011

Mindows

Ne serait-ce pas le temps de passer à une interface de type Carte Mentale pour remplacer les bureaux à fenêtres de nos PCs ?

L'arrivée d'Ubuntu 11.04 il y a quelques jours change quelques habitudes : la nouvelle interface Unity remplace désormais le bureau Gnome (qui reste pour l'instant disponible au choix lors de la fenêtre de login). Mais finalement, ce changement n'est pas un bouleversement. Il y a toujours des fenêtres, une barre d'indicateurs en haut, et le nouveau (mais pas très original) Dock, qui rappelle un tantinet l'interface Mac.

Il y a environ 25 ans, les premiers ordinateurs personnels étaient en majorité équipés de Windows 1. Ce n'était pas alors à proprement parler un OS (voir cette page wikipédia), mais bel et bien une couche rajoutée à MSDOS. A l'époque, les types des fichiers manipulés étaient peu nombreux : BAT, EXE, BMP, etc.

Windows empruntait plusieurs idées venues d'autres mondes : GEM (pour l'OS CP/M), ou celui de l'Apple II. Pour le grand public, ces interfaces graphiques reposent quasiment toutes sur l'utilisation d'une barre de menu, d'icônes, d'une icône "Trash/Poubelle", etc.

Et aujourd'hui, tout cela n'a pas beaucoup évolué : plusieurs bureaux parfois pour Gnome & autres, plusieurs barres de menu, éventuellement de la 3D (Compiz, Aéro, etc). Pourtant, les applications se sont démultipliées, et l'arrivée d'Internet a bouleversé les habitudes de travail sur PC.

En conclusion, une petite refonte de ces interfaces serait la bienvenue, pourquoi pas sous la forme d'une carte mentale dynamique ? En fonction de l'activité récente (programmes), des contacts récents (mails, IM, tweets, webcam, docs partagés), des informations exploitées (sites, documents textes, vidéo, programmes spécialisés), le tout rassemblés par thème, on éviterait le parcours répétitif de l'arborescence du répertoire physique pour trouver l'information que l'on cherche.

Cette structure de fichiers arborescente, qui a pour point d'origine la racine, ne correspond malheureusement pas à ma façon de "penser le rangement" de mes documents sur. Personnellement, je ne trouve pas cela naturel, et je perds un temps fou à chercher mes documents.

Si vous connaissez un bureau, une interface de ce type, je suis preneur !

samedi 16 avril 2011

LaTex & TAOCP

Lors d'une précédente réunion, il a été question du logiciel LaTeX, d'où l'occasion d'en reparler ici ! Ce logiciel est un traitement de texte un peu difficile à appréhender, mais il produit des documents d'une très haute qualité, en particulier dans le domaine scientifique où les équations scientifiques, les diagrammes, les citations, les bibliographies, les index et autres tableaux sont nombreux. Un document formaté LaTeX se reconnaît au premier coup d'oeil !
Son "défaut" principal est l'absence de Wysiwyg : c'est un langage à part entière qui nécessite une compilation. Donc, à l'écran, l'utilisateur entre des instructions, respecte la syntaxe du langage (TeX), compile, et obtient ensuite le résultat.
À l'origine de ce langage se trouve un informaticien, chercheur émérite à l'université de Stanford : Donald Knuth. Don Knuth a joué un rôle très important dans cette discipline, et s'est lancé dans une "encyclopédie" de l'informatique : The Art Of Computer Programming, ou TAOCP.

(photo tirée de Wikipédia)

Cette œuvre monumentale, pour l'instant inachevée, couvre l'ensemble de l'informatique (au sens Computer Science), et dont la table des matière est reproduite sur wikipédia.
On peut noter que le préambule (basic concepts !) est en fait un cours de maths, puisque les deux son indissociables : arithmétique, PGCD, séries entières, intégrales, etc.

Parmi les anecdotes :
Accessoirement, il a conçu un algorithme de résolution du jeu des Pentamonios, d'une très grande rapidité. Ce sera l'objet d'un prochain article sur ce blog!

dimanche 6 mars 2011

Carte Mentale, par Gaspard Monge

Il peut être intéressant de remonter le temps à la recherche de la première carte mentale. Jusqu'à présent, la plus ancienne carte était, à ma connaissance, celle de Walt Disney, disponible ici sur le blog de Ph. Boukobza, et datant de 1957.
Or, à quelques détails graphiques près, on pourrait quasiment considérer ce document de Gaspard Monge comme une carte mentale !

Le thème de cette carte est l'Eau, sous ses trois formes : solide, liquide & "vapeur". La mise en page indique clairement le thème, à gauche; des accolades ouvrantes permettant d'accéder aux informations relatives aux trois états de la matière. Cette structure arborescente est donc bien liée au concept de carte mentale, et démontre que ce mode de représentation graphique est plutôt ancien (ici fin XVIIIème début XIXème) !
Autre exemple :

Pour l'anecdote, G. Monge était aussi du voyage en Égypte, avec J. Fourier, solution de l'énigme de ce billet.

Les différentes images copies des manuscrits de G. Monge sont issues du fond numérique de l'École Polytechnique, le fonds Monge étant accessible à cette adresse.

dimanche 12 décembre 2010

Vive les semestres décalés !

Ci-joint le lien pour la vidéo concernant la mise en place des semestres décalés, en particulier à l'IUT de Cachan, diffusée sur la chaîne MCE.
L'émission fait une trentaine de minutes, le reportage sur Cachan démarre à 17 minutes 40.

Rappelons qu'une formation en semestres décalés signifie que celle-ci démarre ses enseignements en février, et non en septembre/octobre comme habituellement. Ce calendrier de fonctionnement est l'un des éléments du Plan Réussite Licence, comme le rappelle notre chef de département vénéré dans la vidéo précédente. En effet, suite à un premier semestre faiblement réussi, un étudiant peut se réorienter dès février, sans attendre 6 mois pour la prochaine rentrée de septembre.

vendredi 26 novembre 2010

Mais quel est donc cet étrange objet, Pierre ? La soluce...

Dans la série "Mais qu'est-ce donc ?", voici une photo de 1956 : que représente t-elle ?

Réponse plus bas...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
C'est un disque dur de 5 Mo et de plus d'une tonne, composant de l'ordinateur IBM 305 Ramac.
(source photo : IBM)

lundi 30 août 2010

Création et Innovation Technologiques

Sous ce titre se cache une nouvelle matière en classe de secondes générales et techniques. Son objectif est " l’étude des innovations, des lois d’évolution et de la créativité, associées aux évolutions des produits et systèmes technologiques de notre société."
Afin d'aider à la mise en place de cette matière, plusieurs ressources sont disponibles sur le site EduScol du M.E.N., en particulier

Pour notre IUT, ces ressources contiennent des éléments intéressants. "Dans le temps", il existait une matière dénommée "Projets Tutorés", dont l'un des objectifs était également de faire étudier par un petit groupe d'étudiants un système électronique complexe de la vie courante. Il y a donc dans ces documents des éléments dont "on" pourrait s'inspirer et ainsi redonner vie à ces projets...

La désaffection des étudiants pour les matières techniques est regrettable. Espérons que cette nouvelle matière, issue de la nouvelle réforme du lycée, provoque chez eux la petite étincelle qui les conduira plus tard à rejoindre un établissement technique !

PS : le document proposé en lien préconise l'utilisation des cartes mentales pour les discussions de groupe... On peut donc joindre l'utile à l'agréable !

PS2 : Merci à P. Boukobza pour l'info.

lundi 24 mai 2010

Suite Logique

Saurez-vous compléter la suite suivante : 2, 10, 42, 170, 682, X, 10922, Y, ... ?

Où X et Y restent à trouver ?

Vers quelle limite tend le rapport de 2 termes successifs ?

[EDIT 25/5 14h] La solution n'est pas si compliquée (en base 10). Elle est beaucoup plus simple en base 2 !

vendredi 30 avril 2010

Le temps des Moissondes (Airnergy Harvester)

Avec un peu de retard, voici quelques infos sur ce produit fabriqué par RCA, et présenté lors du dernier CES de Las Vegas début 2010.
Il s'agit d'un chargeur portable pour appareils mobiles, dont le principe de fonctionnement repose sur la "moisson", ou plutôt la capture des ondes WiFi. Autrement dit, en ville, à domicile, ce dispositif rechargera votre téléphone portable, et ce, d'autant mieux qu'il sera placé à proximité du routeur WiFi.


Pour en savoir plus : l'article de OhGizmo.

mardi 16 février 2010

Propagande Cartes Mentales

Il faut bien commencer un jour à utiliser les cartes mentales... En CM1 par exemple ! Cartes réalisées sous Mindomo.

dimanche 5 juillet 2009

jeudi 21 mai 2009

Solutions des deux premiers numyrinthes

Comme on peut le constater sur ces deux premiers numyrinthes, le passage d'une couronne à l'autre se faisait par simple addition... Le prochain ne sera pas aussi simple....


samedi 9 mai 2009

wikipedia + freemind = wikimindmap

La manipulation graphique de données permet d'un seul coup d'oeil de visualiser les infos recherchées, on n'est pas obligé de parcourir linéairement le document, en recherchant les têtes de paragraphes. Wikimindmap est une interface graphique en ligne, reposant sur le logiciel de cartographie Freemind. Elle permet d'accéder aux contenus de l'encyclopédie en ligne Wikipédia graphiquement : après avoir lancé une recherche, le résultat s'affiche au centre de l'écran, ainsi que toutes ses ramifications. On peut ainsi naviguer et parcourir la branche la plus intéressante.

jeudi 23 avril 2009

Numyrinthe n°2

Deuxième numyrinthe en spirale, plutôt simple.

mercredi 1 avril 2009

Numyrinthe

Vous trouverez ci-dessous la photo d'un Numyrinthe. Il s'agit d'un labyrinthe de symboles (chiffres, lettres, autres) disposés sur des cercles concentriques. Pour passer d'un cercle à un autre, il faut déduire la relation qui les relie (une simple opération mathématique d'addition par exemple). Quelques infos :
  • pour les Numyrinthes complexes, ces relations de passage d'une couronne à l'autre peuvent être différentes. Elles peuvent être de natures différentes (i.e. pas nécessairement mathématique).
  • le nombre de cercles n'est pas limité.
  • les symboles peuvent être répétés, ou non. Tout dépend de la complexité du Numyrinthe.
Le Numyrinthe est résolu lorsque toutes les cases libres sont remplies.
Saurez-vous résoudre ce premier Numyrinthe, plutôt facile, dans lequel il vous faudra faire plus ?

lundi 23 mars 2009

Python et la copie de listes : attention aux pièges

La copie de listes en Python est une opération qui recèle quelques subtilités liées à la manipulation des objets (Dans Python, tout est objet !). J'ai déjà écrit sur le sujet ici.
Il faut davantage se méfier de la copie de listes de listes, c'est à dire de listes composées de listes !!!

Le problème
Si l'on veut recopier la liste a dans b, l'opération b = a produit le résultat suivant :
>>> a = [1,2,3]
>>> b = a
>>> a.append(4)
>>> print a,b
[1,2,3,4] [1,2,3,4]


a et b sont en effet des alias, des étiquettes du même objet [1,2,3]. Donc, effectuer une opération sur a revient à effectuer une opération sur b, puisque dans les deux cas on effectue l'opération sur [1,2,3].

Le fils de Dark Vador, le dernier élève de Yoda sont deux périphrases pour désigner Luke Skywalker.

Solution 1.
La copie de listes étant donc une opération très répandue en Python, il existe plusieurs solutions à ce problème de copie. La première consiste à utiliser la fonction list().
>>> a = [1,2,3]
>>> b = list(a)
>>> a.append(4)
>>> print a,b

[1,2,3,4] [1,2,3]

Solution 2.
Utilisation de la fonction copy() du module copy.
>>> import copy
>>> b = copy.copy(a)


Copie de listes de listes.
Examinons le problème en créant une liste de listes, et en la copiant grâce à list().
>>> a = [ [1,2,3] , ["a", "b"] ]
>>> b = list(a)

Rajoutons un élément à a[1].
>>> a[1].append("c")

On peut vérifier que a et b sont deux listes différentes
>>> id(a)
168544588
>>> id(b)
168544876


Affichons a et b :
>>> print a,b
[[1,2,3] , ["a", "b" , "c"]] [[1,2,3] , ["a", "b" , "c"]]


La liste b est elle-aussi modifée !
En effet, le deuxième élément des deux listes est à la même adresse :
>>> id(a[1])
168544492
>>> id(b[1])
168544492


Solution.
La copie de listes de listes se fera grâce à l'instruction deepcopy() du module copy.