Serwisy partnerskie:
Close icon
Serwisy partnerskie

Wprowadzenie do Arduino NANO

Article Image
Kompletny poradnik, krok po kroku wprowadzający do Arduino Nano
1. Praktyczny Kurs Arduino - przewodnik po artykułach składających się na kurs 2. Czym jest Arduino? 3. Porównanie Arduino z Raspberry Pi 4. Instalacja sterownika Arduino w systemie Windows 5. Generowanie pliku hex w Arduino 6. Jak wgrać bootloader w Atmega328? 7. Rozpoczęcie pracy z oprogramowaniem Arduino 8. Rozpoczęcie programowania w Arduino 9. Programowe resetowanie Arduino 10. Wprowadzenie do Arduino UNO 11. Wprowadzenie do Arduino NANO 12. Wprowadzenie do Arduino Pro Mini 13. Wprowadzenie do Arduino Mega 2560 14. Wprowadzenie do Arduino Due 15. Wprowadzenie do Arduino Lilypad 16. Wprowadzenie do ATmega328 17. Biblioteka Arduino dla Proteusa 18. Projekt płytki drukowanej Arduino UNO dla Proteus ARES 19. Biblioteka Arduino Lilypad dla Proteusa 20. Odczyt z portu szeregowego Arduino 21. Projektowanie układów LCD z Arduino 22. Łączenie klawiatury z Arduino 23. Wartość ADC na LCD przy użyciu Arduino 24. Symulacja czujnika ultradźwiękowego w Proteusie 25. Połączenie czujnika ultradźwiękowego z Arduino 26. Wiele czujników ultradźwiękowych z Arduino 27. Czujnik temperatury 18B20 z Arduino 28. Jak używać 18B20 w Proteus ISIS? 29. Łączenie LM35 z Arduino w Proteusie 30. Współpraca siedmiosegmentowego wyświetlacza z Arduino w Proteusie 31. Łączenie czujnika PIR z Arduino 32. Współpraca czujnika płomienia z Arduino 33. Interfejs NRF24L01 z Arduino 34. NRF24L01+ i Arduino - Response Timed Out 35. Połączenie RFID RC522 z Arduino 36. Komunikacja Bluetooth z Arduino przy użyciu HC05 37. Sterowanie serwomotorem za pomocą Arduino w Proteusie 38. Projekt sterowania sygnalizacją świetlną przy użyciu Arduino 39. Przewijanie tekstu na matrycy LED 8×8 z użyciem Arduino 40. Inteligentny system oszczędzania energii 41. Komunikacja USB pomiędzy Androidem i Arduino 42. Automatyka domowa z użyciem XBee i Arduino 43. Domowy system bezpieczeństwa oparty na GSM 44. Wysyłanie SMS-ów za pomocą Arduino UNO i SIM900 45. Odbieranie SMS-ów za pomocą komend AT przy użyciu Arduino 46. Projekt rozpoznawania głosu przy użyciu EasyVR Shield 47. Rozpoczęcie pracy z programem EasyVR Commander 48. Połączenie EasyVR z Arduino UNO 49. Błąd szkolenia - niepowodzenie rozpoznawania w EasyVR 50. Połączenie XBee z komputerem 51. Wprowadzenie do modułu XBee 52. Interfejs XBee z Arduino 53. Rozpoczęcie pracy z kamerą Pixy 54. Jak zainstalować oprogramowanie kamery Pixy - PixyMon 55. Aktualizacja firmware kamery Pixy do najnowszej wersji 56. Jak wytrenować kamerę Pixy za pomocą komputera 57. Sterowanie kierunkiem obrotu silnika prądu stałego za pomocą Arduino 58. Sterowanie prędkością obrotów silnika prądu stałego za pomocą Arduino 59. Sterowanie kierunkiem obrotu silnika krokowego za pomocą Arduino 60. Sterowanie prędkością obrotów silnika krokowego za pomocą Arduino 61. Pobieranie danych z serwera internetowego za pomocą Arduino Wi-Fi 62. Wprowadzenie do Arduino YUN 63. Dostęp do serwera Linux Arduino YUN za pomocą Putty
Rozwiń cały spis treści Zwiń spis treści

Dzisiaj, zamierzam dać wam szczegółowe Wprowadzenie do Arduino Nano. Omówimy także rozkład pinów Arduino Nano, specyfikację, sterowniki i aplikacje. Jest to płytka z mikrokontrolerem opracowana przez arduino.cc i oparta na Atmega328p/Atmega168.

Płytki Arduino są szeroko stosowane w robotyce, systemach wbudowanych, automatyce, Internecie Rzeczy (IoT) i projektach elektronicznych. Płytki te były początkowo wprowadzane dla studentów i nietechnicznych użytkowników, ale obecnie płytki Arduino są szeroko stosowane w projektach przemysłowych.

Wszelkiego rodzaju wsparcie techniczne i pomoc jest chętnie udzielana przez Społeczność Arduino. Zaprojektowałem również film instruktażowy dotyczący Arduino Nano.

Poniżej znajduje się rysunek przedstawiający kluczowe punkty Arduino Nano:

Poniżej znajduje się tabela przedstawiająca najważniejsze cechy Arduino Nano:

Oto szybki przegląd wyprowadzeń pinów Arduino Nano:

Arduino Nano oferuje trzy rodzaje protokołów komunikacyjnych, pokazane w poniższej tabeli:

Oto szczegóły dotyczące pamięci obecnych w Arduino Nano:

Porównaj z innymi płytkami Arduino

Arduino UNO

Arduino Pro Mini

Arduino Mega 2560

Arduino Due

Arduino Micro

Arduino Lilypad

Arduino YUN

Arduino NANO - wprowadzenie

Arduino Nano jest małym, kompletnym, elastycznym i łatwym w montażu mikrokontrolerem, opartym na ATmega328p, opracowanym przez Arduino.cc we Włoszech w 2008 roku i zawierającym 30 męskich złącz I/O, skonfigurowanych w stylu DIP30.

Rozkład pinów Arduino Nano zawiera 14 pinów cyfrowych, 8 pinów analogowych, 2 piny Reset i 6 pinów Zasilania.

Programuje się go za pomocą Arduino IDE, które można pobrać z oficjalnej strony Arduino.

Arduino Nano jest po prostu mniejszą wersją Arduino UNO, dzięki czemu oba mają prawie takie same funkcje.

Wyposażony jest w napięcie robocze 5 V, jednak napięcie wejściowe może się zmieniać w zakresie 7 do 12 V.

Maksymalny prąd znamionowy wynosi 40 mA dla Arduino Nano więc obciążenie podłączone do jego pinów nie powinno pobierać prądu większego niż podano wyżej.

Każdy z pinów cyfrowych i analogowych ma przypisane wiele funkcji, ale ich główną funkcją jest możliwość skonfigurowania ich jako Wejście/Wyjście.

Piny Arduino są używane jako Piny wejściowe gdy są podłączone do czujników, ale jeśli sterujemy jakimś obciążeniem, to musimy użyć ich jako Piny wyjściowe.

Funkcje takie jak pinMode() i digitalWrite() są używane do sterowania operacjami na pinach cyfrowych, podczas gdy analogRead() jest używana do kontrolowania pinów analogowych.

Piny analogowe posiadają łącznie rozdzielczość 10 bitów, która mierzy wartość od 0 do 5 V.

Arduino Nano jest dostarczane z oscylatorem kwarcowym o częstotliwości 16 MHz. Służy on do wytwarzania zegara o precyzyjnej częstotliwości przy użyciu stałego napięcia.

Jest jedno ograniczenie w używaniu Arduino Nano, mianowicie nie jest ono dostarczane z gniazdem zasilania prądu stałego, co oznacza, że nie można zasilać go z zewnętrznego źródła zasilania poprzez baterię.

Płytka ta nie używa standardowego USB do połączenia z komputerem, zamiast tego, jest wyposażona w Micro USB Typ-B.

Niewielkie rozmiary i łatwość użycia z płytką testową (breadboard) czynią to urządzenie idealnym wyborem dla większości aplikacji, w których rozmiar elementów elektronicznych ma duże znaczenie.

Pamięć Flash to 16 KB lub 32 KB, w zależności od płytki Atmega, np. Atmega168 posiada 16 KB pamięci flash, podczas gdy Atmega328 posiada 32 KB pamięci flash. Pamięć Flash służy do przechowywania kodu. 2 KB pamięci z całej pamięci flash jest przeznaczone na bootloader.

W Arduino Nano mamy pamięć SRAM o pojemności 2 KB.

Arduino Nano posiada EEPROM o pojemności 1 KB.

Poniższy rysunek przedstawia specyfikację płytki Arduino Nano.

Programuje się ją za pomocą Arduino IDE, które jest zintegrowanym środowiskiem programistycznym działającym zarówno w trybie offline jak i online.

Do uruchomienia płytki nie są wymagane żadne wcześniejsze działania. Wszystko czego potrzebujesz to płytka, przewód mini USB oraz oprogramowanie Arduino IDE zainstalowane na komputerze.

Przewód USB służy do przenoszenia programu z komputera na płytkę.

Do skompilowania i wypalenia programu nie jest wymagana osobna nagrywarka, ponieważ płytka posiada wbudowany bootloader.

Teraz przyjrzyjmy się szczegółowo wyprowadzeniom pinów Arduino Nano.

Arduino NANO - rozkład pinów

Poniższy rysunek przedstawia rozmieszczenie pinów na płytce Arduino Nano:

Każdy pin na płytce Nano ma przypisaną określoną funkcję.

Możemy zobaczyć piny analogowe, które mogą być wykorzystane jako przetwornik analogowo-cyfrowy, gdzie piny A4 i A5 mogą być również wykorzystane do komunikacji I2C.

Podobnie jest z 14 pinami cyfrowymi, z czego 6 pinów jest wykorzystywanych do generowania PWM.

Przyjrzyjmy się szczegółowo wyprowadzeniom pinów Arduino Nano.

Arduino NANO - piny zasilające

Vin: Jest to napięcie wejściowe zasilające płytkę przy korzystaniu z zewnętrznego źródła zasilania 7 do 12 V.

5 V: Jest to regulowane napięcie zasilania płytki, które służy do zasilania sterownika i innych elementów umieszczonych na płytce.

3V3: Jest to minimalne napięcie generowane przez regulator napięcia na płytce Nano.

Pin GND: Są to piny uziemiające na płytce (masa).

Na płytce znajduje się wiele pinów masy, które mogą być odpowiednio połączone, gdy wymagane jest więcej niż jeden pin masy.

Arduino NANO - piny funkcyjne

Pin Reset: Arduino Nano posiada dwa piny resetujące, wbudowane w płytkę, dzięki czemu dowolny z nich w stanie LOW spowoduje zresetowanie mikrokontrolera.

Pin 13: Wbudowany LED podłączony jest do pinu 13. płytki Nano.

Dioda ta służy do sprawdzania poprawności działania płytki, tzn. czy działa ona prawidłowo czy nie.

AREF: Pin ten jest używany jako napięcie odniesienia dla napięcia wejściowego.

Arduino Nano - Piny I/O

Piny analogowe: Na płytce znajduje się osiem pinów analogowych oznaczonych A0 – A7.

Piny te służą do pomiaru napięcia analogowego w zakresie od 0 do 5 V.

Piny cyfrowe: Arduino Nano posiada czternaście pinów cyfrowych począwszy od D0 do D13.

Te cyfrowe piny są używane do łączenia cyfrowych czujników i modułów innych producentów z płytką Nano.

Piny PWM: Arduino Nano posiada sześć pinów PWM, są nimi Pin 3, 5, 6, 9, 10 i 11. (Wszystkie są pinami cyfrowymi)

Piny te są wykorzystywane do generowania 8-bitowego sygnału PWM (Pulse Width Modulation).

Przerwania zewnętrzne: Pin 2 i 3 służą do generowania zewnętrznych przerwań używanych zwykle w sytuacjach awaryjnych, gdy musimy zatrzymać główny program i wywołać ważne instrukcje.

Program główny zostaje wznowiony po wywołaniu i wykonaniu instrukcji przerwania.

Rozkład pinów w Nano dla protokołów komunikacyjnych

Piny szeregowe: Piny są używane do komunikacji szeregowej, gdzie:

  1. Pin 0 to RX służący do odbioru danych szeregowych.
  2. Pin 1 to Tx służący do przesyłania danych szeregowych.

Protokół SPI: Cztery piny 10 (SS->Slave Select), 11 (MOSI -> Master Out Slave In), 12 (MISO -> Master In Slave Out) i 13 (SCK -> Serial Clock) są wykorzystywane do obsługi protokołu SPI (Serial Peripheral Interface).

SPI jest magistralą interfejsu i służy głównie do przesyłania danych pomiędzy mikrokontrolerami a innymi urządzeniami peryferyjnymi, takimi jak czujniki, rejestry czy karty SD.

Protokół I2C: Komunikacja I2C odbywa się za pomocą pinów A4 i A5, gdzie A4 reprezentuje linię danych szeregowych (SDA), która przenosi dane, a A5 reprezentuje linię zegara szeregowego (SCL), która jest sygnałem zegarowym, generowanym przez urządzenie nadrzędne, używanym do synchronizacji danych pomiędzy urządzeniami na magistrali I2C.

Arduino Nano - programowanie i komunikacja

Płytka Nano posiada możliwość ustawienia komunikacji z innymi kontrolerami i komputerami.

Komunikacja szeregowa odbywa się za pomocą pinów cyfrowych, Pin 0 (Rx) i Pin 1 (Tx), gdzie Rx służy do odbioru danych, a Tx do ich transmisji.

Do Arduino IDE dodany jest monitor szeregowy, który służy do przesyłania danych tekstowych do lub z płytki.

Do programu dołączone są również sterowniki FTDI, które zachowują się jak wirtualny port com do programu.

Piny Tx i Rx posiadają LED, który miga w miarę przesyłania danych pomiędzy FTDI a połączeniem USB do komputera.

Arduino Software Serial Library służy do realizacji komunikacji szeregowej pomiędzy płytką a komputerem.

Oprócz komunikacji szeregowej, płytka Nano obsługuje również komunikację I2C oraz SPI. Biblioteka Wire w oprogramowaniu Arduino jest dostępna w celu korzystania z magistrali I2C.

Arduino Nano jest programowane przez oprogramowanie Arduino zwane IDE, które jest powszechnym oprogramowaniem używanym dla prawie wszystkich typów płytek dostępnych na rynku. Wystarczy pobrać oprogramowanie i wybrać używaną płytę.

Wgrywanie kodu do Arduino Nano jest dość proste, gdyż nie trzeba używać żadnej zewnętrznej nagrywarki do kompilacji i wypalania programu do kontrolera, można również wgrywać kod za pomocą ICSP (In-circuit serial programming header).

Oprogramowanie płytki Arduino jest kompatybilne zarówno z systemem Windows, Linux jak i MAC, jednak preferowany jest system Windows.

Arduino Uno vs Arduino Nano

Zarówno Arduino Uno, jak i Arduino Nano posiadają tę samą funkcjonalność i niewiele się różnią pod względem układu płytki drukowanej, rozmiaru i kształtu.

Arduino Uno jest płytką z mikrokontrolerem opartym na Atmega328 i posiada czternaście cyfrowych pinów I/O, z których sześć to PWM. Na płytce znajduje się sześć pinów analogowych. Płytka posiada wszystko co jest potrzebne do obsługi mikrokontrolera, takie jak złącze USB, gniazdo zasilania, oscylator 16 MHz, przycisk reset oraz złącze ICSP (header). Nie potrzeba dodatkowych urządzeń peryferyjnych do płytki, aby działała ona w automatyce.

Jest to kompletne, gotowe do użycia urządzenie, które nie wymaga żadnych umiejętności technicznych, aby zdobyć z nim praktyczne doświadczenie. Możesz zasilać ją za pomocą gniazda prądu stałego, baterii lub po prostu podłączyć do komputera za pomocą przewodu USB, aby rozpocząć pracę.

Arduino Nano jest małe i kompaktowe w porównaniu do Arduino Uno. Nie posiada gniazda zasilania na prąd stały i posiada wsparcie dla Mini USB zamiast zwykłego USB. Ponadto, płytka Nano posiada dwa dodatkowe piny analogowe, tj. osiem pinów w porównaniu do sześciu pinów analogowych w płytce Uno. Płytka Nano jest przyjazna we współpracy z płytką testową (breadboard), podczas gdy płytka Uno nie posiada tej właściwości.

Mimo tego, oba urządzenia pracują przy napięciu 5 V, mają prąd znamionowy 40 mA i częstotliwość taktowania 16 MHz.

Arduino Nano - zastosowania

Arduino Nano jest bardzo użytecznym urządzeniem, które posiada szeroki zakres zastosowań i zajmuje mniej miejsca w porównaniu z innymi płytkami Arduino. Spośród innych płytek wyróżnia ją przyjazność we współpracy z płytką testową (breadboard). Poniżej przedstawiamy główne zastosowania Arduino Nano:

  • Projekty studentów inżynierii
  • Narzędzia medyczne
  • Automatyka przemysłowa
  • Aplikacje na Androida
  • Projekty oparte na GSM
  • Systemy wbudowane
  • Automatyka i robotyka
  • Automatyka domowa i systemy obronne
  • Aplikacje wirtualnej rzeczywistości

To wszystko na dzisiaj. Mam nadzieję, że masz już jasne pojęcie o płytce Nano. Jednakże, jeśli nadal jesteś sceptyczny lub masz jakieś pytania, możesz zwrócić się do mnie w sekcji komentarzy poniżej. Chętnie pomogę Ci zgodnie z moją najlepszą wiedzą i doświadczeniem. Zachęcamy do przekazywania nam na bieżąco swoich cennych uwag i sugestii, które pomogą nam zapewnić wam wysoką jakość pracy, która będzie odpowiadać waszym wymaganiom i sprawi, że będziecie wracać do nas po to, co mamy do zaoferowania. Dziękuję za przeczytanie artykułu.

Wykaz elementów
Ilość
Symbol
Nazwa/opis/gdzie kupić
Wideo
Do pobrania
Download icon Pobierz specyfikację Arduino Nano

Artykuł Introduction to Arduino Nano opracowano w wersji polskiej na podstawie współpracy z portalem www.theengineeringprojects.com.

1. Praktyczny Kurs Arduino - przewodnik po artykułach składających się na kurs 2. Czym jest Arduino? 3. Porównanie Arduino z Raspberry Pi 4. Instalacja sterownika Arduino w systemie Windows 5. Generowanie pliku hex w Arduino 6. Jak wgrać bootloader w Atmega328? 7. Rozpoczęcie pracy z oprogramowaniem Arduino 8. Rozpoczęcie programowania w Arduino 9. Programowe resetowanie Arduino 10. Wprowadzenie do Arduino UNO 11. Wprowadzenie do Arduino NANO 12. Wprowadzenie do Arduino Pro Mini 13. Wprowadzenie do Arduino Mega 2560 14. Wprowadzenie do Arduino Due 15. Wprowadzenie do Arduino Lilypad 16. Wprowadzenie do ATmega328 17. Biblioteka Arduino dla Proteusa 18. Projekt płytki drukowanej Arduino UNO dla Proteus ARES 19. Biblioteka Arduino Lilypad dla Proteusa 20. Odczyt z portu szeregowego Arduino 21. Projektowanie układów LCD z Arduino 22. Łączenie klawiatury z Arduino 23. Wartość ADC na LCD przy użyciu Arduino 24. Symulacja czujnika ultradźwiękowego w Proteusie 25. Połączenie czujnika ultradźwiękowego z Arduino 26. Wiele czujników ultradźwiękowych z Arduino 27. Czujnik temperatury 18B20 z Arduino 28. Jak używać 18B20 w Proteus ISIS? 29. Łączenie LM35 z Arduino w Proteusie 30. Współpraca siedmiosegmentowego wyświetlacza z Arduino w Proteusie 31. Łączenie czujnika PIR z Arduino 32. Współpraca czujnika płomienia z Arduino 33. Interfejs NRF24L01 z Arduino 34. NRF24L01+ i Arduino - Response Timed Out 35. Połączenie RFID RC522 z Arduino 36. Komunikacja Bluetooth z Arduino przy użyciu HC05 37. Sterowanie serwomotorem za pomocą Arduino w Proteusie 38. Projekt sterowania sygnalizacją świetlną przy użyciu Arduino 39. Przewijanie tekstu na matrycy LED 8×8 z użyciem Arduino 40. Inteligentny system oszczędzania energii 41. Komunikacja USB pomiędzy Androidem i Arduino 42. Automatyka domowa z użyciem XBee i Arduino 43. Domowy system bezpieczeństwa oparty na GSM 44. Wysyłanie SMS-ów za pomocą Arduino UNO i SIM900 45. Odbieranie SMS-ów za pomocą komend AT przy użyciu Arduino 46. Projekt rozpoznawania głosu przy użyciu EasyVR Shield 47. Rozpoczęcie pracy z programem EasyVR Commander 48. Połączenie EasyVR z Arduino UNO 49. Błąd szkolenia - niepowodzenie rozpoznawania w EasyVR 50. Połączenie XBee z komputerem 51. Wprowadzenie do modułu XBee 52. Interfejs XBee z Arduino 53. Rozpoczęcie pracy z kamerą Pixy 54. Jak zainstalować oprogramowanie kamery Pixy - PixyMon 55. Aktualizacja firmware kamery Pixy do najnowszej wersji 56. Jak wytrenować kamerę Pixy za pomocą komputera 57. Sterowanie kierunkiem obrotu silnika prądu stałego za pomocą Arduino 58. Sterowanie prędkością obrotów silnika prądu stałego za pomocą Arduino 59. Sterowanie kierunkiem obrotu silnika krokowego za pomocą Arduino 60. Sterowanie prędkością obrotów silnika krokowego za pomocą Arduino 61. Pobieranie danych z serwera internetowego za pomocą Arduino Wi-Fi 62. Wprowadzenie do Arduino YUN 63. Dostęp do serwera Linux Arduino YUN za pomocą Putty
Rozwiń cały spis treści Zwiń spis treści
Firma:
Tematyka materiału: Arduino NANO, Arduino IDE, Pierwsze kroki, Poradnik krok po kroku, Atmega328P
AUTOR
Źródło
www.theengineeringprojects.com
Udostępnij
Zobacz wszystkie quizy
Quiz weekendowy
Edukacja
1/10 Jak działa rezystor LDR?
Oceń najnowsze wydanie EdW
Wypełnij ankietę i odbierz prezent
UK Logo
Elektronika dla Wszystkich
Zapisując się na nasz newsletter możesz otrzymać GRATIS
najnowsze e-wydanie magazynu "Elektronika dla Wszystkich"