আরডুইনো শিখি - পাঠ ২ঃ সফটওয়্যার পরিচিতি , প্রোগ্রাম করার নিয়মাবলী এবং প্রথম প্রোগ্রাম করা

আরডুইনো তে আমরা যে জিনিস টা দিয়ে প্রোগ্রাম করব সেটা কে একটু চিনে নেয়া যাক।

কিছু গুরুত্বপূর্ণ তথ্যঃ

আরডুইনো তে আমরা যে ফাইল টি তৈরি করব তাকে sketch বলে।

Verify sketch ব্যাবহার করা হয়,লেখা প্রোগ্রাম টি কম্পাইল করার জন্য।

Compile and upload এর কাজ হল প্রোগ্রাম টি কম্পাইল করা এবং তৈরি হওয়া হেক্স ফাইল USB তে সংযুক্ত আরডুইনো তে লোড করা।

নতুন ফাইল নেয়ার জন্য ব্যাবহার করা হয় New sketch, ফাইল ওপেন করার জন্য open sketch এবং সেভ করার জন্য save sketch বাটন ।

আর নিচে কালো রঙের অংশ Error Console খুব গুরুত্বপূর্ণ একটা অংশ । প্রগ্রামে কোন ভুল বা সতর্কতা বা অন্য বার্তা এই console এর মাধ্যমে প্রদর্শিত হয় ।

এবার চলুন আর একটু কাজ করা যাক। Arduino ওপেন করে টুলবার থেকে FILE এ ক্লিক করি। এবার preference এ ক্লিক করি তারপর compilation এর চেকবক্স এ একটা টিক দিয়ে Ok তে ক্লিক করি ।

 

 

 

এবার প্রোগ্রাম করতে শুরু করা যাক।
প্রোগ্রাম করার সময় প্রথম যে কথা টা মনে রাখতে হবে তা হল আমরা যে IDE তে প্রোগ্রাম লিখব সেটা case sensitive সুতরাং বড় হাতের অক্ষরছোট হাতের অক্ষর এর দিকে একটু খেয়াল রাখতে হবে  

আমরা প্রোগ্রাম লিখব সাধারনত দুইটা ফাংশন ব্যাবহার করে
একটা  void setup( )   এবং অন্যটা void loop( )

void setup( )  ফাংশন এর ভিতর লিখতে হবে আমরা arduino এর কোন পিন কে কিভাবে ব্যাবহার করতে চায় ( ইনপুট বা অউটপুট ) এবং প্রয়োজন মত সেট আপ করার জন্য প্রয়োজনীয় নির্দেশনা।

ধরুন আমরা এখন ১৩ নং পিনে একটা LED সংযুক্ত করে জ্বালাতে চাই তো আমাদের পিন টাকে আউটপুট হিসাবে ব্যাবহার করতে হবে।তো এর জন্য ১৩ নম্বর পিনটাকে কনফিগার করতে হবে ঠিক এভাবে

void setup() 
{
  pinMode(13, OUTPUT);
}



লক্ষ্য করি pinMode ফাংশন টা হল পিনের অবস্থা বুঝানোর জন্য ব্যাবহার করা হয়। ব্রাকেট এর ভিতর “13” সংখ্যা টা হল পিনের নাম্বার আর কমা দিয়ে লিখতে হয় পিনটি কি ভাবে ব্যাবহার করা হবে “ইনপুট” বা “আউটপুট”

এখন pinMode দিকে খেয়াল করি, এর সব ছোট হাতের অক্ষর কিন্তু “M” বড় হাতের আবার “ইনপুট” বা “আউটপুট” লিখতে হবে বড় হাতের অক্ষরে ।

একটা গুরুত্বপূর্ণ কথা বলা হয় নি । সেটা হল স্বাভাবিক অবস্থায় ARDUINO এর operating voltage হল ৫ ভোল্ট এবং লজিক ভোল্টেজ হল “০ ভোল্ট” এবং “৫ ভোল্ট”

এখন আমরা যদি “০ ভোল্ট” কে সফটওয়্যার এর ভাষায় আরডুইনো কে বুঝাতে চাই তবে আমদের যে কম্যান্ড ব্যাবহার করতে হবে তা হল “0” অথবা “LOW”
আবার যদি “৫ ভোল্ট” কে সফটওয়্যার এর ভাষায় আরডুইনো কে বুঝাতে চাই তবে আমদের যে কম্যান্ড ব্যাবহার করতে হবে তা হল “1” অথবা “HIGH”।

আমরা মূল প্রোগ্রাম লিখব যে অংশে সেটা হল void loop() ফাংশন এর ভিতরে।

সাধারনত  void loop( )  ফাংশন টি হল এমন একটি ফাংশন যার ভিতর কোন নির্দেশনা দিলে তা বার বার চক্রাকারে এক্সিকিউট করবে, মানে যা “never ending loop” এর মত কাজ করবে ।

অনেক কথা বলা হল। চলুন এবার প্রথম প্রোগ্রাম টি করা যাক।

আমরা একটা LED জ্বালাবো 12 নং পিন ব্যাবহার করে।

তার জন্য আমরা Arduino Uno বোর্ড টাকে নিচের ছবির মত করে সংযুক্ত করি।

 

Related Post

অথবা

 

 

void setup() 
{
  pinMode(12, OUTPUT);
}

void loop() 
{
  digitalWrite(12, HIGH);
}

এখন usb এর সাথে arduino সংযুক্ত করে আপলোড বাটন এ ক্লিক করি।

void loop এর ভিতর আমরা বলে দিয়েছি যে ১২ নং পিন হাই হবে সুতরাং LED এর একটা পিন যেহেতু GND এর সাথে সংযুক্ত আছে সেহেতু অন্য পিনটি তে ৫ ভোল্ট দিলে জ্বলে উঠবে। এখন যদি ১২ নং পিন “LOW” করে দি তবে কি হবে ?
তাহলে অবশ্যই LED টি জ্বলবে না ।

তো চলুন এখন আর একটা প্রোগ্রাম করা যাক যার উদ্দেশ্য থাকবে ১২ নং পিনে সংযুক্ত LED টাকে ১ সেকেন্ড অন্তর একবার জ্বালাবো একবার নিভাবো।

এখন আমারা নতুন একটা কথা বললাম “১ সেকেন্ড অন্তর”  মানে কোন কাজ করার জন্য সময় বেধে দেয়া।
এই কাজ টি করার জন্য একটা ফাংশন আছে delay( )

এই ব্রাকেট এর ভিতর যত সেকেন্ড দরকার তা মিলিসেকেন্ডে লিখে দিতে হবে ।

যেমনঃ delay(1000);  এক সেকেন্ডের জন্য

তাইলে প্রোগ্রাম টা দেখা যাক

void setup() 
{
  pinMode(12, OUTPUT);      //১২ নং পিনকে আউটপুট হিসাবে সেট করা 
}

void loop() {
  digitalWrite(12, HIGH);   //  ভোল্টেজ লেভেল হাই করার জন্য ( ৫ ভোল্ট ) 
  delay(1000);              //  এক সেকেন্ড দেরি করবে অথবা ১ সেকেন্ডের জন্য ১২ নং পিন কে হাই রাখবে 
  digitalWrite(12, LOW);    //  ভোল্টেজ লেভেল লো করার জন্য ( ০ ভোল্ট )
  delay(1000);              //  এক সেকেন্ড দেরি করবে ১ সেকেন্ডের জন্য ১২ নং পিন কে লো রাখবে 
}

 

এখন usb এর সাথে arduino সংযুক্ত করে আপলোড বাটন এ ক্লিক করি।

 

আর যারা proteus এ করতে চান তারা নিচের মত করে হেক্স ফাইল টি কপি করে

আরডুইনো এর উপর দুই বার ক্লিক করে Program file নামক বক্স এ পেস্ট করে ok তে ক্লিক করি। এখন রান বাটনে ক্লিক করি।

 

চিত্রঃ আরডুইনো IDE

চিত্রঃ Proteus

এই পাঠ টি পড়ার পর আমরা ৭ টি LED কে পর্যায়ক্রমে জালানোর চেষ্টা করি।

আগের পাঠে উল্লেখিত কাজ করা থাকলে সুবিধা হবে কারন আমি proteus এর ডিজাইন ফাইল দুটি করে দিচ্ছি।

সাথে থাকলো এই পাঠ এর কোড।

DOWNLOAD করুন
আপনাদের কাজ থাকবে 7 led.dsn এর জন্য কোড করা।

ধন্যবাদ সবাইকে   

 

আরডুইনো শিখি - পাঠ ১ঃ প্রাথমিক আলোচনা

This post was last modified on April 29, 2017 3:34 pm

ejbiswas

আমি "জয় বিশ্বাস", NWU এ EEE তে লেখাপড়া করছি। আমার সাথে যোগাযোগ করতে ফেসবুকে ম্যাসেজ করতে পারেন, fb/ejbiswas

কমেন্ট দেখুন

  • Really  nice And useful post.we need that's type of more post.

    Cancel reply

    Leave a Reply

    Your email address will not be published. Required fields are marked*

  • অসাধারন ভাই পরবর্তি ধাপের অপেক্ষায় রইলাম

    Cancel reply

    Leave a Reply

    Your email address will not be published. Required fields are marked*

Leave a Reply

Your email address will not be published. Required fields are marked*

Share
Published by

Recent Posts

করোনা ভাইরাস প্রতিরোধে হ্যান্ড ওয়াশ চ্যালেঞ্জ - হ্যান্ড ওয়াশ টাইমার তৈরি করুন সহজেই

করোনা ভাইরাসের ভয়াবহতা নিয়ে আপনাদের বলার মত কিছু নেই। এটি যেকোনো জায়গায় থাকতে পারে এবং…

March 24, 2020

আরডুইনো দিয়ে স্ক্রলিং এলইডি মেসেজ ডিসপ্লে (ভিডিও সহ)

সকল বন্ধুদের স্বাগতম আমার আরডুইনো দিয়ে স্ক্রলিং এলইডি মেসেজ ডিসপ্লে প্রজেক্টে। এটা খুবই মজার একটি প্রজেক্ট।…

November 28, 2017

ভোঁতা ড্রিল বিট ধারালো করে নিন সহজেই (ভিডিও টিউটোরিয়াল)

ড্রিল বিট এর ধার দ্রুত ক্ষয়ে যায়। পিসিবি ড্রিল মেশিন গুলোতে ব্যবহৃত বিট গুলোকে চাইলে…

June 24, 2017

পাওয়ার ট্রান্সফরমার তৈরী করবার হিসাব নিকাশ (ক্যালকুলেটর সহ)

ভূমিকা পাওয়ার ট্রান্সফরমার তৈরী করতে চান অনেকেই। এই লেখার মাধ্যমে এটি তৈরী করবার প্রয়োজনীয় ক্যালকুলেশন…

June 16, 2017

তৈরি করুন সহজ কোড লক সিকিউরিটি সুইচ

কোড লক সিকিউরিটি সুইচ আমরা প্রায়ই মুভিতে দেখি। যেখানে নির্দিষ্ট কোড ঢুকানোর পর কোন সুইচ…

June 12, 2017

মাল্টিমিটার দিয়ে ট্রানজিস্টর এর বেজ, ইমিটার ও কালেক্টর লেগ বের করা

মাল্টিমিটার দিয়ে কিভাবে কোনো ট্রানজিস্টর এর বেজ, ইমিটার ও কালেক্টর (Base, Emitter & Collector) বের…

June 2, 2017