mercredi 9 novembre 2011

Publication dans la presse

Ce mois de septembre aura été on ne peut plus sympathique avec deux publications d’articles parus dans la presse spécialisée au sujet du banc frigorifique contrôlable à distance pour lequel j’ai participé sur la partie acquisition, régulation et supervision pour le lycée Raspail.

Les articles sont parus dans la Revue pour le froid avec le titre “Chambre froide pour apprendre à distance”, et dans la Revue générale du froid et du conditionnement d’air avec le titre “Lycée Raspail, le lycée des métiers de l’énergie et de l’environnement de Paris”.

La description du banc est quant à elle consultable ici.

lundi 30 mai 2011

Conférence “Accélérateur de particules : lumière sur le futur médical”

Cette fois la conférence n’était pas directement liée au test et mesure, à LabVIEW, LabWindows/CVI ou TestStand mais à-propos des accélérateurs de particules, leurs applications médicales comme le traitement du cancer et plus particulièrement l’utilisation du rayonnement synchrotron pour l’observation microscopique comme l’étude des mécanismes de fonctionnement des protéines et les applications futures pour les médicaments actifs à base de nanotechnologie. Cette idée m’est venue d'une assistance technique que j’ai donnée au synchrotron “Soleil”, au sud de Paris pour identifier les pertes de mesures sur une ligne de lumière et optimiser les drivers d’instruments.

Conférence “Accélérateur de particules : lumière sur le futur médical” durant la XXXII réunion des chirurgiens pédiatres de l’institut Mexicain de Pédiatrie et leurs collègues d’Espagne. 
Conférence “Accélérateur de particules : lumière sur le futur médical” durant la XXXII réunion des chirurgiens pédiatres de l’institut Mexicain de Pédiatrie et leurs collègues d’Espagne.

Conférence “Accélérateur de particules : l’auditoire composé de chirurgiens pédiatres d’Espagne et du Mexique. 
L’auditoire composé de chirurgiens pédiatres d’Espagne et du Mexique.

Le synchrotron “Soleil” 
Le synchrotron “Soleil”

Quelques instruments utilisés au synchrotron "Soleil"
C’est pour ce type d’instruments que je suis intervenu au synchrotron “soleil”.

dimanche 20 février 2011

Nouveautés LabVIEW 2010 : du côté des palettes

LabVIEW200
Voici un petit tour d’horizon des nouveautés et changements apporté par LabVIEW 2010 en comparaison avec LabVIEW 2009 mais du point de vue des palettes de programmation et de contrôles. On notera qu’une bonne part des modifications visent l’aspect pratique.

Programmation : structures

programation-structures
On note la migration du la structure élément en place qui était déjà présente dans la version 2009 mais qu’on trouvait dans la palette gestion de la mémoire. Cette structure est bien utile pour optimiser la consommation de la mémoire, ce qu’on mais surtout en pratique pour les applications embarquées (compact RIO ou compact FieldPoint) et pour les logiciels sollicitant fortement la manipulation de données en mémoire (ceci réduisant le nombre de réallocations et facilitant la lecture du diagramme).
Les icones des variables partagées, globales et locales ont changé de look, c’est un peu plus parlant.

Programmation : numérique

programation-numérique
Ajout de la constante de type double. Avant il fallait positionner une constante de type entier puis changer sa représentation en double. Maintenant on pose directement la constante double sur le diagramme.

Programmation : booléen

programation-booléen
Modification de l’icone de la constante booléenne : il est plus compact. Au lieu d’afficher T/F, il n’affiche que T ou que F, ceci permet d’alléger le diagramme et de gagner de l’espace.

Programmation : E/S sur fichiers

programation-ES-sur-fichiers
Ici c’est E/S sur fichiers de waveform qui fait sont apparition. C’est la copie des mêmes fonctions qu’on trouve également dans la palette waveform. Elle est donc à deux endroit : palette E/S sur fichiers et palette waveform. L’intérêt c’est qu’on ne risque pas de se dire “bon dieu, mais elle est où cette fonction déjà ?”. Et oui, ce n’est pas incohérent de la mettre aussi là puisqu’on traite un fichier après tout.
programation-ES-sur-fichiers-TDMS-en-continu
La palette des fichiers TDMS a évolué avec l’ajout de fonctions avancées comme ci-dessous.
programation-ES-sur-fichiers-TDMS-en-continu-TDMS-avancéprogramation-ES-sur-fichiers-bibliotheque-empaquetee
Dans les fonctions de fichiers avancées, la gestion des bibliothèques empaquetées a été ajoutée. Mais c’est quoi donc ? Et bien pour ceux qui sont familiers avec le langage C, cela se rapproche des librairies statiques : ce sont des VIs compilés dans un même fichier .lvlibp. Les avantages sont : comme c’est déjà compilé ça fait gagner du temps lors de la génération d’un exécutable (pratique pour les gros exe), on peut distribuer ses fonctions à ses collègues plus facilement. Bref on les utilisera surtout pour des projets de grosse envergure et/ou chaque développeur travail sur sa partie.

Programmation : Dialogue et interface utilisateur

LabVIEW2010-dialogue-et-interface-utilisateur
La fusion des erreurs est désormais une fonction et non un sous-vi. Outre le côté pratique de cette fonction qui accepte N entrées en l’étirant (à la manière de la fonction construire un tableau), gageons que qu’elle sera plus rapide que la version antérieur en sous-vi. J’en profite pour insister sur l’importance du suivi des erreurs : je ne compte pas le nombre de fois où j’ai gagné du temps tant durant la phase de développement que de la maintenance pour identifier la source d’un bug.

Communication de données

LabVIEW2010-communication-de-donnees
Les fonctions de flux réseau font leur apparition. Elles permettent le transfert sans perte de données et en continue de type waveform. Pour données qui ne sont pas à “flux tendu” ont préfèrera les variables partagées qu’on publiera sur le réseau. C’est simple et c’est efficace.
On note ici aussi le changement de look des icones des variables.
LabVIEW2010-communication-de-donnees-client-HTTP
Au niveau des protocoles, c’est l’HTTP client qui a été ajouté. Ceci facilite la programmation car dans les versions antérieures, il fallait tout codé en utilisant les couches basses de la palette TCP. Désormais le dialogue avec un serveur Web est bien plus simple. Exemple d’utilisation : dialogue avec un serveur pour envoyer ou recevoir des informations, comme un mini serveur d’une carte ethernet low cost ou d’un serveur web embarqué dans un automate distant.