আরডুইনো ব্যাসিক এবং ব্যাসিক এল.ই.ডি সিকোয়েন্স No ratings yet.

আরডুইনো একটি ওপেন সোর্স টুল. কেউ যদি প্রোগ্রামিং ভাষা আগে থেকেই জানে তারপর এই আর্টিকেল টি পরে তার জন্য এটি খুব বেশী সহজ হতে যাচ্ছে.। আরডুইনো ওয়েবসাইটে সর্বশেষ স্কেচ টুল / কম্পাইলার দেয়া আছে. এটা ইনস্টল করুন এবং পিসির সঙ্গে আপনার আরডুইনো সংযোগ.করুন তারপর আরডুইনো টাইপ এবং পোর্ট (একটি পোর্ট নির্বাচন করুন ) এটি. আপনি এটা খুঁজে পাবেন
Tools>Port>Select COM 1/2/3.......(In which port you have added)

এছাড়াও আপনি কোড শেষে এই মত আপনার কম্পাইলার সেটআপ করতে পারেন.
এখন সময় কোড লিখার

আরডুইনোতে কিছু পূর্ব সংজ্ঞায়িত লাইব্রেরি আছে.
কম্পাইলারে লিখা আছে দেখবেন

void setup() {
  // put your setup code here, to run once:
}

void loop() {
  // put your main code here, to run repeatedly:
}

এইখানে কোডের মধ্যে শুধু ( // ( ডাবল স্লাশ ) ) দেয়ার পরের লেখা পরিবর্তন করা যাবে। বাকি লেখা যেভাবে আছে সেভাবেই থাকবে।


এখন যদি একটা এল.ই.ডি লাইট জ্বালাতে চান তাহলে আপনার কোড।
কোন int x = 13; // 13 নম্বর পোর্ট আরডুইনো বোর্ড এ একটি ডিফল্ট লাইট দেয়া আছে. যখন চেক করার মত অন্য কিছু থাকে না তখন এটার লাইট কাজে লাগে।

কোড এখানে

int x=13;
void setup(){
  //Write code here( This is a comment as you know)
  pinMode(x, OUTPUT);
 }
Void loop(){
  //Write code here(This is a comment as you know)
  digitalWrite(x, HIGH);
}	

এখন প্রোগ্রামটি কম্পাইল করুন (কম্পাইলারের দ্বিতীয় লাইনে একটি ত্রিভুজ চিহ্ন আছে অইটায় ক্লিক করলেই কম্পাইল শুরু হবে)
এখন বোর্ডে দেখা যায় যে 13 নম্বর লাইট ব্লিঙ্ক করছে. এছাড়াও আপনি নিজেই এটা LED দিয়ে করতে পারেন।. এই জন্য. আপনাকে প্রথমে LED সেটআপ করতে হবে. মনে রাখবেন যে, আরডুইনো মধ্যে GND পোর্ট সবসময় নেগেটিভ. আর যেই পোর্ট Variable Define করা হয় ওইটা পযিটিভ. লক্ষ করুন যে আপনি 13,12< দেখবেন …. এবং ~ 11 ~ 10, ~ 9. দেখবেন। যেসব সংখ্যা (~) চিহ্নিত সেগুলো এনালগ ইনপুট জন্য হয়. এবং যেগুলোতে এই চিহ্ন থাকে না সেগুলো ডিজিটাল ইনপুট এর জন্য হয়.

এখন অন্য একটি পোর্ট এ এল.ই.ডি লাগিয়ে চেস্টা করতে পারেন জ্বালানোর । এল.ই.ডি এর গ্রাউন্ড পিন গ্রাউন্ডে এবং পজিটিভ পিন 5v এর সাথে কানেক্ট করতে হবে। যেমন আপনি এখন ৮ নাম্বার পোর্ট এ এল.ই.ডি লাগিয়ে দেখতে পারেন। সেক্ষেত্রে কোড এ ভেরিয়েবল এর ভ্যালু পরিবর্তন করে ৮ দিতে হবে। x=8

digitalWrite () - 13,12
analogWrite () - ~11,~10,~9

তাই আপনি যদি analogWrite লিখেন তাহলে এনালগ পোর্ট কাজ করবে নাহলে ডিজিটাল পোর্ট কাজ করবে এবং এখন আপনি আপনার আলো বন্ধ করতে চান, তাহলে শুধু এক্সচেঞ্জ করেন

digitalWrite(x, HIGH);  with
digitalWrite(x, LOW);

শুধু High থেকে Low তে পরিবর্তন

এখন আলো বন্ধ হবে.
এখন শিখতে হবে কিভাবে একটি লাইট ব্লিঙ্ক করে.

এইটা সহজ. ব্লিঙ্ক করতে হবে এভাবে। বন্ধ আর চালু হওয়ার মাঝখানে ডিলে দিতে হবে

int x=12 // Here i have changed the port.
void setup(){
  //Write code here
  pinMode(x, OUTPUT);
}
Void loop(){
  //Write code here
  digitalWrite(x, HIGH);
  delay(500);
  digitalWrite(x, LOW);
  delay(500);
}

এখন আলো ব্লিঙ্ক করবে. মনে রাখবেন যে ডিলে এর ভিতরের মান মিনি সেকেন্ডে. সুতরাং 1 সেকেন্ড = 1000). আপনি 1 সেকেন্ড এর জন্য কিছু ডিলে করতে চাইলে তাহলে আপনার লিখতে হবে 1000
তো এখন আমরা একটা লাইট ব্লিঙ্ক করাতে পারি। এখনো যতো পারো Variation করো। আমার এক্সপেরিএন্স ছিলো আমি তিন টা লাইট ইলুমিনেট করেছিলাম। একটার পরে একটা চলতেসিলো etc etc etc…
এখন চলো analogWrite নিয়ে কথা বলি। আমরা লাইটের luminous rate control করতে পারি। (০-২৫৫) এর মধ্যে লাইতের উজ্জ্বলতা নিয়ন্ত্রন করা সম্ভব। চলো একটা প্রোগ্রাম লেখি analogWrite দিয়ে।

int x;
void setup(){
  //Write code here
  pinMode(x, OUTPUT)
}
Void loop(){
  //Write code here
  analogWrite(x, 255);
  delay(1000);
  analogWrite(x, 0);
  delay(1000);
}

0 সর্বনিম্ন স্তর এবং 255 সর্বোচ্চ স্তর.

আমরা লুপ ব্যবহার করতে পারি । এখন চলো মেথড কলিং আর লুপ কন্ট্রোল একসাথে করি। মেথড কলিং দিয়ে একসাথে অনেক গুলো লাইট চালানো সম্ভব।

int x;
void setup(){
  //Write code here
  pinMode(x, OUTPUT)
}
Void loop(){
  fadein();
  fadeout();
}
void fadein(){
  for(i=0; i<=255; i+=5) //for loop here i+=5 means i=i+5
  analogWrite(x, i);
}
void fadeout(){
  for(i=255; i>=0; i-=5) // For loop. Here i-=5 means i=i-5
  analog Write(x, i);
}

এখন আলো ব্লিঙ্ক করবে. কিন্তু আমরা এটি সংক্ষিপ্ত ভাবে চোখ করতে পারতাম কেনো এত বড় ভাবে করলাম। আমরা এই কাজ করলাম, কারণ তখন এটা সাহায্য করবে যদি আপনি আরো লাইট চালাতে চান আমি আপনাকে একটা উদাহরণ দিচ্ছি

int x;
void setup(){
  //Write code here
  pinMode(x, OUTPUT)
}
Void loop(){
  fadein(x);
  fadeout(x);
  fadein(y);
  fadeout(y);
  fadein(z);
  fadeout(z);
// you have access to manipulate this all. This things will start as you have organised it. You can add new parameters and even you can use the method as more as you can.  Same method unlimited time. So now you know that you can use method.  So unlimited lights.  The same method. Just increase the method numbers and way.
}
void fadein(int a){ //check out that i have made a parameter
  for(i=0; i<=255; i+=5) //for loop here i+=5 means i=i+5
  analogWrite(a, i);
}
void fadeout(int a){
  for(i=255; i>=0; i-=5) // For loop. Here i-=5 means i=i-5
  analog Write(a, i);
}

যে সমস্যা হতে পারে

সুন্দর মতো কানেকশন লাগাইলেন পরে দেখলেন বাত্তি জলে না । আরে বাত্তি খারাপ নাকি আমার আরডুইনো খারাপ। থামেন ভাই। আপনার কানেকশন লাগানের স্টাইল খারাপ।

মনে রাইখেন LED এর ২ হাত। ছোটো হাত হইতাছে নেগেটিভ বড় হাত হইতাছে পযিটিভ। ছোট হাত সব সময় গ্রাউন্ড এ যাইবো আর বড় হাত আউটপুট পোর্ট এ যাইবো ।

আরে বাত্তি জইল্লা গেছে।

বেসিক পার্ট এখানেই শেষ । পরবর্তী আর্টিকেল প্রকাশ করা হবে। সেই পর্যন্ত চলেন গান গাই ।
N.P: গান আপনারা সাজেস্ট করেন।

সকল ভুল ক্ষমার যোগ্য। :p এবং অবশ্যই কোনো প্রশ্ন থাকলে রাইটার কে জিজ্ঞাসা করবেন। রাইটার আকাইম্মা। খায় দায় ঘুমায়। আর এই কারনেই রিপ্লাই দিতে রাত হবে সেইটা কনফারম । আর অন্য কেউ এই সময়ে রিপ্লাই দিয়াও দিতে পারে।

পোস্ট ভালো লেগে থাকলে রেটিং দিন

Leave a Reply