RaspBerryPi et thermocouple

J’utilise actuellement le RasbeprryPi (petit ordinateur tournant sous Linux Debian Wheezy) comme datalogger, enregistreur de données.

Quelles données ? celle de la température d’une sonde therocouple placée sur un tuyau du chauffage solaire.

Ceci me permet de faire un point sur l’ensoleillement et repérer quelle température est atteinte dans le ballon d’eau chaude.

Pour le moment, seule une sonde est utilisée, placée sur l’âme de la pompe (en métal).

Besoin matériels :

Besoins logiciels :

Les copier puis les extraire sur le RPi :

scp quick2wire-python-api-master.zip pi@raspi:/home/pi/   (remarque : j’ai un alias de "raspi" vers l’ip du Raspberry)

se mettre en administrateur et les installer :

ssh pi@raspi

unzip quick2wire-python-api-master.zip

cd quick2wire-python-api-master

(installer les setuptools si besoin !!!attention python 3!! : sudo apt-get install python3-setuptools)

sudo python3 setup.py install

    • Bibliothèque BitString :

https://code.google.com/p/python-bitstring/downloads/list

On télécharge, on copie, on extrait, on installe

    • Il faudra aussi déblacklister le module des Gpio : commenter (mettre un #) devant les modules contenus dans /etc/modprobe.d/raspi-blacklist.conf
    • Un petit script python pour gérer l’interface : https://github.com/Tuckie/max31855/blob/master/

Il est fortement possible que vous ayez à modifer le code de la lib pour qu’elle se lance (écrite en python2), voici les modifs que j’ai faites :

1) mettre en méthode tous les "print" : print "truc" devient print("truc")

2) changer la ligne 134 :

thermocouple = MAX31855(1, "f")

par

thermocouple = MAX31855(0, "c")

Ce qui signifie : j’ai branché mon interface sur le CS0 et je le veux en Celsius. (par défaut CS1 et Fahrenheit)

  • Branchement du chipset : (d’après : http://www.raspberrypi.org/phpBB3/viewtopic.php?t=18125&p=250141 )

Les broches se mettent respectivement ainsi :

Vin/3vo -> 3.3   (oui oui… le 5V et le 3v ensemble :) )
GND -> GND
DO -> MISO  (GPIO9)
CS -> CE0
CLK – >SCLK (23)

en s’aidant de cela :

Ensuite, on lance le script :

sudo python3 max31855.py

et si tout va bien, pas d’erreurs, de scrongneugneu de débogage et enfin la ligne intéressante :

tc: 22.25 and rj: 23.875

tc est la température du thermocouple et rj, la température de la sonde interne.

Publié dans Geekeries, Linux, raspberry | Poster un commentaire

Installer une caméra Point Grey sous Mageia

http://ww2.ptgrey.com/ Point grey est une superbe firme qui fait de jolies caméras CCD, un joli SDK pour bidouiller tout ça.

Bref, le top pour le geek astronome :)

Télécharger sur le site de point grey http://ww2.ptgrey.com/ le logiciel flycapture.

détarrez-le.

lancez flyconf : ./flycap2-conf

ceci place votre utilisateur dans les bons groupes et gère divers droits.

donnez votre nom d’utilisateur, et yes yes yes (ça fait un peu ‘suivant ‘ ‘suivant’ d’un OS bien connu)

Voilà, malgré les warnings et les erreurs vous pourez utiliser votre caméras avec coriander ou tout autre logiciel qui contrôle les caméra Firewire. (ou USB qui respectent cette norme)

Vous pouvez aussi faire un alien sur les deb. Ça passe avec Mageia2. Par contre : –force –nodeps… bref… pas très propre.

Publié dans Linux | Poster un commentaire

Faire un détecteur de brouillard avec Arduino

Contexte : L’observatoire de l’association est située à 30′ de chez moi. Quand il y a du brouillard à la maison, il n’y en a pas __forcément__ la-haut (il y a 400 m de différence d’altitude.)

L’idée est de créer un détecteur de brouillard avec une plateforme Arduino. Plus tard, avec l’avancement du projet, un petit ordinateur (Rasberry Pi ou autre) se chargera d’envoyer les résultats sur une page web consultable par les membres. Lire la suite

Publié dans Geekeries | Tagué , | 5 Commentaires

L’effet Doppler en terminale… galère expérimentale ?

Le nouveau programme de terminale possède une partie sur l’effet Doppler.

La fréquence mesurée d’une onde émise par une source qui s’éloigne ou se rapproche du récepteur est différente de la fréquence émise.

Cet effet peut être facilement montré en étudiant des son sur un circuit de F1 par exemple.

Connaissant la modification de la fréquence, on peut remonter à la vitesse, c’est ainsi que sont mesurées les vitesses sur les routes par les forces de l’ordre.

Nous avons essayé plusieurs techniques de bricolage pour faire un Tp facilement accessible, soit par le professeur, soit par les lycéens. Pour le moment, faute d’offre connue, nous avions bricolé une solution à l’aide de table traçante qui portait un émetteur à ultrason piézo-électrique (40KHz) et son émetteur fixe. L’avantage des tables traçante étant leur vitesse très uniforme.

Mais nous avons eu la possibilité de tester le banc Doppler fait par Jeulin : http://www.jeulin.fr/fr/a-a1000003892-edc1000003/article/22213884-Pack-Effet-Doppler.html

NB : je n’ai pas d’action chez Jeulin et si d’autres sociétés veulent que je teste leur produits, ce sera avec grand plaisir.

Le banc est très simple :

  • une réglette en plastique, d’aspect assez solide,
  • des modules "moduson" émetteur et récepteur qui sont adaptés (ça ne glisse pas, ce n’est pas difficile à installer)
  • un moteur à courant continu faisant avancer à vitesse constante une plateforme
  • un boitier qui 1) contrôle la vitesse que l’on peut régler avec un potentiomètre 2) gère l’envoi et la réception des signaux (pas besoin de GBF) 3) sort la différence de fréquence directement (pas besoin de faire des traitements derrière ou de rajouter de l’électronique)

Nous avions aussi à disposition un capteur de vitesse pour avoir une mesure simple sans avoir à s’embêter avec des mesures avant au chronomètre. Je l’ai fait à côté pour vérifier les mesures, les vitesses mesurées par le chronomètre (le mobile fait 30 cm en 3.1 s par exemple) et le capteur sont très proches.

On récupère en sortie de boîtier un signal correspondant à la différence de fréquence f_source-f_récepteur. C’est ici le point très intéressant !! Le boîtier fait la différence des deux signaux à votre place. Il n’y a ensuite qu’à trouver la fréquence de ce signal.

Voici ce qu’on obtient via le logiciel Jeulin (ou tout autre logiciel de mesure)

En violet est tracé la valeur de la vitesse obtenue par le capteur de vitesse.

Ensuite, par le moyen de votre choix, on trouve la fréquence de cette sinusoïde. RQ : on peut aussi utiliser un oscilloscope à mémoire et une transformée de Fourier). Ici nous utilisons directement la modélisation fournie par le logiciel Jeulin :

modélisation du signal

Alors ce n’est peut-être pas très clair sur cette copie d’écran mais nous allons faire les calculs :

La vitesse mesurée "en direct" est de 12,1 cm/s (ATTENTION : les échelles positionnées sur le graphique en ordonnée correspondent à la modélisation de la sinusoïde… pas à la vitesse. Pour l’avoir il faut la sélectionner. Cette valeur de 12,1 m/s est prise dans le tableau de mesure)

La vitesse obtenu par effet Doppler : V = c *deltaf/f = 340 * (1/0.0706)/40000 = 0,120 m/s soit 12,0 cm/s.

Le résultat est assez bluffant !! On va être clair… il est tellement bluffant qu’on a essayé, et réessayé en se disant qu’on était tombé trop bien. Et bien non, c’est toujours très précis.

On pourrait donc, avec ce banc trouver que la vitesse reçue est proportionnelle à la différence de fréquence de manière assez simple sur quelques points. Je n’ai pas eu le temps d’essayer mais ceci pourrait être intéressant pour introduire l’effet Doppler.

Points positifs :

  • Banc qui paraît solide
  • Très reproductible et précis
  • Peu de biais possibles (on a mesuré les fréquences fournies au piézo pour vérifier le boîtier)

Points à améliorer :

  • Le banc glisse un peu sur la table (addition de coussinets en cours ?)
  • Le prix. Compter 200 € pour le banc + boîtier auxquels il faut rajouter 2×30 € pour les modules de son.
Publié dans enseignement | Un commentaire

Traduire une application avec pyQT4, scrongneugneu !! La solution !

Lors de la release de la version 6.0beta 1 de pymecavideo :  http://outilsphysiques.tuxfamily.org/pmwiki.php/Oppl/Pymecavideo il a été posé le problème de l’internationalisation.

Nous nous étions déjà posé la question avant mais peu de retour nous était faits et donc le fonctionnement nous paraissait normal.

Seulement, en investiguant de nouveau, j’ai changé le code. Par principe, une fois que QTranslator crée et mis en place :

<code>

appTranslator = QTranslator() #création
langdir=os.path.join(StartQT4._dir("langues"), "pymecavideo_"+locale)    ##_dir est la fonction qui donne les répertoires utilisés.

if appTranslator.load(langdir):

b = app.installTranslator(appTranslator) #installation

</code>

il suffit de mettre "self.tr(" devant les chaînes à traduire pour que pylupdate les prennent en compte :

chaine = "ma chaine"  devient

chaine = self.tr("ma chaine")

RAPPEL : principe de l’internationalisation sous Qt : self.tr()->pylupdate->qtlinguist->fichier de traductions adéquats

Rien de bien neuf me direz-vous ?

La difficulté vient de l’utilisation des accents !! Si l’on fait :

chaine = self.tr("ma chaîne")

pylupdate ne gémira pas, mais le texte affiché risque d’avoir des signes cabalistiques.

SOLUTION possibles :

1 ) utiliser self.trUTf8 en lieu et place de self.tr. Si ceci fonctionne en C++, en pyQt… moins. Il insultera au moindre accent présent lors du pylupdate.

2) utiliser self.tr( avec la précision que nous sommes en unicode :

self.tr(u"ma chaïne")

Tout fonctionnera bien… sauf qu’il va falloir tout de même passer dans qt-linguist pour la locale courante et faire des copies de toutes les chaînes à l’identique pour ne pas avoir de signes incompréhensibles. (de l’UTF8 quoi ;) )

3° : la solution ultime !!!! (et qui marche )

self.tr(QString(u"ma chaîne")

Pratique au possible, non ? Non… bon d’accord… on surchage 2 fois la chaîne de caractère avec le "u", avec le QString pour le faire passer au self.tr… Bref… pas très joli. Mais cela fonctionne.

Les chaînes sont bien écrites, même si le fichier de traduction n’existe pas.

 

 

 

 

Publié dans pyQT4 | Poster un commentaire

Comparatif de spectroscopes à fibre pour l’éducation

Bonjour,

en lien (sous licence CC-BY-SA http://creativecommons.org/licenses/by-sa/2.0/fr/ ) un article comparant deux spectrescopes à fibre pour l’éducation :

Spectr’Ovio d’Ovio

Le spectroscope de chez Jeulin

En espérant que ceci vous soit utile.

http://ashashiwa.free.fr//images_diverses/comparatif%20Ovio-jeulin.pdf

JB

Publié dans enseignement | Poster un commentaire

Pymecavideo sort en version 4 !!

Pymecavideo est enfin compatible bac !!!

À tous les profs de physique qui veulent faire de la physique sous linux :

pymecavideo est un remplaçant de regavi ou avimeca qui possède des possibiltiés super intéressantes comme créer des vidéo provenant d’un changement de référentiel.

Comprendre : on peut visualiser le mouvement de la balle dans le référentiel "vélo" avec ue vidéo recalculée.

De plus, il est maintenant compatible avec les fiches de bac expérimental. (on peut changer l’origine, changer le sens des axes…)

-> http://outilsphysiques.tuxfamily.org/pmwiki.php/Oppl/Pymecavideo

Enjoy :)

Djibb

Publié dans Linux, pyQT4 | Poster un commentaire