সুচিপত্র:
- ধাপ 1: BH1715 সংক্ষিপ্ত বিবরণ:
- ধাপ 2: আপনার যা প্রয়োজন..
- ধাপ 3: হার্ডওয়্যার সংযুক্তি:
- ধাপ 4: হালকা তীব্রতা পরিমাপ Arduino কোড:
- ধাপ 5: অ্যাপ্লিকেশন:
2024 লেখক: John Day | [email protected]. সর্বশেষ পরিবর্তিত: 2024-01-30 08:00
গতকাল আমরা এলসিডি ডিসপ্লেতে কাজ করছিলাম, এবং তাদের উপর কাজ করার সময় আমরা হালকা তীব্রতা গণনার গুরুত্ব উপলব্ধি করেছি। আলোর তীব্রতা শুধু এই পৃথিবীর ভৌত ক্ষেত্রেই গুরুত্বপূর্ণ নয়, জৈবিক ক্ষেত্রেও এর সুস্পষ্ট ভূমিকা রয়েছে। আলোর তীব্রতার সঠিক অনুমান আমাদের বাস্তুতন্ত্র, উদ্ভিদের বৃদ্ধি ইত্যাদিতে গুরুত্বপূর্ণ ভূমিকা পালন করে, সুতরাং, এই উদ্দেশ্যে পরিবেশন করার জন্য আমরা এই সেন্সর BH1715 অধ্যয়ন করেছি, যা একটি 16-বিট সিরিয়াল আউটপুট টাইপ পরিবেষ্টিত আলো সেন্সর।
এই টিউটোরিয়ালে, আমরা আরডুইনো ন্যানো দিয়ে BH1715 এর কাজ প্রদর্শন করতে যাচ্ছি।
হার্ডওয়্যার যে আপনি এই উদ্দেশ্যে প্রয়োজন হতে যাচ্ছে নিম্নরূপ:
1. BH1715 - অ্যাম্বিয়েন্ট লাইট সেন্সর
2. Arduino ন্যানো
3. I2C কেবল
4. Arduino ন্যানোর জন্য I2C শিল্ড
ধাপ 1: BH1715 সংক্ষিপ্ত বিবরণ:
প্রথমে আমরা আপনাকে সেন্সর মডিউলের মৌলিক বৈশিষ্ট্যগুলির সাথে পরিচিত করতে চাই যা BH1715 এবং যোগাযোগ প্রোটোকল যার উপর এটি কাজ করে।
BH1715 একটি I digitalC বাস ইন্টারফেস সহ একটি ডিজিটাল অ্যাম্বিয়েন্ট লাইট সেন্সর। BH1715 সাধারণত মোবাইল ডিভাইসের জন্য এলসিডি এবং কীপ্যাড ব্যাকলাইট পাওয়ার অ্যাডজাস্ট করার জন্য পরিবেষ্টিত আলো ডেটা পেতে ব্যবহৃত হয়। এই ডিভাইসটি একটি 16-বিট রেজোলিউশন এবং একটি সামঞ্জস্যযোগ্য পরিমাপ পরিসীমা প্রদান করে, যা.23 থেকে 100, 000 লাক্স সনাক্ত করার অনুমতি দেয়।
সেন্সর যে কমিউনিকেশন প্রোটোকলের উপর কাজ করে তা হল I2C। I2C মানে ইন্টার-ইন্টিগ্রেটেড সার্কিট। এটি একটি যোগাযোগ প্রোটোকল যেখানে যোগাযোগ SDA (সিরিয়াল ডেটা) এবং এসসিএল (সিরিয়াল ক্লক) লাইনের মাধ্যমে হয়। এটি একই সময়ে একাধিক ডিভাইস সংযুক্ত করার অনুমতি দেয়। এটি একটি সহজ এবং সবচেয়ে কার্যকর যোগাযোগ প্রোটোকল।
ধাপ 2: আপনার যা প্রয়োজন..
আমাদের লক্ষ্য পূরণের জন্য আমাদের যে উপকরণগুলির প্রয়োজন তা নিম্নলিখিত হার্ডওয়্যার উপাদানগুলি অন্তর্ভুক্ত করে:
1. BH1715 - অ্যাম্বিয়েন্ট লাইট সেন্সর
2. Arduino Nano
3. I2C কেবল
4. Arduino ন্যানোর জন্য I2C শিল্ড
ধাপ 3: হার্ডওয়্যার সংযুক্তি:
হার্ডওয়্যার হুকআপ বিভাগটি মূলত সেন্সর এবং রাস্পবেরি পাই এর মধ্যে প্রয়োজনীয় তারের সংযোগ ব্যাখ্যা করে। কাঙ্ক্ষিত আউটপুটের জন্য যে কোনো সিস্টেমে কাজ করার সময় সঠিক সংযোগ নিশ্চিত করা মৌলিক প্রয়োজনীয়তা। সুতরাং, প্রয়োজনীয় সংযোগগুলি নিম্নরূপ:
BH1715 I2C এর উপর কাজ করবে। সেন্সরের প্রতিটি ইন্টারফেসকে কিভাবে ওয়্যার আপ করতে হয় তা দেখানো হচ্ছে ওয়্যারিং ডায়াগ্রামের উদাহরণ।
বাক্সের বাইরে, বোর্ডটি একটি I2C ইন্টারফেসের জন্য কনফিগার করা হয়েছে, যেমন আপনি অন্যথায় অজ্ঞেয়বাদী হলে আমরা এই হুকআপটি ব্যবহার করার পরামর্শ দিই। আপনার প্রয়োজন শুধু চারটি তারের!
VCC, Gnd, SCL এবং SDA পিনের জন্য মাত্র চারটি সংযোগ প্রয়োজন এবং এগুলি I2C তারের সাহায্যে সংযুক্ত।
এই সংযোগগুলি উপরের ছবিতে প্রদর্শিত হয়েছে।
ধাপ 4: হালকা তীব্রতা পরিমাপ Arduino কোড:
এখন Arduino কোড দিয়ে শুরু করা যাক।
Arduino এর সাথে সেন্সর মডিউল ব্যবহার করার সময়, আমরা Wire.h লাইব্রেরি অন্তর্ভুক্ত করি। "ওয়্যার" লাইব্রেরিতে ফাংশন রয়েছে যা সেন্সর এবং আরডুইনো বোর্ডের মধ্যে i2c যোগাযোগ সহজ করে।
ব্যবহারকারীর সুবিধার জন্য পুরো Arduino কোড নিচে দেওয়া হল:
#অন্তর্ভুক্ত
// BH1715 I2C ঠিকানা হল 0x23 (35) #সংযোজক Addr 0x23 void setup () {// শুরু করুন I2C যোগাযোগকে মাস্টার ওয়্যার.বেগিন () হিসাবে; // সিরিয়াল কমিউনিকেশন শুরু করুন, বড রেট = 9600 সিরিয়াল.বেগিন (9600) সেট করুন; // I2C ট্রান্সমিশন ওয়্যার শুরু করুন। // Wire.write কমান্ডে ক্ষমতা পাঠান (0x01); // I2C ট্রান্সমিশন Wire.endTransmission () বন্ধ করুন; // I2C ট্রান্সমিশন ওয়্যার শুরু করুন। // ক্রমাগত পরিমাপ কমান্ড Wire.write (0x10) পাঠান; // I2C ট্রান্সমিশন Wire.endTransmission () বন্ধ করুন; বিলম্ব (300); } অকার্যকর লুপ () {স্বাক্ষরবিহীন int ডেটা [2]; // Wire.requestFrom (Addr, 2) থেকে 2 বাইটের অনুরোধ করুন; // 2 বাইট ডেটা পড়ুন // ALS msb, ALS lsb if (Wire.available () == 2) {data [0] = Wire.read (); ডেটা [1] = ওয়্যার.রেড (); } বিলম্ব (300); // ডেটা ভাসিয়ে দিন ভাসমান আলোকসজ্জা = ((ডেটা [0] * 256) + ডেটা [1]) /1.20; // সিরিয়াল মনিটরের আউটপুট ডেটা Serial.print ("Ambient Light Luminance:"); Serial.print (luminance); Serial.println ("lux"); }
কোডের নিচের অংশটি i2c যোগাযোগ এবং Wire.begin () এবং Serial.begin () ফাংশনের সাহায্যে সিরিয়াল যোগাযোগ শুরু করে।
// মাস্টার হিসাবে I2C যোগাযোগ শুরু করুন
Wire.begin (); // সিরিয়াল কমিউনিকেশন শুরু করুন, বড রেট = 9600 সিরিয়াল.বেগিন (9600) সেট করুন; // I2C ট্রান্সমিশন ওয়্যার শুরু করুন। // Wire.write কমান্ডে ক্ষমতা পাঠান (0x01); // I2C ট্রান্সমিশন Wire.endTransmission () বন্ধ করুন; // I2C ট্রান্সমিশন ওয়্যার শুরু করুন। // ক্রমাগত পরিমাপ কমান্ড Wire.write (0x10) পাঠান; // I2C ট্রান্সমিশন Wire.endTransmission () বন্ধ করুন; বিলম্ব (300);
আলোর তীব্রতা কোডের নিচের অংশে পরিমাপ করা হয়।
স্বাক্ষরবিহীন int ডেটা [2];
// Wire.requestFrom (Addr, 2) থেকে 2 বাইটের অনুরোধ করুন; // 2 বাইট ডেটা পড়ুন // ALS msb, ALS lsb if (Wire.available () == 2) {data [0] = Wire.read (); ডেটা [1] = ওয়্যার.রেড (); } বিলম্ব (300); // ডেটা ভাসিয়ে দিন ভাসমান আলোকসজ্জা = ((ডেটা [0] * 256) + ডেটা [1]) /1.20; // সিরিয়াল মনিটরের আউটপুট ডেটা Serial.print ("Ambient Light Luminance:"); Serial.print (luminance); Serial.println ("lux");
আপনাকে যা করতে হবে তা হল আরডুইনোতে কোড বার্ন করা এবং সিরিয়াল পোর্টে আপনার রিডিং পরীক্ষা করা। আপনার রেফারেন্সের জন্য উপরের ছবিতেও আউটপুট দেখানো হয়েছে।
ধাপ 5: অ্যাপ্লিকেশন:
BH1715 একটি ডিজিটাল আউটপুট অ্যাম্বিয়েন্ট লাইট সেন্সর যা মোবাইল ফোন, এলসিডি টিভি, নোট পিসি ইত্যাদিতে সংযোজিত হতে পারে। দক্ষ আলো সেন্সিং অ্যাপ্লিকেশন।
প্রস্তাবিত:
আর্দ্রতা, চাপ এবং তাপমাত্রা গণনা BME280 এবং ফোটন ইন্টারফেসিং ব্যবহার করে।: 6 ধাপ
আর্দ্রতা, চাপ এবং তাপমাত্রা গণনা BME280 এবং ফোটন ইন্টারফেসিং ব্যবহার করে।: আমরা বিভিন্ন প্রকল্পে আসি যার তাপমাত্রা, চাপ এবং আর্দ্রতা পর্যবেক্ষণ প্রয়োজন। এইভাবে আমরা বুঝতে পারি যে এই প্যারামিটারগুলি প্রকৃতপক্ষে বিভিন্ন বায়ুমণ্ডলীয় পরিবেশে একটি সিস্টেমের কাজের দক্ষতার অনুমান করতে একটি গুরুত্বপূর্ণ ভূমিকা পালন করে
BH1715 এবং রাস্পবেরি পাই ব্যবহার করে হালকা তীব্রতা পরিমাপ: 5 টি ধাপ
BH1715 এবং রাস্পবেরি পাই ব্যবহার করে হালকা তীব্রতা পরিমাপ: গতকাল আমরা এলসিডি ডিসপ্লেতে কাজ করছিলাম, এবং তাদের উপর কাজ করার সময় আমরা হালকা তীব্রতা গণনার গুরুত্ব উপলব্ধি করেছি। আলোর তীব্রতা কেবল এই জগতের ভৌত পরিসরেই গুরুত্বপূর্ণ নয় বরং জীববিজ্ঞানে এর সুস্পষ্ট ভূমিকা রয়েছে
আরডুইনো এবং পাইথনের আরডুইনো মাস্টার লাইব্রেরি ব্যবহার করে হালকা তীব্রতা প্লট করা: 5 টি ধাপ
আরডুইনো এবং পাইথনের আরডুইনো মাস্টার লাইব্রেরি ব্যবহার করে হালকা তীব্রতার প্লট করা: আরডুইনো একটি অর্থনৈতিক কিন্তু অত্যন্ত দক্ষ এবং কার্যকরী হাতিয়ার, এটিকে এমবেডেড সি -তে প্রোগ্রাম করা প্রকল্পগুলিকে ক্লান্তিকর করে তোলে! পাইথনের আরডুইনো_মাস্টার মডিউল এটিকে সহজ করে এবং আমাদের গণনা করতে দেয়, আবর্জনার মান অপসারণ করে
BH1715 এবং কণা ফোটন ব্যবহার করে হালকা তীব্রতা গণনা: 5 টি ধাপ
BH1715 এবং কণা ফোটন ব্যবহার করে হালকা তীব্রতা গণনা: গতকাল আমরা এলসিডি ডিসপ্লেতে কাজ করছিলাম, এবং তাদের উপর কাজ করার সময় আমরা হালকা তীব্রতা গণনার গুরুত্ব উপলব্ধি করেছি। আলোর তীব্রতা কেবল এই জগতের ভৌত পরিসরেই গুরুত্বপূর্ণ নয় বরং জীববিজ্ঞানে এর সুস্পষ্ট ভূমিকা রয়েছে
ফোটোসেল এবং থার্মিস্টার ব্যবহার করে হালকা তীব্রতা শক্তি সঞ্চয়কারী: 6 টি ধাপ
ফোটোসেল এবং থার্মিস্টার ব্যবহার করে লাইট ইন্টেন্সিটি এনার্জি সেভার: এই ইন্সট্রাকটেবলটি আপনাকে ফোটোসেল এবং থার্মিস্টার ব্যবহার করে আলোর তীব্রতা পরিবর্তন করে কিভাবে শক্তি সঞ্চয় করতে হয় তা শেখানোর জন্য ডিজাইন করা হয়েছে। আমরা আপনাকে দেখাব কিভাবে সার্কিট তৈরি করতে হয় এবং MATLAB ব্যবহার করে Arduino কে কোড করতে হয়