Arduino - puzzle online
Arduino
Arduino – platforma programistyczna dla systemów wbudowanych oparta na prostym projekcie Open Hardware przeznaczonym dla mikrokontrolerów montowanych w pojedynczym obwodzie drukowanym, z wbudowaną obsługą układów wejścia/wyjścia oraz standaryzowanym językiem programowania.
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).
Celem projektu Arduino jest przygotowanie narzędzi – ogólnodostępnych, tanich, niewymagają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.
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 UART 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 współpracują z siecią, 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.
Programowanie odbywa się najczęściej za pośrednictwem Arduino IDE bazującym na projekcie Processing. Sam język programowania Arduino bazuje na Wiring i przypomina język C. Wewnątrz Arduino IDE kod programu jest pośrednio kompilowany przez avr-gcc, a następnie wgrywany do podłączonej płyty Arduino. IDE działa wtedy jako emulator terminala szeregowego, pozwalając na interakcję z pracującym Arduino.
Obecnie układy Arduino bazują na mikrokontrolerach Atmel AVR. Nie jest to formalnym wymogiem i może być rozszerzony, o ile sprzęt i narzędzia będą wspierały język Arduino i zostaną zaakceptowane przez Projekt Arduino. Na rynku istnieje wiele klonów inspirowanych oryginalnym Arduino, bądź kompatybilne z jego rozszerzeniami, takimi jak karty rozszerzeń, jednak rozprowadzanych pod innymi nazwami.
Obecnie sprzedawane są wstępnie zmontowane układy Arduino, jednak cały czas jest dostępny schemat sprzętowy dla tych, którzy chcą zbudować Arduino samodzielnie.
W 2008 roku projekt Arduino otrzymał wyróżnienie w kategorii Digital Communities na Prix Ars Electronica.
Projekt zapoczątkowany został w 2005 roku we Włoszech w celu zbudowania urządzenia kontrolującego studenckie projekty interakcyjne jako tańsza alternatywa dla innych dostępnych wtedy systemów prototypowania. Do października 2008 roku zostało sprzedanych ponad 50 000 sztuk Arduino.