সুচিপত্র:
- সরবরাহ
- ধাপ 1: গল্প
- ধাপ 2: তত্ত্ব এবং পদ্ধতি
- ধাপ 3: হার্ডওয়্যার সেটআপ
- ধাপ 4: সফটওয়্যার সেটআপ
- ধাপ 5: রঙ সেন্সরের Arduino কোড
ভিডিও: ম্যাজিকবিট থেকে সহজ DIY রঙ সেন্সর: 5 টি ধাপ
2024 লেখক: John Day | [email protected]. সর্বশেষ পরিবর্তিত: 2024-01-30 07:57
এই টিউটোরিয়ালে আমরা শিখব কিভাবে Arduino এর সাহায্যে Magicbit ব্যবহার করে একটি সাধারণ রঙ সেন্সর তৈরি করা যায়।
সরবরাহ
- ম্যাজিকবিট
- ইউএসবি-এ থেকে মাইক্রো-ইউএসবি কেবল
ধাপ 1: গল্প
হাই বন্ধুরা, কিছু সময়ে আপনাকে কিছু উদ্দেশ্যে রঙ সেন্সর ব্যবহার করতে হবে। কিন্তু হতে পারে আপনি জানেন না কিভাবে তারা কাজ করে। তাই এই টিউটোরিয়ালে আপনি শিখবেন কিভাবে Arduino এর সাথে Magicbit ব্যবহার করে একটি সাধারণ DIY কালার সেন্সর তৈরি করা যায়। শুরু করা যাক।
ধাপ 2: তত্ত্ব এবং পদ্ধতি
এই প্রকল্পে আমরা আপনাকে রঙ সেন্সর তৈরি করতে শেখানোর আশা করি যা লাল, সবুজ এবং নীল রং সনাক্ত করতে পারে। এটি খুবই মৌলিক উদাহরণ। তাহলে কিভাবে এটি করতে হয়। এই উদ্দেশ্যে আমরা ম্যাজিকবিট এবং ইনবিল্ট এলডিআর এর আরজিবি মডিউল ব্যবহার করি। প্রথমে আপনাকে কিছু তত্ত্ব সম্পর্কে জানতে হবে। যে হালকা প্রতিফলন পরিমাণ সম্পর্কে। এখন আমি আপনার কাছ থেকে প্রশ্ন করছি। কোন রঙের পৃষ্ঠ যা সবচেয়ে বেশি লাল রঙের আলোকে প্রতিফলিত করে? এছাড়াও কোন পৃষ্ঠগুলি যা বেশিরভাগ সবুজ এবং নীল আলোকে প্রতিফলিত করে একটু চিন্তা করুন। কিন্তু উত্তর সহজ। লাল রঙের পৃষ্ঠটি বেশিরভাগ লাল রঙের আলোকে প্রতিফলিত করে। এছাড়াও সবুজ এবং নীল পৃষ্ঠগুলি সবুজ এবং নীল আলো প্রতিফলিত করবে। তাই এই প্রকল্পে আমরা সেই তত্ত্ব ব্যবহার করি। রঙ চিনতে আমরা একের পর এক লাল, সবুজ এবং নীল আলো নিitsসরণ করি। প্রতিবার আমরা LDR ভ্যালু ব্যবহার করে প্রতিফলনের পরিমাণ পরিমাপ করি।
ধাপ 3: হার্ডওয়্যার সেটআপ
এই খুব সহজ। ম্যাজিকবিটের উপরের ডান পোর্টে আপনার আরজিবি মডিউলটি প্লাগ করুন। এই মডিউলে WS2812B Neopixel LED আছে। এই LED এর 4 টি পিন আছে। দুটি পাওয়ারের জন্য এবং দুটি ডাটা ইন এবং আউট করার জন্য। যেহেতু আমরা একটি নেতৃত্ব ব্যবহার করি আমাদের কেবল পিনে পাওয়ার পিন এবং ডেটা দরকার। আপনার যদি সেই মডিউল না থাকে তবে আপনি কিনতে পারেন এবং নিওপিক্সেল মডিউল। আপনি যদি এই ধরণের মডিউল কিনে থাকেন তবে আপনাকে পাওয়ার পিন এবং ডেটা পিনে ম্যাজিকবিটের সাথে সংযুক্ত করতে হবে। এটা খুবই সহজ। ম্যাজিকবিটের VCC এবং GND কে RGB মডিউলের পাওয়ার পিন এবং D33 পিনের সাথে ডাটা পিনের সাথে সংযুক্ত করুন।
ধাপ 4: সফটওয়্যার সেটআপ
প্রোগ্রামিং দ্বারা সম্পন্ন অধিকাংশ অংশ। আমরা আমাদের ম্যাজিকবিট প্রোগ্রাম করার জন্য Arduino IDE ব্যবহার করি। কোডে আমরা কয়েকটি লাইব্রেরি ব্যবহার করি। এগুলি হ'ল নিয়ন্ত্রণের জন্য অ্যাডাফ্রুট নিওপিক্সেল লাইব্রেরি এবং হ্যান্ডেল ওএলইডি -র জন্য অ্যাডাফ্রুট ওএলইডি লাইব্রেরি। সেটআপে আমরা আমাদের ইনপুট এবং আউটপুট কনফিগার করি। এছাড়াও ম্যাজিকবিটে ইনবিল্ট OLED ডিসপ্লে কনফিগার করুন। লুপে আমরা চেক করি যে বাম হাতের ধাক্কা বোতামটি ম্যাজিকবিটের চাপানো হয়েছে বা না। যদি এটি চাপা হয়, ইনপুট সংকেত 0. কারণ এটি ইতিমধ্যে বোর্ড দ্বারা টানা হয়। যদি এটি চাপা হয় তবে আমরা রঙ পরীক্ষা করি। যদি তা না হয় তবে স্ক্রিনে "কোন রঙ নেই" বিবৃতি প্রদর্শিত হবে। যখন বোতাম টিপুন তখন স্বয়ংক্রিয়ভাবে লাল, সবুজ এবং নীল আলো এক এক করে চালু করুন এবং রঙের প্রতিফলন পরিমাণ তিনটি ভেরিয়েবলে সংরক্ষণ করুন। পরবর্তী আমরা সেই মানগুলির তুলনা করি এবং আউটপুট রঙ হিসাবে প্রদর্শনের জন্য সর্বাধিক মান রঙ নির্বাচন করি।
সুতরাং মাইক্রো ইউএসবি কেবলকে ম্যাজিকবিটের সাথে সংযুক্ত করুন এবং বোর্ডের ধরন এবং কম পোর্টগুলি সঠিকভাবে নির্বাচন করুন। এবার কোডটি আপলোড করুন। তারপর আমাদের সেন্সর পরীক্ষা করার সময়। এটি পরীক্ষা করার জন্য, LDR এবং RGB মডিউলে লাল, সবুজ বা নীল সারফেস করা কাগজ বা শীট টপ রাখুন এবং বাম পুশ বোতাম টিপুন। তারপরে ওএলইডি ডিসপ্লে দেখাবে যে পৃষ্ঠের রঙ কী। যদি এটি ভুল হয় তবে কিছু রঙের উচ্চ আলোর তীব্রতা রয়েছে। প্রতিটি সবুজ পৃষ্ঠে একটি উদাহরণ হিসাবে আউটপুট লাল হয় তাহলে আপনাকে কিছু পরিমাণ থেকে লাল আলোর উজ্জ্বলতা হ্রাস করতে হবে। কারণ সেই ক্ষেত্রে লাল আলোর উজ্জ্বলতা অনেক বেশি। তাই এর উচ্চ প্রতিফলন আছে। যদি আপনি কিভাবে উজ্জ্বলতা নিয়ন্ত্রণ করতে জানেন না, তাহলে নিচের লিঙ্কে টিউটোরিয়াল দেখুন।
magicbit-arduino.readthedocs.io/en/latest/
এই লিঙ্কটিতে আপনি ম্যাজিকবিট থেকে সেই আরজিবি মডিউলটি কীভাবে নিয়ন্ত্রণ করবেন তা খুঁজে পেতে পারেন। এবং আপনি ম্যাজিকবিট ব্যবহার করে এলডিআর এবং পুশ বোতামের সাথে কীভাবে কাজ করবেন তাও খুঁজে পাবেন। সেই ডকুমেন্টটি পড়ুন এবং কিভাবে রঙ সেন্সর উন্নত করতে হয় তা আরও অধ্যয়ন করুন। কারণ রঙ সেন্সরগুলি কীভাবে কাজ করে সে সম্পর্কে এটি একটি প্রাথমিক উদাহরণ। বেশিরভাগ ধরণের রঙ সেন্সর এইভাবে কাজ করে। তাই পরিবেষ্টিত হালকা শব্দ এবং অন্যান্য আওয়াজ অপসারণ করে এটি উন্নত করার চেষ্টা করুন।
ধাপ 5: রঙ সেন্সরের Arduino কোড
#অন্তর্ভুক্ত
#LED_PIN 33 নির্ধারণ করুন
#LED_COUNT নির্ধারণ করুন 1 Adafruit_NeoPixel LED (LED_COUNT, LED_PIN, NEO_RGB + NEO_KHZ800); #অন্তর্ভুক্ত #অন্তর্ভুক্ত #অন্তর্ভুক্ত #অন্তর্ভুক্ত OLED_RESET 4 Adafruit_SSD1306 প্রদর্শন (128, 64); #ডিফাইন LDR 36 #ডিফাইন বাটন 35 int R_value, G_value, B_value; অকার্যকর সেটআপ () {LED.begin (); LED.show (); পিনমোড (এলডিআর, ইনপুট); পিনমোড (বোতাম, ইনপুট); display.begin (SSD1306_SWITCHCAPVCC, 0x3C); display.display (); বিলম্ব (1000); display.clearDisplay (); Serial.begin (9600); } void loop () {if (digitalRead (Button) == 0) {// if button is pressed LED.setPixelColor (0, LED. Color (0, 50, 0)); // লাল রঙের LED.show (); বিলম্ব (100); R_value = analogRead (LDR); // get red mount LED.setPixelColor (0, LED. Color (150, 0, 0)); // greencolour LED.show (); বিলম্ব (100); G_value = analogRead (LDR); // সবুজ মাউন্ট LED.setPixelColor (0, LED. Color (0, 0, 255)) পান; // নীল রঙের LED.show (); বিলম্ব (100); B_value = analogRead (LDR); // পান নীল মাউন্ট যদি (R_value> G_value && R_value> B_value) {// লাল হয় সবচেয়ে বেশি প্রতিফলিত ডিসপ্লে ("RED", 3); } অন্যথায় যদি (G_value> R_value && G_value> B_value) {// সবুজ হল সবচেয়ে বেশি প্রতিফলিত ডিসপ্লে ("GREEN", 3); } অন্যথায় যদি (B_value> R_value && B_value> G_value) {// নীল হল সবচেয়ে বেশি প্রতিফলিত ডিসপ্লে ("BLUE", 3); } সিরিয়াল.প্রিন্ট ("RED ="); Serial.print (R_value); Serial.print ("GREEN ="); সিরিয়াল.প্রিন্ট (G_value); Serial.print ("BLUE ="); Serial.println (B_value); } অন্য {LED.setPixelColor (0, LED. Color (0, 0, 0)); // বন্ধ RGB LED.show (); প্রদর্শন ("কোন রঙ", 2); }} অকার্যকর প্রদর্শন (স্ট্রিং কমন্ড, ইন্ট সাইজ) {// ডিসপ্লে ডেটা display.clearDisplay (); display.setTextSize (সাইজ); // সাধারণ 1: 1 পিক্সেল স্কেল display.setTextColor (সাদা); // আঁকা সাদা টেক্সট display.setCursor (0, 20); // উপরের বাম কোণার ডিসপ্লেতে শুরু করুন। println (commond); display.display (); }
প্রস্তাবিত:
ম্যাজিকবিট থেকে সহজ রাডার সিস্টেম: 6 টি ধাপ
ম্যাজিকবিট থেকে সরল রাডার সিস্টেম: এই টিউটোরিয়ালটি দেখায় কিভাবে HC-SR04 সেন্সর এবং মাইক্রোবিট ডেভ বোর্ড ব্যবহার করে প্রক্রিয়াকরণ এবং Arduino IDE এর সাহায্যে একটি সাধারণ রাডার সিস্টেম তৈরি করা যায়
ম্যাজিকবিট থেকে সেলফ ব্যালেন্সিং রোবট: 6 টি ধাপ
ম্যাজিকবিট থেকে সেলফ ব্যালেন্সিং রোবট: এই টিউটোরিয়ালে দেখানো হয়েছে কিভাবে ম্যাজিকবিট ডেভ বোর্ড ব্যবহার করে সেলফ ব্যালেন্সিং রোবট তৈরি করা যায়। আমরা এই প্রকল্পে ডেভেলপমেন্ট বোর্ড হিসেবে ম্যাজিকবিট ব্যবহার করছি যা ESP32 এর উপর ভিত্তি করে। অতএব যে কোন ESP32 উন্নয়ন বোর্ড এই প্রকল্পে ব্যবহার করা যেতে পারে
AWS- এ ম্যাজিকবিট থেকে ডেটা ভিজ্যুয়ালাইজ করা: 5 টি ধাপ
AWS- এ ম্যাজিকবিট থেকে ডেটা ভিজুয়ালাইজ করা: ম্যাজিকবিটের সাথে সংযুক্ত সেন্সর থেকে সংগৃহীত ডেটা MQTT এর মাধ্যমে AWS IOT কোর -এ প্রকাশ করা হবে যাতে রিয়েল টাইমে গ্রাফিক্যালি ভিজুয়ালাইজ করা যায়। আমরা এই প্রকল্পে ডেভেলপমেন্ট বোর্ড হিসেবে ম্যাজিকবিট ব্যবহার করছি যা ESP32 এর উপর ভিত্তি করে। অতএব যে কোন ESP32 d
ম্যাজিকবিট [ম্যাজিকব্লকস] দিয়ে মাটির আর্দ্রতা সেন্সর ব্যবহার করুন: 5 টি ধাপ
Magicbit [Magicblocks] দিয়ে মৃত্তিকা আর্দ্রতা সেন্সর ব্যবহার করুন: এই টিউটোরিয়ালটি আপনাকে Magicblocks ব্যবহার করে আপনার Magicbit এর সাথে মৃত্তিকা আর্দ্রতা সেন্সর ব্যবহার করতে শেখাবে। আমরা এই প্রকল্পে ডেভেলপমেন্ট বোর্ড হিসেবে ম্যাজিকবিট ব্যবহার করছি যা ESP32 এর উপর ভিত্তি করে। অতএব যে কোন ESP32 ডেভেলপমেন্ট বোর্ড এই প্রজেক্টে ব্যবহার করা যেতে পারে
ম্যাজিকবিট [ম্যাজিকব্লকস] থেকে সাইকেল কিকস্ট্যান্ড পজিশন সেন্সর: 8 টি ধাপ
ম্যাজিকবিট [ম্যাজিকব্লকস] থেকে সাইকেল কিকস্ট্যান্ড পজিশন সেন্সর: ম্যাজিকব্লক ব্যবহার করে ম্যাজিকবিট দিয়ে কিকস্ট্যান্ড পজিশন সেন্সর তৈরির সহজ DIY প্রকল্প। আমরা এই প্রকল্পে ডেভেলপমেন্ট বোর্ড হিসেবে ম্যাজিকবিট ব্যবহার করছি যা ESP32 এর উপর ভিত্তি করে। অতএব যে কোন ESP32 উন্নয়ন বোর্ড এই প্রকল্পে ব্যবহার করা যেতে পারে