Arduino Sinhalen- Part2 -How to use arduino, How to upload programs, Digital writes and PWM

කලින් කොටසින් arduino කියන්නේ මොකද්ද කියල පොඩි අදහසක් එන්න ඇති. code එකේ මුලික කොටස් දෙකක් ගැන අපි බැලුවා. ඒ setup method එක හා loop method එක.දැන් ඔක්කොමත් හරි. අපි ගහපු code එක arduino එකට දාගන්නේ කොහොමද?

මේකට කියන්නේ code එක upload කරනවා කියල.code එක හරියට ලියල නම් විතරයි අපිට code එක board එකකට upload කරන්න පුළුවන්.upload කරන්න arduino board එක computer එකට connect කරන්න එකේ cable එකෙන්. arduino board එකටත් drivers ඕනේ. drivers ගොඩක් වෙලාවට arduino IDE එකත් එක්ක install වෙනවා.එහෙම වෙලා නම් arduino IDE එකේ tools>>Port >> එකේ sub menu එකේ ඔයාගේ arduino board එක පෙන්නනවා.එහෙම පෙන්නන්නේ නැතිනම් drivers install වෙලා නෑ .එක install කරලා ඉන්න ඕනේ.

Installing Drivers

Desktop එකේ This pc හෝ My computer Right Click කරලා Manage එක click කරන්න.
මේ එන්නේ device manager එක.එකේ මන් highlight කරලා තියෙන්නේ මගේ computer එකේ මගේ arduino board එක පෙන්නන විදිය.ඔයාගේ board එක මේ විදියට පෙන්නන්නේ නැතිනම් වෙනම නමක් එක්ක පොඩි කහපාට "!" ලකුනකුත් එක්ක මොකක් හරි device එකක් පෙන්නනවා නම් එක arduino board එක වෙන්න පුළුවන්. එකේ drivers update කරන්න මේ device manager එකටම පුළුවන්.වෙන කරදර වෙන්න ඕනේ නෑ.එකේ driver එක update කරන්න ඕනේ device එක right click කරලා update driver option එක දෙන්න. එකේ steps ටික කරාම driver එක ලේසියෙන්ම update වෙනවා. හැබැයි මේකට internet ඕනේ.ලොකු data ප්‍රමාණයක් යන්නේ නෑ.

දැන් arduino IDE එක restart කරාම කලින් port එක පෙන්නුවේ නැති board එක දැන් පෙන්නනවා.


මේ රුපයේ 1 කියල දාල තියෙන්නේ Verify/Compile button එක.එකෙන් අපි ගහපු code එක compile වෙලා machine language විදියට convert වෙනවා. 

2න් පෙන්නන්නේ upload button එක . එකෙන් තමයි අපේ code එක board එකට යවන්නේ.ඇත්තම කිව්වොත් අපේ code එකම නෙවෙයි.එක machine language වෙලා යන්නේ.අපි 1 button එක ඔබන්නේ නැතිව 2 එබුවත් ප්‍රශ්නයක් නෑ.කොහොම උනත් 2 එබුවම අනිවාර්යයෙන් compile වෙනවා.

3න් පෙන්නන්නේ serial monitor එක.එකෙන් කරන්න පුළුවන් දේවල් අපි පස්සේ බලමු.

දැන් ගිය සතියේ අපි ගහන්න පුරුදු උන code ගහල upload කරන්න පුළුවන්.


Digital writes and PWM

arduino එකට output දෙන්න පුළුවන් ක්‍රම දෙකක් තියෙනවා .  digitalWrite()  හා analogWrite() කියන්නේ ඒ දෙකට. මේකේ digital method එක digital ම උනාට analog method එක ඇත්තටම analog නෙවෙයි.එක කරන්නේ PWM  ක්‍රමය මගින් එක analog වගේ එන විදියට convert කරලා දෙන එක,

arduino එකේ ඕනෙම output pin එකක් digital output එකක් විදියට use කරන්න පුළුවන්.ඒවා use කරන්න setup method එකේ declare කරලා තියෙන්න ඕනේ 

void setup(){
       pinMode(3,OUTPUT);
}

මේ විදියට 3 වෙනි pin එක output එකක් විදියට සෙට් කරට පස්සේ එක digitalWrite() මගින් digital values දෙන්න පුළුවන්

void loop(){
      digitalWrite(3,HIGH);
}

මේකෙන් වෙන්නේ 3 වෙනි pin එකට digital high value එක ලැබෙන එක.ඒ කියන්නේ 3 වෙනි pin එකේ output එක 5V වෙනවා. අපිට led එකක් light කරගන්න ඕනේ නම් 3 වෙනි pin එකට 220Ω වගේ resistor එකක් හරහා led එකේ + pin එක 3 pin එකටත්  - pin එක Ground (GND) එකටත් හයි කරගන්න පුළුවන්.



මේ විදියට හයිකරලා අදාල code එක upload කරට පස්සේ led එක දැල්වෙනවා.

digital write එකට තියෙන්නේ අවස්ථා දෙකයි . HIGH හා LOW. high උනාම කලින් වගේ 5V output වෙනවා වගේම LOW උනාම 0V output වෙනවා.

PWM 

PWM වලින් වෙන්නේ වෙනම දෙයක්.


මේ රුපෙන් පැහැදිලි වෙන්නේ pwm එකේ ක්‍රියාවලිය. ඇත්තටම Arduino එකට analog write කරන්න බැරි උනාට එකට high frequency digital signal හදන්න පුළුවන්. ඉතින් එක කරන්නේ high frequency digital signal එකක් හදනවා duty cycle එක වෙනස් කරලා.

duty cycle කියන්නේ මොකද්ද ?


duty cycle කියන්නේ signal එකේ HIGH කාලය signal එකේ ආවර්ත කාලයට දරන අනුපාතය.උඩ තියෙන රුප වල 25% duty cycle image එකේ සිග්නල් එක high වෙලා තියෙනේ හතරෙන් එකයි. 50% එකේ බාගයයි. 75% එකේ හතරෙන් තුනයි. හැබැයි මේ විදියට මේකේ duty cycle එක adjust කරන ගමන් arduino එක මේ signal එකේ frequency එක ගොඩක් වැඩි අගයකට තිය ගන්නවා. ඉතින් මේ හේතු දෙක නිසා output voltage එක 5V විදියට ලැබෙන්නේ නෑ. 

උදාහරණයක් විදියට 50% duty cycle තියෙන digital high frequency signal එකක output එක ලැබෙන්නේ එකේ සාමාන්‍ය අගය. 

Vout =(5*1 + 0*1 )/2

         = 2.5V

50% duty cycle එක තියෙනව නම් අපිට output voltage එක විදියට ලැබෙන්නේ 2.5V. ඔන්න ඔය විදියට arduino එකට 0 හා 5 අතර ඕනේ voltage එකක් හදල දෙන්න පුළුවන්. නමුත් මේ වැඩේ හැම pin එකටම කරන්න බෑ.

මේ board එකේ තියෙන output pin වල ඉස්සරහින්  ∽ සලකුණක් තියෙනවා නම් ඒවාට මේ pwm සිග්නල් හදන්න පුළුවන්, අනිත් ඒවාට බෑ. ඒවාට සාමාන්‍ය digital signal හදන්න පුළුවන්. නමුත් මේවා board එකෙන් board එකට වෙනස් වෙනවා. mega එකේ නම් 0 ඉදන් 13 වෙනකම් ඔක්කොටම pwm හදන්න පුළුවන් 

analog write ලියන්නේ මෙහෙමයි.

analogWrite(3,255);
මේකේ 3 කියන්නේ pin number එක. 255 කියන්නේ output කරන්න ඕනේ value එක. මේ 255 value එකට duty cycle එක 100% එනවා . ඒ කියන්නේ 5V ම එනවා.

255    5v
230 - 4.5v
204 - 4v
179 - 3.5v
169 - 3.3v
153 - 3v
128 - 2.5
64  - 1.25v

මෙන්න මේ විදියට analog write එකේ values වෙනස් කරලා අපිට output voltage එක වෙනස් කරගන්න පුළුවන්. 

ඊලග පොස්ට් එකේදී නැවත හමුවෙමු. ප්‍රශ්න comment කරන්න

Comments

Popular posts from this blog

PT 2308 Headphone Driver IC

Lab bench power Supply / Voltage regulator with current limiter and indicators / adjustable volage current regulator

Light a LED using Main Current 230V/110V AC