TechWire

Category - Tutorials

Let’s Make a Nuclear Bomb

Nuclear Bomb

Nuclear Bomb

When you saw the title of this article, if you got an evil grin thinking that you can nuke your noisy neighbor after reading this, then you came to the WRONG place. Making a nuclear bomb may be simple in theory but complicated in a practical environment. So basically you cannot develop a weapon of mass destruction in your backyard. It needs a million dollar infrastructure and matured knowledge to research, develop, test and maintain weaponry.

Read More

Angular 2 ද ReactJS ද ?

මේ වෙනකොට Web Development කරන කෙනෙක් නම් Angular ගැන අහලා නැති වෙන්න බැහැ. පහුගිය කාලේ ඉහල ජනප්‍රියත්වයක් තිබුණු web framework එකක් නිසාත්, Google product එකක් නිසාත් මේ තරමට ප්‍රසිද්ධ වෙලා තියනවා Angular, ReactJS ගැන කලින් ලිව්ව article එක මෙතනින් බලන්න පුළුවන්.  Read More

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

අද වෙනකොට කාගේත් කතාබහට ලක්වෙන ඒ වගේම නිතර අහන්න ලැබෙන වචනයක් තමයි මේ Bitcoin කියන්නේ. සරලව පැහැදිලි කරනවා නම් Bitcoin කියන්නේ අන්තර්ජාලය තුළ භාවිතා කරන ඉලෙක්ට්‍රොනික මුදල් ඒකකයක්. එහෙමත් නැතිනම් cryptocurrency කියන වර්ගයට තමයි අයත් වෙන්නේ. Bitcoin නිර්මාණය වෙන්නේ 2009දී Satoshi Nakamoto ලෙස හඳුන්වාගත් පරිගණක ක්‍රමලේඛකයෙක් විසින්. මේ ලිපිය ලියන වෙලාවේදී Bitcoin එකක් ඇමෙරිකානු ඩොලර් 2361.28ක් වෙනවා. Bitcoin මේ තරමට ජනප්‍රිය වෙන්න ඒකත් එක හේතුවක්. Read More

ඵලදායී ලෙස තොරතුරු සෙවීමට Google හි ඇති සැඟවුණු උපක්‍රම 10ක්

අන්තර්ජාලය කියන්නේ විශ්වීය දැනුම් සම්භාරයක් කිව්වොත් නිවැරදියි. අපිට අවශ්‍ය ඕනෑම දෙයක් පිලිබඳව තොරතුරු අන්තර්ජාලය තුළින් සොයා ගන්නට අද අපිට පුළුවන්. තාක්ෂණයේ දියුණුවත් අධිවේගී අන්තර්ජාල සබඳතා නිසාත් ඕනෑම තොරතුරක් සොයා ගැනීමට අපිට ගත වන්නේ තප්පර කිහිපයක් වැනි සුළු කාලයක්.

අන්තර්ජාලයේ ඇති තොරතුරු සොයා ගැනීමට අපිට උපකාරී වෙන්නේ සෙවුම් යන්ත්‍ර හෙවත් search engines. විවිධ සෙවුම් යන්ත්‍ර අතරින් Google කියන්නේ අද අපි හැමෝම භාවිතා කරන සෙවුම් යන්ත්‍රයක්. Google කොච්චර ජනප්‍රිය ද කියනවා නම් Internet search කරනවා කියනවා වෙනුවට Google කරනවා කියලත් අපි කියන්න පුරුදු වෙලා ඉන්නවා.

කලිනුත් මම සඳහන් කළා වගේ අන්තර්ජාලය කියන්නේ තොරතුරු රාශියක එකතුවක්. එත් සමහර වෙලාවට අපිට හරියටම අවශ්‍ය දේ සොයා ගන්න අපිට ටික වෙලාවක් ගත වෙනවා. අන්තර්ජාලයේ ඒ පිලිබඳ තොරතුරු ඕනෑ තරම් තිබුනත් අපි search කරන ආකාරය අනුව ඒ සඳහා වැයවෙන කාලය වෙනස් වෙන්න පුළුවන්. ඉතින් අද මම කියන්න යන්නේ Google search engine එක මගින් අපිට අවශ්‍ය තොරතුරු ඉක්මනින් සහ වඩාත් ඵලදායි විදිහට සොයා ගන්න භාවිතා කරන්න පුළුවන් උපක්‍රම කිහිපයක් ගැන.

Read More

Android, iOS වලට වඩා RAM එක වැඩිපුර පාවිච්චි කරනවාද?

ඔබ iOS දුරකථන පරම්පරාවක specifications සහ එම වසරේම එලි දැක්වුණු හොඳ වර්ගයේ Android දුරකථනයක specifications සංසන්ධනය කලේ නම් ඔබ iPhone හි අඩු RAM ධාරිතාවයක් ඇති බව පෙනෙනු ඇත. එහි ප්‍රතිපලයක් ලෙස iOS හි ඇති apps, Android apps වලට වඩා අඩු මතක ධාරිතාවයකින් යුතුව ක්‍රියා කරන බවට  නිගමනය  කරනු ඇත . සැබැවින්ම Android මෙහෙයුම් පද්ධතිය iOS මෙහෙයුම් පද්ධතියට වඩා වැඩි මතක ධාරිතාවයක් භාවිතා කරනවාද?

Read More

Why Arduino?

Embedded Systems සමඟ ගනුදෙනුව ආරම්භ කරන බොහෝ දෙනෙක්ට සහ එහි විශේෂඥයන්ට පවා නැතිවම බැරි උපකරණයක් විදිහට Arduino හඳුන්වන්න පුළුවන්.

මේ ලිපියෙන් මම කථා කරන්න බලාපොරොත්තු වෙන්නේ ඇයි අපි Embedded Systems නිපදවීම් කරන අය බහුලව භාවිතා කරන Raspberry Pi වැනි උපකරණයක් භාවිතා නොකර Arduino භාවිතයට යොමු වෙන්නේ කියලා.

එයට ලබා දෙන්න පුළුවන් කෙටිම පිළිතුර, Arduino වල ඇති සරල බව.

Embedded Systems සමඟ ක්‍රියා කරන්න මුල් වරට යොමුවන කෙනෙක්ට සරල, ඉක්මන් ආරම්භයක් ලබා ගන්න පුළුවන් උපකරණ අතර Arduino මුල් තැනක් ගන්නවා. එයට හේතු කිහිපයක් තිබෙනවා,

  • අඩු මිලකට ලබා ගත හැකි වීම
  • ඉගෙනීමට ඇති පහසුව
  • වෙනත් ඉලෙක්ට්‍රොනික උපකරණ හා සම්බන්ධ කිරීමට ඇති පහසුව

දැන් අපි මේ කරුණු පිළිබඳව වෙන වෙනම සලකා බලමු.

අඩු මිලකට ලබා ගත හැකි වීම

වෙලඳපොලේ මේ වන විට Arduino වර්ග කිහිපයක්ම තිබෙනවා. ඔබ Arduino ප්‍රධාන වෙබ් අඩවියේ https://www.arduino.cc/en/Main/Products පිටුවට ගියොත් දැකගන්න පුළුවන් Arduino වර්ග විශාල ප්‍රමාණයක් ඔබට තොරාගත හැකි බව. මේ වර්ග අතරින් බහුලවම භාවිතා වන Arduino Uno උපකරණයක් සමඟ ක්‍රියා කරන ආකාරය මීට පසු ලිපි වලදි සාකච්ඡා කෙරෙන්නේ. (නමුත් එම ලිපි වල එන කරුණු, බොහෝ අවස්ථා වලදී Arduino Nano, Arduino Mini, Arduino Micro, Arduino Mega වැනි උපකරණ වලටත් එලෙසම අදාළයි. )

විවිධ වර්ගයේ Arduino කිහිපයක්

මෙම Arduino Uno උපකරණයක් රු.1000 කටත් වඩා අඩු මුදලකට ඔබට ලබාගත හැකි වීම ඉතා විශේෂයි. මීට අමතර Arduino Mini, Arduino Nano වැනි උපකරණ එයටත් වඩා අඩු මුදලකට ලබා ගත හැකියි.

Arduino Uno

 

ඉගෙනීමට ඇති පහසුව

Arduino වල තිබෙන විශේෂම ලක්ෂණය තමයි ඉගෙනීමට ඇති පහසුව. එයට හේතු වන කරුණු අතර තිබෙන ප්‍රධානම කරුණ තමයි Arduino වලටම විශේෂ වූ ක්‍රමලේඛ භාෂාවක් (Programming Language) තිබීම. එය ඉතාමත් පහසු කිසිදු මූලික දැනුමක් නැති අයෙකුට වුනත් ලෙහෙසියෙන්ම ඉගෙන ගත හැකි ක්‍රමලේඛ භාෂාවක්. ඒ වගේම ඔබට ඉතාමත් සතුටු විය හැකි දෙයක් Arduino වල තිබෙනවා. ඔබ Arduino උපකරණය පරිගණකයට සම්බන්ධ කර මිනිත්තු කිහිපයක් තුලම LED නිමෙන දැල්වෙන රටා මවන්න හැකියාව ලැබෙනවා. එය ආරම්භකයෙකුට ඉදිරි ගමන සඳහා විශාල පෙළඹවීමක් ඇති කරන බව මගේ විශ්වාසයයි. ඔබ භාවිතා කරන්නේ Arduino Uno උපකරණයක් නම් සම්බන්ධ කිරීමට wire පවා නොමැතිව LED බල්බ සමඟ ක්‍රියාත්මක වන ආකාරය පරීක්ෂා කරන්න පුළුවන්.

 

වෙනත් ඉලෙක්ට්‍රෝනික උපකරණ හා සම්බන්ධ කිරීමට ඇති පහසුව

Arduino වලට LED, Motors, නොයෙක් ආකාරයේ සංවේදක උපකරණ (Sensors) හා වෙනත් නොයෙක් උපකරණ කිසිම අපහසුවකින් තොරව සම්බන්ධ කිරීමට හැකියාව ලැබෙනවා. මේ පිළිබඳව ඔබට ඉදිරි ලිපි වලදී බොහෝ කරුණු දැනගන්නට ලැබේවි.

Arduino භාවිතා කර සාදන ලද රෙබෝ යන්ත්‍රයක්

Get to know about Ultrasonic Sensor HC-SR04

Ultrasonic Sensor HC-SR04 is used to measure distance. We can find precise distance to an object from the sensor, or can used to detect when something is within range of the sensor. It can measure distance with high accuracy from 2cm to 400 cm.  Its operation is not affected by darkness or light .Because it uses sound to measure distance.

Ultrasonic range finder measure distance by emitting a pulse of ultrasonic sound that travels through the air until it hits an object. It measure the time of the sound pulse which travel forward & back to the sensor when the pulse hits the object. Then it sends an electrical signal to the Arduino with information about the time that sonic pulse traveled.

Ultrasonic range finder has 2 transducers.

  • Transmitting transducer
  • Receiving transducer

sensor

Read More

Web Development සඳහා අවශ්‍ය Front-end Tools

අද කාලෙ අපි Internet ගියොත් ලස්සන websites දකින්න පුළුවන්. මේව ලස්සනට හදල ගන්න ගොඩක් මහන්සි වෙන්න ඕන. හැබැයි ඒවා නිර්මාණය කරන්න භාවිතා කරන්න පුළුවන් tools ගැන හොඳ අවබෝධයක් තියෙනව නම් වෙන්න ඕන මහන්සියේ ප්‍රමාණය අඩු කරගන්න පුළුවන්. Website එකක් ගත්තොත් අපිට ඒකෙ front-end හා back-end කියල development stages දෙකක් හඳුනාගන්න පුළුවන්. මේ article එකෙන් front-end එක develop කරන්න ඕන හොඳ tools ගැන තමයි කියන්න යන්නෙ.

Read More

Introduction to Microcontrollers

ඔබගේ නිවසේ මේ වන විට පරිගණක(Computers) කීයක් තියෙනවද? එහෙම නැත්නම්, ඔබ එදිනෙදා ජීවිතයේදී පරිගණක කීයක් භාවිතා කරනවාද? මම මේ ප්‍රශ්නය ඔබෙන් ඇහුවොත් ඔබේ උත්තරය මොකක්ද?

ඔබ ඇතැම් විට පිළිතුරු දෙයි, මම භාවිතා කරන්නේ Laptop එක විතරයි. එහෙම නැත්නම් Laptop එක සහ Desktop Computer එක විතරයි යනුවෙන්. නමුත් මම ඉතාම විශ්වාසයෙන් කියන්නේ, ඔබේ පිළිතුර වැරදියි. ඔබ නොදන්නවා වුනත් ඔබ අතේ බඳින Digital ඔරලෝසුව පරිගණකයක්. ඔබ නොදන්නව වුනත් ඔබේ දුරකථනය, ගණක යන්ත්‍රය(Calculator), නිවසේ ඇති WiFi Router එක ආදී බෙහොමයක් ඉලෙක්ට්‍රොනික උපකරණ, පරිගණක.

ඔබ සාමාන්‍ය ජීවිතයේදී පරිගණක ලෙස හඳුන්වන උපකරණ වන Desktop පරිගණක, Laptop පරිගණක වගේම Notebook, Smart Phone, Tablets වලට කියන්නේ පොදු කාර්‍ය පරිගණක (General Purpose Computers) කියලා. මම මීට පෙර සඳහන් කරපු අනෙක් පරිගණක හඳුන්වන්නේ Embedded Systems(නිහිත පද්ධති) කියලා. පොදු කාර්‍ය පරිගණක සහ Embedded Systems අතර තිබෙන ප්‍රධානම වෙනස ඔබට හිතන්න පුලුවන්ද? ඒ පිළිබඳව සාකච්ඡා කරන්න පෙර Embedded Systems ඔබේ ජීවිතයට කොතරම් සමීපද යන්න පැහැදිලි වෙන්න පහත රූපය ඉදිරිපත් කරන්නම්. මේ රූපයෙන් පෙන්වන්නේ නවීන මෝටර් රථයක Embedded Systems භාවිතා වන කොටස් කිහිපයක්.

නවීන මෝටර් රථයක Embedded Systems භාවිතා වන අවස්ථා.

නවීන මෝටර් රථයක Embedded Systems භාවිතා වන අවස්ථා.

මේ පරිගණක වර්ග දෙක අතර තිබෙන ප්‍රධානම වෙනස තමයි, පොදු කාර්‍ය පරිගණක වලින් පරිශීලකයාට අවශ්‍ය පරිදි අවශ්‍ය කර්‍යය කරගන්න පුලුවන් වීම සහ Embedded Systems යම් නිශ්චිත කාර්‍යයක් සඳහාම නිපදවා තිබීම. අත් ඔරලෝසුවෙන් කරන්නේ වෙලාව පෙන්වන එක විතරයි. ගණක යන්ත්‍රය‍ෙන් කරන්නේ ගණිත කර්ම විතරයි. ඔබට අවශ්‍ය විදිහට ඒවා ක්‍රියාත්මක කරන්න බැහැ. සරලවම කියනවනම් ඔබට කරන්න පුළුවන් එම උපකරණ වලට Input එකක් දීම සහ Output එකක් ගැනීම විතරයි. ඒ අතර සිදුවන ක්‍රියාවලිය ඔබට පාලනය කරන්න බැහැ. එහෙත් General Purpose Computers වල අපට ඒ අතර සිදුවන ක්‍රියාවලිය පාලනය කරන්න හැකියාව තිබෙනවා. ඒ සඳහා තමයි C, Java, C++, C#, Python වගේ Programming Languages(ක්‍රමලේඛ භාෂා) භාවිතා කරන්නේ.

විවිධ Programming Languages වර්ග

විවිධ Programming Languages වර්ග

මේ පරිගණක වර්ග දෙකේ ඉහත සඳහන් කරපු වෙනස්කම ඇතිවෙන්න හේතුවන උපාංග දෙකක් තිබෙනවා. General Purpose Computers වල භාවිතා වන Processor එක සහ Embedded Systems වල භාවිතා වන Microcontroller තමයි ඒ උපාංග දෙක. මේ උපාංග දෙකේ ප්‍රධාන වෙනස්කම් කිහිපයක් පහතින් සඳහන් කරන්නම්.

Processors Microcontrollers
මිල ඉතා අධිකයි. මිල ඉතා අඩුයි.
විදුලි පරිභොජනය අධිකයි. සුළු විදුලි පරිභෝජනයක් ඇත.
RAM, ROM, I/O Ports පිටතින් සම්බන්ද කළ යුතුයි. RAM, ROM, I/O ports වෙනම සම්බන්ද කළ යුතු නැත. අභ්‍යන්තරයේම ඇත.
පරිශීලකයාට අවශ්‍ය කාර්‍යයන් ඉටු කර ගැනීමට සකසා ඇත. එක් නිශ්චිත කාර්‍යයක් පමණක් ඉටු කර ගැනීමට සකසා ඇත.

 

RAM, ROM, I/O Ports පිළිබඳව දැනුමක් ඔබට ඇතැම් විට නැති විය හැකියි. ඉදිරි ලිපි වලදී ඒ පිළිබඳ දැනුම ඔබට ලබා ගත හැකියි. ඉහතින් සඳහන් කරපු මූලික දැනුම ඔබට ඉදිරි ලිපි වලදී මෙන්ම සාමාන්‍ය ජීවිතයේදීත් ඉතා වැදගත් වේවි.

මින් ඉදිරියට ඇති ලිපි වලදී අපි සාකච්ඡා කරන්න බලාපොරොත්තු වන්නේ Microcontrollers පිළිබඳව පමණයි. ආරම්භයක් ලෙස ඔබට වැඩිදුර අධ්‍යනය සඳහා දැනට ලෝකයේ බහුලවම භාවිතා වන Microcontrollers වර්ග දෙක පහතින් දක්වන්නම්.

  • Atmel
  • PIC
Atmel වර්ගයේ මෛක්‍රොෙකොන්ට්‍රෝලයක්.

Atmel වර්ගයේ මෛක්‍රොෙකොන්ට්‍රෝලයක්.