Forum CDRinfo.pl

Forum CDRinfo.pl (https://forum.cdrinfo.pl/)
-   Komputery - oprogramowanie i sprzęt (https://forum.cdrinfo.pl/f113/)
-   -   Arduino (https://forum.cdrinfo.pl/f113/arduino-91784/)

andy 15.12.2012 20:32

Arduino
 
Na początek co to takiego Arduino:

Cytat:

Arduino ***8211; platforma dla systemów wbudowanych oparta na prostym projekcie Open Hardware przeznaczonym dla mikrokontrolerów montowanych w pojedynczym obwodzie drukowanym, z wbudowaną obsługą wejścia/wyjścia oraz standaryzowanym językiem programowania[2]. Język programowania Arduino jest oparty na środowisku Wiring i zasadniczo na języku C/C++ (kilka prostych przekształceń kodu wykonywane przed przejściem do avr-gcc)[3]. Celem projektu Arduino jest przygotowanie narzędzi ***8211; ogólnodostępnych, tanich, nie wymagających dużych nakładów finansowych, elastycznych i łatwych w użyciu przez hobbystów. Częściowo, Arduino stanowi również alternatywę dla osób, które nie mają dostępu do bardziej zaawansowanych kontrolerów, wymagających bardziej skomplikowanych narzędzi[4].
Arduino może być wykorzystany do tworzenia samodzielnych interaktywnych obiektów lub może być podłączony do komputera-hosta. Typowa płyta Arduino zawiera kontroler, cyfrowe i analogowe linie wejścia/wyjścia, oraz interfejs szeregowy lub USB dla połączeń z komputerem-hostem. Komputer jest wykorzystywany do programowania kontrolera oraz do interakcji w czasie działania z Arduino. Pomimo tego, że płyty Arduino generalnie nie posiadają funkcjonalności sieciowych, częstym rozwiązaniem jest łączenie jednego lub kilku Arduino z hostem sieciowym, gdzie Arduino używa się w roli sprzętowych kontrolerów, a host przyjmuje rolę sieci lub interfejsu użytkownika. Budowanie interfejsu hosta jest proste, ponieważ oprogramowanie hosta może być pisane w różnych językach. Możliwe jest programowanie interfejsu w kilkunastu językach programowania, m.in. w Javie, ActionScript, C/C++, C#, Perl, VBScript[5].

Czy ktoś się z Was w to bawił? Jak wygląda szybkość nauki?

Z tego co widzę to na pierwszy ogień warto kupić Arduino UNO - koszt 99zł.

polakT 16.12.2012 05:54

Arduino, ogólnie nie używałem tego, jednak programowałem trochę Atmeg i PICów. Ogólnie Atmegi zawsze sprawiały problemy przy programowaniu, nie mniej były dostępne w lepszych cenach niż PIC. Szczególnie chodzi tu o modele z przetwornikami CA/AC i sprzętowym PWM - więcej niż 1 kanał.

Do pisania używałem ASM i C. Kod pisany w ASM pomimo że trudniejszy w ogarnięciu jako całość, zawsze był niesamowicie szybki, a także miałem w 100% kontrolę nad tym co dzieje się w procesorze. Wszelkiego rodzaju wynalazki jak pisanie w C++ czy inne srodowiska - przyznam nie wiem co to jest ten wiring, jakoś szukać mi się nei chce ;), uważałem za głupotę przy tak małej ilości pamięci. W sumie wiele zależy od tego, co ma robić nasz program, ile różnych funkcji ma zawierać, czy mają być w programie zakodowane tablice znakowe. Ogólnie jest bardzo dużo zmiennych, które mają wpływ na wybór platformy.

Mój osobisty wybór to atmega lub pic + programator (np willem - chociaż miewa różne odchyły ;) ) + książka Jabłoński Mikrokontrolery PIC 16f8x w praktyce

Poszukaj na necie, czy w bibliotece tej książki, porównaj z tym co masz w internecie. Ogólnie do PIC 16f84 są ogromne ilości materiałow i gotowych programów.

Jakieś pytania. zadawaj :)

EDIT:

piszę o atmegach bo Arduino na tym procesorze właśnie siedzi :)

pali 16.12.2012 06:30

Na elektrodzie są tysiące tematów z programowaniem Atmegi.

Takie kity nie są nowością. Nawet niekiedy można było podobne dostać gratis jako reklamę na początku produkcji.

Jak w całej informatyce zawsze jest dylemat: wygoda wyższego poziomu kontra wydajność niższego. Dokladnie tak jak napisał polakT.
Nie wspomniał tylko o bardzo popularnym środowisku BASCOM, które bywa uznane za przestarzałe, ale tyle opinii co ludzi.

Ja się na tym nie znam; kiedyś tylko coś tam liznąłem, aby wiedzieć o co chodzi i dalej nie wgłębiałem się, gdyż elektronika niestety jest moją pięta achillesową i wątpię, żebym jeszcze kiedyś to nadrobił...

Powodzenia :)

//edit
polakT,
Lego Mindstorm to jakaś rynkowa Atmega z katalogu?
A te środowisko programistyczne od Lego to co to jest?

polakT 16.12.2012 09:01

Cytat:

Napisany przez pali (Post 1234428)

(..)

//edit
polakT,
Lego Mindstorm to jakaś rynkowa Atmega z katalogu?
A te środowisko programistyczne od Lego to co to jest?

Nie miałem z tym bezpośredniej styczności.

Z tego co się widzę to siedzą tam ARMowy AT91SAM7S256 + ATmega48

http://nxtgcc.sourceforge.net/EMSOFT...s-Tutorial.pdf


BASCOM. Miałem z tym bardzo przelotny romans. Poczytałem, uruchomiłem ze 2 programy. Fajne ale nie wiedziałem co dzieje się w procesorze :)

program robiący to samo w ASM: 5k w C: 15k w BASCOM: 100k <-- to chyba jednoznacznie pokazuje przewagę pewnych języków.

Ogólnie spotkałem też człowieka - programistę java, który w tym właśnie języku programował uC. Ogólnie myślę, że przy posiadaniu odpowiednich bibliotek da się wszystko osiągnąć, ewentualnie napisać swoje biblioteki

Do PIC microchip wypuścił własne środowisko z możliwością symulacji, debuga sprawdzania pisowni itp. Nazywa się to MPLAB http://www.microchip.com/stellent/id...cName=en019469

http://www.microchip.com/stellent/gr...t/163741-2.png

jesi 16.12.2012 09:28

polakT masz rację co do ASM, może trudniejszy do ogarnięcia, ale dla mnie jakoś czytelniejszy jako całość. Programowałem PICi w ASM i jeżeli o mnie chodzi to znacznie przyjemniejsze niż w innym języku. Przy Mid-Range tylko 35 instrukcji. Co do MPLAB to fajne środowisko, ale ja tam wolałem Notatnik :) Znowu ASM też ma pewne ograniczenia, ile ja czasu straciłem, żeby zaprogramować LCD, gdzie w C++ byłaby to chwila.

Co do materiałów to nie gadaj głupot, nie ma ich tak dużo :) Ja korzystałem z książki "Mikroprocesory jednoukładowe PIC" Stanisława Pietraszka (na prawdę dobra pozycja) i dokumentacji Microchipa.

szczuru 16.12.2012 11:26

Opisy Arduino znajdziecie tu:
http://majsterkowo.pl/

andy 16.12.2012 11:46

@szczuru widziałem ;)

Co do reszty to ja pytam konkretnie o Arduino a nie o programowanie ogólne mikroprocesorów. Zatem, jeżeli się ktoś bawił na tej platformie to niech się wyżali trochę ;)

polakT 16.12.2012 19:06

Cytat:

Napisany przez andy (Post 1234447)
@szczuru widziałem ;)

Co do reszty to ja pytam konkretnie o Arduino a nie o programowanie ogólne mikroprocesorów. Zatem, jeżeli się ktoś bawił na tej platformie to niech się wyżali trochę ;)

no ale Arduino to srodowisko uruchomieniowe dla ATMEGI. Czyli dalej temat jest aktualny. Arduino to nic innego jak płytka z USB, we/wy i samym uC.
Stwierdzenie ze nie chcesz czytać o uC tylko o Arduino jest trochę dziwne, biorąc pod uwagę czym ono jest :>


Arduino mozesz programować we wskazanych wyżej językach, czy programach :>

nie traktowałbym Arduino jako czegoś odrębnego. Po prostu masz procek, masz płytkę programator we/wy - nie musisz niczego budować samodzielnie. Ale dalej jest to ta sama atmega, jest to dalej uC, odnośnie którego wszystko co zostało powiedziane wcześniej jest aktualne. Jeżeli ktoś odnosi się do programowania Atmegi mówi o tym samym co zrobisz na Arduino. Jedyna różnica polega na tym, ze projektując układ samodzielnie dobierasz sobie podzespoły i elementy, rozmiar i technologie - tu masz wszystko gotowe.

Czyli, czytając o atmegach czytasz także a Arduino.

takie jest moje zdanie.




Edit:

Powiedz mi @andy, czego oczekujesz po Arduino ? Bo jednak trochę dziwne podejście nie próbować zapoznać się z rejestrami uC, czy dozwolonymi poleceniami. Chyba w programowaniu uC właśnie o to chodzi by wiedzieć co się programuje, bo inaczej to trochę przypomina BASCOMA - gdzie tak naprawdę nikt nie wie o co chodzi, ale działa :>

pali 16.12.2012 19:39

andy łyka reklamy jak bocian żaby...
i zaraz będzie flame, że nie Atmega, bo przecież Arduino, tak napisano...
o wolności wyboru będzie, o tym że można sobie samemu zrobić prom kosmiczny itd itp

andy 16.12.2012 19:48

Cytat:

no ale Arduino to srodowisko uruchomieniowe dla ATMEGI. Czyli dalej temat jest aktualny. Arduino to nic innego jak płytka z USB, we/wy i samym uC.
Stwierdzenie ze nie chcesz czytać o uC tylko o Arduino jest trochę dziwne, biorąc pod uwagę czym ono jest :>
Arduino mozesz programować we wskazanych wyżej językach, czy programach :>
Cytat:

nie traktowałbym Arduino jako czegoś odrębnego. Po prostu masz procek, masz płytkę programator we/wy - nie musisz niczego budować samodzielnie. Ale dalej jest to ta sama atmega, jest to dalej uC, odnośnie którego wszystko co zostało powiedziane wcześniej jest aktualne. Jeżeli ktoś odnosi się do programowania Atmegi mówi o tym samym co zrobisz na Arduino. Jedyna różnica polega na tym, ze projektując układ samodzielnie dobierasz sobie podzespoły i elementy, rozmiar i technologie - tu masz wszystko gotowe.
No tak. Arduino to takie programowanie sprzętowe dla "ubogich". Nauka programowania sprzętowego dla Kowalskiego.
Interesują mnie konkretne informacje o tej platformie. Co jak, kiedy, gdzie, po co?

Cytat:

Powiedz mi @andy, czego oczekujesz po Arduino ? Bo jednak trochę dziwne podejście nie próbować zapoznać się z rejestrami uC, czy dozwolonymi poleceniami. Chyba w programowaniu uC właśnie o to chodzi by wiedzieć co się programuje, bo inaczej to trochę przypomina BASCOMA - gdzie tak naprawdę nikt nie wie o co chodzi, ale działa :>
Zabawy oczekuję. Może to śmiesznie zabrzmi ale tak to traktuję - jako zabawę. Chcę mieć platformę na bazie której będę sobie mógł dłubać. Może przy okazji wydłubię coś ciekawego? :)

Cytat:

Napisany przez pali
andy łyka reklamy jak bocian żaby...
i zaraz będzie flame, że nie Atmega, bo przecież Arduino, tak napisano...
o wolności wyboru będzie, o tym że można sobie samemu zrobić prom kosmiczny itd itp

Jakie reklamy? O czym ty znowu bredzisz? Wybacz ale ostatnio twoje posty są poniżej pewnego poziomu. Mniej filozofii i nadinterpretacji, a więcej konkretów i merytorycznych postów.

gallus 16.12.2012 20:04

Szkoda, że jest mało przykładów zastosowania może bym i kupił dla zabawy ale nie mam pomysłu co by sobie na "tym" wykonać ;)

andy 16.12.2012 20:16

@gallus zobacz sobie ;)


polakT 16.12.2012 22:48

Cytat:

Napisany przez andy (Post 1234507)
@gallus zobacz sobie ;)



marketing

pokazują zastosowanie atmegi, a że w zestawie uruchomieniowym arduino...
Nie daj się złapać że to możliwości arduino - to możliwości atmegi. Arduino to nic innego jak kawałek laminatu gdzie masz zamontowane złącza, pare elementów elektronicznych, dumnie zwanych programatorem; kilka switchy... i ATMEGĘ

http://zestawyuruchomieniowe.pl/pl/z...a32-delux.html
ten uważam za lepszy, ma praktycznie większość potrzebnych podzespołów, Może nie jest Open, ale mimo wszystko polecam.

M@X 16.12.2012 23:13

Przeczytalem wszystkie podane przez Was informacje, wchodzilem w linki, z linkow w dalsze linki i nie znalazlem odpwoeidzi, jako ze byla tam masa technicznych informacji a nic z tzw. "Jezyka korzysci", wiec zapytam:

Do czego to sluzy?

pali 16.12.2012 23:16

polakT,
zabierasz andiemu marzenia o zbudowaniu rakiety kosmicznej i byciu takim ładnym jak w folderze :)

A do rakiety i tak paliwa zabraknie, znany problem.

Cytat:

Napisany przez gallus (Post 1234503)
Szkoda, że jest mało przykładów zastosowania może bym i kupił dla zabawy ale nie mam pomysłu co by sobie na "tym" wykonać ;)

elektroda.pl a z niej setki, tysiące linków do portali z gigantycznymi zbiorami...
Płyty z kursami, pakiety oprogramowania...
Tony publikacji papierowych; książek, artykułów...

pali 16.12.2012 23:29

Cytat:

Napisany przez M@X (Post 1234527)
Do czego to sluzy?

Możesz sobie zrobić
budzik
radio
tablicę świetlną LED do sali gimnastycznej albo reklamową
robocika co będzie popitalał po biurku omijając przeszkody
świecidełka na choinkę
termostat do akwarium
zdalnie sterowaną kosiarkę
sterownik pieca CO
i milion innych rzeczy

To co andy pokazuje zawiera w sobie standardowy mikroprocesor używany przez elektroników na całym świecie. Tyle, że osadzony jest na płytce, wraz z pamięciami i złączami. Do tego producent oferuje ustandaryzowane oprogramowanie z dokumentacją. Czyli mamy od razu coś w rodzaju mikrokomputera i ma takie urządzenie sens, bo możemy zacząć naukę od konstruktów wyższego poziomu, zamiast od projektu płytki w EAGLE. Można się czegoś nauczyć nie mając oscyloskopu cyfrowego ;) Bardzo fajne urządzenie, gdybym za młodu miał podobne na rynku, to pewnie wiedziałbym więcej (były podobne zestawy, ale słabo dostępne, źle wykonane, niedostosowane do zachodnich komputerów i słabo udokumentowane - to były czasy gdy książkę o programowaniu w assemblerze kupowało się spod lady albo drukowaną na czarnym rynku :D ).

andy 16.12.2012 23:30

Cytat:

marketing

pokazują zastosowanie atmegi, a że w zestawie uruchomieniowym arduino...
Nie daj się złapać że to możliwości arduino - to możliwości atmegi. Arduino to nic innego jak kawałek laminatu gdzie masz zamontowane złącza, pare elementów elektronicznych, dumnie zwanych programatorem; kilka switchy... i ATMEGĘ
Jaki marketing?

Arduino to PLATFORMA. Płytka dostępna na zasadzie OPEN HARDWARE + IDE, która umożliwia naukę programowania sprzętu osobom, które chcą się tego nauczyć w szybki i w miarę prosty sposób. O to w tym projekcie chodzi.
Można to porównać do dystrybucji Ubuntu - Linuks dla mas. Tak samo tutaj mamy programowanie sprzętu dla mas.

Cytat:

Arduino is an open-source electronics prototyping platform based on flexible, easy-to-use hardware and software. It's intended for artists, designers, hobbyists, and anyone interested in creating interactive objects or environments.
Cytat:

polakT,
zabierasz andiemu marzenia o zbudowaniu rakiety kosmicznej i byciu takim ładnym jak w folderze :)

A do rakiety i tak paliwa zabraknie, znany problem.
Weź zacznij normalnie pisać bo od pewnego czasu w ogóle się z Toba nie daje dyskutować - bez względu na temat. Filozofujesz i piszesz jakieś smuty wydymane z palucha.

Czy ktoś pisał o budowaniu rakiety?

Cytat:

Przeczytalem wszystkie podane przez Was informacje, wchodzilem w linki, z linkow w dalsze linki i nie znalazlem odpwoeidzi, jako ze byla tam masa technicznych informacji a nic z tzw. "Jezyka korzysci", wiec zapytam:

Do czego to sluzy?
Platforma do nauki programowania sprzętu, dzięki której można wyczarować wiele ciekawych rzeczy.

pali 16.12.2012 23:34

Mówiłem, że będzie o wolności dla mas? :)

polakT 06.01.2013 08:38

http://kml.jogger.pl/2010/01/03/bied...duino-za-10zl/

Patrix 06.01.2013 23:21

Noszę się już długo zamiarem aby zrobić sobie do auta minikomupterek z Arduino.
Taki sobie czujnik
1) gołoledzi(temp. zew.),
2) temperatury parownika lpg,
3) zarządzanie pracą instalacji lpg poprzez przekaźnik (on/off w zależności od temp. w pkt2),
4) ew alarm niewłączonych, bądź pozostawionych świateł.

To byłaby szybka modułowa robota i trochę kodu C
bez babrania się w termotransfer i wytrawianie, wiercenie, cynowanie programowanie przez LPT...
w zasadzie przez to, że nie jestem elektronikiem lubię gotowe moduły, które można wygodnie programować.

Patrix 13.01.2013 22:53

Coś tam już sobie zamówiłem :) Narazie sama podstawa.

andy 19.01.2013 15:02

Szafka zamykana za pomocą klucza RFID
http://majsterkowo.pl/szafka-w-biurku-zamykana-rfidem/

--
Cytat:

Geneza powstania Timers

Jak każde narzędzie, także biblioteki programistyczne powstają w wyniku jakieś potrzeby usprawnienia pracy programisty. Biblioteka Timers powstała jako część projektu dla Janusza, który ma wspaniałe pomysły na usprawnienie swojego Akwarium. Kiedyś pewnie zamieszczę tu relację z naszych dokonań w tworzeniu gadgetów dla hodowców korali.
Biblioteka była zbyt ciekawa, żeby pozostawić ja "na pastwę" jednego projektu i zaprezentowałem ją wam.
W komentarzach szybko wykryliście jej błędy i pomogliście mi je usunąć, a także rozwinąć z korzyścią dla nas wszystkich. Dziękuję!
Projekt: światło

Ostatnio za sprawą Łukasza Więcek z majsterkowo.pl zostałem polecony Jarkowi z firmy Jarbetal, który miał problem ze zmajstrowaniem automatycznego sterownika oświetlenia.
Założeniem jego projektu było, aby Arduino odbierało stan dziesięciu niezależnych czujników ruchu i sterowało oświetleniem domowym, tak by zapalała się żarówka przy której ktoś przebywa.
Intuicja podpowiadała mu by żarówka świeciła się jeszcze przez jakiś czas od chwili wykrycia osoby.
Zrobienie tego za pomocą podstawowej biblioteki Arduino było dość karkołomnym zadaniem, dlatego Łukasz polecił mu bibliotekę Timers.
http://sprae.jogger.pl/2013/01/17/wi...c-w-arduino-3/

andy 10.03.2013 13:13



Wszystkie czasy w strefie CET. Aktualna godzina: 12:48.

Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2025, vBulletin Solutions Inc.