Итак, у меня есть сценарий python, который считывает данные датчиков из Arduino и сохраняет их в базе данных Firebase. Программа работала хорошо, пока я не добавил какой-нибудь оператор if-else, и теперь похоже, что значения обрабатываются как Nonetype. Я застрял, любезно помогите.
Вот код:
from pyfirmata import Arduino, util
import time
board = Arduino('COM3')
from firebase import firebase
firebase=firebase.FirebaseApplication("https://xxxxx.firebaseio.com/",None)
it = util.Iterator(board)
it.start()
analog_input1 = board.get_pin('a:0:i')
analog_input2 = board.get_pin('a:1:i')
analog_input3 = board.get_pin('a:2:i')
analog_input4 = board.get_pin('a:3:i')
state="null"
while True:
analog_value1 = analog_input1.read()
analog_value2 = analog_input2.read()
analog_value3 = analog_input3.read()
analog_value4 = analog_input4.read()
if analog_value1>=2000 or analog_value2>=23 or analog_value3>=23 or analog_value4>=3000:
state="Slightly Alarming"
elif analog_value1>=4000 or analog_value2>=31 or analog_value3>=31 or analog_value4>=4000:
state="Alarming"
elif analog_value1>=5000 or analog_value2>=50 or analog_value3>=50 or analog_value4>=5000:
state="Danger!"
else:
state="Normal"
firebase.post('/xxxxx/',{'MQ4':analog_value1,'MQ7':analog_value2,'MQ9':analog_value3,'MQ135':analog_value4,'Status':state})
time.sleep(0.1)