Отправка аналоговых входных данных из последовательного порта в Google Таблицы
Поэтому я пытаюсь использовать свой Arduino Uno, пока покупаю компоненты для своего следующего проекта.
Я использовал проект Digital Hourglass из Starter Kit, чтобы быть уверенным, что я встаю и двигаюсь каждые 20 минут, пока я дома. Датчик температуры также был включен в Starter Kit, поэтому я решил, что могу использовать его, поскольку у меня есть дополнительные контакты ввода/вывода.
Я написал код в Arduino IDE для отображения температуры и текущего времени. Я использую: #include (Time.h)
, чтобы также показать текущее время. У меня два вопроса.
Конечная цель:
Таблица Google (Cloud), к которой я могу получить доступ откуда угодно, которая может показать мне температуру в моей квартире в течение дня. Я могу отслеживать, как тенденция меняется с течением времени в течение дня, недели или месяца.
Какой лучший способ вывести текущее время: в секундах с 1970 года (время Unix) или в формате даты и времени? Я думаю, это вопрос предпочтений.
Как вывести данные из последовательного порта Arduino напрямую в Google Sheets? Это может быть сложно, поэтому другой вариант — включить Arduino утром и отключить питание в конце дня, вывести последовательный порт в файл
.txt
, а затем импортировать в Google Sheets. Как это сделать?
@mattcurrentjr, 👍2
3 ответа
Я бы использовал ESP8266 и IFTTT.
https://ifttt.com/maker_webhooks https://ifttt.com/google_drive
Вы можете написать что-то на своем ПК, что будет брать последовательный вывод от Aurdino и отправлять REST-сообщение в IFTTT.
Используйте формат отметки времени Google:
MM-dd-yyyy hh:mm:ss
, см. Google Sheets API v4 — Форматы дат и чисел.Есть несколько способов. Например:
ПК, подключенный к Интернету, с программным обеспечением на нем, которое прослушивает данные от Arduino. Он будет получать данные Arduino через последовательный порт, а затем отправлять их через Интернет в Google.
Wi-Fi или сетевой шилд, подключенный к Интернету. Затем вы можете использовать API Google для отправки данных напрямую с Arduino, см. API Google Sheets v4 - Writing.
Или, как вы упомянули, физически достаньте SD-карту и вручную загрузите данные.
Первая — это идея. Я оставляю Arduino подключенным к моему ноутбуку в течение дня, пока меня нет. Не должно быть так уж сложно отредактировать скрипт, чтобы хотя бы пересылать эти данные из Arduino в документ .txt. Может быть, я недостаточно изучил Arduino Playground. Это должно работать с любым аналоговым датчиком., @mattcurrentjr
Разве не было бы здорово, если бы данные из Arduino, полученные через последовательный порт, можно было бы вставлять непосредственно в локальный URL-адрес электронной таблицы Google, без использования каких-либо API или запросов Post?
Насколько мне известно, Google Spreadsheets может обновляться (человеком) на локальном компьютере даже без подключения к Интернету.
Какая будет польза?
Если в конечном итоге интернет пропадет на несколько часов, данные Arduino не будут потеряны.
В предоставленных хороших рабочих решениях интернет всегда обязателен, если я правильно вижу. Нет интернета? Потеряны данные. Мне так кажется.
Но я действительно не знаю, может ли скрипт получить последовательные данные из Arduino, а затем обновить существующий URL-адрес электронной таблицы Google, как это сделал бы человек (набрав новую строку).
Скрипт autoit или autohotkey подойдет для компьютеров с Windows, имитируя щелчки мыши и ввод текста, но должны существовать и более красивые решения.
Такое решение будет накапливать данные с интернетом или без него, и как только интернет вернется, все данные будут обновлены в облаке. Если я правильно вижу. (Извините, если я допустил ошибку).
Думаю, у меня есть не такое уж плохое решение: сохранить все данные в текстовом файле. Затем периодически пытаться обновить все данные в таблице Google с помощью API Таблиц или любым интернет-зависимым способом (веб-приложение и т. д.).
В этом случае, если нет интернета, данные все равно накапливаются в текстовом файле. Когда интернет возвращается, данные не теряются.
- Колебания показаний датчика температуры LM35 (+- 5°C) с Arduino UNO
- Декодирование порта VGA с помощью Arduino
- Что касается обхода PGA в ADS1262
- Проблема с условием if
- Помогите совместить цифровой и аналоговый код в программировании ардуино
- Возможно ли, чтобы температура тела, кровяное давление, оксиметр и датчик частоты пульса находились только в одном Arduino UNO?
- Как масштабировать сигнал от 0 до 5 В до -5 В до +5 В?
- Печать string and integer LCD
Да, я недавно заказал комплект Sparkfun Photon для большого количества обучения IoT. Этот проект, о котором я писал, в частности, не предназначен для IoT-проекта. Он предназначен для того, чтобы научиться просто документировать данные для последующей обработки с использованием последовательного соединения. Спасибо!, @mattcurrentjr