# Arduino

| Arduino
 |
| --- |
|  |
|  |
| **firmao pri teknologio entrepreno open source microcontroller (en)**  |
| **Dum** | nekonata - nekonata/nuntempe
 |
| **Agokampo** | Arduino IDE • Arduino IDE Pro
 |
| **TTT** | Oficiala retejo
 |
|  |

"Arduino Uno", revizio 3
**Arduino** estas unuop-tabula mikroregilo, intencante fari la aplikon de interagaj objektoj aŭ medioj pli facila. La hardvaro enhavas liberkodan hardvarotabulon desegnitan ĉirkaŭ 8-bit Atmel AVR mikroregilo, aŭ 32-bit Atmel ARM. Nuntempaj versioj trajtas unu USB-interfacon, 6 analogajn enmetajn pinglojn, kaj 14 ciferecajn enigajn kaj eligajn pinglojn, kiuj ebligas la uzantojn alkroĉi diversajn etendigajn tabulojn.

Enkondukite en la jaro 2005, la Arduino platformo estas desegnita por doni al hobiistoj, studentoj kaj fakuloj unu malmultekostan kaj facilan vojon krei aparatojn, kiuj interagas kun siaj medioj, uzantajn siajn sentilojn kaj aktuatorojn. Komunaj ekzemploj por komencantoj, hobiistoj enhavas simplajn robotojn, termostatojn kaj agodetektilojn. Ĝi kunportas simplan integritan disvolvan medion (angle IDE), kiu iras sur regulaj personaj komputiloj kaj ebligas uzantojn verki programerojn por Arduino per C aŭ C++.

Nuntempe la tabuloj de Arduino kostas ĉirkaŭ €20 aŭ $27, kaj ĝiaj similaj klonoj ĝis malmulte je $9. Arduino tabuloj povas aĉetiĝi antaŭ-asemblite aŭ kiel ilaro memfarebla. La informo de hardvara fasonado estas dispona por tiuj, kiuj intencas asembli Arduinon per siaj manoj. Estas taksite en mezo de la jaro 2011, ke pli ol 300,000 oficialaj Arduino produktiĝis komerce, kaj en la jaro 2013, ke 700,000 oficialaj tabuloj estas en manoj de la uzantoj.

## Historio

Arduino komenciĝis en 2005 kiel projekto por studentoj en la Interaga Desegna Instituto Ivrea en urbo Ivrea, Italio. Tiam la studentoj de la projekto uzis $100 kostan "*BASIC Stamp*", kiu rigardiĝis multekosta por studentoj. S-ro Massimo Banzi, unu el la fondintoj, instruis en Ivrea.

Unu tezo, fare de Hernando Barragan, studento en Kolombio, kontribuiĝis pri desegno de dratado. Post kompletigo de la dratuma platformo, la esplorantoj laboras por ĝia malplipeziĝo, plimalmultekostiĝo, kaj dispono al la komunumo de liberkodo. La instituto finfine fermiĝis, do la esplorantoj, unu el ili David Cuartielles, promociis la ideon.

La nuntempa prezo estas ĉirkaŭ $30 kaj la similaj klonoj nur $9. Unu simpla Arduino Mini Pro klono eble disponas je $4 el Ĉinio.

## Hardvaro

>>Ĉi tiu sekcio bezonas aldonajn citaĵojn por verifikado. Bonvolu helpi plibonigi ĉi tiun artikolon per aldono de citaĵoj al fidindaj fontoj. Senfonta materialo povus esti kontestata kaj forigata.

Oficiala Arduino Uno kun priskriboj de la lokoj de la enigaj/eligaj klemoj
Frua Arduino tabulo kun RS-232 seria interfaco (supre maldekstre) kaj Atmel ATmega8 mikrokontrolila ĉipo (nigra, malsupre dekstre); la 14 ciferecaj eniraj/eliraj ŝtopilingoj estas lokigataj supre kaj la ses analogaj enigaj ŝtopilingoj malsupre dekstre.
Arduino-tabulo konsistas el Atmel 8-bit AVR mikroregilo kun komplementaj moduloj por faciligi programadon kaj enkorpigon en aliajn cirkvitojn. Grava aspekto de la Arduino estas la norma maniero laŭ kiu konektiloj estas subtenataj, ebliganta la CPU-tabulon esti konektata al sortimento de interŝanĝeblaj aldonaj moduloj konataj kiel ŝildoj. Kelkaj ŝildoj komunikas kun la Arduino-tabulo rekte per variaj pingloj, sed multaj ŝildoj estas individue adreseblaj per I²C seria buso, ebliganta ke multaj ŝildoj estas stakigataj kaj uzataj paralele. Oficialaj Arduinoj uzis la megaAVR-serion de blatoj, specife la ATmega8, ATmega168, ATmega328, ATmega1280, kaj ATmega2560. Manpleno de aliaj procesoroj estis uzataj de Arduino-kongruaĵoj. La plej multaj tabuloj inkludas 5 voltan linearan reguligilon kaj 16 MHz kristalan oscililon (aŭ ceramikan resonatoron en kelkaj variaĵoj), kvankam kelkaj fasonoj kiel la LilyPad kuras sur 8 MHz kaj rezignas pri la surtabula tensia reguligilo pro specifaj form-faktoraj restriktoj. Arduino-a mikroregilo estas ankaŭ antaŭprogramita kun praŝargilo, kiu simpligas la alŝutadon de programoj al la surblata fulmomemoro, komparata kun aliaj aparatoj, kiuj tipe bezonas eksteran programilon. Tio igas uzadon de Arduino pli facila ebligante la uzon de ordinara komputilo kiel programilo.

Je koncepta ebeno, se uzanta la Arduino-an programaran stakon, ĉiuj tabuloj estas programataj per seria konekto RS-232, sed la maniero laŭ kio tio estas realigata varias laŭ hardvara versio. Seriaj Arduino-tabuloj enhavas nivelŝovan cirkviton por konverti inter RS-232-nivelaj kaj TTL-nivelaj signaloj. Aktualaj Arduino-tabuloj estas programataj per USB, realigataj per USB-al-seriaj adaptilaj blatoj kiel la FTDI FT232. Kelkaj variaĵoj, kiel la Arduino Mini kaj la neoficiala Boarduino, uzas forpreneblan USB-al-serian adaptilan tabulon aŭ kablon, Bluetooth aŭ aliajn metodojn. (Se uzata kun tradiciaj mikroregulilaj ilaroj anstataŭ la Arduino IDE, norma AVR ISP programado estas uzata.)

La Arduino-tabulo disponigas la plej multajn el la mikroregulilaj I/O-pingloj por uzado per aliaj cirkvitoj. La Diecimila, Duemilanove, kaj aktuala Uno provizas 14 ciferecajn I/O-pingilojn, el kiuj ses povas produkti pulso-larĝe modulatajn signalojn, kaj ses analogajn enigojn. Ĉi tiuj pingloj estas sur la supro de la tabulo, per inaj 0.10-colaj (2.5 mm) ĉapoj. Multaj konektaj aplikaj ŝildoj estas ankaŭ komerce akireblaj.

La Arduino Nano, kaj Arduino-kongruaj Bare Bones Board kaj Boarduino tabuloj povas provizi virajn ĉapajn pinglojn sur la subflanko de la tabulo por esti konektata en nelutitajn prototipajn tabulojn.

Ekzistas multaj Arduino-kongruaj kaj Arduino-derivitaj tabuloj. Kelkaj estas funkcie ekvivalenta al Arduino kaj povas esti uzataj interŝanĝeble. Multaj estas la baza Arduino kun la aldono de kutimaj eligaj aparataj peliloj, ofte por uzo en lernej-nivela edukado por simpligi la konstruon de beboĉaretoj kaj malgrandaj robotoj. Aliaj estas elektre ekvivalentaj sed ŝanĝas la form-faktoron, kelkfoje ebliganta la kontinuan uzon de ŝildoj, kelkfoje ne. Kelkaj variaĵoj uzas komplete malsamajn procesorojn, kun variaj niveloj de kongrueco.

### Oficialaj tabuloj

 Pli detalaj informoj troveblas en artikolo Listo de Arduino-tabuloj kaj kongruaj sistemoj.
La origina Arduino hardvaro estas produktata de la Itala kompanio *Smart Projects*. Kelkaj Arduino-branded tabloj estis fasonitaj de la Amerika kompanio SparkFun Electronics. Dek ses versioj de la Arduino hardvaro estis komerce produktitaj ĝisdate.

* Ekzemplaj Arduino tabuloj
* Arduino Diecimila in Stoicheia
* Arduino Duemilanove (rev 2009b)
* Arduino Uno
* Arduino Leonardo
* Arduino Mega
* Arduino Nano
* Arduino Due (ARM-based)
* LilyPad Arduino (rev. 2007)

### Ŝildoj

Arduino kaj Arduino-kongruaj tabuloj uzas *ŝildojn* (angle *shields*) — printitajn cirkvitajn ekspansiajn tabulojn, kiuj ŝtopiĝas en la normale provizitajn Arduino-pinglarojn. Ŝildoj povas provizi motorajn kontrolilojn, GPS, Eterreton, LCD, aŭ prototipadon. Nombro de ŝildoj ankaŭ povas esti farata mem.

* Ekzemplaj Arduino ŝildoj
* Pluraj ŝildoj povas esti stakigataj. En ĉi tiu ekzemplo la supra ŝildo enhavas senlutadan prototipan tabulon.
* Ŝraŭbklema ŝildo en alo-tipa formato.
* *Adafruit Motor Shield* kun ŝraŭbklemoj por konektado al motoroj.
* *Adafruit Datalogging Shield* kun kompletiga fendo por SD kaj real-tempa horloĝa blato.

## Softvaro

| Arduino-softvaro IDE
 |
| --- |
| Ekrankopio de la Arduino IDE montranta la programon "Blink", simpla programo por komencantoj |
|  |
| Ekrankopio de la Arduino IDE montranta la programon "Blink", simpla programo por komencantoj
 |
| Lasta stabila versio
 | 1.0.5 (15-a de majo 2013)
 |
| Lasta testa versio
 | 1.5.6-r2 Beta (21-a de februaro 2014)
 |
| Operaciumo
 | Plursistema
 |
| Programlingvo
 | C, C++, JavaScript, asembla lingvo, MicroPython
 |
| Permesilo
 | LGPL or GPL licenco
 |
| Retejo
 | arduino.cc |
|  |

La en Arduino inkluzivita integrita disvolva medio estas plursistema aplikaĵo skribita en Java, kaj estas derivita el la IDE por la Procesa programada lingvo kaj la Dratadaj projektoj (angle *Wiring projects*). Ĝi estas designita por enkonduki programadon al artistoj kaj aliaj novuloj, kiuj ne konas softvaran programadon. Ĝi inkludas kodan redaktilon kun funkcioj kiel sintaksa emfazado, krampo-pariĝo, kaj aŭtomata krommarĝeno, kaj estas ankaŭ kapabla al kompilado kaj alŝutado de programoj sur la tabulon per unuopa kliko. Programo aŭ kodo skribita por Arduino estas nomata angle "sketch".

Arduino-programoj estas skribataj en C aŭ C++. La Arduino-IDE venas kun programa biblioteko nomata "Wiring" el la originala Wiring project, kiu faras multajn komunajn enigajn/eligajn operaciojn multe pli facila. Uzantoj devas nur difini du funkciojn por igi irebla cyclic executive programon:

* `setup()`: funkcio kuras unufoje je la starto de programo kiu povas inicializi agordojn
* `loop()`: funkcio vokata ripete ĝi la tabulo malŝaltiĝas

Tipa unua programo por mikroregilo simple blinke ŝaltas kaj malŝaltas LED. En la Arduino-ĉirkaŭaĵo, la uzanto povas skribi programon kiel la jenan:

Surfacomuntitaj icujoj (*surface mounted devices, SMD* en la angla), inter ili flava LED.

```
# define LED\_PIN 13

void setup () {
 pinMode (LED\_PIN, OUTPUT); // Aktivigi pinglon 13 por cifereca eligo
}

void loop () {
 digitalWrite (LED\_PIN, HIGH); // Ŝalti LED
 delay (1000); // Atendu unu sekundon (1000 milisekundojn)
 digitalWrite (LED\_PIN, LOW); // Malŝalti LED
 delay (1000); // Atendu unu sekundon
}

```

Estas trajto de plej multaj Arduino-tabuloj, ke ili havas LED kaj ŝarĝo-rezistancon konektitan inter stifto 13 kaj maso; konvena funkcio por multaj simplaj testoj. La antaŭa kodo ne estus vidata de norma C++ kompililo kiel valida programo, tiel se la uzanto klakas la "Alŝutu al I/O-tabulo" (angle "Upload to I/O board") butonon en la IDE, kopio de la kodo estas skribata al dumtempa dosiero kun kroma inkluda kaplinio je la komenco kaj tre simpla main() funkcio je la fino, por fari el ĝi validan C++ programon.

La Arduino IDE uzas la GNU toolchain kaj AVR Libc por kompili programojn, kaj uzas avrdude por alŝuti programojn sur la tabulon.

Ĉar la Arduino-platformo uzas Atmel-mikroregilojn, Atmel's development environment, AVR Studio aŭ la pli nova Atmel Studio, povas ankaŭ esti uzataj por evolui softvaron por la Arduino.

## Evoluo

Arduino estas liberkoda hardvaro: la Arduino-hardvaraj referencaj fasonoj estas distribuataj sub Creative Commons Attribution Share-Alike 2.5 licenco kaj estas akireblaj sur la Arduino retpaĝaro. Aranĝo kaj produktaj dosieroj por kelkaj versioj de la Arduino-hardvaro estas ankaŭ akireblaj. La fontokodo por la IDE estas akirebla kaj eldonita sub la GNU General Public License, versio 2.

Kvankam la hardvaro kaj programara fasonoj estas libere akireblaj sub copyleft licencoj, la programistoj petis ke la nomo "Arduino" estu ekskluziva al la oficiala produkto kaj ne estu uzata por derivaj verkoj sen permeso. La oficiala strategia dokumento pri la uzo de la nomo Arduino emfazas ke la projekto estas malferma por enkorpigi verkon de aliaj en la oficialan produkton. Multaj Arduino-kongruaj produktoj komerce eldonataj evitis la nomon "Arduino" uzante nomo-variantojn je "-duino".

## Aplikaĵoj

Vidu ankaŭ: Listo de projektoj de libera hardvaro

* Xoscillo: malfermfonta/libera osciloskopo
* Scienca ekipaĵo
* Arduinome: MIDI kontrolilo, kiu imitas la Monome-interfacon
* OBDuino: surborda komputilo, kiu uzas la surpanelan diagnozan interfacon troveblan en la plej multaj modernaj aŭtoj
* *The Humane Reader and Humane PC* de Humane Informatics: malmultekostaj elektronikaj aparatoj kun televida eligo (angle *TV-out*), kiuj povas teni kvin mil librajn bibliotekojn (t.e. eksterretaj Vikipediaj kompilaĵoj) sur microSD karto
* Ardupilot: *drone* softvaro / hardvaro
* ArduinoPhone

## Akcepto

La Arduino-projekto ricevis honorarian mencion en la *Digital Communities category* je la 2006 Prix Ars Electronica.

## Referencoj

## Vidu ankaŭ

* Ĉefkarto
* Kromkarto
* Komparado de unuop-tabulaj komputiloj
* Arduino-kongrua hardvaro
	+ Netduino
	+ Simplecortex
	+ Spark Core
* Arduino-kongrua softvaro
	+ Fritzing
	+ Minibloq

## Eksteraj ligiloj

* Oficiala retejo
* *Arduino The Documentary* en Interreta filma datumbazo (angle), YouTube, Vimeo
* Dokumento pri arduino, *Wired Magazine* (itale/angle)
* Kiel instali kromajn arduinajn bibliotekojn?
* Arduina gvidfolio
* Arduino Projects, Ekzemploj de Arduino projektoj
* Diagramoj pri konektado de Arduino-tabuloj: Due Arkivigite je 2013-02-12 per la retarkivo Wayback Machine, Esplora, Leonardo, Mega, Micro, Mini, Uno
* Evoluo arbo pri Arduino
* *Arduino Stack Exchange* Retadreso por demando kaj respondo.

Ŝablono:Mikrokontroliloj
Ŝablono:Ĉirkaŭa inteligenteco