Как создать график из данных датчика Arduino?

Я использовал датчик DHT 11 с Arduino Uno для измерения температуры и влажности. Я использовал следующий код для печати температуры и относительной влажности в Serial Monitor.

dht DHT;

#define DHT11_PIN 7

void setup(){
  Serial.begin(9600);
}

void loop()
{
  int chk = DHT.read11(DHT11_PIN);
  delay(1000);
  Serial.print(DHT.temperature);
  Serial.print(" , ");
  Serial.println(DHT.humidity);
  delay(1000);
}

Последовательный монитор распечатал следующие значения данных в виде списка в следующем порядке: время, температура (по Цельсию), влажность (в процентах).

22:17:55.686 -> 25.00 , 55.00
22:17:57.713 -> 25.00 , 55.00
22:17:59.741 -> 25.00 , 54.00
22:18:01.769 -> 25.00 , 54.00
22:18:03.793 -> 25.00 , 55.00
22:18:05.813 -> 25.00 , 54.00
22:18:07.837 -> 25.00 , 54.00
22:18:09.868 -> 25.00 , 55.00
22:18:11.880 -> 25.00 , 55.00
22:18:13.900 -> 25.00 , 55.00
22:18:15.915 -> 25.00 , 56.00
22:18:17.950 -> 25.00 , 56.00
22:18:19.972 -> 25.00 , 56.00
22:18:21.994 -> 25.00 , 56.00
22:18:24.024 -> 25.00 , 56.00
22:18:26.043 -> 25.00 , 56.00
22:18:28.093 -> 25.00 , 55.00
22:18:30.122 -> 25.00 , 55.00
22:18:32.141 -> 25.00 , 55.00
22:18:34.142 -> 25.00 , 55.00

Я использовал программное обеспечение PuTTY, чтобы сохранить данные датчика в файл CSV. Тем не менее, я получаю несколько странных чисел вверху, прежде чем значения начинают печататься правильно.

25.25.00 , 53.00
25.00 , 53.00
25.00 , 53.00
25.00 , 53.00
25.00 , 53.00
25.00 , 53.00
25.00 , 53.00
25.00 , 53.00
25.00 , 53.00
25.00 , 53.00
25.00 , 53.00
25.00 , 53.00
25.00 , 53.00
25.00 , 53.00
25.00 , 53.00
25.00 , 53.00
25.00 , 53.00
25.00 , 53.00
25.00 , 53.00

Кроме того, когда я открываю CSV-файл в Excel, значения времени исчезают, хотя они были в последовательном мониторе. Таблица Excel

Что я могу сделать, чтобы метки времени отображались в моей электронной таблице? Кроме того, есть ли способ автоматического обновления графика по мере чтения новых данных?

, 👍0

Обсуждение

Заголовок вашего поста о том, как сгенерировать график, но на самом деле вы описали и спросили, как избавиться от ненужного мусора из Putty., @hcheung

Отметки времени, которые вы видите в последовательном мониторе, генерируются последовательным монитором., @Edgar Bonet

Вы можете написать визуализацию с обработкой, @chrisl


1 ответ


2

Возможно, встроенный последовательный плоттер Arduino — это все, что вам нужно для визуализации ваших данных. Я написал руководство некоторое время назад это может вам помочь.

,

Я использовал серийный плоттер. Я получаю график температуры (синяя линия) и влажности (красная линия). Однако я все еще не могу получить время для отображения по оси x. Как мне это сделать?, @Dev Dhruv

Я считаю, что ось X - это количество образцов. Если вы отправляете свои значения графика с определенной временной частотой, ось x должна соответствовать времени., @woolsey