Skocz do zawartości

Przeszukaj forum

Pokazywanie wyników dla tagów 'Blynk'.

  • Szukaj wg tagów

    Wpisz tagi, oddzielając przecinkami.
  • Szukaj wg autora

Typ zawartości


Kategorie forum

  • Elektronika i programowanie
    • Elektronika
    • Arduino i ESP
    • Mikrokontrolery
    • Raspberry Pi
    • Inne komputery jednopłytkowe
    • Układy programowalne
    • Programowanie
    • Zasilanie
  • Artykuły, projekty, DIY
    • Artykuły redakcji (blog)
    • Artykuły użytkowników
    • Projekty - roboty
    • Projekty - DIY
    • Projekty - DIY (początkujący)
    • Projekty - w budowie (worklogi)
    • Wiadomości
  • Pozostałe
    • Oprogramowanie CAD
    • Druk 3D
    • Napędy
    • Mechanika
    • Zawody/Konkursy/Wydarzenia
    • Sprzedam/Kupię/Zamienię/Praca
    • Inne
  • Ogólne
    • Ogłoszenia organizacyjne
    • Dyskusje o FORBOT.pl
    • Na luzie
    • Kosz

Szukaj wyników w...

Znajdź wyniki, które zawierają...


Data utworzenia

  • Rozpocznij

    Koniec


Ostatnia aktualizacja

  • Rozpocznij

    Koniec


Filtruj po ilości...

Data dołączenia

  • Rozpocznij

    Koniec


Grupa


Znaleziono 1 wynik

  1. Witam Zwracam się z prośbą o pomoc dotyczącej robota którego właśnie tworzę. Zaczynając od początku, robot działa na Arduino UNO posiada moduł GPS, BT, kompas oraz w przyszłości będzie posiadał napęd składający się z 2 silników. Zamysł był taki aby korzystając z aplikacji Blynk (wybrałem taką ponieważ jest bardzo prosta a ja nie będę potrzebował dużo zadań wykonywanych z telefonu) poprzez moduł BT, telefon łączył się z robotem, następnie odczytał wartość GPS z robota porównał ją z GPS z telefonu następnie obliczając dystans kąt i kilka innych rzeczy rozpoczął podążać z telefonem podłączonym do robota. Niestety mam problemy z danymi które szczytuje z GPS ponieważ wyświetla mi on co tylko 0. Każdy program z osobna działa poprawnie i odczytuje poprawne wartości GPSów. Niestety podczas łączenia ich w jedno nie działa. Myślałem na początku ,że problem może być ze strony portów które nie nadążają wysyłać i odbierać dane z BT oraz z 2 GPS. Wtedy zacząłem korzystać z biblioteki ALTSerial i początkowo dało to jakiś progres jednak GPS w telefonie zaczął przypisywać wartości GPS z robota. Aktualnie mam robota który nie działa poprawnie gdy są 2 GPS podłączone i próbują odczytać dane. Oto kod : #include "TinyGPS++.h" // GPS #include "SoftwareSerial.h" #include <AltSoftSerial.h> #include <BlynkSimpleSerialBLE.h> // Biblioteka odpowiadająca za BT #include <QMC5883LCompass.h> // Compas Library #define BLYNK_PRINT Serial #define BLYNK_USE_DIRECT_CONNECT // BT #define BLYNK_PRINT BT_Serial // BT SoftwareSerial BT_Serial(2, 3); // BT podłączony do Seriala na pinach 2-RX, 3-TX SoftwareSerial GPS_Serial (10, 11); //GPS nowy Serial 10-TX, 11-RX TinyGPSPlus gps2; // GPS z robota fizyczny WidgetTerminal terminal(V2); // przypisanie terminala do V2 QMC5883LCompass compass; // deklaracja char auth[] = "ok3q9uiJKllXv9dtOR7XyewQq0EL-_H6"; // Token przypisany do aplikacji BLYNK struct GeoLoc { float szer; float dlu; }Phone,Robo; void Distance () // in KM { float X = ((Phone.szer - Robo.szer) * 6378,14 * cos(Robo.dlu)) / 360.0; float Y = ((Phone.dlu - Robo.dlu) * 6356,75) / 360.0; float X2 = X * X; float Y2 = Y * Y; float Distance = sqrt(X2 + Y2); Serial.println("Distance"); Serial.println(Distance); } //---------------------------------------------------------------------------------------------------------------------------- void Compas() { int x, y, z; // Read compass values compass.read(); // Return XYZ readings x = compass.getX(); y = compass.getY(); z = compass.getZ(); Blynk.virtualWrite(V2," X:",x ," Y:",y ," Z:",z ); } void GPS_robot() // Data GPS form robot --------------------------------------------------------------------------------- { while(GPS_Serial.available() > 0) { gps2.encode(GPS_Serial.read()); } if(gps2.location.isUpdated()) { Serial.print("Lotitude"); Serial.println((gps2.location.lat()),6 ); Serial.print("Longitude:"); Serial.println((gps2.location.lng()),6 ); Robo.szer = gps2.location.lat(); Robo.dlu = gps2.location.lng(); } } BLYNK_WRITE (V0) // GPS Stream Widget Data from Phone ------------------------------------------------------------ { GpsParam gps(param); Serial.println("Received remote GPS: "); // Print 7 decimal places for Lat Serial.print(gps.getLat(), 7); Serial.print(", "); Serial.println(gps.getLon(), 7); Phone.szer = gps.getLat(); Phone.dlu = gps.getLon(); } BLYNK_WRITE (V1) // Wirtualny przycisk -------------------------------------------------------------------------------------- { } BLYNK_WRITE (V2) // Terminal Widget ------------------------------------------------------------------------------------------ { if (String("clear") == param.asStr()) { terminal.clear (); } else if (String("compas") == param.asStr()) { Compas(); } else if (String("rob") == param.asStr()) { } } void setup() //------------------------------------------------------------------------------------------- { //Debugging Serial.begin(9600); //GPS GPS_Serial.begin(9600); //Bluetooth BT_Serial.begin(9600); Blynk.begin(BT_Serial, auth); //Terminal terminal.clear(); //Compas compass.init(); } void loop() //------------------------------------------------------------------------------------------------------- { Blynk.run(); Serial.println("dane z tele"); Serial.println(Phone.szer, 5); Serial.println(Phone.dlu, 5); Serial.println("dane z robota"); Serial.println(Robo.szer, 5); Serial.println(Robo.dlu, 5); delay (2000); Distance (); delay (2000); } Czy ktoś mógłbym pomóc mi z otrzymywaniem poprawnych danych z 2 GPS ( z telefonu oraz robota) ?
×
×
  • Utwórz nowe...