Оглавление:

Построение графика в реальном времени на Android от Arduino до HC-05: 3 шага
Построение графика в реальном времени на Android от Arduino до HC-05: 3 шага

Видео: Построение графика в реальном времени на Android от Arduino до HC-05: 3 шага

Видео: Построение графика в реальном времени на Android от Arduino до HC-05: 3 шага
Видео: Строим график на телефоне по данным с датчика 2024, Июнь
Anonim
Построение графика в реальном времени на Android от Arduino до HC-05
Построение графика в реальном времени на Android от Arduino до HC-05

Привет, вот руководство о том, как построить график значений в реальном времени от микроконтроллера, такого как Arduino, до приложения. Он использует модуль Bluetooth, такой как HC-05, в качестве устройства обмена сообщениями для передачи и приема данных между Arduino и Android.

Приложение прост в использовании и может использоваться для других целей, таких как контроллер для управления автомобилем-роботом, последовательный монитор, аналогичный тому, который предлагается в среде IDE Arduino, для получения последовательных сообщений и отправки последовательных данных.

ДОСТАТОЧНО ЧИТ-ЧАТ НАЧИНАЕМ

Запасы

  1. Ардуино нано или мега
  2. Сериализовать приложение Bluetooth (https://play.google.com/store/apps/details?id=com.athenaDEVKE.bluetoothserialcommunication)
  3. HC-05
  4. Штекерные перемычки
  5. Резисторы 10 кОм и 20 кОм образуют делитель напряжения. Если не использовать последовательно два одинаковых резистора умеренно высокого номинала, они все равно будут работать.

Шаг 1: Схема и подключение

Схема и подключение
Схема и подключение
Схема и подключение
Схема и подключение
Схема и подключение
Схема и подключение
Схема и подключение
Схема и подключение
  • Подключите устройства, как показано выше, и включите модуль.
  • Загрузите следующий тестовый код:

#include // Подключите модуль Bluetooth HC-05 или HC-06 к arduino и объявите используемые контакты, если вы планируете использовать программный серийный номер

// Используется для определения значений на графике

Строка graphTag = "График:";

// Используется для определения разделения значений внутри потока

char valueSeparatorCharacter = '&';

// Используется для определения конца потока. Это будет относиться как к последовательному монитору, так и к графику.

char terminati

  • Убедитесь, что вы загрузили Serialize Bluetooth-Plotter, терминал и контроллер (https://play.google.com/store/apps/details?id=com….).
  • Сначала убедитесь, что вы соединили модуль hc-05 с телефоном, затем запустите приложение.
  • Выберите вкладку «Настроить». Щелкните обновление, чтобы заполнить поле со списком. Выберите модуль в поле со списком. Затем нажмите кнопку подключения и дождитесь всплывающего сообщения о том, что устройство подключено.
  • Щелкните график настройки и установите тег графика, выберите тип графика, установите символ, используемый для разделения значений, и символ завершения.

;

void setup () {

// Объявляем скорость передачи. Приложение поддерживает только 9600

mySerial.begin (9600);

}

void loop () {

// Пример цикла построения синусоидальной волны

for (float x = -2 * PI; x <= 2 * PI; x = x + PI / 50) {

mySerial.print (graphTag);

mySerial.print (240 * sin (x));

mySerial.print (valueSeparatorCharacter);

mySerial.print (240 * sin (x + (2 * PI / 3)));

mySerial.print (valueSeparatorCharacter);

mySerial.print (240 * sin (x + (4 * PI / 3)));

mySerial.print (terminationSeparatorCharacter);

}

}

  • Убедитесь, что вы загрузили Serialize Bluetooth-Plotter, терминал и контроллер (https://play.google.com/store/apps/details?id=com….).
  • Сначала убедитесь, что вы соединили модуль hc-05 с телефоном, затем запустите приложение.
  • Выберите вкладку «Настроить». Щелкните обновление, чтобы заполнить поле со списком. Выберите модуль в поле со списком. Затем нажмите кнопку подключения и дождитесь всплывающего сообщения о том, что устройство подключено.
  • Щелкните график настройки и установите тег графика, выберите тип графика, установите символ, используемый для разделения значений, и символ завершения.

Шаг 2: чтение данных из приложения

Чтение входных данных из приложения
Чтение входных данных из приложения
  • С той же настройкой, что и выше:
  • Загрузите код ниже:

#include SoftwareSerial mySerial (12, 11); // Как обычно, устанавливаем контакты tx и rx

void setup () {

// Скорость передачи модуля Bluetooth должна быть установлена на 9600 бод для связи с приложением

mySerial.begin (9600);

// Можно установить любую скорость передачи, которую вы хотите

Serial.begin (9600);

}

void loop () {

if (mySerial.available ()> 0) {

// После получения данных считываем строку до новой строки

Строка inputString = mySerial.readStringUntil ('\ n'); // Читаем ввод до новой строки

// Распечатать строку

Serial.println (inputString);

}

}

Протестируйте контроллер и контролируйте вывод на последовательном мониторе, и вуаля вы читаете данные из приложения

Шаг 3: видеообзор / резюме

Если вы столкнулись с трудностями, следуйте приведенному выше видеоуроку

Рекомендуемые: