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

8:56 PM 3 Comments

ගොඩ කාලෙකට පස්සේ තමයි 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 2 Comments
අද මං මේ corel draw video පාඩම් මාලාවේ 3 වෙනි විඩියෝ පාඩම මගින් කතා කරන්න බලාපොරොත්තු වෙන්නේ අපට අවශ්‍යම tools සහ dockers පිළිබදවයි.

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

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

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

1:04 PM 1 Comment

හැමෝම පිලිගන්නවා අද ඉදලා අපේ සොෆ්ට්වෙයාලන්තය 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 ඒක බලලා අඩු පාඩු කියන්නකෝ කස්ටිය. පළෙවනි ඒක නිසා අවුල් තියනවනම් මං සමාව ඉල්ලනවා මුලින්ම. ඒෙහෙනම් කොල්ලනෙ ලක්ෂාන්  කොල්ලා කැපුනා උබලා මට ෂාන් කියලම කියහල්ලකෝ..

Arduino පාඩම 13 - Code කරන්නේ නැතුව Arduino PC App හදන හැටි.

11:27 AM 14 Comments

මම මේ පාර article එකෙන් කතා කරන්න යන්නේ Arduino එක PC එකත් එක්ක සම්බන්ධ කරන program එකක් හදා ගන්න හැටි ගැන. මීට කලින් පාඩමක මම මේක කරන හැටි ගැන සඳහන් කලා නමුත් ඒ පාඩමේ මම කතා කලේ VB.net හරි C#.net යොදාගෙන ඒ විදිහට program එකක් ලියන හැටි ගැනයි. එහෙමත් නැත්නම් වෙන මොකක් හරි language එකක් use කරලා තමයි program එක ලියන්න වෙන්නේ.

නමුත් මම මේ පාර කියලා දෙන්නේ PC එකේ ඉදලා arduino එක control කරන්න පුලුවන් computer program එකක් කිසිම computer language එකක් use නොකර හදාගන්නේ කොහොමද කියන එක ගැනයි. 

මෙතනදී මම උදාහරණයක් විදිහට කියලා දෙන්න හදන්නේ RGB LED එකක පාට වෙනස් කරන්න පුලුවන් program එකක් code කරන්නේ නැතුව හදාගන්නේ කොහොමද කියන ගැනයි.

මේක කරන්න මම පාවිච්චි කරන්නේ App Make කියන software එක. මේ software එක 100% ක්ම මගේම නිර්මාණයක්. මේකෙ තවත් විශේෂත්වයක් තියෙනවා ඒ තමයි program එකට ගැලපෙන Arduino serial data code කොටස  එක auto generate වෙනවා. මේක ඇත්තටම අලුත් වැඩක්. මම දන්න තරමින් මේ වගේ software එකක් වෙන නෑ. 



මේ software එක මම Arduino වලට හදපු  aulternative IDE එක වන Codino IDE එක 2nd version එකත් එක්ක ලැබෙන software එකක්. App Make එක install කරග්න්න Codino IDE v2 setup එක download කරලා install කරගන්න ඔනේ. install කරගත්තට පස්සේ

Download setup here : http://codinostudio.com/

Start > All Programs > Codino > Codino IDE > App Make
Desktop > App Make
Codino IDE > Tools > App Make

වගේ ඕනම ක්‍රමයකට App Make open කරගන්න පුලුවන්. 

PC Program එක සෑදීම.

මේකට මුලින්ම App Make open කරගන්න ඕනේ. open කරගත්තට පස්සේ පහල තියෙනවා වගේ interface එකක් දකින්න පුලුවන්.

 ඊට පස්සේ කරන්න තියෙන්නේ  new project උඩ click කරලා Window settings window එක ලබා ගන්න එකයි. එතනදී project එකට කැමති නමක් දීලා Done කරහම App එකේ main window එක desgin කරන අවස්තාවට යන්න පුලුවන්.

එතනින් එහාට කරන්න තියෙන්නෙ බොහොම සුළු දේවල් ටිකක්. ඒ දේවල් ටික පහල තියෙන video එකේ තියෙනවා.

කාගාව හරි RGB LED එකක් නැත් නම් ඒ වෙනුවට Red, Green, Blue LED 3 ක් use කරන්න පුලුවන්. එතකොට circuit එක පහල විදිහට තමයි එන්නේ.


වැඩ අවසන් කිරීම.

දැන් video එකේ විදිහට කරහට පසේ program එකේ exe file එක ගන්න ඕනෙනේ ඒකට කරන්න තියෙනේ පොඩි දෙයක්. program එක run කරාට පස්සේ අව්ලක් නැතුව වැඩ කරනවනම් 
Action > Make EXE  click කරහම ඇති. ඊට පස්සේ exe file එක save වෙන්න ඕනේ folder එක select කරහම exe file එක ඒ folder එකේ save වෙනවා.



මෙහෙම save කරහම file දෙකක් create වෙනවා. මේ හදපු වෙන computer එකක run කරන්න ඕනෙ නම් මේ file 2 ක විතරක් copy කරහම ඇති.

මේ විදිහට RGB LED විතරක් නෙමෙයි, Servo motor, Fan, Relay, Fan, Light, Displays වගේ ගොඩක් දේවල් control කරන්න පුලුවන් තවත් program ගොඩක් code නොකර හදා ගන්න පුලුවන්.

software එක හොදයි කියල හිතෙනවන codino page එකත් like කරන්න. http://facebook.com/codino

මේ ගැන තවත් විස්තර හා videos  http://codinostudio.com/හරහා ලබා ගන්න පුලුවන්.

මේ article එක හොදයි නම් share කරන්න අමතක කරන්නත් එපා. මොනව හරි නොතේරෙන දෙයක් තියෙනවනම් comment එකක් දාලා අහන්න.