Arduino පාඩම 3 - LDR හා Variable resistor මගින් ලැබෙන දත්ත Serial monitor තුලදී කියවීම.

7:58 AM 7 Comments

Arduino එකට බාහිරින් input ලබාදිය යුතු අවස්ථාවලදී ඒ සඳහා  විවිධ උපකරණ යොදාගැනීමට සිදු වනවා, input ලබාදීමේදී ඒ සඳහා අවශ්‍ය කරන උපකරණ කරනු ලබන නිර්මාණය අනුව වෙනස් වනවා. input ලබාදීමේදී වඩාත් ප්‍රයෝජනවත් වන උපකරණ දෙකක් වශයෙන් LDR හා Variable resistor හැදින්විය හැක.
LDR හා Variable resistor යන ද්විත්වයම වෙනස් වන විද්‍යුත් ප්‍රතිරෝධ සහිත උපාංගයි. එනම් එවැනි ප්‍රතිරෝධයකට අවම ප්‍රතිරෝධය ලෙස 0 ohm ද උපරිම ප්‍රතිරෝධය ලෙස එහි සදහන් වන ප්‍රතිරෝධය ද ලබා දිය හැකි අතර Variable resistor එකක් නම් එය කැරකැවීමෙන් ඒ අතර මැද අගයක් ඇති ප්‍රතිරෝධයකුත් LDR එකක් නම් ඒ මතට වැටෙන් ආලෝකයේ තීව්‍රතාව වෙනස් කිරීමෙන් ඒ අතර මැද අගයක් ඇති ප්‍රතිරෝධයකුත් ලබාදිය හැක.

කෙසේ වෙතත් LDR එකක් නම් බොහෝවිට එහි අවම ප්‍රතිරෝධය 0 ohm හා උපරිම ප්‍රතිරෝධය අනන්තය ලෙස සදහන් වනවා. LDR එකමතට වැටෙන් ආලෝකයේ තීව්‍රතාව (එළිය) වැඩිවත්ම එහි ප්‍රතිරෝධය අඩු වන  අතර ආලෝකයේ තීව්‍රතාව අඩුවත්ම එහි ප්‍රතිරෝධය වැඩිවේ.

මෙහිදී මම බලපොරොත්තු වන්නේ LDR\Variable resistor මගින් ලැබෙන දත්ත Serial monitor තුල ප්‍රින්ට් කිරීමයි.  ඒ සදහා Serial Print භාවිතා කිරීම කිරීම පිළිබඳව සලකා බලමු.

Serial Print භාවිතා කිරීම.

Serial monitor තුල යමක් ප්‍රින්ට් කිරීමට අදාල මූලික කෝඩ් එක පහත පරිදි වේ.

void setup() {
Serial.begin(9600);
}
void loop() {
 Serial.println(අගය හෝ වැකිය);
}

 setup කොටස තුල ලියා ඇති Serial.begin(9600); යන්නෙන් කෙරෙන්නේ වැඩසටහන  ආරම්භයේදීම Serial communicaton ආරම්භ කරන අතර එහි වේගය තත්පරයට bit 9600 ලෙස සැකසීමයි.

Serial communicaton මගින් Arduino එක USB මාර්ගයෙන් computer එකහා සම්බන්ධ කර වෙනත් වැඩසටහනක් මාර්ගයෙන් පාලනය කල හැකි අතර වෙනත් Serial communicaton සදහා සහය දක්වන වෙනත්  module/shield හා සම්බන්ධ කර ඒව අතර සන්නිවේදන මාර්ගයක් ගොඩනගා ගැනීමට උපකාරීවේ. එසේම Serial monitor එක හරහා විවිධ Output ප්‍රින්ට් කරගත හැකි අතර Arduino වෙත Input ලබාදීමද මේ හරහා සිදුකර ගත හැක.

මෙහි loop කොටස තුල ලියා ඇති Serial.println(අගය හෝ වැකිය); කෙරෙන්නේ Serial monitor තුල ඔබ ලබාදෙන අගය හෝ  වැකිය පේලියෙන් පේලියට පහලට ප්‍රින්ට් කිරීමයි.


Serial monitor තුල අගයක් print කිරිම.

මෙහි Serial monitor තුල 300 යන්න print කිරිමට අවශ්‍ය යැයි සිතමු. ඒ සදහා කෝඩ් එක පහත පරිදි වේ.

void setup() {
Serial.begin(9600);
}
void loop() {
 Serial.println(300);
}

මෙහිදී loop එක ක්‍රියාත්මක වන වාරයක් පාසා 300 යන්න ප්‍රින්ට් වේ.


Serial monitor වචනයක් අගයක් print කිරිම.

මෙහි Serial monitor තුල Computer යන්න print කිරිමට අවශ්‍ය යැයි සිතමු. ඒ සදහා කෝඩ් එක පහත පරිදි වේ. මෙහිදී වඩාත් සැලකිලිමත් විය යුතු කරුන වන්නේ වචනයක් හෝ වැකියක් ප්‍රින්ට් කරන විට එය "" සලකුණු තුල ලිවීමයි.

void setup() {
Serial.begin(9600);
}
void loop() {
 Serial.println("Computer");
}

මෙහීදි Serial.println("Computer"); ලෙස ලියා  ඇති නිසා Computer යන්න පහලට ප්‍රින්ට් වේ.

නමුත් මෙහිදී Serial.print("Computer"); ලෙස ලියුවහොත්  Computer යන්න ඉදිරියට ප්‍රින්ට් වේ.


Circuit Diagram



Arduino Code

ඉහත පරිදි circuit (දෙකෙන් ඕනෑම එකක්) එක සදාගැනීමෙන් පසු පහත කෝඩ් එක ලියා Ardunio වෙත Upload කරන්න. Circuit Diagram දෙකටම කෝඩ්  එක පහත පරිදි වේ.

void setup() {
Serial.begin(9600);
}
void loop() {
 Serial.println(analogRead(A0));
}

 setup කොටස තුල ලිaයා ඇති Serial.begin(9600); යන්නෙන් කෙරෙන්නේ වැඩසටහන  ආරම්භයේදීම Serial communicaton ආරම්භ කරන අතර එහි වේගය තත්පරයට bit 9600 ලෙස සැකසීමයි.
මෙහි loop කොටස තුල ලියා ඇති Serial.println(analogRead(A0)); කෙරෙන්නේ Serial monitor තුල A0 පින් එකෙන් ලැබෙන අගයන් ප්‍රින්ට් කිරීමයි.

මෙහිදී data input pin එක ලෙස analog pin එකක් භාවිත කර  ඇත්තේ LDR හා Variable resistor යන දෙකටම උපරිම හා අවම අගයන්ට අමතරව ඒ අතර පරාසයේ විචලනය වන ප්‍රතිරෝධ අගයන් ඇති නිසාය. එවිට වෝල්ටීයතාව 0 හා 5 පමණක් නොව 0 හා 5 අතර වන අනෙක් අගයන්ද ලැබේ. එවිට එම අගයන් කියවීම සදහා analog pin එකක් යොදා ගත යුතුය.


කෝඩ් එක Upload කල පසුව Serial monitor  එක විවෘත කර අදාල අගයන් බැලිය හැක.

Arduino පාඩම 2 - Analog write function භාවිතය.

12:20 PM 18 Comments
ඕනෑම Arduino Board එකක ප්‍රධාන වශයෙන් pin වර්ග 2 ක් තියෙනවා. එනම් Analog හා Digital pin ය. මෙහි digital පින් නැවතත් කොටස් 2 කට බෙදෙනවා එනම් PWM පහසුකම ඇති හා නැති යනුවෙන්. සාමාන්‍යයෙන් PWM පහසුකම ඇති pin ඉදිරියෙන් ~ සලකුණ යොදා ඇති අතර Arduino UNO board එකක මෙවැනි පින් 6 ක් තිබෙනවා.

සාමාන්‍ය Digital output එකකින් ලබා ගත හැක්කේ 0V හා 5V යන අවස්ථා 2 ක පමණයි. එය උදාහරණයකින් දැක්වුවහොත් සාමාන්‍ය Digital output එකකින් කල හැක්කේ LED එකක් දැල්වීම හා නිවා දැමීම පමණයි. 

නමුත් මෙම PWM(Pulse With Modulation)  පහසුකම ඇති පින් එකක විශේෂත්වය වන්නේ LED බල්බයක දීප්තිය අඩුවැඩි කිරීමට (LED fade) මෙම PWM පින් යොදාගත් හැක. එසේම කුඩා DC Motor එකක වේගය පාලනයටද මෙය යොදා ගත හැක.


LED fade කිරීම.

ඒ සදහා පහත පරිදි පරිපථය සාදාගන්න


අනතුරුව පහත කෝඩ් කොටස Arduino වෙත Upload කරන්න.

void setup() {
 pinMode(3,OUTPUT);
 analogWrite(3,200);
}
void loop() {
}

මෙහි Loop කොටස තුල කිසිවක් ලියා නොමැත්තේ වැඩසටහන ධාවනය වන අතරතුර අගයන් වෙනස් නොකරන බැවිනි.

මෙහි 2 වන පේලියේදී සිදු කර ඇත්තේ 3 වන පින් එක output pin එකක් වශයෙන් යොදා ගන්නා බව Arduino board එකට දන්වා සිටීමයි. 
3 වන පේලියේ සිදු කර ඇත්තේ 3 වන පින් එකෙහි අගය 200 ලෙස සැකසීමයි. මේ සදහා 0 ත් 255 ත් අතර ඕනෑම අගයක් යෙදිය හැක. 0 න් 0V යන්නත් 255 න් 5V යන්නත් අදහස් වේ. ඒ මෙහි 200 යෙදීමෙන් +3.92 V  විභවයක්  3 පින් එක හරහා ලබා ගත  හැක.

මෙම Output volatage එක පහත පරිදි ගණනය කළ හැක.

Output volatage = (5/255)*200 = 3.92 V

වැදගත්

PWM පින් එකක්දී සිදුවෙන්නේ සැබවින්ම voltage එකේ අඩු වැඩි වීමක් නම් නෙමෙයි. එතනදී සිදුවෙන්නේ 
5v හා 0v විචලනය වීමේ සංඛ්‍යාතය වෙනස් කිරීමයි. නමුත් මෙම ක්‍රියාවලියේ ප්‍රතිඵලය voltage එකෙහි අඩු වැඩි වීමක අනුරූපයි.
උදාහරණයක් විදිහට කිව්වොත් එහෙම උඩ මම ගණනය කරල තියෙන voltage එක use කරල LED එකක් පත්තු කලොත් LED එකේ ලැබෙන දීප්තිය analogwrite(200) දැම්මහම එනවා. නමුත් මෙතන්දී ඇත්තටම 3.92v output එකක් නම් එන්නේ නෑ.

පහල තියෙන video එක බලන්නකො

Motor Speed control කිරීම.

ඒ සදහා පහත පරිදි පරිපථය සාදාගන්න
image source : instructables.com

මේ සඳහා පහත කොටස් අවශ්‍ය වේ.

TIP 120 Transistor
1k Ohms Resistor
IN 4004 Diode
1mF Capasitor

අනතුරුව පහත කෝඩ් කොටස Arduino වෙත Upload කරන්න.
void setup() {
 pinMode(11,OUTPUT);
 analogWrite(11, 200);
}
void loop() {
}

මෙහි කේත පැහැදිලි කිරීම ඉහත පරිදිම වේ.

මෙහි 200 වෙනුවට වෙනත් අගයන් යෙදීමෙන් වෙනස් වේග වලින් මෝටරය කැරකැවිය හැක.

ප්‍රශ්නයක් තියෙනවනම් අහන්න.


WPF VB.net පාඩම 9 - Solid colours භාවිතය.

12:32 PM Add Comment


මෙවර පාඩම් මාලවෙන් ඉදිරිපත් කෙරෙන්නේ WPF තුලදී Solid Colours භාවිතා කරන ආකාරයයි. WPF Application තුලදී WinForm Application තුලට වඩා දක්න ඇති විශේෂත්වය වන්නේ විවිධ Colours(Solid/Gradient) හා Visual Effect (ඉදිරියේදී සාකච්ඡා කරන්නම්) භාවිතා කිරීමට ඇති හැකියාවයි. ඕනෑම IDE එකකදී මෙන්ම WPF තුලදීද Colours භාවිතා කිරීම අවස්ථා 2 කදී සිදු කල හැක. එනම් Design mode එක හා Run time mode එක තුලයි.

Design Mode එක තුලදී  Colours භාවිතය.

Design mode එකතුලදී Colours භාවිතය සත්‍ය වශයෙන්ම යම් කිසි Control එකකට අදාලව Colour property සැකසීමයි. WPF තුලදී වර්ණ භාවිතය Winform තුලදී වර්ණ භාවිතයෙන් වෙනස් වන්නේ මෙතැනදීය. මක්නිසාද යත් Winform තුලදී  මෙන් නොව  එනම් Design Mode එක තුලදී  Colours භාවිතය ඉතාම පහසුවෙන් ඕනෑම කෙනෙකුට  Properties Window එක යොදාගෙන සිදු කලහැක. එබැවින් මා මෙම ලිපිය තුලදී ඒ පිළිබඳව දීර්ඝ වශයෙන් විස්තර කිරීමට බලාපොරොත්තු නොවේ.

Runtime mode එක තුලදී Solid Colours භාවිතය.

එක් නිශ්චිත වර්ණයක් ලබාදීම.

මේ සදහා පළමුව නව WPF Project එකක් Open කර Window එක මතට Rectangle එකක් සහ Button එකක් ලබා ගෙන එහි Properties පහත පරිදි සකසා ගන්න.
Rectangle Name = rtg

Button Name = btn
        Content = Change To Red

මෙහිදී සිදු කිරීමට අදහස් කරන්නේ Button එක Click කල විට Rectangle හි Fill colour එක රතු පැහැ කිරීමය. සඳහා Button එකෙහි Click ඉවෙන්ට් එකතුල පහත පරිදි කෝඩ් ලිවිය යුතුය.
 rtg.Fill = Brushes.Red
මෙහි සිදු කර ඇත්තේ Rectangle හි Fill එක Red ලෙස සැකසීමයි.

Slider මගින් Colour වෙනස් කිරීම

මේ සඳහා Slider 3 ක් Window වෙතට ලබාගෙන එහි properties පහත පරිදි සැකසිය යුතුය.
Slider1 Name = sldR
Maximum = 255

Slider2 Name = sldG
Maximum = 255

Slider3 Name = sldB
Maximum = 255

අනතුරුව ඉහත එක් එක් Silder එකෙහි ValueChanged event එක තුල පහත කෝඩ් කොටස ලිවිය යුතුය.

rtg.Fill = New SolidColorBrush(Color.FromRgb(sldR.Value, sldG.Value, sldB.Value))

මෙහිදී sldR.Value, sldG.Value, sldB.Value ලෙස යොදා ඇත්තේ අදාල වර්ණයට අදාල RGB value එකයි.

Color Dialog භාවිතය.

මේ සඳහා පළමුව Color Dialog එක ඇති dll file එක Project එක තුලට ඇතුලත් කර ගත යුතුය. ඒ සදහා Solution Explorer තුලදී Project එකෙහි නම මත Right click කර ලැබෙන මෙනුව තුලින් Add>Reference හරහා ගොස් Reference Manager වින්ඩෝව තුලට පිවිස ඒ තුලින් System.Windows.Form යන්න තෝරා Ok කල යුතුය. අනතුරුව කෝඩ් වින්ඩෝව වෙත පිවිස Class MainWindow යන්නට ඉහළින් පහත කෝඩ් කොටස ලිවිය යුතුය.

Imports System.Windows.Forms



දැන් Colour Dialog එක ඇති dll file එක Project එක තුලට ඇතුල් වී ඇත.
මීළගට Window එක මතට නව Button එකක් ලබාගෙන ඉහි Properties පහත පරිදි සකසා ගන්න.

Button Name = btnDialog
        Content = Select Color

අනතුරුව Button එකෙහි Click එවෙන්ට් එක තුල පහත කෝඩ් කොටස ලියන්න

        Dim dialog As New ColorDialog
        Dim brush As New SolidColorBrush
        dialog.ShowDialog()
        brush.Color = Color.FromRgb(dialog.Color.R, dialog.Color.G,dialog.Color.B)
        rtg.Fill = brush


Download Project file here

ප්‍රශ්න තියෙනවානම් කමෙන්ට් කරන්න............!

Arduino පාඩම 1 : Arduino මූලිකාංග සහ LED Blink කිරීම

8:14 PM 21 Comments


Arduino programming ගැන කතා කරන විට එය ප්‍රධාන වශයෙන් කොටස් දෙකකින් යුතූ වෙනවා එනම් Circuit Design හා Programming ලෙසයි. Circuit Design ගැන සදහන් කරන්නට මත්තෙන් Arduino board එකෙහි කොටස් පිළිබඳව මනා අවබෝධයක් තිබීම වැදගත් වෙනවා. එමනිස Arduino code ලිවීමට ප්‍රථම Arduino හි කොටස් හදුනා ගනිමු.

Arduino Hardware parts

පහත රූපයේ දැක්වෙන්නේ Arduino UNO boa
rd එකක Hardware කොටස් ය.

USB Plug - Arduino එක පරිගනකය හා සම්බන්ධ කිරීමට හා Arduino වෙත විදුලිය සැපයීමට භාවිතා කරයි.

External Power - USB සම්බන්ධතා වයකින් විදුලිය සැපයීමට නොහැකි විට මෙය භාවිතා කල හැක. මෙහිදී ලබාදිය යුතු අවම වෝල්ටීයතාව 7 v වන  අතර උපරිම වෝල්ටීයතාව 12 v වේ.

Ground Pin - විදුලි සැපයුමෙහි (-) අග්‍රය වේ.

Atmega 328 microcontroller - Arduio UNO board එකෙහි හදවත වේ. මෙහි 32KB Memory යකින් යුතුවන අතර 16 MHz වේගයකින් යුතු  වනවා. UNO board එකෙහි ඇත්තේ Atmega 328 microcontroller එක වූවත් Arduino මාදිලියෙන් මාදිලියට මෙහි ඇති microcontroller වෙන වනවා.

Serial Programmer - වෙනත් Arduino board එකක් හෝ වෙනත් microcontroller එකක් programme කිරීමට යොදාගැනීමට හැක.

Pins - ඕනෑම Arduino board එකක් තුල ප්‍රධාන වශයෙන් Pin වර්ග 2 ක් තිබෙනවා, එනම් Analog හා Digital Pin ලෙසයි.

මෙහි Analog pin භාවිත වන්නේ VR එකක value එකක් වැනි ප්‍රතිසමව විචලනය වන දත්තයක් Arduino වෙත input කිරීම සදහායි. තවත් උදාහරණයකින් කියනවානම් ඕනෑම ඉලෙක්ට්‍රොනික පරිපථයකට හදුනා ගත හැක්කේ 1 හා 0 අවස්ථා පමණි. මෙහි 1 යන්නෙන් 5V යන්නත් 0 යන්නෙන් 0V යන්නත් නිරූපණය වනවා, නමුත් යම් හෙයකියින් 3v වැනි 0 ත් 5 ත් අතර අගයක් ලබාදීමට අවශ්‍ය නම් ඒ සදහා යොදා ගත යුත්තේ මෙම Analog pin ය.

මෙහි Digital Pin භාවිත වන්නේ දිවිමය ලෙස විචලනය වන දත්ත Input හා Output කිරීමටයි. උදාහරණයක් වශයෙන් LED එකක් නීවීම දැල්වීම වැනි Digital output සදහාද, බාහිර ස්විචයක් On/Off කිරීම වැනි Digital input හදුනාගැනීමට භාවිතා වන්නේ මෙම Digital Pin ය.

Digital Pin තුල ඇති තවත් කාණ්ඩයක් වන්නේ Digital PWM( pulse with modulation) pin ය. මෙම හැකිaයාව ඇති සෑම Pin එකක් ඉදිරියෙන්ම "~" සලකුණ යොදා තිබෙනවා. මෙහි ඇති විශේෂත්වය වන්නේ මෝටරයක වේගය පාලනය, බල්බයක එලිය අඩුවැඩි කිරීම වැනි කාර්යයන් සඳහා යොදා ගත හැකි වීමයි.
එසේම Arduino UNO Bord එකෙහි ඇති Analog pin 6 හා Digital Pin 14 ම Digital Output pin ලෙස භාවිතා කිරීමට හැක.

LED Blink කරමු.

Arduino Programming හි ඇති කරුණු අවබෝධ කරගැනීම සදහා LED Blink කිරීමට අදාල Arduino code ලියමු.
මේ සදහා පළමුව Arduino bord එක USB cable එක මගින් පරිගණකය හා සම්බන්ධ කර අනතුරුව Arduino software එක Run කරන්න.
දැන් Arduino software හි File > New හරහා ගොස් නව ව්‍යාපෘතියක් අරඹන්න. එහිදි පහත පරිදි කෝඩ් කොටසක් දැක ගත හැක.

void setup() {
  // put your setup code here, to run once:
}
void loop() {
  // put your main code here, to run repeatedly:
}

 Arduino වැඩසටහනක් ක්‍රියාත්මක වීමට ඉහත මුලික කෝඩ් කොටස තිබීම අනිවාර්ය වේ.
ඉහත පළමු void setup() { හා } යන්නට මැදි වනසේ ලියන ඕනෑම කෝඩ් කොටසක් Arduino වෙත විදුලිය සැපයූ සැනින් එක් වරක් පමණක් ක්‍රියාත්මක වේ. නැතිනම් Reset button එක ඔබන වාරයක් පාසා නැවත ක්‍රියාත්මක වේ.

නමුත් මෙහි ඇති  // put your setup code here, to run once: යන්න ක්‍රියාත්මක නොවන්නේ එය කමෙන්ට් එකක් බවට පත්කර ඇති නිසාවෙනි. කමෙන්ට් එකක් යනු වැඩසටහන තුලදී ලියූ කෝඩ් හදුනා ගැනීමට තබන සටහනකි. Arduino තුලදී ඕනෑම වාක්‍යයක් කමෙන්ට් එකක් බවට පත් කිරීම  සදහා වාක්‍යයට ඉදිරියෙන් // ලකුණ යෙදිය යුතුය.

 මෙහි void loop() { හා } යන්නට මැදි වනසේ ලියන ඕනෑම කෝඩ් කොටසක් Arduino වෙත විදුලිය සැපයූ සැනින් ක්‍රියාත්මක වේ.  නමුත් මෙහි ඇති විශේෂත්වය වන්නේ Setup තුල  ලියන කෝඩ් මෙන් නොව loop එක තුල ලියන කෝඩ් කොටසක් වරක් මුල සිට අගට ක්‍රියාත්මක වූ පසු විදුලිය සපයා තිබෙන තාක් නොන්වත්වාම කෝඩ් කොටස මුල  සිට අගට ක්‍රියාත්මක වීමයි.

LED Blink කිරීමට අදාල circuit එක සැදීම.

මේ සඳහා කල යුත්තේ LED ගෙන එහි ධන අග්‍රය Arduino හි 13 වන Digital pin එකට සම්බන කිරීම හා එහි අනෙක් අග්‍රය Ground pin එකකට සම්බන කිරීම පමණි.

කෝඩ් ලියන ආකාරය අවබෝධ කරගැනීමට LED Blink කිරීමට අදාල කෝඩ් එකක් ලියමු.

ඒ සඳහා ලබාගත් නව project එකෙහි පහත පරිදි කෝඩ් ලියන්න. (Arduino හී භාවිත වන්නේ C++ භාෂාවය, මෙය අක්ෂර සංවේදී පරිගනක භාෂාවකි. එබැවින් කෝඩ් ලිවීමේදී simple හා capital අකුරු මාරු කර නොයොදන්න)

void setup() {
  pinMode(13, OUTPUT);
}
void loop() {
  digitalWrite(13, HIGH);
  delay(1000);          
  digitalWrite(13, LOW);  
  delay(1000);            
}

මෙහිදී 3 වන පේළියේ ලියා තිබෙන කෝඩ් කොටසින් කෙරෙන්නේ LED Blink කිරීමට යොදාගන්නේ කුමන Pin එකද යන්නත් එය යොදා ගන්නෙ කුමන කාර්යයක් සදහාද යන්න හදුන්වා දීමයි. මෙහි pinMode(13, OUTPUT); යන්නෙන් කියවෙන්නේ 13 වන Digital pin එක Output එකක් ලෙස යොදා ගන්නා බවයි.

මෙහි 5 වන පේලියෙන් සිදු කෙරෙන්නේ 13 Pin එකෙහි voltage එක 5v සැකසීමයි. HIGH යන්නෙන් 5V ද LOW යන්නෙන් 0V ද කියවේ. මෙහි delya(1000); යන්න මගින් ඊට පහලින් ඇති කෝඩ් කොටස ක්‍රියාත්මක වීම තත්පර 1 ක් ප්‍රමාද කරයි. මෙහි delay යන්නෙහි 1000 ලෙස සදහන් කර ඇත්තේ මිලි තත්පර 1000 ක් යන්නයි. මිලි තත්පර 1 යනු තත්පරයෙන් 1000 න් පංගුවකි.
එනම් මෙහිදී තත්පර 1 ක් LED ය දල්වා තබන අතර තත්පර 1 ක් LED ය නිවා දමයි.

බොර්ඩ් එක වෙත Code upload කිරීම

මේසදහා සැකසුම් කිහිපයක්  සිදුකල යුතුය.
Tools > Bord හරහා ගොස් ඔබ යොදාගන්නා Board එක තෙරිය යුතුය.
Tools > Port හරහා ගොස් Arduino එක සවිකර එති com port එක තෙරිය යුතුය.
අනතුරුව Sketch > Upload හරහා ගොස් Code එක Upload කල  යුතුය.


Arduino පාඩම - Arduino පිළිබද මූලික හැදින්වීම

Arduino පාඩම - Arduino පිළිබද මූලික හැදින්වීම

4:56 PM 11 Comments

හුග කාලෙකට පස්සෙ සොෆ්ට්වෙයලන්තය අපි ඔයාලව හම්බවෙන්නෙ අලුත් පාඩම් මාලාවක් අරගෙන.  මෙ තැන් සිට ඔයාලට කියලා දෙන්න හදන්නේ  Arduino  එක්ක ඉලෙක්ට්‍රොනික් වැඩ කරන හැටි. මේ පාඩම් මාලාව මෙතැන් සිට ඉදිරියට සැකසෙන්නේ  Arduino  ගැන කිසිම දෙයක් දන්නේ නැති කෙනෙකුට උනත් ඉතාම පහසුවෙන තෙරුම් ගන්න පුලුවන් වෙන විදිහටයි. සියල්ලට ප්‍රථමයෙන් අපි  Arduino යනු කුමක්ද යන්න විමසා බලමු.

 Ardunio  යනු කුමක්ද ?

සරලවම කියනවානම්  Arduino  කියන්නේ Open source electronic development platform එකක්. තව ටිකක් වෙනස් විදිහකට කියනවානම්  PIC Programming වගේ, නමුත්  PIC Programming වලට වඩා පහසුවෙන් ඉතාම සංකීර්ණ නිර්මාණ කරන්න පුළුවන්. උදාහරණයක් විදිහට කියනවනම්  LED bulb එකක් දැල්වෙන නිවෙන අවස්ථාවේ ඉදලා ඉතාම සංකීර්ණ මට්ටමෙ රොබෝ කෙනෙක් වැනි සංකීර්ණ ව්‍යාපෘති පවා ඉතාම පහසුවෙන් නිර්මාණය කරගන්න පුළුවන්.
තවවිදිහක උදාහරණයකින් පැහැදිලි කරනවානම් ඔබට ඔබ සාදන ඉලෙක්ට්‍රොනික පරිපථය පරිගණකය හා සම්බන්ධ කිරීමට අවශ්‍ය වූයේ යැයි සිතන්න. එසේනම්  Arduino bord  එකත් සමග ලැබෙන USB cable එක යොදාගෙන ඉතාම පහසුවෙන් පරිගණකය හා සම්බන්ධ කලහැක. එසේම යම් හෙයකින් ඔබ සාදන පරිපථයට Touch screen display එකක් එක් ඉරීමට අවශ්‍ය වූයේයැයි සිතන්න. ඒ සදහා ඔබට අවශ්‍ය වන්නේ Arduino  වෙනුවෙන් නිපදවා තිබෙන  Touch screen module එකක් පමණි.
මේ අකාරයෙන් Arduino bord එකක් වෙනත්  Shield හා Module යොදාගෙන සංකීර්ණ පරිපථ පහසුවෙන් සාදාගත හැක.

මොනවද මේ Shiled හා Module කියන්නේ ?

Shiled හා Module කියලා නම් දෙකකින් හැදින්වූවාට Arduino තුලදී මේ වචන දෙකටම ලැබ්න්නේ බොහෝeවිට එකහා සමාන අදහසක්. Shiled එහෙම නැත්නම් Module කියන්නේ Arduino තුලදී යම්  යම් විශේෂිත කාර්යයන් පහසුකර ගැනීමට ඒ වෙනුවෙන්ම නිපදාවා තිබෙන පරිපථ සමූහයකටයි. ඇතැම් Shiled/Module කෙලින්ම  Ardunio bord එක මතට සවිකිරීමට නිපදවා තිබෙන අතර, ඇතැම් ඒවා බාහිරින් වයර් යොදාගෙන Arduino bord එක මතට සවිකරගත යුතු වෙනවා. උදාහරණයක් ලෙස පහත කරුණු විමසා බලන්න.

පරිපථය WiFi හා සම්බන්ධ කිරීමට - WiFi Module
Touch Screen එකක් සම්බන්ධ කිරීමට - TFT Touch screen module
GPS  හා සම්බන්ධ කිරීමට - GPS Moule
පරිපථය Internet හා සම්බන්ධ කිරීමට - Ethernet shield

මේ ආකාරයෙන් Arduino හා විවිධ Module යොදාගනිමින් ඉතාම සංකීර්ණ කාර්යයන් සදහා වූ ඉලෙක්ට්‍රොන පරිපථ පහසුවෙන් සාදා ගැනීමට හැකියාව ලැබෙනවා.

Arduino එකට Shiled එකක් සම්බන්ධ කරන අවස්ථාවක්.

Arduino සමගින් පරිපථ නිර්මාණයට අවශ්‍ය මොනවාද ?

1. Arduino board එකක්.
2. Bread bord + Jumper cabels
3. Arduino Software හා එය ධාවනය කල හැකි පරිගණකයක්.
4. Pay Pal + eBay account එකක්. (අත්‍යවශ්‍ය නොවේ.)

1. Arduino Bord

Arduino සමඟ වැඩ කිරීමට අවශ්‍ය ප්‍රධාන උපාංගය තමයි Arduino board එක කියන්නේ. ඇත්තටම original Arduino bord හදන සමාගම Arduino bord හදලා තියෙන්නේ ඇමරිකාවට, ඇමරිකාවෙන් පිට රට වල් සදහා නිපදවා තිබෙන්නේ Genuino නම් board එකක්. එනම් ඔබට යම් හෙයකින් මවු සමාගම මගින් නිපදවන Arduino bord එකක් ඇනවුම් කිරීමට අවශ්‍ය වූයේ යැයි සිතන්න. එවිට ඔබ සිටින්නේ ඇමෙරිකාවෙන් පිට නම් ඔබ ඇනවුම් කල යුත්තේ Genuino Bord එකකුයි. මෙහි නම් වල ඇති වෙනස් කම හැරුන කොට ක්‍රියාකාරීත්වයේ වෙන්සක් දක්නට නොලැබේ. නමුත් මා ඉ සදහන් කල පරිදි Arduino යනු Open source bord බැවින් මවූ සමාගම නොවන වෙනත් සමාගම් Ardunio bord නිෂ්පාදනය කරන අතර එමනිසා ඇමෙරිකාවෙන් පිට රටවලටත් Ardunio bord ලබා ගැනීමට හැකියාව් ලැබීතිබෙනව. කෙසේ වෙතත් මේ වන විට විවිධ මාදිලි වලින් Arduino bord මිලිදී ගැනීමට තිබෙනවා.

උදාහරණ වශයෙන් : Arduino UNO, Arduino Mega, Ardunio Nano, Arduino Pro mini, Arduino Lily pad, Arduino 101, Arduino Primo, Arduino YUN ..... දැක්විය හැක.
විවිධ Arduino bord වර්ග කිහිපයක්

නමුත් මෙයින් බහුලවම භාවිතයට ගැනෙන්නේ  Arduino UNO හා Arduino Mega යන දෙවර්ගයයි. මේ අතරින් ආධුනිකයෙකුට වඩාතs්ම සුදුසු වන්නේ Arduino UNO bord එකයි. එබැවින් මෙතැන් සිට මෙම පාඩම් මාලාවේ වැඩි බර තැබෙන්නේ Arduino UNO ආශ්‍රිත පරිපථ පිළිබඳව යි. නමුත් වෙන මාදිලි වලින්ද මෙහි ඉදිරිපත් කරන පරිපථ එකසේ ක්‍රියාත් කිරීමට පුළුවන.

කොහොමද Arduino Bord මිලදී ගන්නේ ? ලංකාවෙන් ගන්න වනම් Lankatronic, Unitech ඇතුළු ප්‍රසිද්ධ ඉලෙක්ට්‍රොනික උපාංග අලෙවිසැල් වලින් මිලදී ගැනීමට හැකියාව තිබෙන අතර eBay වැනි සේවා හරහා ඉතාම අඩු මුදලකට නිවසටම ගෙන්වා ගැනීමේ හැකියාව තිබෙනවා.

2. Bread bord + Jumper cabels

Arduino හෝ වෙනත් ඕනෑම පරිපථයක් ඊයම් යොදා පෑස්සීමට පෙර පරිපථය නිවැරදිව ක්‍රියා කරනවා     යි පරීක්ෂා කර බැලීමට Bread bord යොදා ගතහැක. Bread bord මත පරිපථය එකලස් කිරීමට Jumper cabels අවශ්‍ය වේ. බොහොමයක් අවස්ථාවල Bread bord සමඟ Jumper cabels ලැබෙන අතර ඇතැම් විට මිලදී ගත යුතුය. Bread bord ලංකාව පුරා බොහොමයක් ඉලෙක්ට්‍රොනික අලෙවිසැල් වලින් මිලදී ගැනීමට හැකියාව තිබෙනවා.

3. Arduino Software

Arduino bord එකට programme එක ලිවීමට ඇති standard software එක වශයෙන් මෙය හැදින් විය හැක. මෙය www.arduino.cc යන නිල වෙබ් අඩවියෙන් නොමිලයේ download කරගැනීමට හැකියාව    තිබෙනවා. Arduino IDE එක තුලදී ක්‍රියාත්මක වන පරිගණක භාෂාව ලෙස වැඩි දියුනු කල C++ භාෂාව හදුන්වා දීමට පුළුවන. කෙසේ නමුත් මීට අමතරව Arduino code ලිවීම සදහා සැකසූ විවිධ මෘදුකාංග ද තිබෙනවා.

4. Pay Pal + eBay account

Pay Pal + eBay account එකක් තිබීම අත්‍යවශ්‍ය නොවුනත් Pay Pal + eBay account තිබීම මගින් ලාබදායි ලෙස Arduino සම්බන්ධ උපාංග, අමතර කොටස් හා විවිධ මෘදුකාංග අන්තර්ජාලය හරහා ලබා ගැනීමට හැකියව තිබෙනවා.
උදාහරණයක් ලෙස ලංකාවේ Rs:1200/= තිබෙන Arduino UNO bord, eBay හරහා Rs:500/= පමණ මුදලකට ගෙන්වා  ගැනීමේ හැකියව තිබෙනවා.

Online උදව් !

Arduino සමඟ කටයුතු කිරීමේ දී ඇතිවන ගැටලු සදහා විසදුම් සෙවීමට ඔන්ලයින් සහය පැතිය හැක. මේ සදහා ලංකාව තුල Arduino සම්බන්ධයෙන් ඇති ජනප්‍රියම Facebook Group දෙක ලෙස,
ආර්ඩුයිනෝ දැනුම බෙදාගමු > https://www.facebook.com/groups/arduinoathhadabalimdanumabedagamu/
Arduino Porgramming-LK > www.facebook.com/arduinoprogramming-lk
දැක්විය හැක.

මේ වන විට Arduino සම්බන්ධව ඇති මූලික කරුණු සියල්ලම පහේ ස කර අවසන්. මීළඟ කලාපය දී Arduino  මගින් සරල පරිපථ යක් නිර්මාණය කරගන්න ආකාරය සාකච්ඡා කරමු.
මේ සම්බන්ධ ඇති ඕනෑම ගැට්ලුවක් comment මගින් විමසන්න.......
Arduino sinhala