piątek, 8 czerwca 2018

Tact switch

Poniższe przykłady pokazują jak podłączyć do Arduino wyłącznik tact switch i uzależnić od niego działanie układu.

Przykład 1

Przycisk tact switch zostanie tutaj wykorzystany do generowania liczb pseudolosowych. Każde wciśnięcie przycisku podłączonego do Arduino spowoduje wylosowanie kolejnej liczby z zakresu od 1 do 6.




Elementy układu:
  • 1 x płytka stykowa 
  • 1 x płytka Arduino Uno 
  • 1 x wyłącznik tact switch 
  • 2 x przewody połączeniowe 
Sketch Arduino:



Przykład 2

Przycisk tact switch imituje czujnik w ramie okna. Kiedy okno jest zamknięte (wciśnięty jest przycisk), świeci się dioda w kolorze zielonym. Kiedy przycisk jest zwolniony (okno zostało otwarte), zapala się dioda w kolorze czerwonym a w terminalu pojawia się komunikat: "Uwaga! Okno jest otwarte!".





Elementy układu:
  • 1 x płytka stykowa 
  • 1 x płytka Arduino Uno 
  • 2 x dioda LED 
  • 2 x opornik 330Ω 
  • 1 x wyłącznik Tact switch 
  • 5 x przewody połączeniowe 
Sketch Arduino:



Przykład 3

Wykorzystanie przycisku tact switch do włączania i wyłączania diody. Wciśnięcie przycisku spowoduje włączenie diody na około 10 sekund.



Elementy układu:
  • 1 x płytka stykowa 
  • 1 x płytka Arduino Uno 
  • 1 x dioda LED 
  • 1 x opornik 330Ω 
  • 1 x wyłącznik Tact switch 
  • 4 x przewody połączeniowe 
Sketch Arduino:



Przykład 4

Przycisk tact switch jako przełącznik symulujący działanie świateł drogowych. Po wciśnięciu przycisku program zapala kolejną diodę (i gasi pozostałe) w sekwencji: Zielona -> Żółta -> Czerwona -> Czerwona i Żółta.

Elementy układu:
  • 1 x płytka stykowa 
  • 1 x płytka Arduino Uno 
  • 3 x dioda LED 
  • 3 x opornik 330Ω 
  • 1 x wyłącznik Tact switch 
  • 6 x przewody połączeniowe 
Sketch Arduino:

 

Przykład 5

Do Arduino należy podłączyć dwa wyłączniki tact switch, dwie diody (zieloną i czerwoną) i towarzyszące im dwa oporniki 330Ω a następnie wgrać oprogramowanie. Każde wciśnięcie przycisku podłączonego pierwszego lub drugiego spowoduje zapalenie zielonej diody LED, natomiast równoczesne wciśnięcie obu przycisków spowoduje dodatkowo zapalenie diody czerwonej. W tym przykładzie warto zwrócić uwagę na zapis kodu i łączenie w nim warunków przy pomocy operatorów "i" oraz "lub" (w kodzie reprezentowanych przez "&&" oraz "||")





Elementy układu:
  • 1 x płytka stykowa 
  • 1 x płytka Arduino Uno 
  • 2 x dioda LED (tylko w wariancie 2) 
  • 2 x opornik 330Ω (tylko w wariancie 2) 
  • 2 x wyłącznik tact switch (tylko w wariancie 2) 
  • 7 x przewody połączeniowe (tylko w wariancie 2) 
Sketch Arduino:




Pliki do pobrania: Tutaj.


Dowiedz się więcej:

Diody świecące LED

Jednym z podstawowych elementów współczesnych układów elektronicznych są diody świecące (LED).

Przykład

Układ składający się z diody z niezbędnym opornikiem, który w wyniku uruchomienia programu spowoduje miganie dwiema diodami - wbudowaną oraz zewnętrzną. Czas świecenia i czas wyłączenia a także liczba mrugnięć diod zdefiniowane są w funkcjach użytkownika.

Elementy układu:
  • 1 x płytka stykowa 
  • 1 x płytka Arduino Uno 
  • 1 x dioda LED 
  • 1 x opornik 330Ω 
  • 2 x przewody połączeniowe 
Sketch Arduino:



Pliki do pobrania: Tutaj.


Dowiedz się więcej:

wtorek, 5 czerwca 2018

Czujnik rozwarcia (kontaktron)

Przykład

Wykorzystanie kontaktronu do sygnalizacji przerwania obwodu (otwarcia drzwi lub okna, które zabezpiecza). Układ dodatkowo wyposażony został w diodę RGB i buzzer do sygnalizacji stanu alarmu.

Elementy układu:
  • 1 x płytka stykowa 
  • 1 x płytka Arduino Uno 
  • 1 x kontaktron 
  • 1 x buzzer bez generatora 
  • 1 razy dioda RGB ze wspólną katodą 
  • 3 x opornik 1kΩ 
  • 9 x przewody połączeniowe 
Sketch Arduino:




Pliki do pobrania: Tutaj.


Dowiedz się więcej:


piątek, 1 czerwca 2018

Cyfrowy czujnik temperatury i wilgotności DHT-11

Przykład

Cyfrowy czujnik temperatury i wilgotności DHT-11 posiada cztery wyprowadzenia z czego jedno jest niewykorzystywane. Pozostałe to Vcc, Data i GND. Złącze Vcc podłącza się do pinu 5V w Arduino, złącze GND do masy a złącze Data do dowolnego pinu Arduino mogącego pracować w trybie wejścia. Między złącze Data a dodatnią szynę zasilania niezbędne jest włączenie opornika 4,7kΩ.
Do komunikacji z czujnikiem można wykorzystać gotową bibliotekę, przy pomocy której można dokonywać pomiarów wilgotności (w %RH - wilgotności względnej) i temperatury (w stopniach Celsjusza). Czujnik wymaga stosunkowo dużo czasu do zarejestrowania zmiany temperatury i wilgotności, dlatego bardzo użyteczna jest funkcja dht.getMinimumSamplingPeriod(), która ustala minimalny czas oczekiwania na gotowość czujnika do wykonania kolejnego pomiaru. Inna funkcja: dht.getStatusString(), pozwala określić czy pomiar przebiegł prawidłowo - dzięki niej można pominąć odczyty błędne.


Elementy układu:
  • 1 x płytka stykowa 
  • 1 x płytka Arduino Uno 
  • 1 x cyfrowy czujnik temperatury i wilgotności DHT-11 
  • 1 x opornik 4,7kΩ 
  • 5 x przewody połączeniowe 
Sketch Arduino:




Pliki do pobrania: Tutaj.


Dowiedz się więcej:

czwartek, 31 maja 2018

Cyfrowy czujnik temperatury DS18B20

DS18B20 jest czujnikiem cyfrowym. Jego podłączenie wymaga podłączenia złącza Vdd do pinu 5V w Arduino, złącza GND do masy i złącza DQ do dowolnego pinu Arduino mogącego pracować w trybie wejścia. Między złącze DQ a dodatnią szynę zasilania niezbędne jest włączenie opornika 4,7kΩ. Komunikacja z czujnikiem odbywa się za pomocą interfejsu OneWire i do tego celu wykorzystane będą gotowe biblioteki dołączone do sketcha.

Przykład 1

Czujnika podłączony zostaje do pinu A5 Arduino. Po wgraniu dedykowanego oprogramowania na Monitorze UART można odczytać temperaturę.

Elementy układu:
  • 1 x płytka stykowa 
  • 1 x płytka Arduino Uno 
  • 1 x czujnik cyfrowy temperatury DS18B20 
  • 1 x opornik 4,7kΩ 
  • 4 x przewody połączeniowe 
Sketch Arduino:

Przykład 2

Do pinu A5 Arduino podłączone zostają dwa czujniki - drugi i kolejne czujniki nie wymagają osobnego pinu. (a na płytce stykowej - jeżeli zostaną wpięte w te same wiersze - nie będą wymagać także dodatkowych przewodów). Po wgraniu dedykowanego oprogramowania na Monitorze UART można odczytać temperaturę.
Elementy układu:
  • 1 x płytka stykowa 
  • 1 x płytka Arduino Uno 
  • 2 x czujniki cyfrowe temperatury DS18B20 
  • 1 x opornik 4,7kΩ 
  • 4 (lub 7) x przewody połączeniowe 
Sketch Arduino:


Przykład 3

W tym przykładzie wymagane jest ustalenie unikalnych adresów czujników cyfrowych w które wyposażył je producent. Aby to uczynić należy uruchomić plik przykładu dostępny w Arduino IDE: Plik → Przykłady → OneWire → DS18x20. W pliku tym, przed uruchomieniem, należy jeszcze zmienić wiersz OneWire  ds(10); na OneWire  ds(A5); aby po uruchomieniu programu załadowanego na płytkę z własnymi czujnikami podłączonymi do portu A5 zobaczyć adresy tych czujników:

Następnie można już napisać program, który odwołuje się do konkretnego czujnika posługując się jego unikalnym adresem.

Elementy układu:
  • 1 x płytka stykowa 
  • 1 x płytka Arduino Uno 
  • 2 x czujniki cyfrowe temperatury DS18B20 
  • 1 x opornik 4,7kΩ 
  • 4 (lub 7) x przewody połączeniowe 
Sketch Arduino:

Przykład 4

Do pinu A5 Arduino podłączone zostają dwa czujniki a dodatkowo dołączona zostaje linijka LED w roli wskaźnika temperatury wskazanej przez czujnik..

Elementy układu:
  • 1 x płytka stykowa 
  • 1 x płytka Arduino Uno 
  • 2 x czujniki cyfrowe temperatury DS18B20 
  • 1 x opornik 4,7kΩ 
  • 1 x linijka LED WS2812 
  • 2 x opornik 1kΩ 
  • 1 x kondensator 1000uF 
  • 9 x przewody połączeniowe 
Sketch Arduino:



Pliki do pobrania: Tutaj.

Dowiedz się więcej:


środa, 30 maja 2018

Analogowy czujnik temperatury LM35

LM35 jest czujnikiem analogowym. Jego podłączenie jest bardzo proste. Złącze Vcc podłącza się do zasilania Arduino, GND do masy a Vout do pinu analogowego wejścia. Wzrost napięcia na złączu Vout przekazywany na wejście Arduino oznacza wzrost temperatury. W celu prawidłowego obliczenia temperatury należy sygnał ADC przeliczyć na napięcie (pomnożyć go przez pięć) a wynik podzielić przez zakres pracy przetwornika (1023). Uzyskaną wartość należy jeszcze pomnożyć przez 100 (ponieważ 1 stopień to 10mV).

Przykład 1

Czujnik podłączony zostaje do pinu A5 Arduino. Po wgraniu dedykowanego oprogramowania na Monitorze UART można odczytać temperaturę.


   



Elementy układu:
  • 1 x płytka stykowa 
  • 1 x płytka Arduino Uno 
  • 1 x czujnik analogowy temperatury 
  • 3 x przewody połączeniowe 
Sketch Arduino:



Przykład 2

Czujnik podłączony zostaje do pinu A5 Arduino. Po wgraniu dedykowanego oprogramowania na Monitorze UART można odczytać temperaturę. Program zapamiętuje także (i wysyła na UART) wartości minimalną i maksymalną odczytanych temperatur.


  


Elementy układu:
  • 1 x płytka stykowa 
  • 1 x płytka Arduino Uno 
  • 1 x czujnik analogowy temperatury LM35 
  • 3 x przewody połączeniowe 
Sketch Arduino:




Przykład 3

Do Arduino podłączamy dwa czujniki LM35 (do pinów A4 i A5). Oprogramowanie dokonuje odczytu temperatury na obu czujnikach i wylicza różnicę między nimi. Wynik można obejrzeć na monitorze UART.


   



Elementy układu:
  • 1 x płytka stykowa 
  • 1 x płytka Arduino Uno 
  • 2 x czujniki analogowe temperatury LM35 
  • 8 x przewody połączeniowe 
Sketch Arduino:



Pliki do pobrania: Tutaj.


Dowiedz się więcej:

sobota, 26 maja 2018

Wyświetlacz 7-segmentowy LDD040AUE-101A


Wyświetlacz LDD040AUE-101A ma 16 wyprowadzeń ponumerowanych jak na rysunku poniżej. Każde wyprowadzenie odpowiada za pracę jednego z siedmiu oznaczonych literami alfabetu segmentów (kropka jest niepodłączona i nieobsługiwana). Wyprowadzenia 1 do 4 oraz 13 do 16 odpowiadają za pracę pierwszej cyfry a wyprowadzenia 5 do 8 oraz 9 do 12 za pracę cyfry drugiej. Wyprowadzenia 4 i 5 stanowią wspólne katody dla siedmiu segmentów (diod) - odpowiednio pierwszej i drugiej cyfry. UWAGA: Na schematach Fritzing w tym poście umieszczone są wyświetlacze z dziesięcioma wyjściami (nie znalazłem takich z ośmioma) - ostatnią, pustą parę należy zignorować podczas czytania schematu i łączenia układu.


Przykład 1

Do Arduino podłączamy tylko pierwszą cyfrę wyświetlacza LDD040AUE-101A. Połączenie każdego z segmentów z Arduino zabezpiecza się opornikami 1kΩ. W wyniku uruchomienia dołączonego kodu zapalają się po kolei wszystkie segmenty wyświetlacza po czym, w pętli, rozpoczyna się wyświetlanie cyfr od 0 do 9 i na koniec pojawia się symbol błędu (zapalone segmenty ADG).




Elementy układu:
  • 1 x płytka stykowa 
  • 1 x płytka Arduino Uno 
  • 1 x podwójny wyświetlacz 7-segmentowy ze wspólną katodą 
  • 7 x opornik 1kΩ 
  • 9 x przewody połączeniowe 
Sketch Arduino:




Przykład 2

Do Arduino podłączamy obie cyfry wyświetlacza LDD040AUE-101A. Świecenie drugiej cyfry nie zajmuje kolejnych portów Arduino - dzieje się tak dzięki temu, że odpowiednie segmenty obu cyfr mostkuje się ze sobą, co sprawia, że każde zapalenie np. segmentu A cyfry 1 spowoduje także zapalenie segmentu A cyfry 2. Ceną tej metody jest jednak to, że obie cyfry będą pokazywały te same wartości. Do Arduino ładujemy ten sam sketch, który został użyty w przykładzie 1.



Elementy układu:
  • 1 x płytka stykowa 
  • 1 x płytka Arduino Uno 
  • 1 x podwójny wyświetlacz 7-segmentowy ze wspólną katodą 
  • 7 x opornik 1kΩ 
  • 17 x przewody połączeniowe 
Sketch Arduino:





Przykład 3

Podłączenie wyświetlacza LDD040AUE-101A umożliwi teraz odrębne wyświetlanie różnych wartości cyfry 1 i 2 wyświetlacza za pomocą tylko dwóch dodatkowych portów Arduino. Połączenia te prowadzone będą przez tranzystory BC547 i oporniki 10kΩ:
  • kolektory obu oporników łączy się z katodami wyświetlacza (kolektor pierwszego tranzystora z wyprowadzeniem 4 wyświetlacza a kolektor drugiego tranzystora z wyprowadzeniem 5);
  • emitery obu tranzystorów łączy się z masą;
  • bazę tranzystora pierwszego łączy się poprzez opornik z pinem 10 Arduino a bazę drugiego, także przez opornik z pinem 9.
Także połączenia z masą prowadzone są już wyłącznie poprzez tranzystory. Wyświetlanie różnych wartości dla zmostkowanych cyfr wyświetlacza realizowane jest dzięki multipleksowaniu (bardzo szybkim przełączaniu wartości na obu wyświetlaczach) i wykorzystaniu zjawiska bezwładności ludzkiego oka (można to dokładnie zobaczyć zmieniając wartość parametru waitTime w kodzie).








Elementy układu:
  • 1 x płytka stykowa 
  • 1 x płytka Arduino Uno 
  • 1 x podwójny wyświetlacz 7-segmentowy ze wspólną katodą 
  • 7 x opornik 1kΩ 
  • 2 x opornik 10kΩ 
  • 2 x tranzystor BC547 
  • 21 x przewody połączeniowe 
Sketch Arduino:




Przykład 4

Wyświetlacz LDD040AUE-101A podłącza się w sposób opisany w przykładzie 3, jednak do wyświetlania wartości wykorzystuje gotową bibliotekę SevSeg Library.

Elementy układu:
  • 1 x płytka stykowa 
  • 1 x płytka Arduino Uno 
  • 1 x podwójny wyświetlacz 7-segmentowy ze wspólną katodą 
  • 7 x opornik 1kΩ 
  • 2 x opornik 10kΩ 
  • 2 x tranzystor BC547 
  • 21 x przewody połączeniowe 
Sketch Arduino:




Przykład 5

Wyświetlacz LDD040AUE-101A podłącza się w sposób opisany w przykładzie 3 i dodatkowo do układu dodaje się potencjometr. Po wgraniu dedykowanego kodu wyświetlacz będzie pokazywał odczytane napięcie.






Elementy układu:

  • 1 x płytka stykowa 
  • 1 x płytka Arduino Uno 
  • 1 x podwójny wyświetlacz 7-segmentowy ze wspólną katodą 
  • 7 x opornik 1kΩ 
  • 2 x opornik 10kΩ 
  • 2 x tranzystor BC547 
  • 24 x przewody połączeniowe 
Sketch Arduino:





Pliki do pobrania: Tutaj.


Dowiedz się więcej:

    sobota, 12 maja 2018

    Centralka alarmowa

    Opisane poniżej zastosowanie to Arduino jako serce centralki alarmowej, klawiatura numeryczna do uzbrajania alarmu i jego dezaktywacji, czujnik ruchu do śledzenia ruchu w obserwowanym obszarze, kontaktron do sygnalizacji otwarcia drzwi, buzzer bez generatora do dźwiękowej sygnalizacji sytuacji alarmowej, linnijka LED do wizualnej sygnalizacji sytuacji alarmowej a w przykładzie 2 także tact switch do resetowania centralki. Całość uzupełnia niezbędne oprogramowanie, które  działa w oparciu o cztery działające niezależnie od siebie ale uruchamiane w określonej kolejności stany działania:
    • czuwanie
      W tej fazie centralka czeka na wciśnięcie klawisza "A", który stanowi dla niej sygnał do uzbrojenia alarmu i przejścia do stanu monitorowania.
    • monitorowanie
      W fazie monitorowania możliwe są dwa przypadki: 1) wykrycie ruchu, przez czujnik PIR, które spowoduje natychmiastowe przejście do fazy sygnalizacji alarmu lub 2) wykrycie otwarcia drzwi, które spowoduje przejście do fazy rozbrajania, aby dać właścicielowi (jeśli to on otworzył drzwi) na wprowadzenie kodu dezaktywującego alarm.
    • rozbrajanie
      W fazie rozbrajania, w ciągu pięciu sekund użytkownik może wprowadzić kod rozbrajający alarm. Kod jest czterocyfrowy i ma wartość "1234". W przypadku wprowadzenia błędnego kodu lub przekroczenia zadeklarowanego czasu na wprowadzenie go nastąpi przejście do fazy sygnalizacji alarmu.
    • sygnalizację alarmu.
      W fazie sygnalizacji alarmu uruchamia się sygnalizacja świetlna i dźwiękowa.

    Przykład 1

    Centralka działająca w oparciu o czujniki PIR i kontaktron.



       

    Elementy układu:
    • 1 x płytka stykowa 
    • 1 x płytka Arduino Uno 
    • 1 x klawiatura matrycowa 
    • 1 x kontaktron 
    • 1 x czujnik PIR HC-SR501 
    • 1 x buzzer bez generatora 
    • 1 x linijka LED WS2812 
    • 2 x opornik 1kΩ 
    • 1 x kondensator 1000uF 
    • 22 x przewody połączeniowe 
    Sketch Arduino:




    Przykład 2

    Centralka działająca w oparciu o czujniki PIR i kontaktron wzbogacona o przycisk tact switch, który resetuje centralkę (wykorzystanie przerwania) oraz o dodatkowe efekty dźwiękowe.




       

    Elementy układu:
    • 1 x płytka stykowa 
    • 1 x płytka Arduino Uno 
    • 1 x klawiatura matrycowa 
    • 1 x kontaktron 
    • 1 x czujnik PIR HC-SR501 
    • 1 x buzzer bez generatora 
    • 1 x tact switch 
    • 1 x linijka LED WS2812 
    • 2 x opornik 1kΩ 
    • 1 x kondensator 1000uF 
    • 24 x przewody połączeniowe 
    Sketch Arduino:




    Pliki do pobrania: Tutaj.


    Dowiedz się więcej:

    niedziela, 6 maja 2018

    Klawiatura matrycowa

    Przykład

    Podłączenie do Arduino klawiatury matrycowej wymaga skorzystania z ośmiu przewodów połączeniowych i zajęcia ośmiu pinów. Poniżej przykład wprowadzania do Arduino poleceń przy pomocy klawiatury matrycowej i odczytywania informacji na Monitorze szeregowym Arduino IDE.



    Elementy układu:
    • 1 x płytka Arduino Uno 
    • 1 x klawiatura matrycowa 
    • 8 x przewody połączeniowe 
    Sketch Arduino:




    Pliki do pobrania: Tutaj.


    Dowiedz się więcej:

    czwartek, 3 maja 2018

    Czujnik ruchu PIR - HC-SR501

    Przykład 1

    Alarm wyzwalany przez czujnik PIR HC-SR501. Sygnalizacja stanu alarmu przy pomocy diody RGB i buzzera bez generatora.

       

    Elementy układu:
    • 1 x płytka stykowa 
    • 1 x płytka Arduino Uno 
    • 1 x czujnik PIR HC-SR501 
    • 1 x buzzer bez generatora 
    • 1 razy dioda RGB ze wspólną katodą 
    • 3 x opornik 1kΩ 
    • 10 x przewody połączeniowe 
    Sketch Arduino:




    Przykład 2

    Alarm wyzwalany przez czujnik PIR HC-SR501 z wykorzystaniem przerwania. Przerwanie zlicza liczbę wykrytych ruchów i w zależności od tej liczby uruchamia alarm:
    • do trzech przerwań, dioda zapala się na zielono
    • powyżej trzech do sześciu przerwań, włącza się kolor niebieski
    • powyżej sześciu przerwań, dioda świeci się na czerwono i uruchamia się alarm dźwiękowy.
    Sygnalizacja stanu alarmu przy pomocy diody RGB i buzzera bez generatora.

       


    Elementy układu:
    • 1 x płytka stykowa 
    • 1 x płytka Arduino Uno 
    • 1 x czujnik PIR HC-SR501 
    • 1 x buzzer bez generatora 
    • 1 razy dioda RGB ze wspólną katodą 
    • 3 x opornik 1kΩ 
    • 10 x przewody połączeniowe 
    Sketch Arduino:




    Pliki do pobrania: Tutaj.



    Dowiedz się więcej: