সুচিপত্র:
- ধাপ 1: সমাবেশ
- পদক্ষেপ 2: আইডিই এবং লাইব্রেরি সেটআপ করুন
- ধাপ 3: সিস্টেম প্রোগ্রামিং
- ধাপ 4: ফ্যাব্রিকেশন
- ধাপ 5: কোড
ভিডিও: ওপেন সোর্স ডেটা লগার (OPENSDL): 5 টি ধাপ (ছবি সহ)
2024 লেখক: John Day | [email protected]. সর্বশেষ পরিবর্তিত: 2024-01-30 08:01
এই প্রকল্পের উদ্দেশ্য হল বিল্ডিং পারফরম্যান্স মূল্যায়ন স্টাডিজের জন্য একটি কম খরচে পরিমাপ ব্যবস্থা ডিজাইন করা, তৈরি করা এবং পরীক্ষা করা যাতে কমপক্ষে তাপমাত্রা, আপেক্ষিক আর্দ্রতা, আলোকসজ্জা এবং অতিরিক্ত সেন্সরের জন্য এক্সটেনসিবল এবং এই ডিভাইসগুলির প্রোটোটাইপ তৈরি করা। ।
এটি একটি কাস্টমাইজড এবং সাশ্রয়ী মূল্যের ব্যবস্থার দিকে পরিচালিত করে যা স্টেকহোল্ডারদের পারফরম্যান্স মূল্যায়নের জন্য প্রয়োজনীয় পরিমাপগুলি দক্ষ এবং সাশ্রয়ী উপায়ে একসাথে একাধিক পরিবেশগত পরামিতি লগ করে পরিচালনা করতে সক্ষম করে। উন্নত ওপেন সোর্স ডেটা লগার (OPENSDL) একটি HOBO U12-012 ডেটা লগারের সাথে তুলনা করা হয়েছিল। এই বাণিজ্যিকভাবে উপলব্ধ কাউন্টারপার্ট সিস্টেম, 3 প্যারামিটার পরিমাপ করতে পারে, যথা- তাপমাত্রা, আরএইচ, এবং আলোকসজ্জা, এবং অন্যান্য সেন্সর প্রকারের জন্য একটি বাহ্যিক চ্যানেল। অন্য কোন প্যারামিটার পরিমাপের জন্য একটি ভিন্ন সেন্সিং ডিভাইস প্রয়োজন হবে। পরিমাপের পরামিতিগুলির বৈশিষ্ট্যগুলি মালিকানাধীন হার্ডওয়্যার এবং সফ্টওয়্যারের মধ্যে সীমাবদ্ধ, যা সিস্টেমকে নির্দিষ্ট নির্ভুলতার সাথে নির্দিষ্ট পরামিতিগুলি পরিমাপে সীমাবদ্ধ করে। একটি HOBO U12-012 এর দাম প্রায়, 13, 000 (US $ 185), যেখানে OPENSDL এর দাম ₹ 4, 605 (US $ 66), যা বাণিজ্যিক অংশের প্রায় এক-তৃতীয়াংশ।
একটি Arduino Uno এর সাহায্যে তাপমাত্রা, RH এবং আলোর মাত্রা (আলোকসজ্জা) পর্যবেক্ষণের জন্য একটি ওপেন সোর্স ডেটা লগার এটি OPENSDL ডেটা লগার তৈরির জন্য একটি DIY।
সময় প্রয়োজন: সোল্ডারিংয়ের জন্য 2-3 ঘন্টা, প্যাকেজিংয়ের জন্য 5 ঘন্টা (4 ঘন্টা - 3 ডি প্রিন্টিং এবং লেজার কাটার জন্য 1 ঘন্টা) দক্ষতা প্রয়োজন: সোল্ডারিং, প্রোগ্রামিং এবং ইলেকট্রনিক্সে সামান্য বা কোন জ্ঞান নেই
প্রয়োজনীয় অংশ:
- তারের সাথে Arduino Uno
- ডেটা লগার ieldাল
- CR1220 কয়েন সেল ব্যাটারি
- BME280 তাপমাত্রা আর্দ্রতা চাপ সেন্সর ব্রেকআউট বোর্ড
- TSL2561 লাইট সেন্সর ব্রেকআউট বোর্ড
- ESP01-8266 ওয়াই-ফাই মডিউল
- RJ-9 পুরুষ এবং মহিলা সংযোগকারী
- Arduino এর জন্য শিল্ড স্ট্যাকিং হেডার
- এসডি মেমরি কার্ড (যে কোন ক্ষমতা)
- ভেক্টর বোর্ড (26 x 18 গর্ত)
- 8 এএ ব্যাটারি ব্যাটারি ধারক
প্রয়োজনীয় সরঞ্জাম:
- সোল্ডারিং লোহা (35W)
- ঝাল তার
- তার কর্তনকারী
- Crimper হাতিয়ার
- মাল্টিমিটার
সফ্টওয়্যার প্রয়োজন: Arduino IDE (1.0.5 বা উচ্চতর)
Arduino লাইব্রেরি ব্যবহৃত:
- তারের লাইব্রেরি
- স্পার্কফুন TSL2561 লাইব্রেরি
- ক্যাকটাস BME280 মাল্টিসেন্সর লাইব্রেরি
- এসডি কার্ড লাইব্রেরি
- এসপিআই লাইব্রেরি
- আরটিসি লাইব্রেরি
দ্রষ্টব্য: BME280 সেন্সর একটি খুব নির্ভুল, তাপমাত্রা, আপেক্ষিক আর্দ্রতা এবং Bosch থেকে চাপ সেন্সর। একইভাবে, DS1307 হল ম্যাক্সিম থেকে একটি সঠিক রিয়েল টাইম ঘড়ি এবং TSL2561 হল একটি সঠিক আলো সেন্সর। এই পণ্যগুলির জন্য কম ব্যয়বহুল এবং কম সঠিক বিকল্প আছে, কিন্তু এই টিউটোরিয়ালটি তাদের লক্ষ্য ছিল যারা কর্মক্ষমতা মূল্যায়ন এবং বিল্ডিং মনিটরিং অ্যাপ্লিকেশনগুলির জন্য তথ্য সংগ্রহ করতে আগ্রহী ছিল যাদের উচ্চ নির্ভুলতা এবং নির্ভুলতা প্রয়োজন। এর অর্থ হল যে কোনও নির্দিষ্ট হার্ডওয়্যার সেটআপ এবং সফ্টওয়্যার সেটআপ (লাইব্রেরি, প্রোগ্রাম কোড) কঠোরভাবে নির্দিষ্ট পণ্যগুলির জন্যই বোঝানো হয়েছিল।
ধাপ 1: সমাবেশ
ডেটা লগার ieldাল সহজেই Arduino Uno বোর্ডের উপরে স্ট্যাক করা যায়। এই ieldাল ডাটা লগিং ক্ষমতা প্রদান করে (সময় পালন এবং তথ্য সংরক্ষণ)। Ieldালটি স্ট্যাক করতে হয়েছিল। একটি CR1220 মুদ্রা সেল ব্যাটারি প্রদান করা হয়েছে বৃত্তাকার স্লটে যাতে ঘড়িটি চলতে থাকে এমনকি যখন Arduino চালিত থাকে। এসডি মেমরি কার্ডটি অবশ্যই অন-বোর্ড কার্ড স্লটে ertedোকানো উচিত। RJ-9 সংযোগকারী মহিলা পিন এবং Arduino ieldাল স্ট্যাকিং হেডার ব্যবহার করে একটি অনন্য কাস্টমাইজড ieldাল তৈরি করা হয়েছিল। যথাযথ শিরোলেখগুলি যথাযথ স্থানে বিক্রি করা হয়েছিল যাতে duালটি আরডুইনো বোর্ডে পুরোপুরি ফিট হয়। Arduino একপাশে 18 পিন এবং অন্য দিকে 14 পিন আছে। Arduino এর মতো একই সংখ্যক পিনের হেডারগুলি একই ব্যবধানে (18 পিনের ব্যবধানে) ব্যবহার করা হয়েছিল। হেডার সংলগ্ন অবশিষ্ট অতিরিক্ত জায়গা RJ-9 সংযোগকারী স্থাপনের জন্য ব্যবহার করা হয়েছিল।
শিরোলেখগুলি প্রয়োজনীয় পিনগুলি ব্যবহার করার সর্বোত্তম উপায় ছিল, যখন সেগুলি অন্যান্য উপাদানগুলিতে ব্যবহারের জন্য এখনও উপলব্ধ ছিল। ব্যবহৃত সেন্সরগুলি I2C কমিউনিকেশন প্রোটোকল অনুসরণ করে, যার জন্য Arduino থেকে 4 টি পিন প্রয়োজন, যথা: SDA (A4 হিসেবেও পাওয়া যায়), SCL (A5 হিসেবেও পাওয়া যায়), 3.3V এবং GND। আরজে -9 সংযোগকারী থেকে বেরিয়ে আসা চারটি তারের এই চারটি হেডার পিনের মধ্যে বিক্রি করা হয়েছিল। RJ-9 সংযোগকারীর সংখ্যা সেন্সরের সংখ্যার উপর নির্ভর করে। এই প্রকল্পে, 3 টি আরজে -9 সংযোগকারী ব্যবহার করা হয়েছিল (দুটি BME280 এর জন্য এবং একটি TSL2561 এর জন্য)। আরজে -9 সংযোগকারী থেকে বেরিয়ে আসা চারটি তারের রঙিন কোডেড ছিল এবং প্রতিটি রঙের তারকে সমস্ত আরজে -9 সংযোগকারীর জন্য একটি নির্দিষ্ট পিন নির্ধারণ করা হয়েছিল। এটি অবশ্যই লক্ষ্য করা উচিত যে বিভিন্ন RJ-9 টুকরোতে রঙ কোড পরিবর্তিত হতে পারে। এই ধরনের ক্ষেত্রে, সংযোগকারীতে তারের অবস্থান লক্ষ্য করা আবশ্যক। RJ-9 সংযোগকারী, সোল্ডারিং এর পরে, একটি Feviqwik ব্যবহার করে ভেক্টর বোর্ডে আটকে রাখা হয়েছিল, যাতে এটি পৃষ্ঠের উপর স্থির হয়ে যায়। মাল্টিমিটারে ধারাবাহিকতা মোড ব্যবহার করে এই সংযোগগুলি যাচাই করা যায়। যখন ধারাবাহিকতা মোডে, মাল্টিমিটারের শূন্য প্রতিরোধের প্রদর্শন করা উচিত। মাল্টিমিটারের একটি প্রোবকে সোল্ডার্ড পিনের সাথে সংযুক্ত করুন এবং আরজে -9 সংযোগকারীর ভিতরের পিনের সাথে আরেকটি প্রোব সংযুক্ত করুন। মাল্টিমিটারের একটি স্বর নির্গত হওয়া উচিত, যার অর্থ সোল্ডার জয়েন্টগুলি সঠিক, এবং সংযোগগুলি সঠিকভাবে তৈরি করা হয়েছে। যদি স্বর নির্গত না হয়, সোল্ডার জয়েন্টগুলি পরীক্ষা করুন। একইভাবে, সেন্সর ব্রেকআউট বোর্ডগুলিতে একই পিনহোলের সাথে সংযুক্ত একই তারের সাথে RJ-9 সংযোগকারীকে সোল্ডার করুন, যেমন A4, A5, 3.3V & GND। BME280 সেন্সর দুটি I2C ঠিকানা সমর্থন করে, অর্থাৎ দুটি BME280 সেন্সর একই নিয়ামকের সাথে একবারে সংযুক্ত হতে পারে। এটি করার সময়, সেন্সরের একটিতে সোল্ডার প্যাড লাগিয়ে একটি সেন্সরের ঠিকানা পরিবর্তন করতে হবে। একটি ESP-01 বেতার সংযোগ চিপের জন্য Arduino এর সাথে নিম্নলিখিত সংযোগের প্রয়োজন।
ESP-01 --------- Arduino Uno
10 -------------------- TX
11 -------------------- আরএক্স
Vcc ---------------- CH_PD
Vcc ------------------- Vcc
GND ----------------- GND
দ্রষ্টব্য:- ব্যাটারির আয়ু উন্নত করার জন্য Arduino Uno- এর একাধিক LEDs সরানো হয়েছে। শক্তির নির্দেশক LED, RX, এবং TX LEDs সোল্ডার জয়েন্টগুলোকে গরম করে এবং LED কে ফোর্সপস দিয়ে ঠেলে সরিয়ে দেওয়া হয়।
পদক্ষেপ 2: আইডিই এবং লাইব্রেরি সেটআপ করুন
কোন প্রোগ্রামিং করার আগে Arduino IDE (Integrated Development Environment) ডাউনলোড করতে হবে। এই প্ল্যাটফর্মে প্রোগ্রামিং করা হয়েছিল। OPENSDL এর বিভিন্ন উপাদানের সাথে যোগাযোগের জন্য বিভিন্ন লাইব্রেরির প্রয়োজন ছিল। প্রদত্ত উপাদানগুলির জন্য নিম্নলিখিত গ্রন্থাগারগুলি ব্যবহার করা হয়েছিল।
উপাদান ------------------------------------------------- -------------- লাইব্রেরি
BME280 তাপমাত্রা এবং RH সেন্সর --------------------------------- ক্যাকটাস_ও_বিএমই 280_I2C.h
আলো সেন্সর------------------------------------------------ ---------------- স্পার্কফুন TSL2561.h
রিয়েল টাইম ঘড়ি ----------------------------------------------- ------------- RTClib.h
এসডি কার্ড সকেট ----------------------------------------------- ------------- SD.h
I2C সংযোগ ------------------------------------------------ ------------- ওয়্যার.এইচ
ESP01 এর সাথে যোগাযোগের জন্য একটি পৃথক লাইব্রেরির প্রয়োজন নেই কারণ Arduino এ আপলোড করা কোডটিতে AT কমান্ড রয়েছে, যা সিরিয়াল মনিটরে পাঠানো হয়, যেখান থেকে ESP-01 নির্দেশাবলী নেয়। সুতরাং, মূলত, AT কমান্ড যার দ্বারা ESP01 চলে, সিরিয়াল মনিটরে মুদ্রিত হয়, যা ESP-01 দ্বারা একটি ইনপুট কমান্ড হিসাবে নেওয়া হয়। এই লাইব্রেরিগুলি ইনস্টল করার জন্য, এগুলি ডাউনলোড করার পরে, আরডুইনো আইডিই খুলুন, স্কেচ -> লাইব্রেরি অন্তর্ভুক্ত করুন -> জিপ লাইব্রেরি যোগ করুন এবং ডাউনলোড করা লাইব্রেরিগুলি নির্বাচন করুন।
ধাপ 3: সিস্টেম প্রোগ্রামিং
OPENSDL প্রোগ্রাম করার আগে, Arduino কে একটি ল্যাপটপের সাথে সংযুক্ত করুন। সংযোগ করার পরে, সরঞ্জাম -> পোর্টে যান এবং COM পোর্ট নির্বাচন করুন যেখানে OPENSDL সংযুক্ত রয়েছে। এছাড়াও, নিশ্চিত করুন যে সরঞ্জাম -> বোর্ডের অধীনে, Arduino Uno নির্বাচন করা হয়েছে।
OPENSDL 2 মোডে কাজ করার জন্য তৈরি করা হয়েছিল। প্রথম মোডে, এটি ডাটা লগার শিল্ডে SD কার্ডের ডেটা সংরক্ষণ করে। দ্বিতীয় মোডে, এটি একটি ইএসপি -01 ওয়াই-ফাই চিপ ব্যবহার করে ইন্টারনেটে ডেটা একটি ওয়েবসাইটে পাঠায়। উভয় মোডের জন্য প্রোগ্রাম ভিন্ন। কোডের এই লাইনগুলি Arduino IDE এডিটরে সরাসরি কপি এবং পেস্ট করা যায় এবং সরাসরি ব্যবহার করা যায়। একবার কোডে, আমাদের প্রয়োজন অনুযায়ী আমাদের কিছু কাস্টমাইজেশন করতে হবে:
- লগিং ব্যবধান পরিবর্তন করতে কোডের শেষে বিলম্বের মান (1000) ম্যানুয়ালি পরিবর্তন করুন। মান 1000 মিলিসেকেন্ডে ব্যবধান প্রতিনিধিত্ব করে।
- কোডের লাইন সম্পাদনা করুন যা বলে mySensorData = SD.open ("Logged01.csv", FILE_WRITE); এবং Logged01 কে কাঙ্ক্ষিত ফাইলের নামের ফাইলের নাম দিয়ে প্রতিস্থাপন করুন। ফাইলের নামের ঠিক পরে.csv এক্সটেনশন পরিবর্তন করে ফাইলের এক্সটেনশনও পরিবর্তন করা যায়।
- মাস্টার/রেফারেন্স সেন্সর এবং BME280 এর মধ্যে পারস্পরিক সম্পর্ক খুঁজে পেয়ে ক্রমাঙ্কন সমীকরণ প্রতিটি সেন্সরের সাথে পরিবর্তিত হবে। সেন্সরগুলি ক্যালিব্রেট করার জন্য সমীকরণের সাথে কোডের এই লাইনটি প্রতিস্থাপন করুন: Serial.print ((1.0533*t2) -2.2374)-ডিফল্ট ঠিকানা (0x77) সহ সেন্সরের জন্য, যেখানে t2 হল তাপমাত্রা সেন্সর থেকে পড়া মান।
OPENSDL- এর দ্বিতীয় উপলব্ধ মোড প্রোগ্রামিং করার জন্য একটি পৃথক প্রোগ্রাম প্রদান করা হয়েছে, যা ওয়্যারলেস সিস্টেম। ESP-01 অবশ্যই OPENSDL- এর সাথে সংযোগ অনুযায়ী ধাপ #2-এ ব্যাখ্যা করা হয়েছে। সংযোগগুলি সম্পন্ন করার পরে, ল্যাপটপে আরডুইনো সংযুক্ত করুন এবং আরডুইনোতে একটি ফাঁকা স্কেচ আপলোড করুন। ESP-01 কে আপডেট মোডে রাখুন এবং ফার্মওয়্যারটিকে সর্বশেষ উপলব্ধ আপডেটে আপডেট করুন। আপডেট করার পরে, Arduino রিসেট পিনটিকে 3.3V পিনের সাথে সংযুক্ত করতে ভুলবেন না, যা Arduino বুটলোডারকে বাইপাস করে
ধাপ 4: ফ্যাব্রিকেশন
OPENSDL এর জন্য একটি ঘের তৈরি করা হয়েছিল সুরক্ষার জন্য এবং নান্দনিকতার উন্নতির জন্য। পিএলএ উপাদান ব্যবহার করে থ্রিডি প্রিন্টিংয়ের মাধ্যমে ক্যাসিংগুলি তৈরি করা হয়েছিল এবং মাইক্রোকন্ট্রোলারের কেসিংটি লেজার দ্বারা এমডিএফ শীট কেটে এবং টুকরোগুলোকে আঠালো করে তৈরি করা হয়েছিল। 3D মুদ্রিত মডেলগুলি স্কেচআপ সফটওয়্যার ব্যবহার করে তৈরি করা হয়েছিল এবং অটোক্যাড ব্যবহার করে লেজার কাটার জন্য 2D dxf অঙ্কন তৈরি করা হয়েছিল।
3D প্রিন্টিংয়ের জন্য, SketchUp ব্যবহার করে উৎপাদিত STL ফাইলগুলি আল্টিমেকার কুরা 3.2.1 সফটওয়্যারে খোলা এবং চেক করা হয়েছিল। নিশ্চিত করুন যে পিএলএ উপাদান ব্যবহার করা হয়েছে, এবং ব্যবহৃত প্রিন্টারের অগ্রভাগ 0.4 মিমি মুদ্রণের জন্য। থ্রিডি প্রিন্টারের বিল্ড প্লেটের জন্য থ্রিডি প্রিন্টেড বস্তুকে আটকে আঠা লাগতে পারে। কিন্তু যখন মুদ্রণ সম্পূর্ণ হয়, আঠা মুদ্রিত বস্তু এবং বিল্ড প্লেটের মধ্যে একটি শক্তিশালী আনুগত্য তৈরি করে।
ধাপ 5: কোড
কোড (.ino ফাইল) Arduino IDE সফটওয়্যারে কাজ করার জন্য তৈরি করা হয়েছে। কোড এবং অন্যান্য বিবরণের জন্য এখানে আমার গিথুব পৃষ্ঠার লিঙ্ক রয়েছে।
github.com/arihant93/OPENSDL
প্রকল্প সম্পর্কে প্রশ্ন করতে দ্বিধা করবেন না দয়া করে।
ধন্যবাদ।
প্রস্তাবিত:
আর্ডুইনো ইউএনও এবং এসডি-কার্ড দিয়ে আর্দ্রতা এবং তাপমাত্রা রিয়েল টাইম ডেটা রেকর্ডার কিভাবে তৈরি করবেন - প্রোটিয়াসে DHT11 ডেটা-লগার সিমুলেশন: 5 টি ধাপ
আর্ডুইনো ইউএনও এবং এসডি-কার্ড দিয়ে আর্দ্রতা এবং তাপমাত্রা রিয়েল টাইম ডেটা রেকর্ডার কিভাবে তৈরি করবেন | প্রোটিয়াসে DHT11 ডেটা-লগার সিমুলেশন: ভূমিকা: হাই, এটি লিওনো মেকার, এখানে ইউটিউব লিঙ্ক রয়েছে। আমরা আরডুইনো দিয়ে সৃজনশীল প্রকল্প তৈরি করছি এবং এমবেডেড সিস্টেমে কাজ করছি।
Q -Bot - ওপেন সোর্স রুবিক্স কিউব সলভার: 7 টি ধাপ (ছবি সহ)
Q -Bot - ওপেন সোর্স রুবিক্স কিউব সলভার: কল্পনা করুন আপনার কাছে একটি রুবিক্স কিউব আছে, আপনি জানেন যে ধাঁধাটি s০ এর দশকে তৈরি হয়েছে যা প্রত্যেকেরই আছে কিন্তু কেউই জানেন না কিভাবে সমাধান করতে হয় এবং আপনি এটিকে তার মূল প্যাটার্নে ফিরিয়ে আনতে চান। সৌভাগ্যবশত আজকাল সমাধানের নির্দেশ পাওয়া খুব সহজ
আরডুইনো লার্নার কিট (ওপেন সোর্স): 7 টি ধাপ (ছবি সহ)
আরডুইনো লার্নার কিট (ওপেন সোর্স): আপনি যদি আরডুইনো ওয়ার্ল্ডে একজন শিক্ষানবিশ হন এবং আরডুইনো শিখতে যাচ্ছেন তবে এই নির্দেশিকা এবং এই কিটটি আপনার জন্য। এই কিটটি শিক্ষকদের জন্যও একটি ভাল পছন্দ যারা তাদের শিক্ষার্থীদের সহজে উপায়ে আরডুইনো শেখাতে পছন্দ করে।
K -Ability V2 - টাচস্ক্রিনের জন্য ওপেন সোর্স অ্যাক্সেসযোগ্য কীবোর্ড: 6 টি ধাপ (ছবি সহ)
K-Ability V2-টাচস্ক্রিনের জন্য ওপেন সোর্স অ্যাক্সেসযোগ্য কীবোর্ড: এই প্রোটোটাইপ K-Ability এর দ্বিতীয় সংস্করণ। K-Ability হল একটি ফিজিক্যাল কিবোর্ড যা নিউরোমাসকুলার ডিসঅর্ডার এর ফলে প্যাথলজিসযুক্ত ব্যক্তিদের টাচস্ক্রিন ডিভাইস ব্যবহারের অনুমতি দেয়। যা গণনার ব্যবহার সহজ করে দেয়
OpenLogger: একটি হাই-রেজোলিউশন, ওয়াই-ফাই সক্ষম, ওপেন সোর্স, পোর্টেবল ডেটা লগার: 7 টি ধাপ
ওপেনলগার: একটি উচ্চ-রেজোলিউশন, ওয়াই-ফাই সক্ষম, ওপেন সোর্স, পোর্টেবল ডেটা লগার: ওপেনলগার একটি বহনযোগ্য, ওপেন সোর্স, কম খরচে, উচ্চ-রেজোলিউশনের ডেটা লগার যা ব্যয়বহুল সফটওয়্যার বা লেখার সফটওয়্যারের প্রয়োজন ছাড়াই উচ্চমানের পরিমাপ প্রদানের জন্য ডিজাইন করা হয়েছে স্ক্র্যাচ থেকে আপনি যদি একজন প্রকৌশলী, বিজ্ঞানী বা উত্সাহী হন তবে