Balon meteo z GPS, czujnikiem temperatury i wilgotności oraz modułem karty SD - Wersja do druku +- Arduino Polska Forum (https://forum.arduinopolska.pl) +-- Dział: Korzystanie z Arduino (https://forum.arduinopolska.pl/dzial-korzystanie-z-arduino) +--- Dział: Konstrukcje (https://forum.arduinopolska.pl/dzial-konstrukcje) +--- Wątek: Balon meteo z GPS, czujnikiem temperatury i wilgotności oraz modułem karty SD (/watek-balon-meteo-z-gps-czujnikiem-temperatury-i-wilgotno%C5%9Bci-oraz-modu%C5%82em-karty-sd) |
Balon meteo z GPS, czujnikiem temperatury i wilgotności oraz modułem karty SD - kampap91 - 16-10-2020 Witam was serdecznie, otóż od jakiegoś czasu składam zestaw, który będzie wykorzystany do balonu meteo. Jego zadaniem będzie pomiar temperatury, wilgotności i może ciśnienia oraz zapis danych z GPSa na kartę pamięci. Oprócz tego zestaw wyposażony jest w moduł GSM, dzięki któremu będę mógł lokalizować balon w czasie lotu oraz po wylądowaniu wysyłając do mojego zestawu smsa. W wiadomości zwrotnej otrzymuję współrzędne: Cały zestaw jest gotowy i poskładany, ale problem jest z programem. Otóż mam przygotowany pełen program na podstawie 3 różnych. Każdy z nich z osobna działa, ale już po połączeniu go w jeden nic się nie dzieje. Nie wiem, w czym jest rzecz.? Może ktoś przygotowywał taki zestaw lub jest w stanie zdiagnozować problem w kodzie? Poniżej przedstawiam wam kod programu: Kod: #include <SPI.h> // library for SPI devices (uSD board) Proszę o pomoc. RE: Balon meteo z GPS, czujnikiem temperatury i wilgotności oraz modułem karty SD - Agregacik - 16-10-2020 1 rada: zrób sobie w programie kontrolne Serial.println ("1") ; potem 2 3 i tak dalej będziesz wiedział, gdzie program się ewentualnie zacina. 2 rada: używasz 2 SoftwareSerial a w danej chwili może działać tylko jeden, ten ostatnio uruchomiony czyli w Twoim przypadku sgps.begin(9600); a ten sgsm.begin(9600); nie działa. Trzeba je "beginować " bezpośrednio przed użyciem czyli w pętli LOOP a w SETUP niekoniecznie. Sprawdzone doświadczalnie i to z trzema SoftwareSerial. Nie analizowałem Twojego programu, ale delay można stosować w zasadzie tylko w programach demo. Jak masz połączonych kilka "programów" musisz nauczyć się używać millis() . Powodzenia w dalszych pracach. RE: Balon meteo z GPS, czujnikiem temperatury i wilgotności oraz modułem karty SD - Jarewa0606 - 16-10-2020 Używasz jednego pinu do kilku funkcji a tak się nie da... RE: Balon meteo z GPS, czujnikiem temperatury i wilgotności oraz modułem karty SD - Agregacik - 16-10-2020 Kurcze teraz zauważyłem, że masz 3 SoftwareSerial a dwa są na tych samych pinach ss i sgps. No i jeszcze pin 4. RE: Balon meteo z GPS, czujnikiem temperatury i wilgotności oraz modułem karty SD - kampap91 - 16-10-2020 (16-10-2020, 17:13)Agregacik napisał(a): Kurcze teraz zauważyłem, że masz 3 SoftwareSerial a dwa są na tych samych pinach ss i sgps. No i jeszcze pin 4.A tak nie powinno być ? RE: Balon meteo z GPS, czujnikiem temperatury i wilgotności oraz modułem karty SD - kampap91 - 16-10-2020 (16-10-2020, 17:04)Agregacik napisał(a): 1 rada: zrób sobie w programie kontrolne Serial.println ("1") ; potem 2 3 i tak dalej będziesz wiedział, gdzie program się ewentualnie zacina. Dzięki za cenne informacje. Właśnie poprawiiłem kod.Zmieniłem delay na millis() no i resztę beginów dałem do pętli przed początkiem danej części programu natomiast nie jestem aż tak dobry w programowaniu. Co mam zmienić w związku z trzema SoftwareSerial, jak to obejść? RE: Balon meteo z GPS, czujnikiem temperatury i wilgotności oraz modułem karty SD - Jarewa0606 - 16-10-2020 A potrafisz jednocześnie jechać rowerem i samochodem?? RE: Balon meteo z GPS, czujnikiem temperatury i wilgotności oraz modułem karty SD - kampap91 - 16-10-2020 (16-10-2020, 19:16)Jarewa0606 napisał(a): A potrafisz jednocześnie jechać rowerem i samochodem?? Nie, nie wiedziałem, że to tak działa w tym przypadku Dzięki za info. Zmieniłem co nieco, jak kolega napisał w komentarzu wcześniej, zmieniłem delay na millis i beginy dałem do pętli przed kodem programu. Nie wiem jak roziwązać problem z tymi SOftwareSerial? RE: Balon meteo z GPS, czujnikiem temperatury i wilgotności oraz modułem karty SD - Jarewa0606 - 16-10-2020 SoftwareSerial bazuje na przerwaniach, wiec twój projekt to wielka lipa i jedyna możliwość to zmiana na ardunio mega RE: Balon meteo z GPS, czujnikiem temperatury i wilgotności oraz modułem karty SD - Agregacik - 17-10-2020 (16-10-2020, 20:32)Jarewa0606 napisał(a): SoftwareSerial bazuje na przerwaniach, wiec twój projekt to wielka lipa i jedyna możliwość to zmiana na ardunio megaPowiem tak, wcale nie musi być wielką lipą. Mam taki projekt z 3 SoftwareSerial i płytce nano i działa bardzo dobrze. Wszystko zależy co się chce osiągnąć. W moim przypadku poszczególne SoftwareSerial działają po kolei, czyli w danej chwili tylko jeden pyta i oczekuje odpowiedzi, inne śpią i nie oczekuję od nich działania w tle. Jeżeli ktoś oczekuje, że w tym samym czasie jak działa jeden SoftwareSerial drugi będzie zbierał w buforze dane to się może przeliczyć. Po zainicjowaniu każdego SoftwareSerial czyszczę bufor odbiorczy i dopiero wysyłam zapytania do podpiętego pod niego urządzenie. Do autora wątku, pokaż poprawiony kod. |