সুচিপত্র:

IoT পোষা মনিটর!: 6 টি ধাপ (ছবি সহ)
IoT পোষা মনিটর!: 6 টি ধাপ (ছবি সহ)

ভিডিও: IoT পোষা মনিটর!: 6 টি ধাপ (ছবি সহ)

ভিডিও: IoT পোষা মনিটর!: 6 টি ধাপ (ছবি সহ)
ভিডিও: গরুটা সাথে কি হয়েছে #shorts #wildlifebd 2024, নভেম্বর
Anonim
Image
Image
প্রস্তাবিত পড়া
প্রস্তাবিত পড়া

আপনার প্রিয় bbies উপর নজর রাখুন এবং সঙ্গীত বা আপনি তাদের দূরে থাকাকালীন তাদের চুপ থাকতে বলুন! এই টিউটোরিয়ালটি দেখাবে যে কীভাবে আপনার পোষা প্রাণীটি বিরক্ত হয় তা দেখতে আপনার ঘরে (ক্লাউডের মাধ্যমে) শব্দের পরিমাণ পর্যবেক্ষণ করতে রাস্পবেরি পাই কম্পিউটার কীভাবে ব্যবহার করবেন।

ড্রাম রোল … সবচেয়ে মজার অংশ: যদি এটি খুব জোরে হয় (যেমন ফিদো ঘেউ ঘেউ করছে বা অন্য কোন অশ্লীলতা তৈরি করছে), আমরা আপনাকে তাদের চুপ থাকতে বা সঙ্গীত বাজাতে বলব!

পাই (এবং স্পিকার) বরাবর, আমরা ভলিউম মাত্রা পরিমাপ এবং অডিও প্লেয়ার ট্রিগার করতে স্পার্কফুন এমইএমএস মাইক্রোফোন ব্রেকআউট বোর্ড ব্যবহার করব। MQTT যোগাযোগ প্রোটোকল ব্যবহার করে ক্লাউডএমকিউটিটি পরিষেবাতে ডেটা আপলোড করা হয়।

মোট পড়ার সময়: ~ 8 মিনিট

মোট নির্মাণ সময়: 60 মিনিট (কম w/ অভিজ্ঞ)

এই প্রকল্পটিকে সমর্থন করার জন্য স্পার্কফুনকে একটি বিশাল ধন্যবাদ! এখানে টিউটোরিয়াল দেখুন।

ধাপ 1: প্রস্তাবিত পড়া

এই প্রকল্পটি তৈরি করতে, আপনার সম্পূর্ণরূপে কনফিগার করা, ওয়াইফাই-সংযুক্ত রাস্পবেরি পাই 3 কম্পিউটারটি রাস্পবিয়ান ওএস সহ প্রয়োজন হবে। কিছু পাইথন প্রোগ্রামিং এবং নিম্নলিখিত বিষয়গুলি জানাও সহায়ক: (1) রাস্পবেরি পাই জিপিআইও পিনগুলি কীভাবে ব্যবহার এবং নিয়ন্ত্রণ করতে হয়; (2) MQTT যোগাযোগ; এবং (3) এনালগ সেন্সর। যদি এর মধ্যে কোনটি অপরিচিত হয়, অথবা যদি আপনি কেবল কৌতূহলী হন (কৌতূহলী হন!), নীচের টিউটোরিয়ালগুলি দেখুন!

রাস্পবেরি পাই 3

  1. রাস্পবেরি পাই 3 স্টার্টার কিট হুকআপ গাইড
  2. রাস্পবেরি পাই জিপিআইও
  3. রাস্পবেরি পাই এর সাথে এসপিআই যোগাযোগ

MQTT কমিউনিকেশন প্রোটোকল

এমকিউটিটি (মেসেজ কোয়েরি টেলিমেট্রি ট্রান্সপোর্ট) একটি জনপ্রিয় আইওটি যোগাযোগ প্রোটোকল। আমরা পাহো ক্লায়েন্ট পাইথন লাইব্রেরি এবং ক্লাউডএমকিউটিটি নামে একটি এমকিউটিটি পরিষেবা ব্যবহার করব। এখানে এমকিউটিটি এবং এটি কীভাবে ব্যবহার করবেন সে সম্পর্কে আরও বিস্তারিত:

  1. IoT- এর জন্য যোগাযোগের প্রোটোকলগুলি অন্বেষণ করা
  2. CloudMQTT দিয়ে শুরু করা
  3. Eclipse Paho MQTT Python ক্লায়েন্ট লাইব্রেরির ওভারভিউ

MEMS মাইক্রোফোন ব্রেকআউট বোর্ড

এমইএমএস মাইক্রোফোন একটি এনালগ মাইক্রোফোন, তাই রাস্পবেরি পাই ডিজিটাল জিপিআইও পিনের সাথে এনালগ সিগন্যালে পড়ার জন্য আমাদের একটি এনালগ-টু-ডিজিটাল কনভার্টার ("এডিসি") প্রয়োজন হবে।

  1. স্পার্কফুন এমইএমএস মাইক্রোফোন ব্রেকআউট বোর্ড দিয়ে শুরু করা
  2. MEMS মাইক্রোফোন ডেটাশীট
  3. MCP3002 ADC ডেটশীট

ধাপ 2: উপকরণ

উপকরণ
উপকরণ
উপকরণ
উপকরণ
উপকরণ
উপকরণ

- রাস্পবেরি পাই 3 মডেল বি

আমাদের নিম্নলিখিত পেরিফেরালগুলিরও প্রয়োজন হবে: রাস্পবেরি পাই 3 কেস; এসডি কার্ড (সর্বনিম্ন 8 জিবি); রাস্পবেরি পাই 3 জিপিআইও কেবল; মাইক্রো ইউএসবি পাওয়ার ক্যাবল; HDMI কেবল এবং HDMI- সামঞ্জস্যপূর্ণ মনিটর; ইউএসবি কীবোর্ড; ইউএসবি মাউস; 1/8 হেডফোন পোর্ট সহ স্পিকার।

- স্পার্কফুন এমইএমএস মাইক ব্রেকআউট বোর্ড

-MCP3002 (এনালগ থেকে ডিজিটাল কনভার্টার)

-ব্রেডবোর্ড এবং এম-টু-এম ব্রেডবোর্ড জাম্পার ওয়্যার

ধাপ 3: রাস্পবেরি পাই কনফিগার করুন

রাস্পবেরি পাই কনফিগার করুন
রাস্পবেরি পাই কনফিগার করুন
রাস্পবেরি পাই কনফিগার করুন
রাস্পবেরি পাই কনফিগার করুন
রাস্পবেরি পাই কনফিগার করুন
রাস্পবেরি পাই কনফিগার করুন
রাস্পবেরি পাই কনফিগার করুন
রাস্পবেরি পাই কনফিগার করুন

ধাপ 1: আপডেটগুলি পরীক্ষা করুন এবং ইনস্টল করুন আপডেটগুলি পরীক্ষা করা এবং ইনস্টল করা সর্বদা শুরু করার একটি ভাল উপায়। টার্মিনাল উইন্ডোতে নিম্নলিখিত কমান্ডগুলি চালান:

sudo apt- আপডেট পান

sudo apt-get upgrade

sudo রিবুট

ধাপ 2: MEMS মাইক্রোফোন + MCP3002 এর জন্য SPI ইন্টারফেস সেট আপ করুন

MCP3002 এর মাধ্যমে MEMS মাইক্রোফোনে পড়তে SPI (সিরিয়াল পোর্ট ইন্টারফেস) ব্যবহার করতে, আমাদের পাইথন দেব প্যাকেজের প্রয়োজন হবে:

sudo apt-get python-dev ইনস্টল করুন

আমাদের এসপিআই ইন্টারফেসেরও প্রয়োজন হবে (এটি সংরক্ষণ করতে একটি সাবফোল্ডার তৈরি করতে চাইতে পারে):

git clone git: //github.com/doceme/py-spidev

sudo python setup.py ইনস্টল করুন

এখানে SPI-Dev ডকুমেন্টেশন আছে যদি আপনি কোন সমস্যায় পড়েন।

ধাপ 3: OMXPlayer এর সাথে সাউন্ড বাজানো

OMXPlayer হল একটি অডিও এবং ভিডিও প্লেয়ার যা রাস্পবিয়ান ওএস-এ প্রি-লোডেড। এটি.wav,.mp3, এবং.m4a সহ বেশিরভাগ সাউন্ড ফাইল প্রকারের সাথে কাজ করে। ফিডো খুব জোরে উঠলে আমরা এই শব্দগুলি চালানোর জন্য এটি ব্যবহার করব। OMXPlayer কে নিয়ন্ত্রণ করার জন্য পাইথন লাইব্রেরি রাস্পবিয়ান (woo!) এর অন্তর্ভুক্ত।

টার্মিনাল থেকে OMXPlayer পরীক্ষা করতে, নিম্নলিখিতটি টাইপ করুন:

omxplayer /home/…/SongFilePath/SongFileName.mp3

যদি এটি কাজ না করে, স্থানীয় অডিও-আউট ডিভাইসে এটি জোর করে চেষ্টা করুন:

omxplayer -o local /home/…/SongFilePath/SongFileName.mp3

ধাপ 4: ক্লাউডএমকিউটিটি সার্ভার কনফিগার করুন

এখন আমরা একটি MQTT সার্ভার সেট আপ করেছি! ক্লাউডএমকিউটিটি ব্যবহার করে এটি করতে, নিম্নলিখিতগুলি করুন:

  1. একটি ক্লাউডএমকিউটিটি অ্যাকাউন্ট সেট আপ করুন ("সুন্দর বিড়াল" পরিকল্পনাটি বিনামূল্যে)।
  2. একটি নতুন MyCloud উদাহরণ তৈরি করুন।
  3. কনসোলে, একটি নতুন ACL নিয়ম তৈরি করুন।
  4. আপনি "websocket" UI তে প্রকাশিত বার্তাগুলি পর্যবেক্ষণ করতে পারেন।

অবশেষে, এমকিউটিটি পাহো ক্লায়েন্ট পাইথন লাইব্রেরি ইনস্টল করুন:

পাইপ ইনস্টল paho-mqtt

ধাপ 4: এটি তৈরি করুন! হার্ডওয়্যার

এটি তৈরি করুন! হার্ডওয়্যার
এটি তৈরি করুন! হার্ডওয়্যার
এটি তৈরি করুন! হার্ডওয়্যার
এটি তৈরি করুন! হার্ডওয়্যার
এটি তৈরি করুন! হার্ডওয়্যার
এটি তৈরি করুন! হার্ডওয়্যার

রাস্পবেরি পাই এবং এমসিপি 3002 এর জন্য পিনআউট ডায়াগ্রাম উপরের ছবিতে রয়েছে।

1. রুটিবোর্ডে MCP3002 পিন ertোকান (উপরে পিনআউট ডায়াগ্রাম দেখুন)

MCP3002 যোগাযোগের জন্য 4 টি SPI পিন ব্যবহার করে: সিরিয়াল ক্লক ("SCL"), মাস্টার ইনপুট স্লেভ আউটপুট ("MISO"), মাস্টার আউটপুট স্লেভ ইনপুট ("MOSI"), এবং চিপ সিলেক্ট ("CS")। এই পিনগুলি রাস্পবেরি পাই জিপিআইও পিন 11 (এসসিএলকে), জিপিআইও পিন 9 (এমআইএসও), জিপিআইও পিন 10 (এমওএসআই) এবং জিপিআইও পিন 8 (সিই 0) এর সাথে সামঞ্জস্যপূর্ণ।

MCP3002 পিনের সাথে নিম্নলিখিত সংযোগগুলি তৈরি করুন:

  • পিন 1 কে রাস্পবেরি পাই জিপিআইও পিন 8 (সিই 0) এর সাথে সংযুক্ত করুন
  • MEMS মাইক্রোফোন ব্রেকআউট বোর্ডের এনালগ আউটপুটে পিন 2 সংযুক্ত করুন
  • পিন 4 কে GND এর সাথে সংযুক্ত করুন
  • পিন 5 কে রাস্পবেরি পাই জিপিআইও পিন 10 (এমওএসআই) এর সাথে সংযুক্ত করুন
  • পিন 6 কে রাস্পবেরি পাই জিপিআইও পিন 9 (MISO) এর সাথে সংযুক্ত করুন
  • পিন 7 কে রাস্পবেরি পাই জিপিআইও পিন 11 (এসসিএলকে) এর সাথে সংযুক্ত করুন
  • পিন 8 কে রাস্পবেরি পাই 3.3V এর সাথে সংযুক্ত করুন

2. MEMS মাইক্রোফোন ব্রেকআউট বোর্ডে সোল্ডার ওয়্যার। MCP3002 এবং রাস্পবেরি পাই এর সাথে সংযোগ করুন।

  • Vcc কে Raspberry Pi 3.3V এর সাথে সংযুক্ত করুন।
  • GND কে রাস্পবেরী পাই GND এর সাথে সংযুক্ত করুন
  • AUD কে MCP3002 পিন 2 এর সাথে সংযুক্ত করুন

3. রাস্পবেরি পাই এর জন্য সমস্ত তারের মধ্যে প্লাগ করুন এবং সবকিছু চালু করুন।

ধাপ 5: এটি তৈরি করুন! সফটওয়্যার

এটি তৈরি করুন! সফটওয়্যার
এটি তৈরি করুন! সফটওয়্যার

বার্ক ব্যাকের সাথে আমাদের লক্ষ্য দ্বিগুণ: কুকুর যখন ঘেউ ঘেউ করে তখন প্লেব্যাক সাউন্ড ট্রিগার করুন এবং ডেটা সার্ভারে পাঠান যেখানে আমরা এটি পরীক্ষা করতে পারি।

এই প্রকল্পের জন্য এখানে ওপেন-সোর্স পাইথন প্রোগ্রাম রয়েছে।

প্রোগ্রামটি চালু এবং চালানোর জন্য, আপনাকে দুটি জিনিস পূরণ করতে হবে:

- গানের তালিকা: আপনি যে গানগুলি বাজাতে চান তার প্রত্যেকটির জন্য ফাইল পাথ এবং ফাইলের নাম লিখুন।

- creds: এই অভিধানে আপনার CloudMQTT তথ্য ইনপুট করুন।

ধাপ 1: স্পার্কফুন এমইএমএস মাইক্রোফোন ব্রেকআউট বোর্ডে পড়ুন।

SPI লাইব্রেরি ব্যবহার করে MEMS মাইক্রোফোন ব্রেকআউট বোর্ড (MCP3002 এর মাধ্যমে) থেকে ADC মান (0 থেকে 1023 এর মধ্যে) পড়ুন এবং সিগন্যাল-টু-পিক প্রশস্ততা গণনা করুন।

ভলিউম ইউনিটে সিগন্যাল পিক-টু-পিক প্রশস্ততা ম্যাপ করুন। বর্তমান কোড 0 থেকে 700 এর মধ্যে ADC পরিসরকে ম্যাপ করে (দ্রুত পরীক্ষার উপর ভিত্তি করে) 0 থেকে 10 এর মধ্যে একটি ভলিউম ইউনিটে।

এমইএমএস মাইকের পুঙ্খানুপুঙ্খ ওভারভিউয়ের জন্য, এই টিউটোরিয়ালটি দেখুন।

পদক্ষেপ 2: ট্রিগার অডিও প্লেয়ার।

প্রথমে আমাদের বাজানোর জন্য গান লাগবে! আপনি দ্রুত গ্যারেজব্যান্ডে (অথবা আপনার স্মার্টফোনে) শব্দগুলি রেকর্ড করতে পারেন এবং রাস্পবেরি পাইতে তাদের পাঠাতে পারেন। পাইথনে, omxplayer কে কল করার জন্য সাবপ্রসেস লাইব্রেরি ব্যবহার করুন।

কোডে, * songList * ভেরিয়েবল (লাইন 26) এ আপনি যে গানগুলি চালাতে চান তার ফাইল পাথ ইনপুট করুন। বর্তমান ভলিউম থ্রেশহোল্ডটি মূল ফাংশনে 7 এ সেট করা আছে।

ধাপ 3: ক্লাউডএমকিউটিটি সার্ভারে ডেটা পাঠান

ক্লাউডএমকিউটিটি সার্ভারের সাথে যোগাযোগের জন্য পাহো ক্লায়েন্ট পাইথন লাইব্রেরি ব্যবহার করুন। ব্যাপকভাবে সংক্ষেপে: একটি ক্লায়েন্ট সার্ভার সেট আপ করুন; যোগাযোগ প্রোটোকল সংজ্ঞায়িত করুন; আমাদের শংসাপত্রের সাথে সংযুক্ত করুন (ওরফে ক্রেডিট); এবং সাবস্ক্রাইব করুন এবং আমাদের ডেটা প্রকাশ করুন। এর অধিকাংশই প্রধান ফাংশনে (লাইন 129 - 149, এবং লাইন 169 - 174) করা হয়।

প্রাপ্ত ডেটা চেক করতে, ক্লাউডএমকিউটিটি কনসোলের "ওয়েবসাইটসকেট ইউআই" ট্যাবে যান।

ধাপ 6: পরীক্ষা এবং ইনস্টল করুন

পরীক্ষা এবং ইনস্টল করুন!
পরীক্ষা এবং ইনস্টল করুন!

টার্মিনালে বা পাইথন আইডিইতে বার্কব্যাক.পি প্রোগ্রামটি চালান (আপনি ইতিমধ্যে চলে যাওয়ার পরে প্রোগ্রামটি চালানোর জন্য এসএসএইচ ব্যবহার করতে পারেন)।

আপনি আপনার Websocket UI ট্যাবে ভলিউম লেভেল পাচ্ছেন কিনা তা পরীক্ষা করুন।

মাইক (হাততালি, চিৎকার, ছাল, ইত্যাদি) ট্রিগার করে সিস্টেমটি পরীক্ষা করুন যাতে নিশ্চিত হন যে স্পিকারগুলি সমস্ত শব্দের মাধ্যমে বাজছে।

একবার সবকিছু ঠিকঠাক হয়ে গেলে, আপনি যদি মাত্র কয়েক দিনের জন্য সিস্টেমটি ইনস্টল করতে চান তবে পিসিবি (প্রিন্টেড সার্কিট বোর্ড) -এ উপাদানগুলি বিক্রি করার পরামর্শ দেওয়া হয়।

মাইক্রোকন্ট্রোলার প্রতিযোগিতা 2017
মাইক্রোকন্ট্রোলার প্রতিযোগিতা 2017
মাইক্রোকন্ট্রোলার প্রতিযোগিতা 2017
মাইক্রোকন্ট্রোলার প্রতিযোগিতা 2017

মাইক্রোকন্ট্রোলার প্রতিযোগিতা 2017 তে রানার আপ

সেন্সর প্রতিযোগিতা 2017
সেন্সর প্রতিযোগিতা 2017
সেন্সর প্রতিযোগিতা 2017
সেন্সর প্রতিযোগিতা 2017

2017 সেন্সর প্রতিযোগিতায় প্রথম পুরস্কার

প্রস্তাবিত: