IoT සිංහලෙන් 3 - NodeMCU වැඩ ඇල්ලීම.

9:18 AM 0

පසුගිය කොටසින් අපි සාකච්ඡා කලේ IoT project වලට තියෙන තියෙන development boards/platform මොනවාද සහ අපේ ප්‍රොජෙක්ට් එකට ගැලපෙන platform එකක් තෝරාගන්නේ කොහොමද කියලා.

අද මම කියලා දෙන්න හදන්නේ භාවිතා කරන්න පහසු,බලසම්පන්න වගේම මිලෙනුත් අඩු platform එකක් වන NodeMCU ගැන. කොහොම උනත් අද මම IoT වලට සම්බන්ධ දෙයක් නම් කියලා දෙන්නේ නෑ. අද කියලා දෙන්නේ NodeMCU වල configuration කරගන්න හැටි සහ basic example එකක් ලියන හැටි ගැනයි.

NodeMCU විශේෂාංග මොනවද කියලා මම පහුගිය කොටසින් සාකච්ඡා කලා. මෙතනින් පසුගිය කොටස බලන්න.

ඉතින් මම පසුගිය කොටසින් කිව්වා වගේ මේ NodeMCU board එකේ තියෙන esp 8266 කියන්න WiFi chip එක Java, C/C++, Phython, Lua script වගේ languages ගොඩකින් program කරන්න පුලුවන්. ඉතින් ඒ නිසා අපි කාටත් ලේසි වෙන්න මම තොරගන්නේ C/C++ language එක, එතකොට අපිට Arduino IDE එක යොදාගෙන ඉතාම පහසුවෙන් program කරන්න පුලුවන්.ඉතින් ඔයා මේ වෙනකොට Arduino වැඩ කරන කෙනෙක් නම් NodeMCU program කියන එක ලොකු දෙයක් නෙමෙයි.

නමුත් මම IoT පඩම තුලදී නම් මම coding වල basic වල ඉදන් කරන්න බලාපොරොත්තු වෙන්නේ නෑ. මොකද Softwarelanthaya අපි මේ වෙන කොටත් Arduino Programming පාඩමක් කරන් යන නිසා. ඒක නිසා ඔයාට ලොකු programming දැනුමක් නැත්නම් මෙතැනින් ගිහින් ඒ පාඩම් ටිකත් බලල එන්න, මොකද Arduino වල ඉගෙන ගන්න ඒවා කිසි වෙනසක් නැතුව NodeMCU වලදීත් භාවිතා කරන්න පුලුවන්.

දැන් අපි පියවරෙන් පියවර බලමු කොහොමද පළමු NodeMCU වැඩසටහන ලියන්නෙ කියලා ..


1st Step

NodeMCU එක program කරන්න අපිට programming IDE එකක් ඕනෙ වෙනවා. අපි මෙතැනදී programming IDE එක විදිහට භාවිත කරන්නේ Arduino IDE එක. hhttps://www.arduino.cc/en/Main/Software කියන site එකට ගිහින් මුලින්ම Arduino IDE එක download කරගෙන install කරග්න්න ඕනේ.

2nd Step

Arduino IDE එක install කරගත්තට පස්සේ අපි NodeMCU වලින් වැඩ කරන්න කලින් අපි මුලින්ම ArduinoIDE එකට NodeMCU board එක install කරගන්න ඕනේ. ඒ කට මුලින්ම arduinoIDE එක open කරගෙන File > Preference වලට යන්න ඕනේ..
ඊට පස්සේ පහල තියෙන විදිහෙ window එකක් එනවා. එතන Additional boards manager URL කියන තැන ඉස්සහින් http://arduino.esp8266.com/stable/package_esp8266com_index.json කියන text එක paste කරලා OK කරන්න.


මෙතන ඉදලා කරන්න ඕනෙ වැඩ ටිකට internet ඕනේ, දැන් එහෙන්ම් internet connect කරාට පස්සේ Tools > Boards > Boards manager යන්න.



ඊට පස්සේ open වෙන Boards Manager window එකෙන්  esp8266 කියන එක තෝරලා install කියන button එක ඔබන්න.


මේ විදිහට board එක install උනාට පස්සේ Tools > Boards වලදී NodeMCU board එක install වෙලා තියෙනවා බලාගන්න පුලුවන්.


Hello World !

අපි දැන් හදන්නේ NodeMCU වල අපේ මුල්ම program එක ලියන්නයි. මුලින්ම NodeMCU board එක USB cable එකකින් computer එකට සම්බන්ධ කරගෙන Tools>boards > NodeMCU 1.0 select කරන්න ඕනෙ.

ඊට පස්සේ Tools > Port වලට ගිහින NodeMCU board එක හයි කරලා තියෙන port එක තෝරන්න ඕන්නේ. Port කිහිපයක් තියෙනවානම් හරි එක තෝරගන්න My Computer icon උඩ Right click කරල එන menu එකෙන් manage තෝරන්න. ඊළගට open වෙන්නේ Computer management window එක. 

ඒ Window එකේ වම් තීරුවෙ තියෙන System Tool කියන group එක expand කරාට පස්සේ Device manager තෝරන්න. ඊළගට මැද තීරුවේ Port යටතේ ඔයාගෙ com ports ඔක්කොම පෙන්නනවා. එතන USB-Serial කියන නමට ඉස්සරහින් තියෙන්නෙ NodeMCU එක connect කරලා තියෙන COM port එකයි.

ඊට පස්සේ File > New ගිහින් අලුත් code window එකක් අරගෙන පහල තියෙන code එක type කරන්න.

code එක type කරලා ඊලඟට Sketch > Upload වලට ගිහින් program එක upload කරන්න ඕනෙ.

මම මෙත 2 කියන පින් එක use කරන්නෙ NodeMCU board එකේ pin 2 වලට හයි කරපු LED(inverse) එකක් තියෙනවා. මේ code එක upload කලහම LED එක blink වෙනවා බලගන්න පුලුවන්.

මේ code එක ගැන explain එකක් මෙතැනින් බලගන්න පුලුවන්.



එහෙනම්අපි ඊලඟ පාඩමෙන් හම්බවෙමු. ඔයාලගෙ අදහස් දක්වන්නත් අමතක කරන්නත් එපා !

article එක හොදයි නම් යාළුවන්ටත් බලන්න share කරන්න.!

IoT සිංහලෙන් - IoT Development boards

9:00 PM 5

සොෆ්ට්වෙයාලන්තයට හැමෝම පිළිගන්නවා. මම පසුගිට කොටසෙන් IoT කියන්නෙ මොකක්ද කියලා පැහැදිලි කරලා දුන්නා. මම අද කියලා දෙන්න හදන්නේ IoT Development boards ගැන සහ ඒවයේ තියෙන විශේෂත්ව ගැනයි ඒ වගේම තමන්ගෙ වැඩෙට අදාල board එකක් තෝරගන්න හැටි ගැනයි. IoT development board ගැන කතා කරහම ගොඩක් board අපිට වෙළෙඳපොළ තුල මිලදී ගන්න තියෙනවා. පහල තියෙන්නේ අපිට බහුලවම හමුවෙන development board කිහිපයක්.

පළමු පාඩමට මෙතනින් යන්න>>>
  1. Arduino
  2. NodeMCU
  3. Magicblocks
  4. Raspberry Pi
  5. Banana Pi
  6. Intel Edison
  7. Beagle Bone
මේවා තමයි අපිට නිතරම මුන ගැහෙන IoT development board. අපි දැන් මේ එක එක development boards ගැන වෙන වෙනම බලමු.

Arduino

Arduino ගැන කියපුවහම නොදන්න කෙනෙක් නැති තරම්. මේ වෙනකොට arduino දන්න හැමෝම arduino වලින් robotics, automation වගේ project කරලා ඇති ඒ වගේම Bluetooth වලින් light on off කරනවා වගේ වැඩ කරලත් ඇති. මේවගේ වැඩ වලට ඔයාලා හැමෝම වගේ use කරන්නේ Arduino UNO, Nano, ProMini, Mega එහෙමත් නැත්නම් Arduino DUE board එකක්. මම කලින් කිව්වා වගේම IoT කියන්නේ internet එක්ක සම්බන්ධ කරන technology එකක් කියලා, ඉතින් මම කලින් කියපු board වලින් මේ වැඩේ තනියෙම කරන්න බෑ.. ඒ කට අපි වෙනම උපාංග හයි කරගන්නා ඕනා.


  • මොනවා මේ උපාංග.

මම මෙතැනදී උපාංග කියලා කිව්වේ Ethernet shield, GSM shiled වගේ arduino board එක ඉන්ටෙර්නෙට් හරහා සම්බන්ධ කරන්න පුලුවන් device එකකට.

Ethernet Shiled

Ethernet shield එක arduino එකත් එක්ක connect කරලා shiled එකේ තියෙන RJ45 port එකට internet line එක සම්බන්ධයෙන් කරහම අපිට අපේ project එක IoT project එකක් කරගන්න පුලුවන්.


GSM Shield

arduino එක internet එක්ක connect කරන්න තියෙන තවත් විදිහක් තමයි GSM shield එකක් use කරන එක. මෙතනදී මේ shield එකට SIM එකක් දාලා අපිට ඒ හරහා data send/receive කරගන්නත් පුලුවන්. ඒ වගේම ගොඩක් shield වලින් voice line එක use කරන්නත් පුලුවන්.


මේ ක්‍රම වලට අමතරව arduino සමාගම විසින්ම IoT වැඩවලටම හදපු boards වගයක් තියෙනවා මේ සූදානම ඒ ගැන දැනුවත් කරන්නයි.

1. Arduino YUN
 මේ board ATMega32U2 micro controller එකක් සහ Atheros AR9331 micro processor එකක් තියෙනව. ඒ වගේම මේ board එකේ Ethernet සහ WiFi සම්බන්ධතාව තියෙනව.


1. Arduino Ethernet

 මේ board ATMega328P micro controller එකක් තියෙනව. ඒ වගේම මේ board එකේ Ethernet සම්බන්ධතාව තියෙනව.


මීට අමතරාව තව ගොඩක් arduino boards තියෙනව.


NodeMCU


NodeMCU කියන්නේත් ඇත්තටම ගොඩක් හොද ඒවගේම ලාබදායි IoT platform එකක්. ඇත්තටම මේ platform එක NodeMCU කියලා ලඝු කරන්නේ නැතුව මම කැමතියි මේ කට ESP12 එහෙමත් නැත්නම් esp8266 development board එකක් කියනවන්ම්. මොකද මේ esp8266 කියන chip එක මූලික කරගත්ත development board ගොඩක් තියෙනවා. NodeMCU කියන්නේ මෙයින් එකක් විතරයි. ඒ කියන්නේ ESP 1,2,3,4,5,6,7,8,9,10,11,12, 12E,12F සහ ESP32 වශයෙන් ESP modules තියෙනවා. 

මේ esp chip එක තමයි NodeMCU  වල තියෙන micro controller එක. ඒ කියන්නෙ අපි arduino එක program කරනකොට Atmega328 එක program වෙනවා වගේ මෙතනදී program වෙන්නේ මේ esp module එක. මෙතන esp එක ඇතුලේ සාමාන්‍ය micro controller එකට අමතරව WiFi වලට අදාල modem එකත් මේ esp chip එක ඇතුලෙම තියෙනවා. NodeMCU එකේ තියෙන්නෙත් ESP 12E කියන  chip එක. ඒ වගේම මේ හැම esp module එකකම WiFi තියෙනවා. ඒ කියන්නේ මේ chip එකට වෙනත් කිසිම component එකක් භාවිතා නොකර WiFi network එකක් එක්ක connect වෙන්න පුලුවන්. මීට අමතරව ESP32 කියන module එකේ අනෙක් module වලට සාපේක්ෂව GPIOs ප්‍රමාණය වැඩියි වගේම WiFi වලට අමතරව Built-in Bluetooth technology එකත් තියෙනවා.

කොහොම උනත් මේ modules වලින් අපිට වැඩි පුරම භාවිත වෙන්නේ ESP-01, ESP-12 හා ESP-32 කියන modules තමයි. ඒ වගේම තමයි මම මේ IoT පාඩම ඉදිරියට කරන් යන්න භාවිතා කරන්නෙත් ESP-12 භාවිත වෙන NodeMCU board එකක් තමයි.


ESP 32

දැන් අපි බලමු NodeMCU එකේ තාක්ෂණික විස්තරම මොනවාද කියලා !

Operating Voltage :2.5V ~ 3.6V
Operating Current Average value: 80 mA 
Operating Temperature Range : –40°C ~ 125°C
CPU : Tensilica L106 32-bit processor
CPU clock speed : 80MHz
GPIOs : 17 (PWM 4)
Analog input pin : 1
EEPROM : 4Kb
WiFi Protocols : 802.11 b/g/n

ඇයි අපි NodeMCU භාවිතා කරන්නේ ?

මේ esp modules අතරින් අපි මේ NodeMCU කියන board එක භාවිතා කරන්න හේතුව තමයි මිල අඩුවීම, සාපේක්ෂව වැඩි GPIOs ප්‍රමාණයක් තිබීම, කෙලින්ම USB plug කරන්න පුලුවන් වීම, ඒ වගේම අනිත් සමහර esp module වලට වඩා කාර්යක්ෂම වීම වගේ කරුනු.

NodeMCU program කරන්නේ කොහොමද ?

NodeMCU එහෙමත්නැත්නම් මේ esp modules program කරන්න Java, C, Phython, Lua programming languages ගොඩක් භාවිතා කරන්න පුලුවන්. ඒක නිසා අපි මේක කරන්නත් භාවිතා කරන්නේ C++ වලින් program කරන්න පුලුවන්, arduino program කරන්නත් භාවිතා කරන Arduino IDE එකම තමයි.
අපි ඊළග පාඩමෙන් බලමු  කොහොමද Arduino IDE යොදාගෙන NodeMCU වලට program එකක් ලියන්නෙ කොහොමද කියලා...


MagicBlocks

magicblocks කියන්නේ අපේ රටට ටිකක් වැදගත් platform එකක්. මොකද මම එහෙම කිව්වේ මේ magicblocks platform එක හදලා තියෙන්නෙ ශ්‍රීලංකාවේ අයියලා කට්ටියක්. මේ platform එකේ තියෙන විශේෂතවය තමයි code ලියන්න ඕනේ නැති වීම. ඒ කියන්නෙ මේකෙ අපේ program එක ලියන්න තියෙන්නෙ blocks වලින්. හරියට photoshop වලදීවගේ, මෙතනදී කරන්න තියෙන්නෙ කරන්න ඕනේ vවැඩේට අදාල block එක flow එකට drag & drop කරන්න විතරයි තියෙන්නේ. ඒ කියන්නෙ coding ගැන කිසිම දැනුමක් නැති කෙනෙකුට උනත් ඉතාම පහසුවෙන් තමන් කැමති IoT projects කරන්න මේ platform එක භාවිතා කරන්න පුලුවන්.
learn more : http://magicblocks.io/
magicblocks Flow
ඒ වගේම අපිට මේ IoT platform එකෙන් IoT development boards වර්ග 2 කුත් හදුන්වලා දීලා තියෙනවා. MagicWiFi සහ MagicShiled කියන්නේ මේ board තමයි. ඒ වගේම තමයි මේ boards 2ත් පාදක වෙලා තියෙන්නෙ esp12 කියන module එක මතයි.

MagicWiFi

මේකෙන් ඔයාලට කෙලින්ම IoT projects කරන්න පුලුවන්.

MagicShiled

මෙකෙන්ඔයලට ඔයාගෙ Arduino UNO, Mega එක internet එකෙන් control වෙන්න හදාගන්න පුලුවන්.
මේවා තමයි අපිට අඩු මුදලට ගන්න තියෙන IoT development boards. අනිත් boards තරමක් මිලෙන් වැඩ්යි.
ඒ ක නිaසා අපි මිලඅඩු එකකින් වැඩේ පටන් ගමු.

අපි ඊළඟ පාඩමෙන් බලමු කොහොමද NodeMCU එක්ක වැඩ කරන්නේ කියලා...

Jhat English to Sinhala Dictionary V1.6 සුපිරි ශබ්දකෝෂය

8:54 AM 0


දැන් ශබ්දකෝෂ මෘදුකාංග ඕනෑ තරම් තිබුණත් මෙය සාපේක්ෂව ගොඩක් වෙනස් වැඩ සහිත මෘදුකා‍ංගයක්. 

මේ මගින් ඉංග්‍රීසි, සිංහල වචන වල තේරුම දැනගන්නත්, ඒවා Pronounce කරන්නත් වගේම OCR තාක්ෂණයෙන් සිංහල, ඉංග්‍රීසි වචන වල තේරුම ලබා ගැනීම ඒ කියන්නේ වෙබ් කැමරාව ඉදිරිපස අපි ඉ‍ංග්‍රීසි වචන සහිත යමක් පෙන්වූ පසු එය කුමක්දැයි Recognize කරගන්න වැනි වටිනා පහසුකම් රැසක් සහිතයි. 



singlish ටයිප් කිරීම මගින් සිංහල වචන search කරන්නත් පුළුවන්.

32 bit පරිගණක සඳහා මෙතනින්ද, 64 bit පරිගණක සඳහා මෙතනින්ද, බාගන්න. 

බාවිතයට උපදෙස් පහතින් බලන්න.
  • singlish වචනයක් type කිරීමෙන් පසුව අවසානයට space bar press කරන්න. 
  • උදාහරණයක් විදිහට "අම්මා" ලෙස type කිරීමට ඔනිනම් "amma " ලෙස type කර යුතුය. සෑමවිටම අවසානයට "space bar" type කල යුතුය. 
  • අපට සිංහල වලට හැරවීමට ඕන කරන "singlish" වචනය ,අකුර හෝ අකුරු සමූහය type කිරීමෙන් පසුව අනිවාර්යෙන් "space bar" type කරන්න. එවිට එය සිංහල වචනයකට,අකුරකට හෝ අකුරු කිහිපයකට හැරේ. 
  •  අවශ්‍ය සෑම ගොනුවක්ම ඔබ Download කරන ගොනුව තුල අඩංගුවේ. වෙනම Download කිරීමට අවශ්‍ය නොවේ.

IoT සිංහලෙන් - IoT ගැන දැනගමු !

10:20 PM 2

softwarelanthaya blog එකට හැමෝම පිළිගන්නවා! දිග නිවාඩුවකට පස්සේ මම ඔයගොල්ලෝ  ලගට එන්නේ අලුත් පාඩමක් එක්ක. ඒ තමයි IoT.

IoT කියන්නේ මොකක්ද ?

IoT කියන්නේ හරියටම මොකක්ද කියලා ගොඩක් අය නොදන්නවා වුනත් මේ වෙනකොට අහල ඇති කියලා මම විශ්වාස කරනවා. ඇත්තටම IoT එහෙමත් නැත්නම් Internet Of Things කියන්නේ මොකක්ද කියලා කියනවනම් IoT කියන්නෙ මෙහෙම දෙයක්,

ඒක සරලව කිව්වොත් Internet of Things  කියන්නෙ මොකක් හරි technology එකකින්  internet එක හරහා එකිනෙකට interconnect වෙලා තියන devices network එකකට. 

මේ devices මොනවාද කියලා කිව්වොත් එහෙම අපි භාවිතා කරන smart phone, Laptop, PC, Tv, Light, Vehicle, Security system  වගේම අපිට ගොඩක් සමීප Arduino, NodeMCU වලින් හදපු දෙයක් උනත් අපිට IoT device එකක් විදිහට හදුන්වන්න පුලුවන්.

උදාහරණයක විදිහට කිව්වොත් ඔයාට පුලුවන් internet හරහා ඔයා කොහේ හරි හයි කරලා තියෙන උපාංගයක් ඔයාගෙ phone එකෙන්, Laptop එකෙන් එහෙමත් නැත්නම් smart watch එකකින් control කරන්න.

මේ පහල තියෙන video එක බැලුවහම තවත් තේරෙයි.


NB-IoT කියන්නේ මොකක්ද ?

video එක බලුවනම් මේ IoT කියන්නේ මොකක්ද කියලා හොඳ  අවබෝධයක් ඇති කියලා හිතනවා. දැන් මම කියන්න යන්නේ NB-IoT (Narrow Band - IoT) කියන්නේ මොකක්ද කියන්නයි. NB-IoT  කියන්නේ IoT වලම තවත් ඉදිරි පියවරක් කියලා කියන්න පුලුවන්.

අපි  බොහොමයක් වෙලාවට භාවිතා කරන IoT උපාංග mobile device එහෙමත් නැත්නම් ජංගම උපාංග. ඒ කියන්නේ බොහොමයක් වෙලාවට මේ device වැඩකරන්නේ battery වලින්. මන් කලින් කිව්වා මේ උපාංග internet එක්කා connect වෙනවා කියලා, ඒකට සැලකිය යුතු තරම ධාරාවක් battery එකෙන් ලබා ගන්නවා. එතකොට ඉතින් ඉක්මනින් battery එක බහිනවා.

ඒවගේම මේ උපංග internet එක්ක connect කරලා යම්කිසි තරමක data ප්‍රමාණයක් වැයවෙනවා. පොඩි වැඩකට මේක එච්චර ගැටුලුවක් නොව්නත්. ලොකුවැඩකටන්ම් මේක බලපානවා.

ඒ වගේම් අපි අපේ device එකට internet connect කරන්න use කරන්නේ WiFi router එකක් වගේනම් router connect කරන්න පුලුවන් device ප්‍රමාණයක් තියෙනවා. සමහර වෙලාවට අපිට එකත් ප්‍රශ්නයක්.

ඉතින් මෙන්න මේ කියන ප්‍රායෝගික  ප්‍රශ්නවලට විසදුමක් තමයි NB-IoT කියලා කියන්නේ. 

මීට අමතරව තාක්ෂණික වෙනස් කම්කිහිපයකුත්  NB-IoT  වල තියෙනවා.
 දැනට මම NB-IoT ගැන කතා කරන එක නවත්තනවා. මොකද NB-IoT වලට කලින් IoT වල තව දැනගන්න දේවල් ගොඩක් තියෙනවා. ඒක නිසා අපි මුලින්ම ඒ ගැන කතා කරමු.

IoT ඉගෙන ගන්න මොනවද ඕනේ ?

මම මුලින්ම කිව්වා IoT device එකක් internet එක්ක connect කරන්න ඕනෙ කියල. ඉතින් මේ වැඩේ කරගන්න ක්‍රම කිහිපයක්ම තියෙනවා. Arduino + Ethernet shield, Arduino + GSM shield, NodeMCU, RaspberryPi කියනේ IoT development වලට ගැලපෙන් Development kit කිහිපයක්.
කොහොම උනත් මම මේ IoT පාඩම ඉස්සරහට කරගෙන යන්නේ NodeMCU board එකකින්. ඒ කට ප්‍රධානම හේතුව තමයි. මිල අඩුවීම සහ Internet එක්ක connect 
වෙන්න අමතර උපාංග ඕනෙ වෙන්නේ නැතිවීම්.

මිට අමතරව WiFi router එකක් හරි mobile hotspot දාන්න පුලුවන් device එකක් ඕනෙ වෙනවා. 


Buy NodeMCU !

Click here to buy NodeMCU දින දෙකක් ඇතුලත නිවසටම ගෙන්ව ගන්න පුලුවන්. 


මීළග ලිපියෙන් NodeMCU ගැන අපි වැඩිපුර කතාකරමු.

Arduino පාඩම 14 - පින් 3 කින් පින් 8 ක වැඩ.

8:56 PM 2

ගොඩ කාලෙකට පස්සේ තමයි arduino ගැන post එකක් ලියන්න පුලුවන් උනේ. මේ පාර පාඩමෙන් මම කතා කරන්න යන්නේ decoders ගැන.

Decoders කියන්නේ මොකක්ද ?

decoders කියන්නේ අපි ලබාදෙන bit කියපයක් තවත් bit කිහිපයකට වෙන් කරලා output එකක් ලබාදෙන්න පුලුවන් දෙයකට. උදාහරණයක් විදිහට කිව්වොත් අපිට arduino එකේ pin 3 භාවිතා කරලා වෙන වෙනම LED 8 ක් control කරන්න බැහැ. නමුත් decoder එකක් use කලොත් අපිට decoder එකට arduino එකේ pin 3 කින් input ලබාදීලා decoder එකෙන් pin 8 කින් output ගන්න පුලුවන්. තවත් විදියකට කිව්වොත් arduino එකේ pin 3 ක් විතරක් use කරලා වෙන වෙනම LED 8 ක් කොන්ට්‍රොල් කරන්න පුලුවන්.

මන් කලින් විස්තර කලේ pin 3 කින් input දීලා pin 8 කින් output ගන්න පුලුවන් decoder එකක් ගැන. මේ වගේ decoder වලට 3 bit to 8 bit decoder කියලා කියනවා. මේ වගේ තවත් decoders වර්ග තියෙනවා.

2 bit to 4 bit decoder       - input 2 කින් output 4 ක්
4 bit to 16 bit decoder     - input 4 කින් output 16 ක්
5 bit to 32 bit decoder     - input 5 කින් output 32 ක්

Decoders වැඩ කරන්නේ කොහොමද ?

decoders වර්ග කිහිපයක්ම තිබුනත් මේවා හැම එකක්ම වගේ වැඩ කරන්නේ පොදු ආකෘතියකට. මේ ආකෘතිය තේරුම් ගත්තහම ඕනේම decoder එකකින් වැඩ කරන්න පුලුවන්. 
මන් මෙතන කියලා දෙන්නේ 74HC237 කියන 3 bit to 8 bit decoder එක use කරන්නේ කොහොමද කියලා.74HC238 IC එකත් කිසිම වෙනසක් නැතුව use කරන්න පුලුවන්.  IC එක රු. 60-80 ත් අතර ගානකට ලංකාවේ මිලදී ගන්න තියෙනවා.

මේ decoder තවත් විශේෂත්වයක් තියෙනවා. ඒ මේ pin 8 න් අපි HIGH කරන පින් එක ඇරුනහම අනිත් pin ඔක්කොම LOW වෙනවා. ඒ කියන්නෙ අපිට වෙලාවකට output ගන්න පුලුවන් එක පින් එකකින් විතරයි.

  • සාමාන්‍ය විදිහට මේ IC එකට GND, VCC pin වලට power එක දෙන්න ඕනේ. 
  • Y0-Y7 වෙනකන් තියෙන්නේ Output pin 8
  • A0-A2 වෙනකන් තියෙන්නේ Inout pin 3
  • E1, E2, E3 කියන්නේ enable pin (සාමාන්‍යයෙන් E1, E2 ground කරලා E3 vcc connect කරනාවා)






සාමාන්‍යයෙන් decoder වැඩ වලදී මේ 4,5 පින් ground කරලා 6 pin එක 5v වලට connect කරනව. උඩ වගුවේ තියෙන්නේ input pin වල voltage level, HIGH සහ LOW කරහම output pin වල voltage වෙනස් වෙන විදිහ.

Arduino සමග decoder

මම මෙතනදී කරන්න යන්නේ push button එකක් ඔබන වාරයක් ගානේ LED එක එක on කරන්න යන්නේ. මේවගේ වැඩක් කරන්න LED 8 කට arduino ouputs 8 ක් ඕනෙ උනත් මම decoder එකක් භාවිතා කරලා arduino ouputs 3 කින් මේක කරලා තියෙන්නේ.

Components

Arduino              x1
74HC238 IC       x1
LED                   x8
680Ohm Resi.    x2
Push button        x1

Diagram


Arduino Sketch


Code explain 

setup එකේදී සාමාන්‍ය විදිහට 4,5,6 pin output විදිහටත්, push button එකට හයි කරපු 11 pin එක input විදිහටත් setup කරගෙන තියෙනවා.

ඊට පස්සේ මම LEDon කියලා function එකක හදාගෙන තියෙනවා. මේක තමයි මෙතන තියෙන වැදගත්ම code කොටස. LEDon කියන function එක call කරන තැන d1,d2,d3 කියන parameters වලට ලබාදෙන අගයන් අනුව 4,5,6 කියන pin වල status වෙනස් වෙනවා. ඒ කියන්නේ pin HIGH ද ? LOW ද ? කියලා තීරණය වෙන්නේ d1,d2,d3 කියන parameters වලට ලබාදෙන අගයන් අනුව.

උදාහරණයක් විදිහට  LEDon(0,0,0); විදිහට function එක call කලා කියලා හිතමු. එතකොට වෙන්නේ 4,5,6 කියන pin 3 ම low වෙන එක. එතකොට comment එකේ තියෙනවා වගේ පළවෙනි LED එක විතරක් on වෙලා අනිත් LED 7 ම off වෙනවා.
LEDon(0,0,1); විදිහට function එක call කලා කියලා හිතමු. එතකොට වෙන්නේ 4,5 කියන pin 2 low වෙලා 6 pin එක high වෙන එක. එතකොට දෙවෙනි LED එක විතරක් on වෙලා අනිත් LED 7 ම off වෙනවා.

මේක හරියට වැඩ කරන්නේ truth table එකක් වගේ. මේ විදිහටම තමයි ඕනම decoder එකක් වැඩ කරන්නෙ.

ඊට පස්සේ loop එකේදී මුලින්ම බලනවා ll පින් එක high වෙලාද කියලා. 11 pin එක high වෙලා නම් counter කියන variable එකේ අගය 8 ට අසමානද කියලා බලනවා. අසමාන නම් counter කියන variable එකේ දැන් තියෙන අගයට තව එකක් එකතු වෙනවා. variable එකේ අගය 8 ට අසමාන නැත්නම් ඒ කියන්නේ අගය 8 නම්, variable එකේ අගය 1 කරනවා.

ඊට පස්සේ case statement එකක් දාලා counter එකේ තියෙන අගය අනුව අදාල LED එක on කරනවා. article එක හොදයි නම් අනිත් අයටත් බලන්න share කරන්න.

demo





Coreldraw සිංහලෙන් 3 - Corel draw Tools ගැන දැනගමු.

10:06 AM 3
අද මං මේ corel draw video පාඩම් මාලාවේ 3 වෙනි විඩියෝ පාඩම මගින් කතා කරන්න බලාපොරොත්තු වෙන්නේ අපට අවශ්‍යම tools සහ dockers පිළිබදවයි.

Coreldraw සිංහලෙන් 2 - Corel draw Interface ඒක ගැන දැනගමු.

10:02 PM 3
Corel Draw වලින් වැඩ පටන් ගන්න කලින් interface එක ගැන පොඩි අවබෝධයක් තියෙන්නම ඕනේ. එතකොට තමයි අපිට නිර්මාණයක් පහසුවෙන් කරගන්න පුලුවන් වෙන්නේ. නැත්නම් ඉතින් වෙන්නේ design කරන එක පැත්තකින් තියලා option හොය හොය ඉන්න. ඒක නිසාම මේ පාර video එකේ අපි කතා කරන්නේ Corel Draw එකේ interface එක ගැනයි. corel draw එකේ panel, tool වගේම menu ගැනත් අද කතා කරවා.

Coreldraw සිංහලෙන් - Graphic Design සහ Coreldraw පිළිබද මුලික හැදින්විම.

1:04 PM 2

හැමෝම පිලිගන්නවා අද ඉදලා අපේ සොෆ්ට්වෙයාලන්තය Page එකේ ආරම්භ වෙන Coreldraw පාඩම් මාලාවට. මේ Lesson serious එක video විදිහට තමයි කරන්නේ. මේක කරන්නේ අපේ page එකට අලුත්නි එකතු වුනු Lakshan Harsha සහෝදරයා.


මෙක තමයි මගේ පළවෙනි POST එක.. හැමදාම code ඒක්ක ඔට්ටු ෙවන අපේ  කොල්ලෝ  කෙල්ලෝ ටික ඒක්කහු කරගෙන පොඩි අාර්ට්ලි වැඩක් කරන්නයි මගේ idea ඒක. ඉස්සරහට මේ blog ඒකත් ඒක්ක set වෙලා ඔයාලට Graphic design ගැන  තෙරෙන සින්හලෙන්ම කියලා දෙන්නයි මගේ idea ඒක තියෙන්නේ. මං ඉස්සරහට අපේ මේ blog ඒකෙ ඉන්න කස්ටියට Photoshop Illustrator Coreldraw Indesign Lightroom වගේ හැම software ඒකක් ගැනම කතා කරන්න හිතාගෙන ඉන්නවා. software ඒකක් open කරපු ගමන් design ඒකක් හදනවට වඩා මේ හැම software ඒකක් ගැනම හොද knowledge ඒකක් ඒන විදියටයි මං මේ Tutorial හදලා තියෙන්නේ ඒහෙනම් අපි අද ඉදන් බෙලි කපන්න අත පය ගලනවන්න ඉගෙන ගමු. අාාාා කට්ටිය ඒකපාරට බය උනාද බය වෙන්න ඒපා අැත්තට බෙලි කපන්න නෙමේ අපි ඉස්සරහට කතා කරමු කොහොමද හොද designer කෙනෙක් වෙන්නෙ කියලා. අපි අද මුලින්ම කතා කරමු Graphic Design කියන්නේ මොකක්ද කියලා. මෙ video ඒක බලලා අඩු පාඩු කියන්නකෝ කස්ටිය. පළෙවනි ඒක නිසා අවුල් තියනවනම් මං සමාව ඉල්ලනවා මුලින්ම. ඒෙහෙනම් කොල්ලනෙ ලක්ෂාන්  කොල්ලා කැපුනා උබලා මට ෂාන් කියලම කියහල්ලකෝ..