Arduino හැඳින්වීම — මුල සිට පළමු Blink වැඩසටහන දක්වා
On this page
Arduino යනු ඉලෙක්ට්රොනික් ව්යාපෘති පහසුවෙන් ගොඩනැගීමට ලොව පුරා මිලියන ගණනක් භාවිතා කරන open-source වේදිකාවකි. මෙම ලිපියෙන් Arduino යනු කුමක්ද, එහි ප්රධාන කොටස්, බෝඩ් වර්ග සහ පළමු වැඩසටහන (LED Blink) ලිවීම දක්වා සරල සිංහලෙන් ඉගෙන ගනිමු.
Arduino යනු කුමක්ද?
Arduino යනු microcontroller එකක් මත පදනම් වූ, විවෘත මූලාශ්ර (open-source) ඉලෙක්ට්රොනික් වේදිකාවකි. සරලව කිවහොත් එය කුඩා පරිගණකයක් වැනි පුවරුවක් (board) සහ එයට වැඩසටහන් ලිවීමට භාවිතා කරන මෘදුකාංගයක් (Arduino IDE) යන දෙකේම එකතුවකි.
Arduino බෝඩ් එකකට sensor එකකින් input එකක් (උදා: ආලෝකය, උෂ්ණත්වය, බොත්තමක් එබීම) ලබාගෙන, ඔබ ලියූ වැඩසටහනට අනුව output එකක් (උදා: LED එකක් දැල්වීම, motor එකක් කරකැවීම, display එකක පණිවිඩයක් පෙන්වීම) ලබා දිය හැක.
Open Source වීමේ වාසිය
Arduino ව්යාපෘතියේ hardware නිර්මාණ (circuit diagrams) සහ software යන දෙකම විවෘත මූලාශ්ර ලෙස නොමිලේ ලබා ගත හැක. එහි තේරුම:
- ඕනෑම කෙනෙකුට Arduino බෝඩ් එකක නිර්මාණය බලා, එය තමන්ගේම අවශ්යතාවට වෙනස් කර ගත හැක.
- බලපත්ර (license) ගාස්තු ගෙවීමකින් තොරව බෝඩ් නිෂ්පාදනය හෝ බෙදා හැරීම කළ හැක — ඒ නිසා වෙළඳපොලේ මිල අඩු compatible බෝඩ් රාශියක් තිබේ.
- ලොව පුරා විශාල ප්රජාවක් libraries, tutorials සහ ව්යාපෘති නොමිලේ බෙදා ගනී — ගැටලුවකට උත්තරයක් සොයා ගැනීම ඉතා පහසුය.
ඇයි Arduino තෝරා ගන්නේ?
- සරල බව — ගැඹුරු electronics දැනුමක් නැති අයෙකුට වුවද පැය කිහිපයකින් පළමු ව්යාපෘතිය ක්රියාත්මක කළ හැක.
- නොමිලේ ලැබෙන IDE — Windows, macOS, Linux සඳහා Arduino IDE නොමිලේ; browser එකෙන් වැඩ කරන Cloud Editor එකක්ද ඇත.
- Libraries — sensors, displays, motors වැනි උපාංග දහස් ගණනකට සූදානම් කළ code libraries තිබේ. සියල්ල මුල සිට ලිවීමට අවශ්ය නැත.
- Shields — බෝඩ් එක උඩින් සවි කරන පුළුල් කිරීමේ පුවරු මගින් WiFi, GSM, motor driver වැනි හැකියාවන් පහසුවෙන් එකතු කළ හැක.
- විවිධ බෝඩ් තේරීම — කුඩා wearable ව්යාපෘතියක සිට IoT පද්ධතියක් දක්වා, අවශ්යතාවට ගැලපෙන බෝඩ් එකක් තිබේ.
Arduino UNO බෝඩ් එකේ කොටස්
ආරම්භකයන් වැඩිපුරම භාවිතා කරන බෝඩ් එක Arduino UNO ය. එහි හදවත වන්නේ ATmega328P නම් microcontroller චිපයයි. පහත රූපයේ ප්රධාන කොටස් හඳුනා ගනිමු.
| කොටස | කාර්යය |
|---|---|
| ATmega328P | බෝඩ් එකේ මොළය. ඔබ upload කරන වැඩසටහන ගබඩා වී ක්රියාත්මක වන්නේ මෙහිය. |
| USB Port | පරිගණකයේ සිට code upload කිරීමට සහ 5V බලය ලබා දීමට. |
| Power Jack | USB නොමැතිව 7–12V adapter එකකින් හෝ battery එකකින් බලය දීමට. |
| Digital Pins (0–13) | ON (5V) / OFF (0V) සංඥා යැවීමට හා ලබා ගැනීමට. ~ ලකුණ ඇති pins වලින් PWM (අර්ධ-analog) output ලබා ගත හැක. |
| Analog Pins (A0–A5) | 0V–5V අතර වෙනස් වන sensor අගයන් (0–1023 ලෙස) කියවීමට. |
| Power Pins | 5V, 3.3V, GND, Vin — බාහිර උපාංගවලට බලය සැපයීමට. |
| Reset බොත්තම | වැඩසටහන මුල සිට නැවත ආරම්භ කිරීමට. |
දැනගැනීම වටී: UNO බෝඩ් එකේ digital pin 13 ට බෝඩ් එකේම සවි කර ඇති කුඩා LED එකක් සම්බන්ධයි. ඒ නිසා කිසිම බාහිර උපාංගයක් නොමැතිව පළමු වැඩසටහන අත්හදා බැලිය හැක.
Arduino බෝඩ් වර්ග
Arduino පවුලේ බෝඩ් රාශියක් ඇති අතර, ඒවා භාවිත අරමුණ අනුව ප්රධාන කාණ්ඩ හතරකට බෙදිය හැක:
| කාණ්ඩය | උදාහරණ | සුදුසු අවස්ථා |
|---|---|---|
| ආරම්භක මට්ටම | UNO, NANO, LEONARDO, MICRO | ඉගෙනීමට සහ සාමාන්ය ව්යාපෘතිවලට. ආරම්භකයෙකුට UNO හොඳම තේරීමයි; ඉඩ අඩු ව්යාපෘතිවලට NANO. |
| වැඩි හැකියා | MEGA, PRO, ZERO, DUE | Pins හෝ මතකය වැඩියෙන් ඕනෑ විශාල ව්යාපෘතිවලට (උදා: 3D printer, robot). |
| IoT | YUN, TIAN, MKR series | WiFi / network හරහා අන්තර්ජාලයට සම්බන්ධ වන smart උපකරණවලට. |
| Wearable | LILYPAD, GEMMA | ඇඳුම්වලට මැසිය හැකි, රවුම් හැඩැති බෝඩ් — smart textile ව්යාපෘතිවලට. |
Arduino IDE සහ වැඩ කරන ආකාරය
Arduino IDE යනු Arduino සඳහා code ලියා, compile කර, බෝඩ් එකට upload කරන නොමිලේ ලැබෙන මෘදුකාංගයයි. Windows, macOS සහ Linux සඳහා arduino.cc වෙතින් බාගත හැක.
Arduino වැඩසටහනකට sketch යැයි කියනු ලැබේ. සෑම sketch එකකම ප්රධාන කොටස් දෙකක් ඇත:
setup()— බෝඩ් එක on වූ විට එක් වරක් පමණක් ක්රියාත්මක වේ. Pins සකසන්නේ මෙහිය.loop()—setup()ට පසු නැවත නැවතත් ක්රියාත්මක වේ. ප්රධාන වැඩ කොටස මෙහි ලියයි.
පළමු වැඩසටහන — LED Blink
Arduino ලෝකයේ "Hello World" වැඩසටහන වන්නේ LED එකක් තත්පරයකට වරක් දැල්වීම සහ නිවීමයි. UNO බෝඩ් එකේ pin 13 ට සම්බන්ධ built-in LED එක නිසා අමතර උපාංග අවශ්ය නැත:
// LED Blink — පළමු Arduino වැඩසටහන
void setup() {
// pin 13 output එකක් ලෙස සකසන්න (එක් වරක් පමණි)
pinMode(13, OUTPUT);
}
void loop() {
digitalWrite(13, HIGH); // LED එක දල්වන්න (5V)
delay(1000); // තත්පර 1ක් රැඳී සිටින්න
digitalWrite(13, LOW); // LED එක නිවන්න (0V)
delay(1000); // තත්පර 1ක් රැඳී සිටින්න
}
මෙය upload කළ පසු බෝඩ් එකේ L ලෙස ලකුණු කර ඇති කුඩා LED එක තත්පරයකට වරක් දැල්වී නිවෙනු ඔබට පෙනේවි. එය සාර්ථක නම් — සුබ පැතුම්! ඔබ දැන් Arduino programmer කෙනෙක්.
ඊළඟ පියවර
- බාහිර LED එකක් resistor එකක් (220Ω) සමඟ breadboard එකක සම්බන්ධ කර blink කිරීම.
- බොත්තමකින් (push button) LED එක පාලනය කිරීම.
- Sensor එකකින් (උදා: LDR, DHT11) අගයන් කියවා Serial Monitor එකේ පෙන්වීම.
මේ සඳහා අවශ්ය Arduino බෝඩ්, sensors සහ starter kits ThingerBits Shop එකෙන් ලබා ගත හැක.
