Difference between revisions of "Arduino"

From DiLab
Jump to: navigation, search
([ 16x2 simbolu LCD ekrāns])
 
(50 intermediate revisions by the same user not shown)
Line 1: Line 1:
{{TocRight}}
=Īsumā=
=Īsumā=
Kas tas ir, Arduino?
Kas tas ir, Arduino?


Arduino ir rīks, lai veidotu datorus, kas var sajust ar sensoriem un kontrolēt reālo, fizisko pasauli daudz vieglāk nekā tavs galda dators.
Arduino ir mazi datoriņi, ar ko var veidot nelielas interaktīvas iekārtas, kas var sajust ar sensoriem un kontrolēt reālo, fizisko pasauli daudz vieglāk nekā tavs galda dators.
Arduino ir atvērta pirmkoda fiziskas skaitļošanas platforma, kas balstās uz:
* vienkārša mikrokontroliera moduļa un
* izstrādes vide programmatūras rakstīšanai šim modulim.


Patiesībā Arduino ir vairāk - tā ir [https://www.arduino.cc/ atvērta pirmkoda fiziskas skaitļošanas platforma], kas iekļauj:
* vienkāršs mikrokontroliera modulis - datoriņš (šādu ir vairāki veidi ar dažādām iespējām un izmēriem);
* [https://www.arduino.cc/en/Main/Software izstrādes vide] programmatūras rakstīšanai šim modulim. Tā pieejama dažādām operētājsistēmām: Linux, Windows, OSX.


== Kā sākt ==
=== Kā sākt ===
Jums nepieciešams Arduino modulis, piemēram, Arduino Uno vai līdzīgs, un programmatūra, kas par brīvu pieejama internetā.
Sīkāk varat lasīt zemāk:
* [http://arduino.cc/en/Tutorial/HomePage Pamācība uzsākot]
* [http://arduino.cc/en/Tutorial/HomePage Pamācība uzsākot]
* Kā installēt Arduino Ubuntu vidē [http://blog.opensensors.io/blog/2014/09/13/getting-started-with-arduino-on-linux/ (pamācība)]:
sudo apt-get update && sudo apt-get install arduino arduino-core
* [https://www.arduino.cc/en/tutorial/blink Blink piemērs] - laba pati pirmā programma.


== Resursi ==
= Aparatūra =


Arduino aparatūru var sadalīt vairākās daļās, moduļos, ko var saslēgt kopā, veidojot savu iekārtu:
Platformas:
* '''Pamatmoduļi''' ir iekārtas ar procesoru, kurš ir programmējams un ir Arduino "smadzenes".
* [http://arduino.cc/ Arduino] - Aparatūras un programmatūras platforma
* '''Aktuatori''' ir iekārtas, kas ietekmēt pasauli, piemēram, motoriņi, kas dzen robotu uz priekšu. Pie aktuatoriem pieder arī '''LED''' spīddiodes un dāžādi LED vai LCD ekrāni ir iekārtas, kas var rādīt informāciju, piemēram, dodot gaismu vai ar attēlu.
* [[Image:TinkerKit.jpg|thumb|TinkerKit]] [http://store.arduino.cc/category/16 TinkerKit] - ērti pieslēdzami sensori Arduino platformai
* '''Sensori''' ļauj mērīt, sajust pasauli. Piemēram, mērot temperatūru, vai gaismas intensitāti. Pie sensoriem varētu pieskaitīt arī slēdžus un pogas, ko lietotāji var nospiest dodot kādu komandu Arduino sistēmai.
* [[Image:Arduino.Sandbox.jpg|thumb| SparkFun Digital Sandbox]] [https://www.sparkfun.com/products/12651 SparkFun Digital Sandbox] - platforma ar iebūvētiem sensoriem un projektu programmu.
* '''Komunikācija''' - tie ir moduļi, kas ļauj Arduino sazināties ar citiem datoriem, tai skaitā galda datoriem, viedtālruņiem, serveriem un citiem Arduino. Dažādi moduļi nodrošina dažādus saziņas veidus, piemēram, pa WiFi, Bluetooth, ZigBee, Ethernet, vai citu bezvadu vai vadu kanālu.
* '''Komplekti''' ir jau gatavs dažādu pamatmoduļu, aktuatoru, sensoru, un citu moduļu kopums, no kuriem var veidot dažādas iekārtas un sistēmas, vai nu mācību vai citā nolūkā.


== Projektu idejas ==
* [http://playground.arduino.cc/Projects/Ideas Projektu idejas] @arduino
* Projekti un pamācības [https://learn.adafruit.com/category/learn-arduino par Arduino @ Adafruit]


==Pamatmoduļi==


Pamatmodulis ir modulis ar mikrokontrolieri, ko iespējams programmēt un kam iespējams pieslēgt citas iekārtas un sensorus, piemēram, spīddiodes, termometrus, motoriņus, u.c.
Zemāk ir daži no tiem:


{| border=1 cellspacing=0 cellpadding=4
=Specifikācija=
|-
Arduino Uno:
! Nosaukums
* Takts frekvence: 16MHz
! Izskats
* RAM: 2KB
! Pinout
! Komentāri
|-
|
==== [https://www.arduino.cc/en/Main/ArduinoBoardUno Arduino Uno] ====
|
[[Image:ArduinoUno.jpg|thumb|Arduino Uno]]
|
[[Image:ArduinoUno_pinout.jpg|thumb|Pinout
[http://marcusjenkins.com/wp-content/uploads/2014/06/ARDUINO_V2.pdf (PDF)]
]]
|
Viens no pirmajiem Arduino moduļiem. Vienkāršs un ērts lietošanā.
* [https://www.arduino.cc/en/uploads/Main/Arduino_Uno_Rev3-schematic.pdf Shēma (Rev3)]


|-
|
==== [https://learn.sparkfun.com/tutorials/pro-micro--fio-v3-hookup-guide/hardware-overview-pro-micro Arduino Micro Pro] ====
|
[[Image:ArduinoMicroPro.jpg|thumb|Arduino Micro Pro]]
|
[[Image:ArduinoMicroPro_pinout.jpg|thumb|Pinout
[https://cdn.sparkfun.com/r/600-600/assets/9/c/3/c/4/523a1765757b7f5c6e8b4567.png (PNG)]
]]
|
Maza izmēra Arduino modulis, daļēji savietojams ar Leonardo moduli.
Micro USB saite programmēšanai un komunikācijai.
Var emulēt USB klaviatūru vai peli ar attiecīgu programmatūru.
* NB: uzlādējot jaunu skeču, jānospiež Reset (jāsavieno ar zemi) lai USB pārslēgtos no lietotnes uz programmēšanas režīmu.
* Ir divas versijas: 5V 16MHZ un 3.3V 8MHz.
* [http://cdn.sparkfun.com/datasheets/Dev/Arduino/Boards/SparkFun_Pro_Micro_v13a.pdf Shēma v1.3 (Sparkfun)]
* [http://www.electrodragon.com/w/images/d/da/Pro-Micro-v11-5V_B.pdf Shēma v1.1]

|-
|}

==Aktuatori un ekrāna moduļi==


{| border=1 cellspacing=0 cellpadding=4
|-
! Nosaukums
! Izskats
! Komentāri
|-
|
==== [LED] ====
Parasts LED piemērs
|
[[Image:LED_arduino.jpg|thumb|LED]]
|
LED spīddiodes ir pieslēdzamas pie GPIO portiem cair rezistoru, lai ierobežotu strāvu un nenodedzinātu Arduino.

Gandrīz visiem Arduino pamatmodulim ir pieejams LED, ko var ieslēgt un izslēgt.
Zemāk doti porta numuri sekojošiem Arduino:
* #13 - Uno,
* #17 - Micro Pro

Resursi:
* [https://www.arduino.cc/en/tutorial/blink Blink piemērs] (sāc te!)
* [http://playground.arduino.cc/Code/LED LED bibliotēka]
|-
|
==== [ 8x8 LED Matrica] ====
Ar 72xx kontrolieri!
|
[[Image:8x8LED_MAX7219.jpg|thumb| 8x8 LED matrica ar MAX7219]]
|
8x8 matricu ērti kontrolet modulī, kurā ir LED kontrolieris. Tas ļauj rakstīt uz LED matricu caur SPI maģistrāli kā atmiņā, reģistros, kur katrai rindai ir sava adrese, un katrs LED ir viens no 8 bitiem šajā adresē. Kontrolieri paasti ir MAX7219 vai MAX7221.

* [http://playground.arduino.cc/Main/LEDMatrix LED matricas un Arduino, apraksts]
* [http://playground.arduino.cc/Main/MAX72XXHardware MAX72xx kontrolieru lietojums ar Arduino, aparatūra]
* [http://pdfserv.maxim-ic.com/en/ds/MAX7219-MAX7221.pdf MAX72xx datasheet]
* [[Arduino::LEDControl | LEDControl bibliotēka]]
|-
|
==== [ 16x2 simbolu LCD ekrāns] ====
Reizēm pazīstams kā 1602 LCD Screen
|
[https://uk.farnell.com/powertip/pc1602lrs-hwb-h-q/lcd-module-16x2-stn-led-e-temp/dp/1602985 LCD Display 1602]
|
* Programmējams izmantojot [https://docs.arduino.cc/libraries/liquidcrystal/ LiquidCrystal bibliotēku]
|-
|}

==Sensori==
{| border=1 cellspacing=0 cellpadding=4
|-
! Nosaukums
! Izskats
! Komentāri
|-
|
==== [http://playground.arduino.cc/Main/MPU-6050 MPU-6050 (GY-521)] ====
3D akselerometrs un žiroskops
|
[[Image:GY521.jpg|thumb|GY-521]]
|
3D akselerometrs un 3D žiroskops. Abi pieslēgti ar I2C maģistrāli.
* [http://playground.arduino.cc/uploads/Main/MPU6050-V1-SCH.jpg shēma]


|-
|
==== [http://www.electroschematics.com/11291/arduino-dht22-am2302-tutorial-library/ DHT22 (AM2302)] ====
temperatūras un gaisa mitruma sensors
|
[[Image:DHT22.jpg|thumb| DHT22 (AM2302)]]
|
DHT22 (AM2302) temperatūras un gaisa mitruma sensors.
* [http://www.electroschematics.com/11291/arduino-dht22-am2302-tutorial-library/ lietošana]
* [http://www.electroschematics.com/wp-content/uploads/2015/02/DHT.rar bibliotēka]
|-
|}

==Komunikācija==
{| border=1 cellspacing=0 cellpadding=4
|-
! Nosaukums
! Izskats
! Komentāri
|-
|
<!--
==== [Bluetooth] ====
|
[[Image:Bluetooth_ard.jpg|thumb|Bluetooth]]
|
Bluetooth komunikācija
*
|-
|
-->
==== [http://www.adafruit.com/products/1469 Adafruit CC3000] ====
WiFi komunikācijas modulis
|
[[Image:cc3000_ada.jpg|thumb| Adafruit CC3000]]
|
Adafruit CC3000 modulis nodrošina komunikāciju ar WiFi kanāliem.
* [https://learn.adafruit.com/adafruit-cc3000-wifi Lietošana]
|-
|
==== [https://arduino-info.wikispaces.com/Nrf24L01-2.4GHz-HowTo nRF24L01] ====
|
[[Image:nrf24L01_ard.jpg|thumb|nRF24L01+]]
|
nRF24L01 komunikācijas modulis vienkāršai zema enerģijas patēriņa komunikācijai 2.4GHz diapazonā.
* NB! Barošana ir 3.3V (nevis 5V). Datu signāli ir 5V savietojami.
* [http://playground.arduino.cc/InterfacingWithHardware/Nrf24L01 Interfacing with hardware: Nrf24L01]
* [https://arduino-info.wikispaces.com/file/view/24L01Pinout-800.jpg/243330999/24L01Pinout-800.jpg Pinout]
* [http://www.nordicsemi.com/eng/content/download/2726/34069/file/nRF24L01P_Product_Specification_1_0.pdf nRF24L01+ datasheet]
* [http://wiki.lijun.xyz/misc-nrf24-ble.html Daļēja BLE emulācija]
* Bibliotēkas:
** [https://github.com/maniacbug/RF24 maniacbug:RF24]
** [https://github.com/tmrh20/RF24 TMRh20/RF24], [http://tmrh20.github.io/RF24/ Dokumentācija]
** [http://www.airspayce.com/mikem/arduino/RadioHead/index.html RadioHead]
|-
|}

==Komplekti==
{| border=1 cellspacing=0 cellpadding=4
|-
! Nosaukums
! Izskats
! Komentāri
|-
|
==== [http://store.arduino.cc/category/16 Tinkerkit] ====
|
[[Image:TinkerKit.jpg|thumb|TinkerKit]]
|
Komplekts ar Arduino moduļiem, TinkerKit vairogiem, sensoru un aktuatoru moduļiem, ko ērti pievienot Arduino TinkerKit vairogam.

|-
|

==== [https://www.sparkfun.com/products/12651 SparkFun Digital Sandbox] ====
|
[[Image:Arduino.Sandbox.jpg|thumb| SparkFun Digital Sandbox]]
|
Arduino savietojama platforma ar iebūvētiem sensoriem un projektu programmu.
|-
|}

= Programmatūra =
Arduino IDE vidi programmatūras (sketču) rakstīšanai un ielādēšanai bieži var uzinstalēt jau no operētājsistēmas, piemēram, Ubuntu Linux to dara pavisam vienkārši:
sudo apt-get install arduino

Bet ja tā nevar, vai arī vēlaties uzinstalēt pašu jaunāko versiju, tad ieteicams iet uz [https://www.arduino.cc/en/Main/Software Arduino portālu].

== Kopdarbs ar Scratch ==
Ir iespējams veidot programmas [https://scratch.mit.edu/ MIT Scratch] vidē, ko izpilda Arduino aparatūra ar tai pievienotajiem sensoriem un iekārtām.
Viens no risinājumiem ir lietot [https://github.com/MrYsLab/s2a_fm s2a - Scratch to Arduino].

Pirms tam gan vajadzēs instalēt Python un [https://github.com/MrYsLab/PyMata PyMata] kas nodrošina komunikāciju ar Arduino pa seriālo portu.

= Projektu idejas =
* [http://playground.arduino.cc/Projects/Ideas Projektu idejas] @arduino.cc
* Projekti un pamācības [https://learn.adafruit.com/category/learn-arduino par Arduino @ Adafruit]
* [[LEGO_LED]]


=Noderīga informācija=
=Noderīga informācija=
* [http://arduino.cc/ Arduino] - Aparatūras un programmatūras platforma
* [http://arduino.cc/en/Main/arduinoBoardUno Tehniskā informācija]
* [http://arduino.cc/en/Main/arduinoBoardUno Tehniskā informācija]
* [http://www.instructables.com/id/Arduino-Projects/ Projekti ar Arduino]
* [http://www.instructables.com/id/Arduino-Projects/ Projekti ar Arduino]

Latest revision as of 17:22, 24 October 2024

Īsumā

Kas tas ir, Arduino?

Arduino ir mazi datoriņi, ar ko var veidot nelielas interaktīvas iekārtas, kas var sajust ar sensoriem un kontrolēt reālo, fizisko pasauli daudz vieglāk nekā tavs galda dators.

Patiesībā Arduino ir vairāk - tā ir atvērta pirmkoda fiziskas skaitļošanas platforma, kas iekļauj:

  • vienkāršs mikrokontroliera modulis - datoriņš (šādu ir vairāki veidi ar dažādām iespējām un izmēriem);
  • izstrādes vide programmatūras rakstīšanai šim modulim. Tā pieejama dažādām operētājsistēmām: Linux, Windows, OSX.

Kā sākt

Jums nepieciešams Arduino modulis, piemēram, Arduino Uno vai līdzīgs, un programmatūra, kas par brīvu pieejama internetā. Sīkāk varat lasīt zemāk:

sudo apt-get update && sudo apt-get install arduino arduino-core

Aparatūra

Arduino aparatūru var sadalīt vairākās daļās, moduļos, ko var saslēgt kopā, veidojot savu iekārtu:

  • Pamatmoduļi ir iekārtas ar procesoru, kurš ir programmējams un ir Arduino "smadzenes".
  • Aktuatori ir iekārtas, kas ietekmēt pasauli, piemēram, motoriņi, kas dzen robotu uz priekšu. Pie aktuatoriem pieder arī LED spīddiodes un dāžādi LED vai LCD ekrāni ir iekārtas, kas var rādīt informāciju, piemēram, dodot gaismu vai ar attēlu.
  • Sensori ļauj mērīt, sajust pasauli. Piemēram, mērot temperatūru, vai gaismas intensitāti. Pie sensoriem varētu pieskaitīt arī slēdžus un pogas, ko lietotāji var nospiest dodot kādu komandu Arduino sistēmai.
  • Komunikācija - tie ir moduļi, kas ļauj Arduino sazināties ar citiem datoriem, tai skaitā galda datoriem, viedtālruņiem, serveriem un citiem Arduino. Dažādi moduļi nodrošina dažādus saziņas veidus, piemēram, pa WiFi, Bluetooth, ZigBee, Ethernet, vai citu bezvadu vai vadu kanālu.
  • Komplekti ir jau gatavs dažādu pamatmoduļu, aktuatoru, sensoru, un citu moduļu kopums, no kuriem var veidot dažādas iekārtas un sistēmas, vai nu mācību vai citā nolūkā.


Pamatmoduļi

Pamatmodulis ir modulis ar mikrokontrolieri, ko iespējams programmēt un kam iespējams pieslēgt citas iekārtas un sensorus, piemēram, spīddiodes, termometrus, motoriņus, u.c. Zemāk ir daži no tiem:

Nosaukums Izskats Pinout Komentāri

Arduino Uno

Arduino Uno
Pinout (PDF)

Viens no pirmajiem Arduino moduļiem. Vienkāršs un ērts lietošanā.

Arduino Micro Pro

Arduino Micro Pro
Pinout (PNG)

Maza izmēra Arduino modulis, daļēji savietojams ar Leonardo moduli. Micro USB saite programmēšanai un komunikācijai. Var emulēt USB klaviatūru vai peli ar attiecīgu programmatūru.

  • NB: uzlādējot jaunu skeču, jānospiež Reset (jāsavieno ar zemi) lai USB pārslēgtos no lietotnes uz programmēšanas režīmu.
  • Ir divas versijas: 5V 16MHZ un 3.3V 8MHz.
  • Shēma v1.3 (Sparkfun)
  • Shēma v1.1

Aktuatori un ekrāna moduļi

Nosaukums Izskats Komentāri

[LED]

Parasts LED piemērs

LED

LED spīddiodes ir pieslēdzamas pie GPIO portiem cair rezistoru, lai ierobežotu strāvu un nenodedzinātu Arduino.

Gandrīz visiem Arduino pamatmodulim ir pieejams LED, ko var ieslēgt un izslēgt. Zemāk doti porta numuri sekojošiem Arduino:

  • #13 - Uno,
  • #17 - Micro Pro

Resursi:

[ 8x8 LED Matrica]

Ar 72xx kontrolieri!

8x8 LED matrica ar MAX7219

8x8 matricu ērti kontrolet modulī, kurā ir LED kontrolieris. Tas ļauj rakstīt uz LED matricu caur SPI maģistrāli kā atmiņā, reģistros, kur katrai rindai ir sava adrese, un katrs LED ir viens no 8 bitiem šajā adresē. Kontrolieri paasti ir MAX7219 vai MAX7221.

[ 16x2 simbolu LCD ekrāns]

Reizēm pazīstams kā 1602 LCD Screen

LCD Display 1602

Sensori

Nosaukums Izskats Komentāri

MPU-6050 (GY-521)

3D akselerometrs un žiroskops

GY-521

3D akselerometrs un 3D žiroskops. Abi pieslēgti ar I2C maģistrāli.


DHT22 (AM2302)

temperatūras un gaisa mitruma sensors

DHT22 (AM2302)

DHT22 (AM2302) temperatūras un gaisa mitruma sensors.

Komunikācija

Nosaukums Izskats Komentāri

Adafruit CC3000

WiFi komunikācijas modulis

Adafruit CC3000

Adafruit CC3000 modulis nodrošina komunikāciju ar WiFi kanāliem.

nRF24L01

nRF24L01+

nRF24L01 komunikācijas modulis vienkāršai zema enerģijas patēriņa komunikācijai 2.4GHz diapazonā.

Komplekti

Nosaukums Izskats Komentāri

Tinkerkit

TinkerKit

Komplekts ar Arduino moduļiem, TinkerKit vairogiem, sensoru un aktuatoru moduļiem, ko ērti pievienot Arduino TinkerKit vairogam.

SparkFun Digital Sandbox

SparkFun Digital Sandbox

Arduino savietojama platforma ar iebūvētiem sensoriem un projektu programmu.

Programmatūra

Arduino IDE vidi programmatūras (sketču) rakstīšanai un ielādēšanai bieži var uzinstalēt jau no operētājsistēmas, piemēram, Ubuntu Linux to dara pavisam vienkārši:

sudo apt-get install arduino

Bet ja tā nevar, vai arī vēlaties uzinstalēt pašu jaunāko versiju, tad ieteicams iet uz Arduino portālu.

Kopdarbs ar Scratch

Ir iespējams veidot programmas MIT Scratch vidē, ko izpilda Arduino aparatūra ar tai pievienotajiem sensoriem un iekārtām. Viens no risinājumiem ir lietot s2a - Scratch to Arduino.

Pirms tam gan vajadzēs instalēt Python un PyMata kas nodrošina komunikāciju ar Arduino pa seriālo portu.

Projektu idejas

Noderīga informācija