Arduino

El Vikipedio, la libera enciklopedio
Saltu al: navigado, serĉo
"Arduino Uno", revizio 3

Arduino estas unuop-tabula mikroregilo, intencante fari la aplikon de interagaj objektoj aŭ medioj pli facila.[1] 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 diĝitalajn 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 agodetektivilojn. Ĝi kunportas unu 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,[2] kaj en la jaro 2013, ke 700,000 oficialaj tabuloj estas en manoj de la uzantoj.[3]

Historio[redakti | redakti fonton]

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.[4]

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.[4]

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

Hardvaro[redakti | redakti fonton]

>>Ĉ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[8] 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[redakti | redakti fonton]

Loupe.svg Pli detalaj informoj troveblas en la artikolo Listo de Arduino-tabuloj kaj kongruaj sistemoj.

La origina Arduino hardvaro estas produktata de la Itala kompanio Smart Projects.[9] Kelkaj Arduino-branded tabloj estis fasonitaj de la Amerika kompanio SparkFun Electronics.[10] Dek ses versioj de la Arduino hardvaro estis komerce produktitaj ĝisdate.

Ŝildoj[redakti | redakti fonton]

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.[11][12][13]

Softvaro[redakti | redakti fonton]

Arduino-softvaro IDE
Ekrankopio de la Arduino IDE montranta la programon "Blink", simpla programo por komencantoj

Arduino.png

Ekrankopio de la Arduino IDE montranta la programon "Blink", simpla programo por komencantoj
Lasta stabila versio 1.0.5 (15-a de majo 2013[14])
Lasta testa versio 1.5.6-r2 Beta (21-a de februaro 2014)
Operaciumo Plursistema
Permesilo LGPL or GPL licenco
Retejo arduino.cc
v  d  r
Information icon.svg

La en Arduino integrita programada medio (IDE) 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".[15]

Arduino-programoj estas skribataj en CC++. 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:[16]

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.[16] 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.[17][18]

Evoluo[redakti | redakti fonton]

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.[19]

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.[20] Multaj Arduino-kongruaj produktoj komerce eldonataj evitis la nomon "Arduino" uzante nomo-variantojn je "-duino".[21]

Aplikaĵoj[redakti | redakti fonton]

Vidu ankaŭ: Listo de projektoj de libera hardvaro

Akcepto[redakti | redakti fonton]

La Arduino-projekto ricevis honorarian mencion en la Digital Communities category je la 2006 Prix Ars Electronica.[25][26]

Vidu ankaŭ[redakti | redakti fonton]

Referencoj[redakti | redakti fonton]

  1. Official slogan. Arduino Project. Alirita 2013-12-31.
  2. How many Arduinos are "in the wild?" About 300,000. Adafruit Industries (15-a de Majo 2011). Alirita 2013-05-26.
  3. Arduino FAQ – With David Cuartielles. Malmö University (April 5, 2013). Alirita 2014-03-24.
  4. 4,0 4,1 4,2 David Kushner (26-a de Oktobro 2011). “The Making of Arduino”, IEEE Spectrum. 
  5. Assembling the Really Bare Bones Board (RBBB) Arduino clone (16-a de Aŭgusto 2008).
  6. Arduino Pro Mini.
  7. eBay posting for a very cheap ArduinoPro Mini clone - there are many similar ones (Marto 2014).
  8. Hardware Index. Arduino Project. Alirita 2013-12-10.
  9. Smart Projects
  10. Schmidt, M. ["Arduino: A Quick Start Guide"], Pragmatic Bookshelf, 22-a januaro 2011, Pg. 201
  11. "Arduino breadboard shield: US$10 & 10 mins". todbot.com
  12. Igoe, Tom (April 4, 2006). "Arduino Shields for Prototyping". tigoe.net
  13. Jonathan Oxer. Arduino Shield list. Alirita 5-a de Novembro 2013.
  14. Arduino Software Release Notes. Arduino Project. Alirita May 31, 2013.
  15. Programming Arduino Getting Started with Sketches. McGraw-Hill (8-a de Novembro 2011). Alirita 2013-03-28.
  16. Using Atmel Studio for Arduino development. Megunolink.com. Alirita 2013-01-18.
  17. Using AVR Studio for Arduino development. Engblaze.com. Alirita 2013-01-18.
  18. The arduino source code. The arduino source code.
  19. Policy. Arduino.cc. Alirita 2013-01-18.
  20. Freeduino Open Designs. Freeduino.org. Alirita 2008-03-03.
  21. xoscillo – A software oscilloscope that acquires data using an arduino or a parallax (more platforms to come). – Google Project Hosting. Code.google.com. Alirita 2013-01-18.
  22. Pearce, Joshua M. 2012. "Building Research Equipment with Free, Open-Source Hardware". Science 337 (6100): 1303–1304. (open access)
  23. ArduinoPhone. Instructables.com (2013-07-17). Alirita je 2013-08-04.
  24. Prix Ars Electronica 2006 – Digital Communities – ANERKENNUNGEN – listing (germane). Alirita 2009-02-18.
  25. Prix Ars Electronica 2006 – Digital Communities – ANERKENNUNGEN – description (germane). Alirita 2009-02-18.
  26. Spark Core. Spark.io alirdato je la 6-a junio de 2014

Eksteraj ligiloj[redakti | redakti fonton]

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