electronic sinhalen

සිංහල භාෂාවෙන් විද්‍යා හා තාක්ෂණ කරුණු ලබාදෙන, SENRO-TECH යුගයේ අපූර්වතම විද්‍යා හා තාක්ෂණ ගෙව්ශණය. SENROTECH is all about connecting you to the Technologies ©Copyrighted

Friday, May 10, 2019

microcontroller sinhala - මයික්‍රෝකොන්ට්‍රෝලර්ස් (pic microcontroller programming) - 29


මයික්‍රෝකොන්ට්‍රෝලරයේ Analog to digital converter ඒකකය යොදාගැනීම - 1



ඇනලොග් සංඥාවක් ඩිජිටල් සංඥාවක් බවට පත් කිරීම ADC ලෙස හැදින්වේ.මෙම කාර්ය සිදුකරන පරිපථ  IC ආකාරයෙන් නිර්මාණය කර ඇත. ඒවා ඉතා අඩු මිලකට ලබා ගත හැකිය.ඒ අනුව ADC යනු ඉතා වියදම් අඩු ක්‍රියාවලියකි. මයික්‍රෝකොන්ට්‍රෝලර සතුවද මෙම ADC ඒකකයක් ඇතුලත් කර ඇත.මෙමගින් මයික්‍රෝකොන්ට්‍රෝලරය සතුව ඇති ADC ඒකක යොදාගන්නා ආකාරය සලකා බලමු.


මේ සදහා ඇනලොග් සංඥා හා  ඩිජිටල් සංඥා යනු කුමක්දැයි විමසා බැලිය යුතුය.ඒ අනුව ඇනලොග් සංඥාවක් යනු සලකනු ලබන ලක්ෂනය වෙනස්වීම සිදු වන්නේ සංතතිකව වේ.එනම් එහි උපරිම සහ අවම අගයන් දෙක අතර අනන්ත ආකාරයෙන් අගයන් ගත හැකිය.එහෙත් ඩිජිටල් සංඥාවක   සලකනු ලබන ලක්ෂනය වෙනස්වීම සිදු වන්නේ පියවර වලින් වේ.එනම් එහි උපරිම සහ අවම අගයන් දෙක අතර ඇති අගයන් ප්‍රමාණය නිශ්චිතව කිව හැක.





අපට එදිනෙදා හමුවන සියල්ල ඇනලෙග් වේ.එනම් අප යොදාගන්නා කාලය,ආලෝකය,උෂ්ණත්වය ආදී සියලු භෞතික මිණුම් ඇනලොග් වේ.එනම් මේ සෑම දෙයක්ම වෙනස් වන්නේ සංතතිකව වේ.මේ අනුව පැහැදිලි වන්නේ අප සිටින මෙම ලෝකය ඇනලොග් ලෝකයක් වන බවයි.

ඉලෙක්ට්‍රෝණික තාක්ෂණය දියුණු වීමත් සමග අප එදිනෙදා යොදාගන්නා මෙම විවිධ භෞතික මිණුම් යොදාගෙන විවිධ නිර්මාණයන් සිදු කිරීම මගින්  එදිනෙදා වැඩකටයුතු පහසු කර ගැනීමට හැකිවිය.එහිදී සිදු කරනු ලබන්නේ ඉලෙක්ට්‍රෝණික ක්‍රම උපයෝගී කරගෙන භෞතික සංඥාව එම ආකාරයෙන්ම විද්‍යුත් සංඥා බවට පත්කර ඒ අනුව යම් යම් කාර්යන් සිදු කර ගැනීමයි.මේ සදහා යොදාගත හැකි හොදම උදාහරනය වන්නේ මයික් එකක් යොදාගෙන මිනිස් කටහඩ විද්‍යුත් සංඥාවක් බවට පත් කර එය ඉලෙක්ට්‍රෝණික ක්‍රම උපයෝගී කරගෙන වර්ධනය කර ස්පීකර් මගින් වැඩි හඩක් ලබා ගැනීම ගත හැක.  

මේ ආකාරයට යොදාගැනෙන ඇනලොග් භෞතික සංඥා ඒ ආකාරයෙන්ම ඇනලොග් විද්‍යුත් සංඥා ලෙස යොදා ගැනීමේදී විවිධ දුෂ්කරතාවයන්ට මුහුන දීමට සිදුවිය.එමනිසා තවදුරටත් ඉලෙක්ට්‍රෝණික තාක්ෂණය දියුණු වීමත් සමග මෙම දුෂ්කරතා මග හැර ගැනීම සදහා ඩිජිටල් සංඥා යොදාගැනීම බිහිවිය. ඒ අනුව ඩිජිටල් සංඥා යනු මිනිසා විසින් කෘතිමව නිර්මාණය කල දෙයක් වේ.එහෙත් මෙහි ඇති විශේෂත්වය
වන්නේ ඕනෑම ඇනලොග් සංඥාවක් ඩිජිටල් සංඥා ආකාරයෙන් නිරූපණය කල හැකි වීමයි.ADC පරිපථයකින් සිදු කරන්නේ මෙයයි.එසේම නැවත එම ඩිජිටල් සංඥාව පහසුවෙන් ඇනලොග් සංඥාව බවට පත්කල හැක.


(ඇනලෙග් සංඥාවක් ඩිජිටල් ආකාරයෙන් නිරූපණය කරන ආකාරය පිළිබදව මීට ඉහතදී විස්තරාත්මකව පැහැදිලි කර ඇත.)


ඉහත කරුනු අනුව පැහැදිලිවන කාරනය නම්  භෞතික සංඥාව විද්‍යුත් සංඥාව බවට පත් කිරීම සහ නැවත විද්‍යුත් සංඥාව  භෞතික සංඥාව බවට පත් කිරීම අතර අතරමැදි ක්‍රියාවලියක් ඇති බවයි.ඇත්තටම ඉලෙක්ට්‍රොණික පරිපථයක් අවශ්‍ය වන්නේ මෙම ක්‍රියාවලිය සදහා වේ. මෙම ක්‍රියාවලිය සංඥා වර්ධනය කිරීම, සංඥා හායනය කිරීම,වෙනස් කිරීම ආදී කුමන හෝ කටයුත්තක් විය හැක.එය පරිපථය යොදාගැනෙන අරමුණ අනුව විවිධ විය හැකි අතර එම කටයුත්ත සිදු කිරීම ඇනලොග් හෝ ඩිජිටල් යන ආකාර දෙකෙන් එකකින් සිදු විය හැක. Analog to digital පරිවර්තක අවශ්‍ය වන්නේ ඩිජිටල් ආකාරයෙන් මෙම කටයුත්ත සිදු කරවන විටදීය වේ.


මේ ආකාරයට digital සංඥා යොදාගෙන අතරමැදි ක්‍රියාවලිය සිදුකිරීමේදී ඇනලොග් සංඥා යොදා ගැනීමට වඩා වාසි රැසක් ඇත.ඒවා පිළිබදවද මීට පෙර පැහැදිලි කර ඇත.


ADC පරිවර්තනය ඉතා පහසුවෙන් ඒසදහා නිර්මාණය කර ඇති IC එකක් යොදාගෙන සිදු කල හැක.එහෙත් මෙහිදී සිදු කරනු ලබන්නේ මයික්‍රෝකොන්ට්‍රෝලරයේ ඇති ADC ඒකකය යොදාගෙන මෙම කටයුත්ත සිදු කර ගන්නා ආකාරය වේ.මේ කුමන ආකාරයක් යොදාගෙන Analog to digital පරිවර්තනය සිදු කලත්  එහිදී අනුගමනය කරන ක්‍රියාවලිය එකම ආකාරයක් වේ.මේ අනුව  ඇනලොග් සංඥාවක් ඩිජිටල් සංඥාවක් බවට පත්කරන ආකාරය ප්‍රධාන කොටස් තුනකට වෙන් කල හැක.


  • Sampling
  • Quantization
  • Digitally coded


Sampling


පහත දැක්වෙන්නේ ඇනලොග් සංඥාවක් කාලය සමග වෙනස් වන ආකාරයි





මෙහි x අක්ෂයෙන් කාලය නිරූපණය කරන අතර y අක්ෂයෙන් සංඥාවේ වොල්ටීයතාවය පෙන්නුම් කරනු ලබයි. Sampling ක්‍රියාවලියේදී සිදු කරනු ලබන්නේ කාලය සමාන කුඩා කොටස් වලට වෙන්කර එම කාලයන්ට අනුරූප වොල්ටීයතා අගයන් ලබා ගැනීමයි.ඒ අනුව මෙය ඉලෙක්ට්‍රොණික පරිපථයකින් සිදුකරනු ලබන්නේ සංඥාවේ කුඩා කාල පරතර වලදී සංඥාවේ වොල්ටීයතාවය ලබා ගැනීමයි.මේ සදහා යොදාගැනෙන පරිපථ sampling circuit ලෙස හැදින්වේ.පහත රූපයේ දැක්වෙන්නේ එය සිදු කරන ආකාරය වේ.






මෙහිදී t1,t2,….කාලයන්ට අනුරූපව V1,V2,…. ලෙස විවිධ වෝල්ටීයතාවයන් ලැබේ.මෙහිදී තත්පරයක් තුල කොපමන වාර ගණනක් වොල්ටීයතාය මැනීම සිදු කරනවාද යන්න  sampal rate ලෙස හැදින්වේ.සාමාන්‍යයෙන් හොද ADC පරිවර්තනයක් සිදු කිරීම සදහා sampal rate එක ඉහල අගයක් තිබීම වැදගත් වේ. sampal rate එක මැනීම Hz වලින් සිදු කරනු ලබයි.මෙය ADC හී පළමු පියවර වේ.

Quantization


Sampling ක්‍රියාව සිදු කර ගත් පසු විවිධ වෝල්ටීයතාවයන්ගේ අගයන් ලැබී තිබේ.දැන් මෙම වොල්ටීයතාවයන්, වොල්ටීයතා මට්ටම් දෙකක් පමණක් යොදාගෙන නිරූපණය කලයුතුය.එසේත් නොමැතිනම් දෙකේ පාදයේ අගයන්ට පත් කල යුතුය.මක්නිසාදයත් ඩෙසිමල් ක්‍රමයේදී යොදාගනු ලබන්නේ වොල්ටීයතා මට්ටම් දෙකක් පමණක් වේ.එය සිදු කරගන්නා ආකාරය විමසා බලමු.


මේ සදහා බිට් දෙකේ සිට 16 දක්වා කුමණ හෝ අගයක් යොදා ගත හැකිය.මෙම යොදාගන්නා බිට් ගණන bit depth ලෙස හැදින් වේ.ඒ අනුව බිට් දෙකක් යොදාගත් විට එකිනෙකට වෙනස් අගයන් හතරක් ලැබෙන අතර බිට් තුනක් යොදාගත් විට එකිනෙකට වෙනස් අගයන් අටක් ලැබේ.මෙහිදී bit depth එක අනුව නිරූපණය කල හැකි අගයන් ප්‍රමාණය 2n සූත්‍රයෙන් ලබා ගත හැක.


බිට් දෙකක් යොදාගත් විට 00, 01 , 10,  11 ලෙස එකිනෙකට වෙනස් අගයන් හතරක් යොදාගත හැක.ඒ අනුව මෙහිදී නිරුපණය කල හැකි වන්නේ වොල්ටීයතා මට්ටම් හතරක් පමණක් වේ.එනම් මෙහිදී +5 හා -5 අතර වෙනස් වන ඇනලොග් සංඥාවක් ලත් විට එය නිරූපණය කිරීම සදහා ගත හැක්කේ වොල්ටීයතා මට්ටම් හතරක් පමනි.ඒවා වන්නේ -5, -2.5,+2.5,+5  වේ.ඒ අනුව මෙහිදී එක් ඩිජිටල් අගයකින් වෝල්ට් 2.5 ක අගයක් නිරූපණය කරනු ලබයි.මෙය රෙසලූෂන්(resolution) ලෙස හැදින් වේ.එය පහත සූත්‍රයෙන් පහසු වෙන් ලබා ගත හැක.




බිට් තුනක් යොදාගත් විට 000,  001 , 010 , 011  ,100 , 101, 110, 111ලෙස එකිනෙකට වෙනස් අගයන් අටක් ලැබේ.මෙහිදී වොල්ටීයතා මට්ටම් අටක් නිරූපණය කලහැක.මෙහිදී resolution එක වන්නේ 1.25 වේ.ඒ අනුව නිරූපණය වන අගයන් වන්නේ පිළිවෙලින් -5, -3.75, -2.5, -1.25, +1.25, +2.5, +3.75, +5 වේ.මේ අනුව පැහැදිලි වන්නේ bit depth එක වැඩිවන තරමට resolution එක අඩු වී ඇනලොග් සංඥාව 
හොද කොලිටියක ඩිජිටල් සංඥාවක් වන බවයි.එසේත් නොමැතිනම් ඩිජිටල් සංඥාව ඇනලොග් සංඥාවට සමීප වේ.


 

මේ අනුව Quantization ක්‍රියාවලියේදී සිදු කරනු ලබන්නේ යොදාගනු ලබන bit depth එක අනුව Sampling ක්‍රියාවලියේදී ලබාගත් වෝල්ටීයතාවයන්ට බයිනරි අගයන් ලබාදීමයි.



Digitally coded


මෙය ADC ක්‍රියාවලියේ අවසන් පියවර වේ.මෙහිදී සිදු කරනු ලබන්නේ Quantization ක්‍රියාවලියේ දී යෙදන ලද අගයන් පිළිවෙලින් එකක් පසු පස එකක් සිටින ලෙස සකස් කිරීමයි.





මේ අනුව පැහැදිලි වන්නේ ඹ්නෑම ඇනලොග් සංඥාවක් ඩිජිටල් සංඥාවක් බවට පත් කල හැකි බවයි.එහිදී එය ඉතා දිගු ඩිජිටල් සංඥාවක් බවට පත් වේ.උදාහරනයක් ලෙස ශබ්ද සංඥාවක් ලෙස ඇති සාමාන්‍ය සිංදුවක් ඩිජිටල් බවට පත්කල පසු එහි බිට් මිලියන 40 ක් පමණ ඇත.


ඉහත කරුනු අනුව පැහැදිලි වන්නේ ADC ක්‍රියාවලියේදී වැදගත්ම සාදක දෙක වන්නේ sampal rate එක සහ bit depth එක වේ.එමනිසා සාමාන්‍යයෙන් හොද  ADC පරිවර්තනයක් සිදු කිරීම සදහා sampal rate එක 4000Hz ට වැඩි අගයක සහ bit depth එක බිට් අටක් හෝ ඊට වැඩියෙන් පවත්වා ගනු ලබයි.