Arduino:Знакомство с Arduino/Инструмент IDE Arduino – Плоттер по последовательному соединению: различия между версиями
Myagkij (обсуждение | вклад) (→Код) |
Myagkij (обсуждение | вклад) (→Код) |
||
Строка 43: | Строка 43: | ||
Чтобы загрузить код на [[Arduino]], выполните следующее: | Чтобы загрузить код на [[Arduino]], выполните следующее: | ||
# Кликните [[Media:DHT-sensor-library-master.zip|здесь]], чтобы загрузить [[ZIP]]-архив с библиотекой [[DHT11]] | # Кликните [[Media:DHT-sensor-library-master.zip|здесь]], чтобы загрузить [[ZIP]]-архив с библиотекой [[DHT11]]. | ||
# Распакуйте архив | # Распакуйте архив. | ||
# Переименуйте распакованную папку, удалив из нее символы '''«-»'''. В противном случае [[IDE Arduino]] просто не распознает библиотеку | # Переименуйте распакованную папку, удалив из нее символы '''«-»'''. В противном случае [[IDE Arduino]] просто не распознает библиотеку. | ||
# Установите библиотеку [[DHT11]] в [[IDE Arduino]] | # Установите библиотеку [[DHT11]] в [[IDE Arduino]]. | ||
# Перезапустите [[IDE Arduino]] | # Перезапустите [[IDE Arduino]]. | ||
# Кликните в [[IDE Arduino]] на '''Файл > Примеры > DHT_SENSOR_LIB > DHT Tester (File > Examples > DHT_SENSOR_LIB > DHT Tester)''' | # Кликните в [[IDE Arduino]] на '''Файл > Примеры > DHT_SENSOR_LIB > DHT Tester (File > Examples > DHT_SENSOR_LIB > DHT Tester)'''. | ||
# Загрузите код на [[Arduino]] | # Загрузите код на [[Arduino]]. | ||
<syntaxhighlight lang="c" line="GESHI_NORMAL_LINE_NUMBERS|GESHI_FANCY_LINE_NUMBERS" enclose="div"> | <syntaxhighlight lang="c" line="GESHI_NORMAL_LINE_NUMBERS|GESHI_FANCY_LINE_NUMBERS" enclose="div"> |
Версия от 01:44, 5 ноября 2021
Содержание | Знакомство с Arduino | Продукты | Основы | Справочник языка Arduino | Примеры | Библиотеки | Хакинг | Изменения | Сравнение языков Arduino и Processing |
Инструмент IDE Arduino – Плоттер по последовательному соединению[1]
В IDE Arduino версии 1.6.6 появился новый инструмент под названием «Плоттер по последовательному соединению» (в оригинале – «Serial Plotter»). Он визуализирует данные на графике, который обновляется в режиме реального времени.
Перед тем, как продолжить, рекомендую пройти вот это руководство:
Принцип работы плоттера
Ось Y показывает увеличение/уменьшение данных, передаваемых по последовательному порту. Ось X состоит из 500 пунктов, и каждый пункт эквивалентен одному выполнению команды Serial.println(). Это значит, что график обновляется каждый раз, когда вы используете Serial.println() с новым значением.
Загрузка IDE Arduino версии 1.6.6 или выше
Чтобы использовать плоттер, нужно загрузить последнюю версию IDE Arduino, и сделать это можно отсюда. Я пишу эту статью, используя версию 1.6.6.
Плата Arduino и датчик DHT11
Чтобы протестировать плоттер, я соберу простую цепь, которая будет измерять температуру при помощи датчика DHT11. Для этой цепи понадобятся следующие компоненты:
- Плата Arduino;
- Датчик DHT11;
- Макетная плата;
- Резистор на 10 кОм;
Подключите Arduino и DHT11 согласно рисунку 3 ниже:
- Контакт VCC на DHT11 – к контакту для питания (от 3 до 5 вольт) на Arduino
- Контакт DATA – к контакту 2
- 3-ий контакт на DHT11 оставьте неподключенным
- Контакт GND – к контакту GND
Код
Чтобы загрузить код на Arduino, выполните следующее:
- Кликните здесь, чтобы загрузить ZIP-архив с библиотекой DHT11.
- Распакуйте архив.
- Переименуйте распакованную папку, удалив из нее символы «-». В противном случае IDE Arduino просто не распознает библиотеку.
- Установите библиотеку DHT11 в IDE Arduino.
- Перезапустите IDE Arduino.
- Кликните в IDE Arduino на Файл > Примеры > DHT_SENSOR_LIB > DHT Tester (File > Examples > DHT_SENSOR_LIB > DHT Tester).
- Загрузите код на Arduino.
// Example testing sketch for various DHT humidity/temperature sensors
// Written by ladyada modified by Rui Santos
#include "DHT.h"
#define DHTPIN 2 // what pin we're connected to
// Uncomment whatever type you're using!
#define DHTTYPE DHT11 // DHT 11
//#define DHTTYPE DHT22 // DHT 22 (AM2302)
//#define DHTTYPE DHT21 // DHT 21 (AM2301)
// Initialize DHT sensor for normal 16mhz Arduino
DHT dht(DHTPIN, DHTTYPE);
void setup() {
Serial.begin(9600);
Serial.println("DHTxx test!");
dht.begin();
}
void loop() {
// Read temperature as Celsius
float t = dht.readTemperature();
// Check if any reads failed and exit early (to try again).
if (isnan(t)) {
return;
}
// Prints temperature in the Arduino Plotter Tool
Serial.println(t);
// Wait a few seconds between measurements.
delay(10);
}
Как открыть плоттер
Чтобы открыть плоттер, кликните в IDE Arduino по Инструменты > Плоттер по последовательному соединению (Tools > Serial Plotter).
Демонстрация
В этом проекте Arduino измеряет температуру в градусах Цельсия (°C), а затем печатает эти данные в плоттере, как показано на гифке ниже:
На данный момент функционал этого инструмента небогат, но в будущем, надеюсь, разработчики добавят в него много полезных функций!