Mixly භාවිතයෙන් LED එකක් Feed කරමු

අපි මේ පාඩමේදී ඉගෙන ගනුයේ Mixly භාවිතයෙන් smoothly LED එකක් blink කරන්නේ කොහොමද කියලා , අපි කලින් පාඩමේදී කතාකලා Digital electronics ගැන මේ පාඩමේදී අපි සාකච්ඡා කරමු Analog electronics ගැන

අපි අපේ පෙර පාඩමේදී සාකච්ඡා කරනු ලැබුවා සමාන්‍යයෙන් ඩිජිටල් signal එකක් භාවිත කරමින් LED එකක්  Blink කරන ආකාරය. අපි මෙම පාඩමේදී ඉගෙන ගනුයේ ඇනලොග් signal එකක් භාවිත කරමින් LED එකක් feed කරන්නේ කොහොමද කියන ආකාරය

අපි ඒ සඳහා විශේෂ ක්‍රමයක් භාවිතා කරනු ලබනවා අපි එය හදුන්වනුයේ PWM (Pulse Wave Modulation) ලෙස යි.

PWM (Pulse Wave Modulation)

ඔබ දන්නා පරිදිම Arduino යනු ඩිජිටල් ඉලෙක්ට්‍රොනික් මත පදනම් වූ platform එකකි. නමුත් මෙහිදී අප සිදුකරනු ලබනුයේ Analog signal එකකි. එනිසා අපිට Analog signal එකක් නිර්මාණය කර ගැනීමට ක්‍රමයක් අවශ්‍ය වේ.

Pulse Wave Modulation නොහොත් PWM යනු ඩිජිටල් signal මගින් ඇනලොග් signal ලබා ගැනීමේ තාක්‍ෂණයකි. මෙහිදී ඩිජිටල් signal රාශියක් මගින් මෙම ක්‍රියාව සිදුකරගනු ලබයි. ඩිජිටල් signal එකක ඇත්තේ on සහ off ලෙස ක්‍රියාකාරී අවස්ථා දෙකක් පමණි. අපි මෙම අවස්ථා දෙක කිසියම් රටාවකට භාවිත කිරීමෙන් මෙම ඇනලොග් signal එක නිර්මාණය කර ගනු ලබයි.  එය සිදුකරන ආකාරය අධ්‍යයන කිරීමට පහත සටහන නිරීක්ෂණය කරන්න.

අපි Arduino වලදී මෙම ඇනලොග් ක්‍රියාවලිය ක්‍රියාත්මක කිරීම සඳහා යොදාගන්නා කේතය වනුයේ analogWrite යන්නයි. 

පලමු කොටසින් පෙන්වා ඇත්තේ analogWrite(පින් අංකය, 0) යන කේතය ලබාදුන් විට pwm ක්‍රියාත්මක වන අකාරයයි. එහිදී ලබා දෙනුයේ 0 බැවින් එහි කිසිදු ප්‍රතිදානයක් signal එකේ නොපෙන්වයි. 

දෙවන කොටසින් පෙන්වා ඇත්තේ analogWrite(පින් අංකය, 64) යන කේතය ලබාදුන් විට pwm ක්‍රියාත්මක වන අකාරයයි. එහිදී අපි ලබාදෙනුයේ 64 යන්නයි .  එනිසා එහි ඩිජිටල් signal එකක් ඔබට දැකිය හැකිය. නමුත් අනෙකුත් signal හා සන්සන්දනය කරන විට ඔබට පෙනෙනුයේ එහි 1 හෙවත් on ලෙස පවතින කාලය අඩු බවයි . 

අපි මෙහිදී අපේ ඇනලොග් signal එක නිර්මාණය කරගනු ලබනුයේ මෙම ක්‍රියාකාරිත්වය පදනම් කරගෙනයි. PWM වලදී අපි ලබාදෙන අගයට අනුරූප වන ලෙස ඩිජිටල් signal එකක් නිර්මාණය කරනු ලබයි. එම signal එකෙහි on සහ off අවස්ථා ක්‍රියාත්මක වීම මගින් එහිදී ඇනලොග් signal එකකට අනුරූප signal එකක් නිර්මාණය කරනු ලබයි. අපි මෙහිදී analog signal එකක් ලෙස දකිනුයේ මෙම signal එකයි. 

ක්‍රියාකාරකම 1 - LED Feed

පරිපථ සටහන 

LED Positive Pin   pin 3 (PWM pin)
GND pin  Arduino GND pin

කේත නිර්මාණය

දැන් අපි mixly භාවිතයෙන් මේ program එක design කරමු .

පැහැදිලි කිරීම 

මෙය ඉතාමත් සරල කේතයකි. මෙහි පේලි කීපයක් පැවතුනද යොදාගෙන ඇත්තේ එකිනෙකට වෙනස් Block දෙකක් පමණි. ඒ analogwrite සහ delay Block දෙකයි. මෙය සිදුකල හැකි තවත් ක්‍රම කීපයක්ම තිබේ. නමුත් මේ analog signal පිලිබඳ මුලින්ම අධ්‍යයන කිරීමට මෙය වඩාත් යෝග්‍ය වේ.

analogwrite Block

මෙම Block එක භාවිත කරනුයේ analog signal එකක් පිටතට   යැවීමටයි. මෙහි මුලින්ම pin අංකය තෝරාදිය යුතු අතර   අනතුරුව අගය ලබාදිය යුතය.

pin එක ලෙස අපිට මෙහිදී භාවිතා කල හැක්කේ arduino හි PWM pin ලෙස සැලකෙන 3,5,6,9,10,11 pin ය.

අනතුරුව ඊට අගයක් ලබාදිය යුතුය. මෙහිදී ලබාදෙන අගයට අනුරූප අගයක් arduino බෝර්ඩ් එක මගින් නිර්මාණය කරනු ලබයි. එය සිදුකරන ආකාරය ඉහතින් අපි විස්තර කරනු ලැබුවා.

මෙහිදී අපි භාවිත කරනුයේ පින් අංක 3 ය. එසේම ආරම්භයේදී අගය 0 ලෙස ලබාදෙනු ලබයි, එවිට LED එක off වී පවතී. මෙම අවස්ථාව digital signal එකක LOW අවස්ථාවට සමාන වේ.

මෙය පෙර කේතයමය .මෙහිදී වෙනස් වනුයේ අගය පමණකි . මෙහිදී අගය 50 කි.එනිසා මෙවිට LED එක 50 ට අනුරූප analog signal එකක් යටතේ අඩු brightness එකක් යටතේ දැල්වෙනු ඇත.

මෙයද පෙර කේතයමය .මෙහිදී ද වෙනස් වනුයේ අගය පමණකි . මෙහිදී අගය 100 කි.එනිසා මෙවිට LED එක 100 ට අනුරූප analog signal එකක් යටතේ සාමාන්‍ය brightness එකක් යටතේ දැල්වෙනු ඇත.

මෙයද පෙර කේතයමය .මෙහිදී ද වෙනස් වනුයේ අගය පමණකි . මෙහිදී අගය 150 කි.එනිසා මෙවිට LED එක 150 ට අනුරූප analog signal එකක් යටතේ සාමාන්‍ය brightness එකක් යටතේ දැල්වෙනු ඇත.

මෙයද පෙර කේතයමය .මෙහිදී ද වෙනස් වනුයේ අගය පමණකි . මෙහිදී අගය 250 කි.එනිසා මෙවිට LED එක 250 ට අනුරූප analog signal එකක් යටතේ උපරිම brightness එකක් යටතේ දැල්වෙනු ඇත. මෙම අවස්ථාව digital signal එකක HIGH අවස්ථාවට සමාන වේ.

මෙම block එක සෑම analogwrite block දෙකක් අතරටම යොදාඇත. එහි අගය 500 ලෙස යොදා ඇත. එමගින් සෑම පියවර දෙකක් අතරම තත්පර භාගයක පරතරයක් තබයි . එවිට අපට මෙහි brightness වෙනස් වීම නිවැරදිව බලාගත හැක. 

analogwrite පිලිබඳව සරලවම දැන ගත යුත්තේ මේ කොටස් පිලිබඳවයි. analogwrite කේතය සහ for loop එකතු කිරීමෙන් වඩත් සාර්ථක LED Feed පරිපථයක් නිර්මාණය කර ගත් හැක. එය නිර්මාණය කිරීමට උත්සහ කර බලන්න. ඒ පිලිබඳව අපි ඉදිරි පාඩම් වලදී සාකච්ඡා කරමු.

What's Your Reaction?

like
0
dislike
0
love
3
funny
0
angry
1
sad
1
wow
0