Page 1 of 1

[RESOLU]Premier pas et question sur vcgencmd.measure_temp

Posted: Sun Aug 25, 2019 3:05 pm
by henrig
Bonjour tous,
C'est vraiment mes premières tentatives avec Python ALORS je compte sur votre tolérances :roll:
J'essaye de mettre dans une valeur la température de mon RPI avec la commande vcgencmd measure_temp :
Ceci fonctionne très bien en ligne de commande, mais ne veut rien savoir dans un script PYTHON,
J'en conclus que j'ai oublié un IMPORT ou c'est une histoire de chemin, de path dans un fichier Mais je sèche :oops:
Le fichier an question :

Code: Select all

]import io
import sys
import re

chaleur = vcgencmd.measure_temp
print(chaleur)
Et le résultat dans la fenêtre du terminal : NameError: name 'vcgencmd' is not defined
Ou est donc mon erreur ?
Merci par avance de vos conseils et votre lumière 8-)
Henri

Re: Premier pas et question sur vcgencmd.measure_temp

Posted: Sun Aug 25, 2019 5:04 pm
by JumpZero
Tu essaies d'executer une commande shell depuis python
c'est possible avec par exemple le module os

Code: Select all

[email protected]:~ $ python
Python 2.7.16 (default, Apr  6 2019, 01:42:57) 
[GCC 8.2.0] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import os
>>> os.system('vcgencmd measure_temp')
temp=68.0'C
0
>>> 
Rechercher "command shell in Python" donne aussi d'autre méthode
je crois (de mémoire) que subprocess.call est + recommandé que os.systeme(), je te laisse lire la doc

Re: Premier pas et question sur vcgencmd.measure_temp

Posted: Sun Aug 25, 2019 8:39 pm
by henrig
Bonsoir,
Trouvé ici : https://openclassrooms.com/forum/sujet/ ... utomatique

Code: Select all

from subprocess import getoutput
TEMP = float(getoutput('/opt/vc/bin/vcgencmd measure_temp')[5:-2])
C'est là que je m'aperçois du chemin à faire :?
Grand MERCI JumpZero

nb: ou dois-mettre la balise RESOLU ?

Re: Premier pas et question sur vcgencmd.measure_temp

Posted: Mon Aug 26, 2019 6:57 am
by JumpZero
henrig wrote:
Sun Aug 25, 2019 8:39 pm
nb: ou dois-mettre la balise RESOLU ?
Dans le titre, en editant ton message