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!