সুচিপত্র:

রাস্পবেরি পাই এবং কণা আর্গন ব্যবহার করে কীভাবে স্মার্ট বন্যা সনাক্তকরণ অ্যালার্ম সিস্টেম তৈরি করবেন: 6 টি ধাপ
রাস্পবেরি পাই এবং কণা আর্গন ব্যবহার করে কীভাবে স্মার্ট বন্যা সনাক্তকরণ অ্যালার্ম সিস্টেম তৈরি করবেন: 6 টি ধাপ

ভিডিও: রাস্পবেরি পাই এবং কণা আর্গন ব্যবহার করে কীভাবে স্মার্ট বন্যা সনাক্তকরণ অ্যালার্ম সিস্টেম তৈরি করবেন: 6 টি ধাপ

ভিডিও: রাস্পবেরি পাই এবং কণা আর্গন ব্যবহার করে কীভাবে স্মার্ট বন্যা সনাক্তকরণ অ্যালার্ম সিস্টেম তৈরি করবেন: 6 টি ধাপ
ভিডিও: What is Raspberry Pi? Explained Everything About Raspberry Pi In Bangla 2024, নভেম্বর
Anonim
Image
Image
রাস্পবেরি পাই এবং কণা আর্গন ব্যবহার করে কীভাবে স্মার্ট বন্যা সনাক্তকরণ অ্যালার্ম সিস্টেম তৈরি করবেন
রাস্পবেরি পাই এবং কণা আর্গন ব্যবহার করে কীভাবে স্মার্ট বন্যা সনাক্তকরণ অ্যালার্ম সিস্টেম তৈরি করবেন

আপনার বাড়ি বা কর্মস্থলে ব্যাপক ক্ষতি রোধ করার জন্য স্ট্যান্ডার্ড ফ্লাড সেন্সর থাকা দারুণ।

কিন্তু আপনি যদি অ্যালার্মে উপস্থিত না হন তবে এটি কঠিন করে তোলে।

অবশ্যই আপনি স্মার্ট কিনতে পারেন

এই ফ্লাড অ্যালার্ম সিস্টেম কোন তরল শনাক্ত করে এবং অ্যালার্ম ট্রিগার করে এবং বন্যা সম্পর্কে ওয়েব পেজ আপডেট করে যা বিশ্বের যে কোন জায়গায় অ্যাক্সেস করা যায়, আপনি ছুটিতে ছুটি কাটাচ্ছেন বা শুধু কর্মস্থলে আছেন এবং আপনি আপনার বাড়ির অবস্থা সম্পর্কে জানতে চান।

সরবরাহ

রাস্পবেরি পাই (আমি মডেল 3 বি+ব্যবহার করছি) রাস্পবিয়ান চালাচ্ছি

কণা আর্গন

গ্রোভ ওয়াটার সেন্সর

রাস্পি ক্যামেরা

বুজার

জাম্পার তার

ধাপ 1: ওয়াটার সেন্সরকে কণার সাথে সংযুক্ত করুন

ওয়াটার সেন্সরকে কণার সাথে সংযুক্ত করুন
ওয়াটার সেন্সরকে কণার সাথে সংযুক্ত করুন
ওয়াটার সেন্সরকে কণার সাথে সংযুক্ত করুন
ওয়াটার সেন্সরকে কণার সাথে সংযুক্ত করুন

ওয়াটার সেন্সরের 4 টি পিন আছে, যা GND, VCC, NC এবং SIG এবং আমরা তাদের মধ্যে মাত্র তিনটি ব্যবহার করতে যাচ্ছি

আমি আর্গনে SIG পিনকে D2 এর সাথে সংযুক্ত করছি।

এখন, আপনি কোড লিখতে এবং আর্গনে ফ্ল্যাশ করতে পার্টিকেল ওয়েব আইডিই চালু করতে পারেন

তাই আমরা কণা ফাংশন তরল নিবন্ধিত করেছি এবং একটি পরিবর্তনশীল isFloodPresent সংজ্ঞায়িত করেছি, যা পার্টিকেল কনসোল থেকে বলা যেতে পারে এবং isFloodPresent এর বুলিয়ান মান পেতে পারে এবং মক টেস্টিং এর জন্য ফাংশন লিকুইডকে কল করে যা ইনপুট হিসেবে মান 1 নেয় যার অর্থ বন্যার জন্য সত্য (বর্তমান) ।

নিশ্চিত করুন যে আপনি আপনার কণা ডিভাইসের কণা কনসোল থেকে সেই ফাংশন এবং পরিবর্তনশীল দেখতে সক্ষম হয়েছেন।

ধাপ 2: রাস্পবেরিতে অ্যালার্মের উৎস সংযুক্ত করুন

অ্যালার্ম সোর্সকে রাস্পবেরিতে সংযুক্ত করুন
অ্যালার্ম সোর্সকে রাস্পবেরিতে সংযুক্ত করুন

রুটিবোর্ডে আপনি বুজারকে রাস্পবেরির জিপিআইও পিনের সাথে সংযুক্ত করতে পারেন

আমি বাজারের ছোট প্রান্তকে GND (PIN 6) এবং দীর্ঘ শেষকে রাস্পবেরিতে 7 পিনের সাথে সংযুক্ত করেছি।

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

বিকল্পভাবে আপনি এই ফাইলটি আপনার রাস্পবেরিতে স্টার্টআপে চালাতে পারেন যা আপনি /etc /systemd সম্পাদনা করে করতে পারেন

এবং এই ফাইলটি আপনার অ্যাপাচি সার্ভারের cgi ফোল্ডারে রাখা হবে, আমি/var/www/html/এর ভিতরে নতুন ডিরেক্টরি ফ্লাড-সিজিআই তৈরি করেছি এবং এই.py ফাইলটি স্থাপন করেছি যা আমার সিজিআই স্ক্রিপ্টের সাথে যোগাযোগ করবে

ধাপ 3: অ্যাপাচি সার্ভার কনফিগার করুন

অ্যাপাচি সার্ভার কনফিগার করুন
অ্যাপাচি সার্ভার কনফিগার করুন

আপনি sudo apt-get install apache2 টাইপ করে অ্যাপাচি সার্ভার ইনস্টল করতে পারেন

যখন এটি ইনস্টল করা হয়, আপনি হোস্টনাম -I টাইপ করে যাচাই করতে পারেন

এবং আপনি আপনার স্থানীয় আইপি ঠিকানা পাবেন এবং আপনি আপনার ব্রাউজারে যেতে পারেন এবং সার্ভারটি চলতে দেখা উচিত

ধাপ 4: অ্যাপাচে সিজিআই সক্ষম করুন

অ্যাপাচে সিজিআই সক্ষম করুন
অ্যাপাচে সিজিআই সক্ষম করুন

আপনি sudo a2enmod cgi লিখে cgi সক্ষম করতে পারেন

ডিফল্টভাবে Apache এর cgi_bin/usr/lib/cgi-bin এ অবস্থিত

সিজিআই সক্ষম করার পরে আপনি এখানে আপনার সিজিআই স্ক্রিপ্টগুলি রাখতে পারেন

প্রভাব নিতে, আপনাকে অ্যাপাচি সার্ভার পুনরায় চালু করতে হবে

আমি আমার সিজিআই স্ক্রিপ্টের জন্য কাস্টম ডিরেক্টরি চেয়েছিলাম তাই আমি/var/www/html/ফ্লাড-সিজিআই-তে ডাইরেক্টরি তৈরি করেছি

এই ডিরেক্টরিটি সক্ষম করতে আমাকে টাইপ করে conf ফাইল তৈরি করতে হয়েছিল

সুডো ন্যানো /etc/apache2/conf-available/flood-cgi.conf

এবং স্ক্রিনশটে দেখানো কমান্ড যোগ করা

তারপর টাইপ করে এই ডিরেক্টরিটি সক্ষম করুন

var/www/html $ sudo a2enconf flood-cgi

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

ধাপ 5: ওয়েব পেজ সেট আপ করুন

ওয়েব পেজ সেট আপ করুন
ওয়েব পেজ সেট আপ করুন

এই সাধারণ ওয়েব পরিষেবার জন্য, আমি HTML, জাভাস্ক্রিপ্ট, CSS, jquery এবং ajax ব্যবহার করছি।

আমার পাঁচটি নিয়ন্ত্রণ লেবেল রয়েছে যা ক্লিকযোগ্য, ইভেন্টে যখন ওয়েব পেজ থেকে ফটো তোলা হয়, এটি ফটো বোতাম ক্লিক ফাংশন ট্রিগার করবে এবং এই ফাংশনটি এইরকম দেখায়

$ ("#photobutton")। click (function () {var floodDate = new Date ();

var floodImageName = "Flood_IMG_" + floodDate.toLocaleTimeString ();

$.ajax ({

url: 'flood-cgi/flood_cgi.py', পদ্ধতি: 'পোস্ট', ডেটা: {name_for_image: floodImageName}, সাফল্য: ফাংশন (ডেটা) {

সতর্কতা (তথ্য, অবস্থা)

$ ("#recentpic")। attr ("src", "flood-cgi/" + floodImageName + ".jpg");

}

})

});

ছবি তোলার জন্য এটি flood_cgi.py স্ক্রিপ্টকে কল করবে এবং বর্তমান তারিখ এবং সময় দ্বারা তৈরি কাস্টম নাম দিয়ে ছবি সংরক্ষণ করবে এবং পেজ পর্যন্ত AJAX লোড করবে।

অ্যালার্মের ক্ষেত্রে, আমরা এই ফাংশনটি ব্যবহার করতে পারি

ফাংশন callAlarm (alarmType) {

$.ajax ({

url: 'flood-cgi/alarm.cgi', পদ্ধতি: 'পোস্ট', ডেটা: {alarm_type: alarmType}, সাফল্য: ফাংশন (ডেটা) {সতর্কতা (ডেটা)

}, ত্রুটি: ফাংশন (XMLHttpRequest, textStatus, throwError) {সতর্কতা (throwError)}});

}

ফাংশন callAlarm বলা হবে যখন বাজারের লেবেলে ক্লিক করা হবে, $ ("#buzzer")। click (function () {callAlarm ("test");

})

নীচের কোডটি হল যখন আপনি মক বন্যা ক্লিক করতে চান অর্থাৎ কণা API কে কল করে ফাংশনটি কল করুন এবং তরল মান 1 পরিবর্তন করুন এবং একটি মক বন্যা ইভেন্ট পরিচালনা করে পুরোটা প্রত্যাশিতভাবে কাজ করছে কিনা তা পরীক্ষা করুন

$ ("#mockFlood")। ক্লিক করুন (function () {console.log ("মক বন্যা অনুরোধ করেছে");

var ফ্লাডভ্যাল = 1;

$ ("#signal2")। css ("font-size", "small");

var varName = "isFloodPresent";

var deviceID = "আপনার ডিভাইস আইডি";

var accessToken = "আপনার অ্যাক্সেস টোকেন";

যদি (ফ্লাডভ্যাল) {

$.post ("https://api.particle.io/v1/devices/" + deviceID + "/তরল? access_token =" + accessToken, {তরল: ফ্লাডভ্যাল}, ফাংশন (ডেটা, স্ট্যাটাস) {

যদি (অবস্থা == "সাফল্য") {

সতর্কতা ("মক বন্যা পরিচালিত হয়েছে !!!");

} অন্য {

সতর্কতা ("দু Sorryখিত, একটি সমস্যা ছিল");

}

});

}

});

কণা এপিআই এবং আপনার রাস্পবেরির সাথে সংযোগ স্থাপনের জন্য এগুলি হল প্রধান কাজ যা আপনার রাস্পবেরি পাই এবং কণা ডিভাইস আর্গন যোগাযোগ করতে পারে।

দ্রষ্টব্য: আমি সমস্ত কোড আপলোড করতে চেয়েছিলাম, কিন্তু এটি আমাকে.html ফাইল আপলোড করার অনুমতি দেয় না

ধাপ 6: রাস্পি ক্যামেরার জন্য স্ক্রিপ্ট তৈরি করুন

আমরা ইমেজ ক্যাপচার করার জন্য সহজ.py তৈরি করছি এবং এতে বর্তমান তারিখ এবং সময়ের টীকা থাকবে।

তারপর আমরা cgi স্ক্রিপ্ট flood_cgi.py তৈরি করব তাই এটি ওয়েব থেকে কল করা হবে এবং এটি.py ফাইলকে ছবি তোলার নির্দেশ দেবে।

#দিয়ে cgi স্ক্রিপ্ট শুরু করতে ভুলবেন না! /usr/bin/env পাইথন

এবং এই ফাইলগুলি চালানোর জন্য অ্যাপাচি অনুমতি দিন।

অ্যাপাচি সার্ভার ব্যবহারকারী www-data এ চলে তাই একবার আমরা.py বা.cgi ফাইল তৈরি করলে অ্যাপাচি ফাইলের মালিক হতে হবে

sudo chown pi: www-data flood-cgi.py

এবং কার্যকর করার অনুমতি দিন

sudo chmod a+x flood-cgi.py

অ্যাপাচি সার্ভার থেকে চালানোর জন্য প্রয়োজনীয় সমস্ত ফাইলের জন্য আপনাকে এটি করতে হবে।

দ্রষ্টব্য: ইন্টারনেটে আপনার রাস্পবেরি উন্মুক্ত করা এবং এই সমস্ত অনুমতি দেওয়া আপনার রাস্পবেরি নিরাপত্তার কারণে খুব ঝুঁকিপূর্ণ করে তোলে তাই কঠোর ব্যবহারকারী এবং অনুমতি অনুসরণ করা উচিত এবং অসম্পূর্ণ ফায়ারওয়াল (ইউএফডব্লিউ) এর মতো ফায়ারওয়াল ইনস্টল করা উচিত

প্রস্তাবিত: