Сильный шум при чтении USB-сигнала от Arduino с Python - PullRequest
0 голосов
/ 03 апреля 2019

Я пытаюсь собрать температуру от датчика с Arduino и Python.Я посылаю сигнал с помощью Arduino и получаю его с помощью Python.Все почти хорошо работает.Но о каждом 10-м чтении еще далеко.Измеряя горячую воду в состоянии деградации, я получаю что-то вроде:

78.375
78.625
78.812
79.000
79.125
0.00
4000

Так что иногда оно срабатывает, но иногда оно прыгает до тысяч градусов, или ноль или все десятичные числа подозрительно сокращаются до 79.000 градусов.

Когда я смотрю на серийный монитор в Arduino, все идеально!это никогда не подведет.Так что ошибка должна быть с питоном.Но здесь очень мало кода Arduino только для справки:

void setup() {
  Serial.begin(9600);
}
...
void loop() {
  Serial.print(temp,4);
  Serial.print('\n'); 

}

Код Python также довольно длинный, но я думаю, что здесь ошибка, когда я беру данные, поступающие с usb:

import serial
try:
    ser = serial.Serial('COM3', 9600, timeout=.1)
    time.sleep(2)
    print("Connection to " + 'port' + " established succesfully!\n")
except Exception as e:
    print(e)

while time.time() < t_end:
    data = ser.read_until().decode('utf-8') 
    if data:
        #store it 

Так что работает, но иногда данные очень шумные.Я хотел бы дать совет о том, что улучшить, если у вас есть идеи.Спасибо.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...