RcClub.eu
https://rcclub.eu/

Arduino - jak zacząć.
https://rcclub.eu/viewtopic.php?f=108&t=6601
Strona 1 z 28

Autor:  Ellipsis [ sobota, 16 listopada 2013, 23:16 ]
Tytuł:  Arduino - jak zacząć.

Jak pewnie zauważyliście ostatnio coraz więcej projektów bazuje na Arduino. Warto więc może pokazać, że te proste zabawki są odpowiednie dla każdego, bez względu na wiek, płeć czy co tam uważa, że go wyróżnia ;)

Historia mikrokontrolerów (bo to właśnie jest mózgiem Arduino) zaczęła się dość dawno bo już w 1976roku. Aktualnie można je znaleźć prawie wszędzie gdyż ich wszechstronność jest powstrzymywana tylko wyobraźnią inżynierów. Jest tego cała masa, są takie o wymiarach 2x2x0,6mm i są też takie:
Obrazek

Ich potęga polega na posiadaniu w jednej obudowie jednostki centralnej, pamięci RAM, pamięci programu oraz układów wejścia/wyjścia. Dobra to było mądre, a w skrócie, podłączamy zasilanie, jakiś czujnik i wyświetlacz - wrzucamy do środka malutki program i mamy z tego np kalendarz z termometrem :D

To co wcześniej wymagało sporej wiedzy elekronicznej od osoby projektującej układ, a także bardzo wielu elementów elektronicznych teraz mieści się w tej 1 małej kostce.
Dzięki temu nasze hobby też jest oparte o takie układy... Gdzie są? W aparaturach, odbiornikach, regulatorach, ładowarkach, płytkach sterujących do kopterów, autopilotach, układach OSD, itp, itd. Wszędzie, przecież mówiłem już ;)

Jednak mimo takiej wszechstronności mikrokontrolerów przez długie lata nie były dostępne ot tak dla wszystkich. Nie trzeba już było być elektronikiem z 10 letnim stażem ale nagle trzeba było być programistą. No a nie każdy jest.
Każdy mikrokontroler był inny, miał inną architekturę i dalej było trudno to wszystko opanować. Powoli wiedza się rozlewała i wyciekała tu i ówdzie. Powstawały roboty do walk sumo, itd ale to wciąż nie było to...

Aż ktoś wpadł na pomysł, że można to wszystko uprościć, że ludzie są ciekawi i lubią sobie coś zbudować ale nie mają 3 lat na badania i testy. Że czasem potrzebujemy więcej możliwości a czasem mniej ale wtedy nie chcemy się uczyć wszystkiego od początku. I była jeszcze dłuższa lista tych "ŻE" i tak narodziło się A R D U I N O.

Czyli przede wszystkim płytka - sprzęt. Nie obwarowana żadnymi prawami. To jest free-open-hardware każdy może wypuścić swoją wersję. I nie skończy w betonowych skarpetkach zarzutów prawnych. No i wypuszczają:

Obrazek

Obrazek

Obrazek

Arduino to także IDE czyli zintegrowane środowisko programistyczne. (Integrated Development Environment)
Czyli cały kombajn w jednym miejscu, ale kombajn przemyślany. Nie za dużo w nim, nie za mało. Ot tak uszyty na miarę. Stąd sobie możecie ściągnąć Oczywiście to środowisko też jest otwarte i bezpłatne - no i po polskiemu też jest. Prawda, że miło?

Arduino to także forum i to nie jedno. To aktualnie miliony użytkowników na całym świecie, którzy piszą i umieszczają swoje pomysły wszędzie!! Są przykłady, rysunki jak podłączyć, pomoc kolegów, wszystko o wszystkim! Nawet można znaleźć łódki zanętowe sterowane GPS'em :mrgreen:
http://www.instructables.com/id/Arduino-Projects/
http://makezine.com/search/?q=arduino
http://hacknmod.com/topics/arduino/
http://lifehacker.com/tag/arduino
http://hackaday.com/
http://www.engadget.com/tag/arduino/

Żeby zacząć przygodę z Arduino potrzebujemy jakąś płytkę. Na początek polecam Uno lub Nano.
Obydwie mają port USB, co niezwykle ułatwia podłączanie. Czasem potrzebujemy jeszcze programator USBasp, gdyż wielu sprzedawców nie wgrywa tzw bootloadera, który jest potrzebny do działania płytki. Robi się to tylko raz.

Wspomniany programator wygląda tak:
Obrazek
A w najlepszych cenach bywa na http://ebay.com cena sprzed chwili to $2,82 z wliczoną przesyłką do Polski.

Na zdjęciu wgrywanie bootloadera do płytki Arduino Nano PRO

Załącznik:
IMG_8573.jpg
IMG_8573.jpg [ 154.86 KiB | Przeglądane 30244 razy ]


Jeśli wybierzecie płytkę bez wbudowanego interfejsu USB (taka jak ta powyżej), będziecie potrzebować jeszcze układu CP2102. To zwykły układ USB-UART czyli taki wirtualny com. Też parę dolców w tym samym miejscu. Ważne żeby miał linię DTR.

W środowisku IDE Arduino zawarta jest masa przykładowych kodów, więc nie musicie się martwić że zaraz na początku utkniecie :) Na pierwszy ogień polecam programik BLINK. Mruga wbudowaną diodą :) a ile przy tym daje radości
Załącznik:
Schowek04.jpg
Schowek04.jpg [ 112.45 KiB | Przeglądane 30244 razy ]


Każda płytka bez dodatkowych elementów umie komunikować się z komputerem i w wielu projektach jest to wykorzystywane. Dzięki temu od razu możemy kontrolować określone kroki wykonywane przez program, lub nim na przykład sterować.

Czyli ogólnie polecam każdemu! :mrgreen:

Autor:  Meloow [ czwartek, 12 grudnia 2013, 22:35 ]
Tytuł:  Re: Arduino - jak zacząć.

No i stałem się posiadaczem Arduino Mega 2560 Rev3 :D wraz z USBasp , do tego domówiłem RTC , tylko czekać na paczki może i mnie się uda coś zaprogramować :D

Autor:  Ellipsis [ piątek, 13 grudnia 2013, 09:29 ]
Tytuł:  Re: Arduino - jak zacząć.

Super, że się zdecydowałeś!

Autor:  Meloow [ piątek, 20 grudnia 2013, 13:25 ]
Tytuł:  Re: Arduino - jak zacząć.

No i zaczęło się , czyli zabawa w arduino. Na początek postanowiłem stworzyć projekt nie modelarski bo komputer akwariowy

założenia
pomiar temperatury, pomiar PH, dwa timiery do oświetlenia dziennego i nocnego, sterowanie grzałką oraz wentylatorem.
na chwilę obecną chodzi zegar RTC , pomiar TEMP. oraz kontrola temp. tzn ustawiam że poprawna temp. to 28*C jeżeli temp. spadnie poniżej 28-1 czyli 27 włącz się grzałka, jeżeli temp. wzrośnie powyżej 29 (28-1) to włącza się wentylator chłodzący wodę.
Włączenie grzałki czy wentylatora sygnalizowane (strzałęczką gora-dół) za temp. lub napisem wentylator ON/OFF , grzałka ON/OFF.
po przekroczeniu ustalonej temp min lub max zrobi się jakiś alarm czy coś podobnego.

Muszę dorobić jakiś wachdog a co w przypadku "zwiechy" podczas grzania wody komputer nie ugotował mi rybek. Trzeba dorobić obsługę timerków.
Muszę kupić sondę PH, niestety trochę kosztuje, ale i tak całość będzie kilka razy tańsza od gotowego komputerka.

Na razie się uczę to też pierwsze uruchomienie w wodzie nie będzie tak szybko. Ktoś ma jakieś sugestie co powinien zawierać taki komputer to pisać może uda mnie się to wcielić w życie.

PS. Coraz bardziej mnie się to podoba , no ten cały arduino :)
Załącznik:
arduino.jpg
arduino.jpg [ 326.73 KiB | Przeglądane 29981 razy ]

Autor:  Rumcajs [ piątek, 20 grudnia 2013, 13:30 ]
Tytuł:  Re: Arduino - jak zacząć.

Gratulacje za odwagę :), co zaś do funkcji - jakieś karmidełko?..

Autor:  Meloow [ piątek, 20 grudnia 2013, 13:35 ]
Tytuł:  Re: Arduino - jak zacząć.

Tylko jak dorobię karmidełko to będę musiał takie sobie kupić ... teraz rybki dostają raz dzienne :D

a wszystko do obsługi tego 240l , teraz jest ładniejsze bo glony się ładnie chowają

Załącznik:
akwarium.jpg
akwarium.jpg [ 250.4 KiB | Przeglądane 29978 razy ]

Autor:  Rumcajs [ piątek, 20 grudnia 2013, 13:39 ]
Tytuł:  Re: Arduino - jak zacząć.

A od czego jesteś modelarzem?? - karmodełko na serwie, i masz połączenie swoich dwóch hobby ;)

Autor:  Ellipsis [ piątek, 20 grudnia 2013, 13:56 ]
Tytuł:  Re: Arduino - jak zacząć.

O widzę, że masz moduł zasilający - bardzo przydatne ustrojstwo! Karmidełka chyba nie warto bo są w sprzedaży gotowce za takie pieniądze, że w domowych warunkach się tego nie zrobi sensownie/ładnie/funkcjonalnie. I lepsza jest śruba obracająca się 360 stopni niż serwo :)

Kiedyś zacząłem taki sam projekt dla znajomego rybkarza. Jemu zależało przede wszystkim na badaniu PH i ewentualnej zmianie tego PH przez dodawanie róźności do wody. Dodatkowo sprawdzanie poziomu wody i automatyczne dolewanie (miał gotową instalację).

Niestety rozmyślił się więc nic nie powstało - tylko ogólny zarys, który pokrywa się z Twoim. No i rozpoznałem rynek czujników składników wody - wniosek: drooooogoooo.

Autor:  mammuth [ piątek, 20 grudnia 2013, 16:08 ]
Tytuł:  Re: Arduino - jak zacząć.

Daj grzalke z termostatem i ustaw na 29 stopni - wtedy jesli system dostanie zwieche to sie grzalka sama wylaczy.

Autor:  pablojarocin [ piątek, 10 stycznia 2014, 23:00 ]
Tytuł:  Re: Arduino - jak zacząć.

Ellipsis napisał(a):



Jakoś szukam i nie mogę znaleźć.

Autor:  boluss [ sobota, 11 stycznia 2014, 11:13 ]
Tytuł:  Re: Arduino - jak zacząć.

http://allegro.pl/arduino-zestaw-evb-5-1-promocja-289zl-z-400zl-i3869469343.html

Co myślicie na początek taki zestaw?

Autor:  Rumcajs [ sobota, 11 stycznia 2014, 11:42 ]
Tytuł:  Re: Arduino - jak zacząć.

PO-RAŻ-KA !!
Na początek - przeglądnij moje posty z działu ZTS (i chyba jeden gdzieś indziej), jest tam kilka fotek z najprostszymi arduino mającymi tylko procek i niezbędne peryferia. Co prawda nie mam na nich USB, ale załatwiam to osobną przejściówką. Jeśli chcesz zacząć od uruchamiania programów pisanych przez innych zdecydowanie polecam najprostsze arduino i płytkę stykową. Ostatecznie może się przydać wyświetlacz LCD, a jak będziesz potrzebował coś dodatkowo - zmontujesz sam z elementów dostępnych w sklepie elektronicznym..
Np widziałem "dedykowane" czujniki temp. za 30 zetek, podczas gdy tak po prawdzie to czujnik za 5 zetek plus wtyczka..

Autor:  Artu [ sobota, 11 stycznia 2014, 11:48 ]
Tytuł:  Re: Arduino - jak zacząć.

Ja myśle o czymś takim Arduino Compatible UNO R3 Starter Kit, tylko... czy ja sobie z tym poradzę... :roll:

Autor:  baxter [ sobota, 11 stycznia 2014, 11:51 ]
Tytuł:  Re: Arduino - jak zacząć.

Kupcie zwykłe Arduino UNo za 50 - 80 zł. Kilka LEDów i oporników. Na poczatek, potem dokupisz co będziesz potrzebował.

Autor:  boluss [ sobota, 11 stycznia 2014, 11:53 ]
Tytuł:  Re: Arduino - jak zacząć.

No taki projekt zrobić to jest maszynka marzenie... może pod względem mechanicznym i elektronicznym bym sobie poradził ale z programowaniem to lipa :(

http://hackaday.com/2014/01/11/printer-up-cycled-cnc-machine-uses-more-than-just-the-stepper-motors/#more-112042

Autor:  Rumcajs [ sobota, 11 stycznia 2014, 12:03 ]
Tytuł:  Re: Arduino - jak zacząć.

Na necie jest kilkanaście ton gotowców, w tym - kilkaset kilo softów pod CNC. W zależności od tego jakie chcesz mieć silniki - są również gotowe sterowniki. Poszukaj choćby info o RepRap - drukarce 3D bazującej właśnie na Arduino :opad: ..
Ale nie dajcie się zwieść marketingowi - Arduino to Atmega328, kwarc, kilka kondziołków, kilka oporników.. Innymi słowy - pod względem technicznym TO też jest Arduino, tyle że na pierwotnie używanej Atmedze8.. Właśnie pod wpływem tej stronki popełniłem swoje pierwsza Arduino, i nawet gdzieś jeszcze po kartonach walają się płytki z moją wersją podobnego garbu :D

Autor:  Ellipsis [ sobota, 11 stycznia 2014, 12:13 ]
Tytuł:  Re: Arduino - jak zacząć.

Odnośnie zestawu jaki znalazłeś to zdecydowanie nie polecam. Strasznie drogo i bezużytecznie. Ta wersja jest zrobiona w stylu pierwszych płytek testowych dla starszych i słabszych procesorów. Głównie z myślą o ucznikach i studentach którzy muszą przez 5 lat uczyć się tego co można opanować nieco szybciej.

Tak dużej płytki i tak nie wykorzystasz później do niczego, oczywiście można się na niej uczyć ale ja polecam uczyć się od razu na płytce dużo mniejszej. Myślę że taki zestaw jest rosądny:
6,06$ Arduino Nano z wbudowanym USB
1,40$ Moduł zasilający z 3,3V i 5V
2,83$ Arduino Nano PRO "na później" bez wbudowanego USB
1,89$ Kable połączeniowe, ze 2 zestawy na początek powinny wystarczyć
5,99$ CP2102 czyli USB uart do komunikacji z Arduino bez wbudowanego USB
3,24$ LCD 16x2 + przejściówka na I2C
6,25$ LCD 20x4
2,84$ Sonar ultradźwiękowy
1,97$ Sterownik 2 silników DC, lub 1 krokowca 4 przewodowego
5,98$ Silnik krokowy 5 przewodów + sterownik
2,82$ programator USBasp
1,08$ konwerter złączki 10pin do 6pin do programowania
To wszystko z wliczoną przesyłką kosztuje 133zł.....

Autor:  Ellipsis [ poniedziałek, 13 stycznia 2014, 12:12 ]
Tytuł:  Re: Arduino - jak zacząć.

Dzisiaj będzie krótki opis co zrobić po otwarciu przesyłki z Arduino; na przykładzie Nano i Nano PRO.

Arduino Nano
Ta płytka posiada dwa miłe udogodnienia. Port USB z jednej strony oraz złącze do programowania - 6 pinów na końcu płytki.
Obrazek

Po podłączeniu płytki za pomocą kabelka USB do komputera system powinien znaleźć nowy sprzęt i zainstalować sterowniki. Najczęstsza nazwa to usb-serial-uart coś tam, coś tam. Jeśli nie macie to tu są sterowniki dla Windows XP/Server 2003/Vista/7/8/8.1
Po udanej instalacji będziecie mieli nowy port COM z jakimś numerkiem np COM7 - trza go zapamiętać.
Teraz uruchamiamy środowisko Arduino IDE. Jeśli nie macie jest tutaj.
Po uruchomieniu wybieramy z menu Narzędzia>Port szeregowy>com (ten zapamiętany numerek np com7)
Druga rzecz to wskazanie jakiej płytki będziemy używać, wybieramy z menu Narzędzia>Płytka> Arduino Nano w/ Atmega328

I już możecie zapomnieć o tych ustawieniach bo program będzie to pamiętał. Jedynie gdybyście mieli płytkę innego typu wtedy trzeba będzie ją zmienić w ustawieniach.

Wszystko gotowe do wgrania pierwszego programu. Jak już pisałem wcześniej najprościej skorzystać z gotowca więc wybieramy programik BLINK, który mruga wbudowaną diodą.
Plik>Przykłady>01. Basics>Blink

Obrazek

Gdy to wybierzecie otworzy się nowe okno właśnie z tym programem. Teraz klikamy ikonkę Załaduj czyli drugą od lewej
Załącznik:
zaladuj.jpg
zaladuj.jpg [ 6.17 KiB | Przeglądane 29504 razy ]

I zaczynamy obserwować napisy na dole okna; program się będzie kompilował a potem ładował o wszystkim Was informując. Na końcu poda wielkość programu i potwierdzi zakończenie ładowania :D

W tej chwili płytka Arduino zostanie zrestartowana a dioda zacznie radośnie mrugać:




Jednak może się okazać że program nie zostanie załadowany bo płytka nie zawiera tzw bootloadera. Spokojnie zaraz to naprawimy. Odłączamy płytkę od USB w zamian do komputera podłączając programator USBasp
Obrazek Oczywiście on też wymaga sterowników
Teraz wskazujemy w środowisku Arduino IDE, którego programatora będziemy używać:
Narzędzia>Programator>USBasp

Za pomocą dołączonego kabelka łączymy płytkę i programator, zwracając uwagę żeby pin nr 1 z wtyczki 6pinowej wszedł na pin nr 1 na płytce.
I teraz Narzędzia>Wypal Bootloader
Chwilę czekamy aż skończy się błyskoteka na obu płytkach i gotowe!
Wracamy powyżej do opisu jak wgrać pierwszy program i cieszymy się mrugającą diodą :D

Arduino PRO Mini
Tak, teraz jesteśmy PRO. Ta płytka nie zawiera wbudowanego UARTa USB a i złącza do programatora trzeba znaleźć. Dzięki temu jest dużo mniejsza i trochę tańsza :)

Obrazek

Żeby wgrać do niej program potrzebujemy USB UART czyli CP2102, jest ich cała masa na rynku, najważniejsze żeby płytka miała port DTR, miło gdy ma wybór napięć 5V i 3.3V.

I teraz mały myk, niektóre z tych płytek nie posiadają 1 kondensatorka, który decyduje o powodzeniu wgrywania. Najpierw próbujemy podłączyć bez niego, ale gdy nie uda się nic wgrać trzeba dorzucić takiego elektrolita.
Załącznik:
auto reset arduino pro mini.jpg
auto reset arduino pro mini.jpg [ 25.73 KiB | Przeglądane 29504 razy ]

Ja mam go wepchnięty między 2 przewody z takiego kompletu.
Opornik na dole nie jest potrzebny :)

Oczywiście w Arduino IDE ustawiamy inną płytkę:
Narzędzia>Płytka> Arduino Pro or Pro Mini (5V 16MHz) w/ Atmega328

Wgrywanie programu odbywa się tak samo jak powyżej. Gdyby natomiast okazało się, że musimy wgrać bootloader, podłączamy programator USBasp, a po stronie płytki Arduino wykorzystujemy piny:
MOSI - Arduino digital 11
MISO - Arduino digital 12
SCK - Arduino digital 13
Reset - Reset
Vcc - Vcc
GND - GND

O tak to ma wyglądać:
Obrazek

Tutaj kondensator w linii RESET nie jest potrzebny.

Na koniec jak już nacieszycie oczy mrugającą diodą i poczujecie piasek w oczach (jak stary spawacz) od wielogodzinnego wpatrywania się w nią, spróbujcie zmodyfikować kod, a dokładnie ten kawałek:

Kod:
  digitalWrite(led, HIGH);   // turn the LED on (HIGH is the voltage level)
  delay(1000);               // wait for a second
  digitalWrite(led, LOW);    // turn the LED off by making the voltage LOW
  delay(1000);               // wait for a second


Tłumacząc na ludzki, pierwsza linijka zapala diodę (HIGH), kolejna mówi że utrzymujemy ten stan (delay) przez 1000 milisekund czyli mniej więcej 1 sekundę, potem gasimy diodę (LOW), i znów utrzymujemy ten stan (delay).

Autor:  Osa [ środa, 15 stycznia 2014, 00:00 ]
Tytuł:  Re: Arduino - jak zacząć.

Sławek i Hubert jesteście debeściaki , serdeczne dziękuję za pomoc w uruchomieniu MW produkcji Sławka.
Załącznik:
mw3.jpg
mw3.jpg [ 54.1 KiB | Przeglądane 29431 razy ]


P.S. Pewnie gdyby nie ten temat zadawałbym jeszcze głupsze pytania :lol: Szacun dla autora.

Autor:  Ellipsis [ środa, 22 stycznia 2014, 12:07 ]
Tytuł:  Re: Arduino - jak zacząć.

Dzisiaj będzie trochę o zasilaniu płytek Arduino. Niby proste a jednak..... Raw, VCC??

Zacznijmy od tego, że większość małych płytek Arduino ma wbudowany regulator napięcia 5V. Dzięki temu możemy je zasilać np bezpośrednio z pakietu 2-3s, czy innego źródła(5-12V) Żeby skorzystać z tego wbudowanego regulatora podłączamy zasilanie pod pin nazwany RAW w prawym dolnym rogu płytki:

Obrazek

Niektóre płytki są sprzedawane także w wersji 3,3V. Co oznacza, że możemy do pinu RAW dalej podłączyć maksymalnie 12V ale tu cała płytka będzie działać na 3,3V. Jest to przydatne zwłaszcza gdy będziemy korzystać z czujników na I2C, które pracują właśnie z takim napięciem oraz takim poziomem sygnałów.

Gdy wykorzystujemy do zasilania płytki pin RAW, wtedy na pinach nazwanych VCC mamy do dyspozycji główne napięcie zasilające całej płytki czyli jeśli to wersja 3,3V to będzie 3,3V, a jeśli 5V to 5V. Możemy to wykorzystać do zasilania zewnętrznych komponentów, np GPS czy cuś. Pamiętajcie tylko o wydajności tego małego regulatora - najczęściej ma wydajność 150mA więc nie bierzcie z niego za dużo jeśli nie chcecie uwolnić schowanego w nim dymu...

Większe płytki Arduino, dla przykładu Uno, mają po 2 wbudowane regulatory - dzięki temu na płytce mamy 2 wyjścia (VCC) napięcia dla 3,3V i 5V. Na tej płytce pin RAW nazywa Vin.

Obrazek

I teraz małe oszustwo :) Powiedzmy, że mamy płytkę PRO MINI z regulatorem 5V a koniecznie chcemy jej użyć do testowania układu z czujnikiem, który wymaga 3,3V. Znajdujemy zewnętrzne źródło zasilania z takim napięciem np moduł MB102 i wpinamy zasilanie płytki do pinu VCC. W ten prosty sposób robimy z płytki w wersji 5V wersję 3,3V.

Czyli w skrócie:
- zasilanie podłączone pod piny RAW lub Vin idzie przez regulator i zostanie zmienione na mniejsze (właściwe dla danej płytki)
- zasilanie podłączone pod pin VCC zostanie nie zmienione - ile damy tyle dostaniemy.

Strona 1 z 28 Strefa czasowa: UTC + 1
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
http://www.phpbb.com/