2019-03-10 Projekty arduino stacja meteo-czyli pierwsze funkcjonalne urzadzenie |
Gdy znamy już podstawy działania platformy Arduino, potrafimy lutować i co najważniejsze chcemy zbudować, nasze pierwsze działające urządzenie warto zacząć od czegoś prostego. Dobrym projektem na początek jest stacja meteo. Teoretycznie możemy stworzyć urządzenie, które będzie przetwarzać takie informacje jak wilgotność oraz temperatura powietrza, ciśnienie atmosferyczne. Dodatkowo może podawać informacje o opadach deszczu, czy też prędkości i kierunku wiatru. Aby zbyt nie utrudniać całego, zadania skupimy się na dwóch pierwszych elementach, czyli pomiarze temperatury oraz wilgotności powietrza w pomieszczeniu, oraz pomiarze temperatury poza domem. Wszystkie pomiary będziemy mogli odczytać na wyświetlaczu LCD. Elementy potrzebne do budowy urządzenia.Do budowy urządzenia potrzebne będzie nam kilka narzędzi oraz elementów elektronicznych, jeśli chodzi o same narzędzia, to z pewnością masz je pod ręką, bo są to:
Jeśli chodzi o elementy elektroniczne, to potrzebujemy:
Ostatnim elementem jest obudowa drukowana w 3D, do wykonania projektu użyłem programu Fusion360, sam obiekt wydrukowałem z białego materiału PET-G. Budowa prototypu na płytce stykowej, czyli pierwszy krok do sukcesuJednym z ważniejszych kroków podczas budowy samego urządzenia jest budowa prototypu. Prototyp tworzymy głównie dlatego, aby sprawdzić funkcjonalność całości, oraz pozbyć się błędów, które mogłyby sprawiać problemy w gotowym instrumencie. Już tutaj warto zastanowić się, do jakich pinów podłączone będą poszczególne komponenty oraz skąd będziemy czerpać zasilanie. Nasza stacja meteo będzie zasilona za pomocą zasilacza podającego 12 V. Dlatego też, aby ustabilizować zasilanie będziemy, musieli użyć stabilizatora napięcia, który obniży podawane napięcie do 5 V, czyli napięcia, na którym pracuje Arduino. Cały schemat połączeń pokaże oczywiście na grafice. Cały układ może wyglądać na skomplikowany, ale taki nie jest, jest tylko parę kwestii, na które powinniśmy zwrócić uwagę. Pierwsza z nich, to fakt, że w jednym, jak i drugim czujniku szynę danych mostkujemy z VCC za pomocą rezystora 4.7kOHM lub innego o podobnej wartości. Musimy też pamiętać o prawidłowym podłączeniu stabilizatora napięcia, dopiero z jego wyjścia możemy podłączyć zasilanie na płytce stykowej, jeśli podłączymy do płytki napięcie z gniazda DC. To możemy uszkodzić każdy z układów, ponieważ wszystkie pracują na logice 5 V. Gdy zbudowaliśmy już układ, możemy przejść do napisania programu. Stacja meteo programNa samym początku musimy wgrać biblioteki do obsługi czujników oraz wyświetlacza.
Omówienie programu podzielimy na dwa etapy, jeden omówi wszystko, co dzieje się do funkcji loop (), a drugi samą funkcję loop (). Spowodowane jest to tym, że sam program jest dosyć spory. Jeśli chodzi o tę sekcję, to myślę, że cały program jest jasny. Na początku deklarujemy jakie biblioteki będą używane w programie, następnie definiujemy podłączenie czujnika DS18B20. Określamy adres wyświetlacza oraz jego wielkość. W samym void setup () uruchamiamy czujnik DS18B20, wyświetlacz i jego podświetlenie, oraz określamy, do jakiego pinu podłączony został czujnik DHT11. Ostatnim elementem jest wyświetlenie napisu początkowego na wyświetlaczu, został on umieszczony w sekcji setup. Ze względu na to, że ma wyświetlić się tylko raz, podczas uruchamiania urządzenia. Stacja meteo - dalsza części koduJuż na samym początku sekcji loop widzimy linijkę kodu, która może wydawać nam się dziwna, ale już spieszę z wyjaśnieniami. Czujnik DHT11 lubi czasem wysłać błędne dane. Mają one wartość 0 i można je łatwo wyeliminować za pomocą tej linijki kodu. Dzięki czemu program zaczeka, aż czujnik poda poprawne dane, z reguły trwa to krócej niż sekundę. Po pobraniu danych z DS18B20 tworzymy zmienne typu float, przechowuje ona liczby. Gdy stworzymy zmienne, możemy przejść do wyświetlania danych. Na wyświetlaczu, całość jest na tyle prosta i zrozumiała, że tłumaczenie jest zbędne, w razie kłopotów odsyłam do poradnika o wyświetlaczach. Pora teraz na wgranie programu do Arduino i sprawdzenie, czy całość działa! Lutownice w dłoń, jesteśmy coraz bliżej mety!Gdy prototyp jest w pełni sprawny czy możemy przejść do lutowania. Nie będzie go zbyt dużo, ale warto ten temat poruszyć, na początek najlepiej przyciąć goldpiny męskie i żeńskie na odpowiednią długość. Potem umiejscowić całość w płytce i ocenić rozplanowanie przestrzeni na niej. Miejsca, w których przylutowałem te goldpiny, są wybrane przeze mnie i nie muszą stanowić wzorca. Połączenia na płytce powinny pokrywać się z tymi na płytce stykowej. Jeśli już ulokowaliśmy goldpiny na płytce, a ich położenie nam odpowiada, to możemy przejść do przylutowania ich. U mnie płytka wygląda w ten sposób, od razu przylutowałem też stabilizator napięcia. Stacja meteo — podłączanie i lutowanie
Teraz zostało nam przylutowanie przewodów zakończonych żeńskimi goldpinami do czujników, przylutowanie gniazda DC do przewodów. Przewody lutujemy do stabilizatora napięcia. Musimy pamiętać o tym, że stabilizator łączymy z gniazdem według polaryzacji zasilacza. Gdy wtyczka zasilacza ma GND na zewnątrz (a z reguły tak jest), to zewnętrzny pin lutujemy do środkowego pinu stabilizatora. Jest to pin GND, dlatego analogicznie postępujemy tak z pinem od VCC. Gdy skończyliśmy lutowanie, możemy włożyć Pro Mini do gold pinów, podłączyć wyświetlacz i uruchomić urządzenie, aby sprawdzić, czy całość działa. Jeśli tak, to możemy przejść do zamocowania całości w obudowie i w miejscu, w którym urządzenie będzie pracowało. Po osadzeniu stacji meteo w obudowie możemy umocować ją do ściany i cieszyć się w pełni działającym aparatem, które sami wykonaliśmy! Produkty użyte w poradniku stacja meteo:
Projekt obudowy do wydruku: link do Google Drive |
Polecane