Arduino USB পাওয়ার সিক্রেট

Arduino প্রোজেক্টে ঠিক কত ভোল্টের ব্যাটারী বা এডাপ্টার ব্যবহার করা উচিৎ? ব্যবহারকারীদের কাছে এখন এটি একটি জাতীয় প্রশ্ন! 

প্রশ্নের উত্তর খুঁজতে গতানুগতিক মুখস্থ বিদ্যার বিপরীতে আজ আমরা বিস্তারিত ভাবে আলোচনা করবো আরডুইনো উনো’র ইউএসবি পাওয়ার ইউনিট নিয়ে। আশা করি উনো’র পাওয়ার সংক্রান্ত সকল প্রশ্নের উত্তর তুমি এখান থেকেই পেয়ে যাবে। 

Arduino বিষয় ভিত্তিক এই সিরিজ অফ টিউটরিয়্যালে আমি তোমাদের পর্যায়ক্রমে একদম বেসিক হর্ডওয়ার কানেকশন থেকে শুরু করে প্রোগ্রামিং, ডিবাগিং অতঃপর Arduino ব্যবহার করে বিভিন্ন ধরণের আইওটি, হোম-অটোমেশন, রোবটিক্স প্রোজেক্ট তৈরি করা শেখাবো। যাতে অন্যের আইডিয়া চুরি না করেই, নিজের অর্জিত জ্ঞানের আলোকে তুমি তোমার ক্রিয়েটিভ চিন্তা-ভাবনা গুলোকে বাস্তবে রূপ দিতে পারো। 

আর এভাবেই দিনে দিনে তুমি হয়ে উঠবে একজন প্রকৃত Arduino ডেভেলপার। চলো তাহলে আর দেরি না করে শুরু করি আমাদের বিষয় ভিত্তিক বিস্তারিত আলোচনা। আমাদের আজকের আলোচনার বিষয় হলো- আরডুইনো উনো’র ইউএসবি পাওয়ার ইউনিট। 

         Arduino_USB_Power_Secret_USB_Connection_with_Laptop              

তোমরা নিশ্চয় জেনে থাকবে, আমাদের কম্পিউটার বা ইউএসবি পোর্ট রয়েছে এমন সকল ডিভাইসই (সাধারণ অবস্থায়) USB Port দিয়ে DC 5V আউটপুট দিতে সক্ষম। যার অর্থ তুমি যখন প্রোগ্রাম করার জন্য Arduino কে কম্পিউটারের সাথে সংযোগ দাও, তখন এই ক্যাবলের ভিতর থাকা Red এবং Black  তারের মাধ্যমে USB Power আরডুইনোর USB Type B Female Connector-এ এসে পৌঁছায়।     

  Arduino_USB_Power_Secret_Computer_USB_Pinout

 

প্রাকটিক্যাল কাজের সময় হার্ডওয়ার অংশে ঘটে যাওয়া যেকোন ধরণের অনাকাঙ্খিত ঘটনা যেমন শর্ট-সার্কিটের কারণে পাওয়ার সাপ্লাই ইউটনিট (যেমন এখানে কম্পিউটার) যেন ক্ষতিগ্রস্থ না হয়, বিষয়টি বিবেচনায় রেখে এখানে সংযুক্ত করা হয়েছে একটি Auto Resettable Fuse   

     Arduino_USB_Power_Secret_Auto_Resetable_Fuse

 

আরডুইনো উনো’তে পাওয়ার সরবরাহের জন্য দুইটি ভিন্ন ভিন্ন পোর্ট রয়েছে: 

  • ইউএসবি পোর্ট এবং 
  • ডিসি পাওয়ার সকেট 

একই সাথে উভয় পোর্টে Power এভেইলেবল হলে, Arduino কোন পাওয়ারকে প্রধান্য দিবে? এমন জটিল পরিস্থিতিতে সিদ্ধান্ত নিতে উনো’তে ব্যবহার করা হয়েছে Intelligent Power Selection Circuit। 

 

Arduino_USB_Power_Secret_Op_Amp_Pinout_Diagram

যেখানে U5A একটি Operational Amplifier (Op-Amp) যা Comparator মোডে অপারেট করা হয়েছে। কমপারেটর মোডে অপারেশনাল এম্পিলিফাইয়ার তার ইনপুট গুলোর (inverting এবং non-inverting) মধ্যকার Potential Difference বা বিভব পার্থক্য সনাক্ত করতে পারে। ফাইনালি এই ইনপুট-ভোল্টেজের  উপর ভিত্তি করে আউটপুট পাওয়া যায়। পরবর্তীতে এই আউটপুট ব্যবহার করে ইলেকট্রনিক্স সার্কিটে BJT বা MOSFET এর মত সুইচিং ডিভাইস নিয়ন্ত্রণ করা সম্ভব হয়।

 

Arduino_USB_Power_Secret_Op_Amp_As_A_Comparator_Mode

এখানে R1, R2 রেজিস্টরর ব্যবহার করে DC Power Socket এ কোন ধরণের external power এর উপস্থিতি রয়েছে কি না? সেটি পর্যবেক্ষণ করে থাকে। 

DC Power Socket বা Vin পিনে external power না থাকলে, Comparator এর non-inverting ইনপুটের ভোল্টেজ inverting ইনপুট পিনের তুলনায় কম হবে (non-inverting <  inverting)। ফলে  Comparator এর আউটপুট LOW হবে। 

 

মসফেট As Switch

P-MOSFET Arduino-তে একটি সাধারণ সুইচ হিসেবে কাজ করে। যেখানে Comparator এর LOW আউটপুটের জন্য USB Power লাইনের P-MOSFET একটিভেট হবে। ফলশ্রুতিতে USB Power টি MOSFET এর মধ্য দিয়ে আরডুইনো উনো’র সকল 5V Power Rails এ এভেইলেবল হবে। 

Arduino_USB_Power_Secret_Mosfet_As_A_Switch_ON

অপরদিকে DC Power Socket বা Vin (12V) পিনে external power ব্যবহার করা হলে, non-inverting এবং inverting পিনের ভোল্টেজ লেভেলের জন্য Comparator এর  HIGH আউটপুট P-MOSFET কে ডিএকটিভেট করবে। 

 

Arduino_USB_Power_Secret_MOSFET_As_A_Switch_OFF

 

নিচের টেবিলটি মনোযোগ দিয়ে লক্ষ্য করো, Inverting এবং non Inverting পিনের ভোল্টেজের উপর নির্ভর করে Switching MOSFET টি কখনো চালু আবার কখনও বন্ধ হয়।

      Inverting       Non-Inverting   P-MOSFET
0V 0V ON
0V 3.3V ON
6V 3.3V OFF

অর্থাৎ আরডুইনো উনো’তে DC Power Socket-এ পাওয়ার সংযোগ দেওয়ার সাথে সাথেই USB Power এর সংযোগ বিচ্ছিন্ন হয়ে যায়। ফলে USB Port থেকে আসা +5V তখন আর আরডুইনোর Power Rails-এ পৌছাতে পারে না।  

 

Arduino_USB_Power_Secret_P_MOSFET_Switch_OFF 

আরো সহজ ভাষায় বলতে গেলে, উনোতে ব্যবহৃত DC Power Socket কে Primary Power Port বলা হয়। কোন কারণে এই পোর্টের পাওয়ার অনুপস্থিত থাকলে তবেই আরডুইনো তার Secondary Power হিসাবে USB Port থেকে পাওয়ার ব্যবহার করে থাকে। 

 

DC Power Socket

লক্ষ্য করো এখানে Secondary Power (USB) এর ভোল্টেজ লেভেল সরাসরি 5V। আমাদের মাইক্রোকন্ট্রোলার ATmega328P এর অপারেটিং পাওয়ার 5V। কিন্তু Primary Power Port (DC Socket) টি এমন ভাবে ডিজাইন করা হয়েছে যাতে এখানে wide range এর Power Supply (7V to 12V) ব্যবহার করা যায়। 

              Arduino_USB_Power_Secret_DC_Power_Socket_External_Power

 

চলো এখন উত্তর খুঁজি কিভাবে এই Wide Range Power Supply ব্যবহার করে ATmega328P কে Power UP করা হয়? 

ব্যবহারের উপর নির্ভর করে আরডুইনো উনো’কে কখনো কখনো Battery Voltage দিয়েও চালু রাখার প্রয়োজন হতে পারে। যেহেতু Battery Type এর উপর ভিত্তি করে এদের ভোল্টেজ কম-বেশি হয়ে থাকে এবং ডিসচার্জিং এর সাথে সাথে ব্যাটারী ভোল্টেজ কমতে থাকে। তাই এমন একটি সিস্টেমের প্রয়োজন যেখানে ইনপুট ভোল্টেজের পরিবর্তন হলেও – আউপটুট সর্বদা একই থাকবে। 

Arduino_USB_Power_Secret_DC_5V_Power_Supply_Circuit_Diagram

উনো’তে এই কাজে ব্যবহৃত হয়েছে AMS1117-5.0। ভোল্টেজ রেগুরেটরটির ডেটাশিতে থাকে Technical Specification অনুসারে: 

# Minimum Maximum
Input Voltage Range = Vout + 2V = 12V

সুতরাং 5V আউটপুট ভোল্টেজের জন্য এই 7V থেকে 12V পর্যন্ত ভোল্টেজের যে কোন ধরণের পরিবর্তন হলেও, AMS1117-5.0 ভোল্টেজ রেগুলেটর আইসি’র আউটপুট সর্বদা কনস্ট্যান্ট 5V পাওয়া যাবে। আরডুইনো’র DC Power Socket এর ইনপুট পাওয়ার এভাবেই সকল 5V Power Rails এ পাওয়ার সরবরাহ করে থাকে। 

Power Indication LED

আরডুইনো’র 5V DC Power Rails থেকে সরাসরি অপারেট করা হয়েছে একটি Power LED। আর এ জন্যই Arduino UNO সঠিক ভাবে পাওয়ার পেলেই আমরা একটি লাল বা সবুজ Power LED জ্বলে থাকতে দেখি। 

Arduino_USB_Power_Secret_Power_LED_Circuit_Diagram

 

Power Generation Unit

আরডুইনো উনো’র Power Generation Unit এর আরও একটি গুরুত্বপূর্ণ অংশ হলে 3.3V Generation Unit। ইতিপূর্বে আমরা Comparator Op-Amp এর সাহায্যে যে MOSFET অপারেট হতে দেখেছি। সেখানে Inverting Input পিনের Reference-এর জন্য 3.3V প্রয়োজন। বিভিন্ন ধরণের Sensor, Modules এ প্রয়োজনীয়ও 3.3V পাওয়ার সরবরাহ করার জন্য ব্যবহার করা হয়েছে। ভিন্ন আরও একটি পজেটিভ ভোল্টেজ রেগুলেটর LP2985-33। 

Arduino_USB_Power_Secret_3V3_Power_Unit_Circuit_Diagram

Complete Power Unit

এখন চলো আরডুইনো’র সম্পূর্ণ পাওয়ার ইউনিটের স্কেমেটিক ডায়াগ্রাম একসাথে দেখা যাক। এ পর্যায়ে তোমরা মনে মনে সম্পূর্ণ Power Flow প্রোসেস’কে তোমার কল্পনায় এনে চিন্তা করে দেখতে পারো। আশাকরি ইত্যিমধ্যে আমরা যে বিষয়গুলোতে বিস্তারিত আলোচনার করেছি, তা থেকে প্রাপ্ত জ্ঞান তোমাকে সপূর্ণ ডায়াগ্রাম সম্পর্কে একটি স্পষ্ট ধারণা দিবে।

Arduino_USB_Power_Secret_Power_Unit_Circuit_Diagram

 

সার্কিট ডায়াগ্রাম থেকে তোমাদের যদি আরো নতুন কোন findings থাকে, অবশ্যই কমেন্টের মাধ্যমে আমাদের সাথে শেয়ার করতে পারো। খুব শীঘ্রই আরডুইনো’র অন্য কোন জটিল অংশের সহজ ব্যাখা নিয়ে, আবারো উপস্থিত হবো পরবর্তী টিউটরিয়্যালে।

আল্লাহ হাফেজ।

Maisha Nawshin
Maisha Nawshin

Leave a Reply

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

This site uses Akismet to reduce spam. Learn how your comment data is processed.