সুচিপত্র:

MQTT এর উপর রিমোট কন্ট্রোল এবং ফটো নজরদারি: 8 টি ধাপ
MQTT এর উপর রিমোট কন্ট্রোল এবং ফটো নজরদারি: 8 টি ধাপ

ভিডিও: MQTT এর উপর রিমোট কন্ট্রোল এবং ফটো নজরদারি: 8 টি ধাপ

ভিডিও: MQTT এর উপর রিমোট কন্ট্রোল এবং ফটো নজরদারি: 8 টি ধাপ
ভিডিও: Lecture 45 : Advanced Technologies: Software-Defined Networking (SDN) in IIoT – Part 1 2024, নভেম্বর
Anonim
এমকিউটিটির উপর রিমোট কন্ট্রোল এবং ফটো নজরদারি
এমকিউটিটির উপর রিমোট কন্ট্রোল এবং ফটো নজরদারি

হ্যালো.

আজ আমি একটি রিমোট কন্ট্রোল এবং মনিটরিং সিস্টেম কিভাবে তৈরি করা যায় সে সম্পর্কে কথা বলতে চাই, উদাহরণস্বরূপ, গ্যারেজের দরজা, আলো, গরম, চাপ নিয়ন্ত্রণ, তাপমাত্রা এবং অন্যান্য অনেক পরামিতি নিয়ন্ত্রণ করতে। কিন্তু এই সিস্টেমের প্রধান বৈশিষ্ট্য হল যে আপনি দূরবর্তী বস্তু থেকে দূর থেকে ছবি গ্রহণ করতে পারেন। আপনি গল্প শুরু করার আগে, একটি সংক্ষিপ্ত উপস্থাপনা একবার আমি একটি সামঞ্জস্যপূর্ণ Arduino M0-SD বোর্ড, একটি VC0706 ক্যামেরা এবং একটি 3G/GPRS/GSM/GPS usingাল Arduino ব্যবহার করে একটি ফটো নজরদারি ব্যবস্থা করতে চেয়েছিলাম। Arduino M0 -SD সামঞ্জস্যপূর্ণ বোর্ডটি এমন শর্তাবলী থেকে বেছে নেওয়া হয়েছিল যে এটি প্রোগ্রাম করা খুব সহজ (যেমন Arduino UNO), অপারেটিং ভোল্টেজ 3.3V - এটি VC0706 ক্যামেরার সাথে কাজ করার জন্য খুব সুবিধাজনক, প্রচুর পরিমাণে রম এবং RAM, বেশ কয়েকটি পোর্ট UART, ইউএসবি এর একটি পৃথক ভার্চুয়াল পোর্ট, কিন্তু প্রধান সুবিধা হল সরাসরি বোর্ডে একটি মাইক্রো এসডি সংযোগকারীর উপস্থিতি (ইমেজগুলির মতো প্রচুর পরিমাণে ডেটা সংরক্ষণ করা খুব সুবিধাজনক)।

Arduino এর জন্য 3G/GPRS/GSM/GPS ieldাল একটি সামঞ্জস্যপূর্ণ Arduino M0-SD বোর্ডের সাথে ব্যবহারের জন্য খুবই সুবিধাজনক। ইন্টারনেটে বেশ কয়েকটি লাইব্রেরি রয়েছে, পাশাপাশি এই ieldালের সাথে কাজ করার জন্য অনেক উদাহরণ রয়েছে। ডেটা ট্রান্সফার রেট (3G) প্রচলিত জিপিআরএস শিল্ডের তুলনায় অনেক বেশি (ছবি প্রেরণের জন্য বিশেষভাবে সুবিধাজনক)। জিপিএস মডিউলের প্রাপ্যতা একটি অতিরিক্ত সুবিধা।

আমি একটি সেলুলার অপারেটর থেকে ইন্টারনেটে ডেটা (ফটো) ট্রান্সমিশনের জন্য কম খরচের ট্যারিফ বেছে নিয়েছি। কিন্তু প্রশ্ন উঠল: কিভাবে তথ্য স্থানান্তর করতে হয়? এমএমএস? এফটিপি? তথ্য প্রাপ্তির বিষয়ে একটি বিজ্ঞপ্তি কিভাবে পাবেন (ছবি)? ফলস্বরূপ, আমি মোবাইল ফোনে ইনস্টল করা অ্যাপ্লিকেশনের মাধ্যমে ই-মেইলে ডেটা (ছবি) পাঠানোর এবং চিঠি দেখার সিদ্ধান্তে এসেছি। এটা খুব সুবিধাজনক হতে পরিণত!:-) সমাপ্ত প্রকল্পটি এই লিঙ্কে দেখা যাবে।

রেফারেন্স দ্বারা আরডুইনো ইউএনওর জন্যও অনুরূপ প্রকল্প রয়েছে।

তারপরে আমি আমার ডিভাইসের কার্যকারিতা বাড়ানোর সিদ্ধান্ত নিয়েছি। উদাহরণস্বরূপ, LEDs নিয়ন্ত্রণ করার ক্ষমতা যোগ করুন (যদিও বাস্তবে সম্ভাবনাগুলি অনেক বিস্তৃত)। এর জন্য ই-মেইল খুব একটা উপযুক্ত নয়। এসএমএস বিকল্পটি ব্যয়বহুল এবং অস্বস্তিকর। এবং তারপর আমি MQTT সম্পর্কে শিখেছি। তিনি কি তা বর্ণনা করব না। আমাকে শুধু বলতে দাও: এটি সত্যিই একটি দুর্দান্ত জিনিস!:-) MQTT এর সাহায্যে, আপনি কেবল বার্তা নয়, বাইনারি ফাইলগুলি (ছবি) বিনিময় করতে পারেন। ফোনের আবেদনে, আপনি সহজেই আপনার নিজস্ব ইন্টারফেস তৈরি করতে পারেন।

আমি আমার 3G/GPRS/GSM/GPS ieldাল (SIM5320) এর জন্য MQTT প্রোটোকল বাস্তবায়নের উদাহরণ খুঁজছিলাম এবং দুর্ভাগ্যবশত, আমার প্রয়োজনীয় বাস্তবায়ন খুঁজে পাইনি। কিন্তু এটা আমাকে একা ছাড়েনি। আমি স্বাধীনভাবে প্রয়োজনীয় কার্যকারিতা বাস্তবায়নের সিদ্ধান্ত নিয়েছি। ফলস্বরূপ, আমি একটি মোবাইল ফোনে ইনস্টল করা একটি অ্যাপ্লিকেশন থেকে MQTT এর মাধ্যমে নিয়ন্ত্রিত (তিনটি LEDs দ্বারা নির্দেশিত) একটি ডিভাইস তৈরি করতে পরিচালিত করেছি, এবং ফোন থেকে কমান্ডের মাধ্যমে ফোনে একটি ছবিও পাঠায়। (আমি আপনাকে একটি গোপন কথা বলব যে আমি MQTT ব্রোকারের মাধ্যমে ছবি পাঠানোর কোন উদাহরণ আগে দেখিনি এবং প্রথমবার এটি করেছি। সুতরাং, আমি সরাসরি প্রথম ধাপে যাওয়ার প্রস্তাব করছি - প্রয়োজনীয় উপাদানগুলির একটি তালিকা।

ধাপ 1: উপাদানগুলির তালিকা

উপাদানগুলির তালিকা
উপাদানগুলির তালিকা
উপাদানগুলির তালিকা
উপাদানগুলির তালিকা
উপাদানগুলির তালিকা
উপাদানগুলির তালিকা
উপাদানগুলির তালিকা
উপাদানগুলির তালিকা

আমাদের পরবর্তী উপাদানগুলির প্রয়োজন:

1) Arduino M0-SD সামঞ্জস্যপূর্ণ।

2) TTL- ক্যামেরা VC0706।

3) Arduino এর জন্য 3G/GPRS/GSM/GPS ieldাল।

4) লাল, সবুজ, হলুদ LEDs, 3 প্রতিরোধক (100-500 ওহম), তার, 2.54 মিমি পিচ সহ পিন এঙ্গেল সংযোগকারী।

5) এসি-ডিসি পাওয়ার অ্যাডাপ্টার (6V 1A), 3G অ্যান্টেনা ইত্যাদি

ধাপ 2: ক্যামেরার প্রস্তুতি

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

পিসিতে সরাসরি সংযোগের জন্য ক্যামেরার একটি RS-232 আউটপুট রয়েছে। MAX232 (RS-232 রূপান্তরকারী) অপসারণ করা এবং সংশ্লিষ্ট পিন 7-10 (TX), 8-9 (RX) এর মধ্যে যোগাযোগের প্যাডগুলি বন্ধ করা প্রয়োজন।

ক্যামেরার সাথে আসা ছয়-তারের তারের কিছুটা পুনরায় করা দরকার:

  • সংযোগকারী থেকে দুটি তার সরান।
  • চিত্রে দেখানো হিসাবে লাল (+ 5V) এবং কালো (GND) তারের পুনর্বিন্যাস করুন।

তারের খালি প্রান্তে অবশ্যই "মহিলা" এর মত টিপস বিক্রি করতে হবে।

ধাপ 3: সামঞ্জস্যপূর্ণ Arduino M0-SD এর প্রস্তুতি

সামঞ্জস্যপূর্ণ Arduino M0-SD এর প্রস্তুতি
সামঞ্জস্যপূর্ণ Arduino M0-SD এর প্রস্তুতি
সামঞ্জস্যপূর্ণ Arduino M0-SD এর প্রস্তুতি
সামঞ্জস্যপূর্ণ Arduino M0-SD এর প্রস্তুতি
সামঞ্জস্যপূর্ণ Arduino M0-SD এর প্রস্তুতি
সামঞ্জস্যপূর্ণ Arduino M0-SD এর প্রস্তুতি

ইতিমধ্যে উল্লেখ করা হয়েছে, সামঞ্জস্যপূর্ণ Arduino M0-SD হল মূল Arduino M0 এর সাথে সামঞ্জস্যপূর্ণ হার্ডওয়্যার এবং সফ্টওয়্যার, কিন্তু এটিতে একটি মেমরি কার্ড সংযোগের জন্য একটি অনবোর্ড মাইক্রোএসডি সংযোগকারীও রয়েছে।

বোর্ডে সামঞ্জস্যপূর্ণ Arduino M0-SD এর সাথে ক্যামেরা সংযোগ করার জন্য চিত্রে দেখানো টার্মিনাল TXD, RXD (সংযোগকারী X6) এ কৌণিক সংযোগকারীকে সোল্ডার করা প্রয়োজন। এই পোর্টটি "সিরিয়াল" এর সাথে মিলে যায়।

ক্যামেরা থেকে সাদা (ক্যামেরা আরএক্স) এবং হলুদ (ক্যামেরা টিএক্স) তারগুলিকে যথাক্রমে টিএক্সডি এবং আরএক্সডি (কানেক্টর এক্স 6) এর টার্মিনালে সংযুক্ত করতে হবে যেমনটি ছবিতে দেখানো হয়েছে।

ধাপ 4: 3G/GPRS/GSM/GPS শিল্ড SIM5320 প্রস্তুত করা

3G/GPRS/GSM/GPS শিল্ড SIM5320 প্রস্তুত করা
3G/GPRS/GSM/GPS শিল্ড SIM5320 প্রস্তুত করা
3G/GPRS/GSM/GPS শিল্ড SIM5320 প্রস্তুত করা
3G/GPRS/GSM/GPS শিল্ড SIM5320 প্রস্তুত করা
3G/GPRS/GSM/GPS শিল্ড SIM5320 প্রস্তুত করা
3G/GPRS/GSM/GPS শিল্ড SIM5320 প্রস্তুত করা

স্লটে সিম কার্ড ইনস্টল করার আগে, আপনাকে অবশ্যই পিন কোড অনুরোধটি অক্ষম করতে হবে। তারপরে বোর্ডের নিচের দিকে স্লটটিতে সিম কার্ডটি ইন্সটল করুন।

ধাপ 5: হার্ডওয়্যার সমাবেশ

হার্ডওয়্যার সমাবেশ
হার্ডওয়্যার সমাবেশ
হার্ডওয়্যার সমাবেশ
হার্ডওয়্যার সমাবেশ
হার্ডওয়্যার সমাবেশ
হার্ডওয়্যার সমাবেশ

হার্ডওয়্যার সমাবেশে বেশ কয়েকটি সহজ ক্রিয়াকলাপ রয়েছে:

  • এলইডি নিয়ন্ত্রণ করতে, আপনাকে প্রথমে একটি ছোট এলইডি এবং বর্তমান-সীমাবদ্ধ প্রতিরোধক (100-500 ওহম) চিত্রে দেখানো হয়েছে। এলইডিগুলির পোলারিটিতে মনোযোগ দিন - অ্যানোড অবশ্যই প্রতিরোধকদের (+) বিক্রি করতে হবে। LEDs এর পরজীবী এক্সপোজার কমাতে, আমি নিয়মিত কার্ডবোর্ড থেকে একটি কালো পর্দা তৈরি করেছি।
  • S এলইডি এবং ক্যামেরা একটি সামঞ্জস্যপূর্ণ Arduino M0-SD বোর্ডের সাথে ডায়াগ্রামে দেখানো হিসাবে সংযুক্ত করুন। ক্যামেরার পাওয়ার সাপ্লাই (লাল তারের "+ 5V" এবং কালো তারের "GND") স্লট থেকে "+ 5V" এবং "GND" টার্মিনাল থেকে নিতে হবে। আপনি এই জন্য একটি কোণ সংযোজক ব্যবহার করতে পারেন।
  • এর পরে, সামঞ্জস্যপূর্ণ Arduino M0-SD বোর্ডের সাথে 3G/GPRS/GSM/GPS ieldাল সংযুক্ত করুন। একটি 3G অ্যান্টেনা সংযোগ করতে ভুলবেন না।

ধাপ 6: MQTT ব্রোকার সেট করা

MQTT ব্রোকার সেট করা
MQTT ব্রোকার সেট করা
MQTT ব্রোকার সেট করা
MQTT ব্রোকার সেট করা
MQTT ব্রোকার সেট করা
MQTT ব্রোকার সেট করা

আমি MQTT ব্রোকার হিসেবে খুব সুবিধাজনক এবং পরিষ্কার www.cloudmqtt.com বেছে নিয়েছি। এটি বিনামূল্যে পরীক্ষা প্রদান করে। সাইটে সরাসরি বার্তা পাঠানো এবং পাঠানোও সম্ভব।

সেটআপ পদ্ধতি নিম্নরূপ:

  1. অনলাইনে নিবন্ধন.
  2. "নতুন দৃষ্টান্ত তৈরি করুন" বোতাম টিপুন।
  3. নাম সেট করুন, উদাহরণস্বরূপ "MqttCamera"।
  4. "অঞ্চল নির্বাচন করুন" বোতাম টিপুন। উদাহরণস্বরূপ, "US-East-1 (Northern Virginia)" নির্বাচন করুন।
  5. "পর্যালোচনা" বোতাম টিপুন।
  6. "ইনস্ট্যান্স তৈরি করুন" বোতাম টিপুন। "ইনস্ট্যান্স সফলভাবে তৈরি" বার্তা দেখুন।
  7. "MqttCamera" এ ক্লিক করুন।
  8. তথ্য মনে রাখবেন: সার্ভার, ব্যবহারকারী, পাসওয়ার্ড, পোর্ট, API কী (আমাদের এটি 7 ম এবং 8 ম ধাপে প্রয়োজন হবে)।
  9. তারপরে আপনি "WEBSOCKET UI" উইন্ডোতে যেতে পারেন, যেখানে আপনি পরীক্ষা এবং ডিবাগ করতে পারেন, বার্তা দেখতে এবং পাঠাতে পারেন (পরবর্তী ধাপে আমাদের এই উইন্ডোটি প্রয়োজন হবে)।

ধাপ 7: MQTT ড্যাশ অ্যাপ

MQTT ড্যাশ অ্যাপ
MQTT ড্যাশ অ্যাপ
MQTT ড্যাশ অ্যাপ
MQTT ড্যাশ অ্যাপ
MQTT ড্যাশ অ্যাপ
MQTT ড্যাশ অ্যাপ

একটি মোবাইল ফোনে একটি কন্ট্রোল প্যানেল তৈরি করার জন্য, আমি একটি খুব ব্যবহারকারী বান্ধব এবং পরিষ্কার MQTT ড্যাশ অ্যাপ বেছে নিয়েছি।

আপনার ফোনে MQTT Dash অ্যাপটি ইনস্টল করুন এবং নিম্নলিখিত সেটিংস করুন:

  1. অ্যাপ্লিকেশনটি খুলুন।
  2. MQTT ড্যাশ উইন্ডোতে, একটি নতুন কন্ট্রোল প্যানেল যোগ করতে (+) ক্লিক করুন।
  3. প্রদর্শিত উইন্ডোতে, প্রয়োজনীয় ক্ষেত্রগুলি পূরণ করুন, যেমন: নাম (উদাহরণস্বরূপ, MqttCamera), ঠিকানা, পোর্ট, ব্যবহারকারীর নাম, ব্যবহারকারীর পাসওয়ার্ড (ধাপ 6 থেকে তথ্য নিন)।
  4. ক্ষেত্রগুলি পূরণ করার পরে, ডিস্কেট আইকনে ক্লিক করুন (অপারেশন "সেভ")।
  5. নিয়ন্ত্রণ প্যানেলের তালিকা সহ উইন্ডোতে, প্রদর্শিত লাইন "MqttCamera" এ ক্লিক করুন।
  6. খোলা নিয়ন্ত্রণ প্যানেল উইন্ডোতে, মেট্রিক লোড করতে তীর আইকনে ক্লিক করুন।
  7. তারপর পপ-আপ উইন্ডোতে, "SUBSCRIBE AND WAIT FOR THE METRIC" বাটনে ক্লিক করুন।
  8. একটি ব্যক্তিগত কম্পিউটারে, একটি MQTT- ব্রোকারে একটি অ্যাকাউন্ট খুলুন (আগের ধাপটি দেখুন), "WEBSOCKET UI" উইন্ডোটি খুলুন, "বার্তা পাঠান" উইন্ডোতে "মেট্রিক্স/বিনিময়" বিষয় সেট করুন এবং পাঠ্যটি রেকর্ড করুন "বার্তা" উইন্ডোতে metrics.txt ফাইল সংযুক্ত করুন, "পাঠান" বোতামটি ক্লিক করুন।
  9. 10 সেকেন্ড অপেক্ষা করুন, নিশ্চিত করুন যে ফোনে মেট্রিক প্রাপ্ত হয়েছে এবং কন্ট্রোল প্যানেল আপডেট হয়েছে।

তারপর আপনি সামঞ্জস্যপূর্ণ Arduino M0-SD প্রোগ্রামিং এগিয়ে যেতে পারেন।

ধাপ 8: প্রোগ্রামিং এবং কাজ

প্রোগ্রামিং এবং কাজ
প্রোগ্রামিং এবং কাজ
প্রোগ্রামিং এবং কাজ
প্রোগ্রামিং এবং কাজ
প্রোগ্রামিং এবং কাজ
প্রোগ্রামিং এবং কাজ
প্রোগ্রামিং এবং কাজ
প্রোগ্রামিং এবং কাজ

সামঞ্জস্যপূর্ণ Arduino M0-SD প্রোগ্রাম করার আগে, আপনাকে কম্পিউটারে প্রয়োজনীয় সমস্ত লাইব্রেরি (pubsubclient-master, TinyGSM-master) ইনস্টল করতে হবে, যা আমি নিচে উল্লেখ করেছি। এই লাইব্রেরিগুলিকে সামঞ্জস্যপূর্ণ Arduino M0-SD বোর্ড, একটি VC0706 ক্যামেরা এবং একটি 3G/GPRS/GSM/GPS SIM5320 withাল দিয়ে কাজ করার জন্য সামান্য পরিবর্তন করা হয়েছিল।

সামঞ্জস্যপূর্ণ Arduino M0-SD এর সাথে আপনার কেবল এবং পাওয়ার সাপ্লাই (3G/GPRS/GSM/GPS ieldাল পাওয়ার জন্য 6V 1A) সংযোগ করতে হবে।

Arduino IDE শুরু করুন। আরডুইনোতে IDE নির্বাচন করতে হবে: সরঞ্জাম-> বোর্ড: Arduino M0 Pro (নেটিভ ইউএসবি পোর্ট)।

MqttCamera.ino স্কেচ খুলুন। ক্ষেত্রগুলি পূরণ করুন: ব্যবহারকারীর নাম, ব্যবহারকারীর পাসওয়ার্ড, API কী, পোর্ট, সার্ভার (ধাপ 6 থেকে তথ্য নিন)।

সিরিয়াল মনিটর উইন্ডো খুলুন।

স্কেচ আপলোড করুন। আমি প্রোগ্রামিং পদ্ধতিটি বিস্তারিতভাবে বর্ণনা করি না (ইন্টারনেটে পর্যাপ্ত নির্দেশাবলী রয়েছে)।

সফল লোডিং এবং সঠিক সমাবেশের পরে, নিম্নলিখিত তথ্য সিরিয়াল মনিটর উইন্ডোতে উপস্থিত হওয়া উচিত:

VC0706 ক্যামেরা + Arduino M0 + SIM5320 + MQTT

ক্যামেরা init… সংস্করণ: ----------------- VC0703 1.00 Ctrl infr বিদ্যমান ব্যবহারকারী সংজ্ঞায়িত সেন্সর 525 ----------------- সাফল্য ! মোডেম আরম্ভ করা হচ্ছে … মোডেম: AT+CGMM SIMCOM_SIM5320E নেটওয়ার্কের জন্য অপেক্ষা করছে… ঠিক আছে ইন্টারনেটের সাথে সংযোগ স্থাপন করা ঠিক আছে 3.83.68.228 এর সাথে সংযোগ স্থাপন ব্যর্থ হয়েছে 3.83.68.228 এর সাথে সংযোগ স্থাপন করা ঠিক আছে Ping: 0

লাইন "পিং: XX" সামঞ্জস্যপূর্ণ Arduino M0-SD থেকে সার্ভারে একটি পর্যায়ক্রমিক বার্তা। এই তথ্যের পরিবর্তে, আপনি ADC পরিমাপ, ইনপুট স্থিতি এবং আরও অনেক কিছু পাঠাতে পারেন।

এমকিউটিটি ড্যাশ অ্যাপে, লাইট বাল্বের আইকনে ক্লিক করুন (LED_YELLOW, LED_GREEN, LED_RED) - চালু/বন্ধ করুন। সিরিয়াল মনিটরের জানালায় দেখুন - এরকম কিছু সম্পর্কে তথ্য থাকা উচিত:

LED_YELLOW চালু

LED_YELLOW_Off LED_GREEN LED_GREEN বন্ধ LED_RED LED_RED বন্ধ

ক্যামেরা আইকনে ক্লিক করুন - "SHOOT" কমান্ডটি পাঠান এবং কিছুক্ষণ অপেক্ষা করুন। নিম্নলিখিত তথ্য সিরিয়াল মনিটর উইন্ডোতে উপস্থিত হওয়া উচিত:

শ্যুট শুরু!

ছবি তোলা! IMAGE332-j.webp

এবং কিছুক্ষণ পরে (5-10 সেকেন্ড) উইন্ডোতে "ছবি দেখুন" ছবি প্রদর্শন করা উচিত।

বিক্ষোভের জন্য, আমি VC0706 ক্যামেরাটি LEDs এ নির্দেশ করেছিলাম যাতে আমি তাদের অবস্থা নির্বিচারে স্যুইচ করার পরে দেখতে পারি। কিন্তু বাস্তব ব্যবহারে, আপনি ক্যামেরাটি একটি রুম, দরজা, রাস্তা, গেট, গাড়ি ইত্যাদিতে নির্দেশ করতে পারেন (অবশ্যই, আপনাকে অবশ্যই আইনের প্রয়োজনীয়তাগুলি বিবেচনা করতে হবে)। মোবাইল ফোন, যেখানে LEDs এর ইনস্টল এবং প্রকৃত অবস্থা প্রদর্শিত হয়।

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

প্রস্তাবিত: