我目前正在尝试在raspberry pi上运行一个小脚本,以便调查我的功耗
通常,每当我的计数器产生脉冲(闭合接触)并计算“瞬时”功耗时,该脚本就会中断
问题是,当我从IDE(Thonny)运行这个脚本时,它可以完美地工作,但我不能直接在命令行中运行它(python或python3、sudo或not,以及最后的…)。我的目标是将其作为一个服务运行,即“python3myscript.py”。我运行它时没有收到任何消息、错误或任何东西。它似乎停止了。 这是我的剧本
#!/usr/bin/env python3
import mysql.connector as mariadb
import datetime
import time
import RPi.GPIO as GPIO
mariadb_connection = mariadb.connect(user='Elec', password='****', database='Elec')
cursor = mariadb_connection.cursor()
cursor.execute("SELECT datetime FROM Compteur ORDER BY nb DESC LIMIT 1")
gett = cursor.fetchone()
last = gett[0]
GPIO.setmode(GPIO.BCM)
GPIO.setup(17, GPIO.IN, pull_up_down=GPIO.PUD_UP)
def impulse(channel):
global last
now = datetime.datetime.now()
delta = datetime.timedelta.total_seconds(now-last)
last = datetime.datetime.now()
Pinst = round(3.6/delta ,3)
heure = int(now.strftime("%H"))
if heure > 20 or heure < 7:
HPHC = 'HC'
else:
HPHC = 'HP'
cursor.execute("INSERT INTO Compteur (Puiss,datetime,HPHC) VALUES (%s,%s,%s)",
(Pinst,now.strftime("%Y-%m-%d %H:%M:%S"), HPHC))
mariadb_connection.commit()
GPIO.add_event_detect(17, GPIO.FALLING, callback=impulse, bouncetime=500)
我没主意了,所以如果你有什么要尝试的请。。。提前谢谢
所以我的脚本现在运行了一些时间。我修改它是为了用继电器控制电费开关。这可能会引起某些人的兴趣,他们知道:)
相关问题 更多 >
编程相关推荐