Problème envoi données capteur BME280
Posté : lun. 14 nov. 2022 10:26
Bonjour à tous,
Je suis nouveau sur ce forum, et débutant dans le Raspberry PI.
Je suis en BTS SN, et pour l'année prochaine je dois présenter un projet avec :
- un capteur
- un Raspberry PI
- une base de données
- une interface Web
Pour cela, je dispose d'un Raspberry PI 4 Go, ainsi qu'un capteur BME 280.
J'arrive à lire les données du capteur via un script en Python, mais je ne parviens pas à les envoyer dans ma base de données
Mon script :
import bme280
from time import sleep
import MySQLdb
import mysql.connector
import requests
import datetime
import sys
import serial
import pymysql
temperature,pressure,humidity = bme280.readBME280All()
(chip_id, chip_version) = bme280.readBME280ID()
conn = MySQLdb.connect(host="localhost",user="admin",passwd="admin",db="test")
c = conn.cursor()
while True:
c.execute("INSERT INTO bmetest (temperature) VALUES ($s)" %(temperature))
conn.commit()
print ("Chip_ID :", chip_id)
print ("Version :", chip_version)
print ("Température :", temperature, "C")
print ("Humidité :", humidity, "%")
print ("Pression:", pression, "hPa")
sleep(3)
J'obtiens l'erreur : TypeError : not all arguments converted durint string formatting
J'ai tout essayé, je comprends pas, j'aimerai juste que toutes les 3 secondes, la pression, l'humidité et la température soient intégrés dans la base
Pouvez-vous m'aider SVP
Merci,
Cordialement,
Lucas
Je suis nouveau sur ce forum, et débutant dans le Raspberry PI.
Je suis en BTS SN, et pour l'année prochaine je dois présenter un projet avec :
- un capteur
- un Raspberry PI
- une base de données
- une interface Web
Pour cela, je dispose d'un Raspberry PI 4 Go, ainsi qu'un capteur BME 280.
J'arrive à lire les données du capteur via un script en Python, mais je ne parviens pas à les envoyer dans ma base de données
Mon script :
import bme280
from time import sleep
import MySQLdb
import mysql.connector
import requests
import datetime
import sys
import serial
import pymysql
temperature,pressure,humidity = bme280.readBME280All()
(chip_id, chip_version) = bme280.readBME280ID()
conn = MySQLdb.connect(host="localhost",user="admin",passwd="admin",db="test")
c = conn.cursor()
while True:
c.execute("INSERT INTO bmetest (temperature) VALUES ($s)" %(temperature))
conn.commit()
print ("Chip_ID :", chip_id)
print ("Version :", chip_version)
print ("Température :", temperature, "C")
print ("Humidité :", humidity, "%")
print ("Pression:", pression, "hPa")
sleep(3)
J'obtiens l'erreur : TypeError : not all arguments converted durint string formatting
J'ai tout essayé, je comprends pas, j'aimerai juste que toutes les 3 secondes, la pression, l'humidité et la température soient intégrés dans la base
Pouvez-vous m'aider SVP
Merci,
Cordialement,
Lucas