Spisu treści:

Wykreślanie wykresu w czasie rzeczywistym na Androidzie z Arduino przez HC-05: 3 kroki
Wykreślanie wykresu w czasie rzeczywistym na Androidzie z Arduino przez HC-05: 3 kroki

Wideo: Wykreślanie wykresu w czasie rzeczywistym na Androidzie z Arduino przez HC-05: 3 kroki

Wideo: Wykreślanie wykresu w czasie rzeczywistym na Androidzie z Arduino przez HC-05: 3 kroki
Wideo: Arduino HC-SR04 - real time chart with Java and flotcharts.org 2024, Listopad
Anonim
Wykreślanie wykresu w czasie rzeczywistym na Androidzie z Arduino przez HC-05
Wykreślanie wykresu w czasie rzeczywistym na Androidzie z Arduino przez HC-05

No hej, Oto samouczek, jak wykreślić wykres wartości w czasie rzeczywistym z mikrokontrolera, takiego jak Arduino, do aplikacji. Wykorzystuje moduł Bluetooth, taki jak HC-05, do działania jako urządzenie do przesyłania wiadomości do przesyłania i odbierania danych między Arduino i Androidem.

Aplikacja jest prosta w użyciu i może być używana do innych celów, takich jak kontroler do sterowania samochodem robota, monitor szeregowy, podobny do oferowanego przez Arduino IDE, do odbierania wiadomości szeregowych i wysyłania danych szeregowych.

DOŚĆ POGAWATÓW ZACZYNAMY

Kieszonkowe dzieci

  1. Arduino nano lub mega
  2. Serializuj aplikację Bluetooth (https://play.google.com/store/apps/details?id=com.athenaDEVKE.bluetoothserialcommunication)
  3. HC-05
  4. Męskie przewody połączeniowe
  5. Rezystory 10K i 20K tworzące dzielnik napięcia. Jeśli nie, użyj dwóch podobnych rezystorów o umiarkowanie wysokiej wartości w szeregu nadal będą działać.

Krok 1: Schemat i połączenie

Schemat i połączenie
Schemat i połączenie
Schemat i połączenie
Schemat i połączenie
Schemat i połączenie
Schemat i połączenie
Schemat i połączenie
Schemat i połączenie
  • Podłącz urządzenia jak pokazano powyżej i włącz moduł
  • Prześlij następujący kod testowy:

#include // Podłącz moduł bluetooth HC-05 lub HC-06 do arduino i zadeklaruj używane piny, jeśli planujesz używać oprogramowania szeregowego

// Używane do identyfikacji wartości na wykresach

String graphTag = "Wykres:";

// Używane do identyfikacji separacji wartości w strumieniu

char valueSeparatorCharacter = '&';

// Używane do identyfikacji końca strumienia. Dotyczy to zarówno monitora szeregowego, jak i wykresu

Zakończenia znaków

  • Upewnij się, że pobrałeś Serialize Bluetooth-Plotter, terminal i kontroler (https://play.google.com/store/apps/details?id=com….).
  • Najpierw upewnij się, że sparowałeś moduł hc-05 z telefonem, a następnie uruchom aplikację
  • Wybierz kartę Konfiguruj. Kliknij odświeżenie, aby wypełnić pole kombi. Wybierz moduł z pola kombi. Następnie kliknij przycisk Połącz i poczekaj na wyskakujący komunikat informujący, że urządzenie jest podłączone.
  • Kliknij konfiguruj wykres i ustaw tag wykresu, wybierz typ wykresu, ustaw znak używany do oddzielania wartości i znak kończący.

;

pusta konfiguracja () {

// Zadeklaruj szybkość transmisji. Aplikacja obsługuje tylko 9600

mójSerial.początek(9600);

}

pusta pętla () {

// Przykładowa pętla wykreślania fali sinusoidalnej

dla (zmienna 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);

}

}

  • Upewnij się, że pobrałeś Serialize Bluetooth-Plotter, terminal i kontroler (https://play.google.com/store/apps/details?id=com….).
  • Najpierw upewnij się, że sparowałeś moduł hc-05 z telefonem, a następnie uruchom aplikację
  • Wybierz kartę Konfiguruj. Kliknij odświeżenie, aby wypełnić pole kombi. Wybierz moduł z pola kombi. Następnie kliknij przycisk Połącz i poczekaj na wyskakujący komunikat informujący, że urządzenie jest podłączone.
  • Kliknij konfiguruj wykres i ustaw tag wykresu, wybierz typ wykresu, ustaw znak używany do oddzielania wartości i znak kończący.

Krok 2: Odczytywanie danych wejściowych z aplikacji

Odczytywanie danych wejściowych z aplikacji
Odczytywanie danych wejściowych z aplikacji
  • Z taką samą konfiguracją jak powyżej:
  • Prześlij poniższy kod:

#include SoftwareSerial mySerial(12, 11); // Jak zwykle skonfiguruj piny tx i rx

pusta konfiguracja () {

// Szybkość transmisji modułu bluetooth musi być ustawiona na 9600, aby komunikować się z aplikacją

mójSerial.początek(9600);

// Można ustawić dowolną szybkość transmisji

Serial.początek(9600);

}

pusta pętla () {

if(mySerial.available()>0){

// Po otrzymaniu danych odczytaj ciąg do nowej linii

String inputString = mySerial.readStringUntil('\n'); // Odczytaj dane wejściowe do nowej linii

// Drukuj ciąg

Serial.println(ciąg wejściowy);

}

}

Przetestuj kontroler i monitoruj wyjście na monitorze szeregowym i voila, odczytujesz dane z aplikacji

Krok 3: Przegląd/podsumowanie wideo

Jeśli napotykasz trudności, postępuj zgodnie z powyższym samouczkiem wideo

Zalecana: