সুচিপত্র:

NodeMCU - MQTT বেসিক উদাহরণ: 4 টি ধাপ
NodeMCU - MQTT বেসিক উদাহরণ: 4 টি ধাপ
Anonim
Image
Image

এই পাঠটি NodeMCU বোর্ডে মৌলিক MQTT প্রোটোকল ব্যবহার দেখাবে।

প্রতি দুই সেকেন্ডে "আউটটপিক" বিষয়ের উপর "হ্যালো ওয়ার্ল্ড" প্রকাশ করুন। "ইনটপিক" বিষয়টিতে সাবস্ক্রাইব করুন, যে কোন বার্তা প্রিন্ট করুন। এটা ধরে নেওয়া হয় যে প্রাপ্ত পেলোডগুলি স্ট্রিং নয় বাইনারি। যদি সাবস্ক্রাইব করা বার্তাটি "1" হয়, তাহলে অনবোর্ড LED. সাবস্ক্রাইব করার বার্তাটি "0" হলে অনবোর্ড LED বন্ধ করুন।

প্রস্তুতি: Osoyoo NodeMCU x1

ইউএসবি কেবল x1

পিসি x1

Arduino IDE (ভার্সিন 1.6.4+)

USB তারের মাধ্যমে NodeMCU কে পিসিতে সংযুক্ত করুন।

ধাপ 1: লাইব্রেরি ইনস্টলেশন

লাইব্রেরি ইনস্টলেশন
লাইব্রেরি ইনস্টলেশন
লাইব্রেরি ইনস্টলেশন
লাইব্রেরি ইনস্টলেশন

PubSubClientlibrary ইনস্টল করুন

MQTT ব্রোকারের সাথে যোগাযোগের জন্য আমাদের MQTT এন্ডপয়েন্ট লাইব্রেরি (PubSubClient) ইনস্টল করতে হবে, অনুগ্রহ করে নিচের লিঙ্ক থেকে লাইব্রেরি ডাউনলোড করুন:

ফাইলের উপরে আনজিপ করুন, আনজিপ করা ফোল্ডারটিকে Arduino IDE লাইব্রেরি ফোল্ডারে সরান।

Arduino IED খুলুন, আপনি "উদাহরণ" কলামে "pubsubclient" খুঁজে পেতে পারেন।

MQTT ক্লায়েন্ট ইনস্টল করুন:

আমরা MQTTBox কে MQTT ক্লায়েন্ট হিসেবে ব্যবহার করব। অনুগ্রহ করে ডাউনলোড করুন:

ধাপ 2: কোড

কোড
কোড
কোড
কোড

Arduino IDE–> File–> example–> pubsubclient–> mqtt esp8266 খুলুন, আপনি নমুনা কোড পাবেন।

নিম্নলিখিত অপারেশন হিসাবে আপনার নিজের ওয়াইফাই এবং MQTT সেটিংস ফিট করার জন্য কোড সম্পাদনা করুন: 1) হটস্পট কনফিগারেশন: কোড লাইন নিচে খুঁজুন, সেখানে আপনার নিজের ssid এবং পাসওয়ার্ড রাখুন।

const char* ssid = "your_hotspot_ssid"; const char* password = "your_hotspot_password";

2) MQTT সার্ভার ঠিকানা সেটিং, এখানে আমরা বিনামূল্যে MQTT ব্রোকার "broker.mqtt-dashboard.com" ব্যবহার করি। Mqtt_server এর মান নির্ধারণের জন্য আপনি আপনার নিজের MQTT ব্রোকার URL বা IP ঠিকানা ব্যবহার করতে পারেন। প্রজেক্টটি পরীক্ষা করার জন্য আপনি কিছু বিখ্যাত ফ্রি MQTT সার্ভার ব্যবহার করতে পারেন যেমন “broker.mqtt-dashboard.com”, “iot.eclipse.org” ইত্যাদি।

const char* mqtt_server = "broker.mqtt-dashboard.com";

MQTT ক্লায়েন্ট সেটিংস

পরিবর্তন

যদি (client.connect (clientId.c_str ()))

প্রতি

যদি (client.connect (clientId, userName, passWord)) // আপনার clientId/userName/passWord এখানে রাখুন

যদি না হয়, তবে সেগুলিকে ডিফল্ট হিসাবে রাখুন এটি করার পরে, নীচের হিসাবে সংশ্লিষ্ট বোর্ডের ধরন এবং পোর্টের ধরন নির্বাচন করুন, তারপর NodeMCU তে স্কেচ আপলোড করুন।

  • বোর্ড: "NodeMCU 0.9 (ESP-12 মডিউল)"
  • CPU ফ্রিকোয়েন্সি: "80MHz" ফ্ল্যাশ সাইজ: "4M (3M SPIFFS)"
  • আপলোড গতি:”115200
  • পোর্ট: আপনার NodeMCU এর জন্য আপনার নিজের সিরিয়াল পোর্ট নির্বাচন করুন

ধাপ 3: MQTT ক্লায়েন্ট (MQTTBOX) কনফিগ করুন

MQTT ক্লায়েন্ট (MQTTBOX) কনফিগ করুন
MQTT ক্লায়েন্ট (MQTTBOX) কনফিগ করুন
MQTT ক্লায়েন্ট (MQTTBOX) কনফিগ করুন
MQTT ক্লায়েন্ট (MQTTBOX) কনফিগ করুন
MQTT ক্লায়েন্ট (MQTTBOX) কনফিগ করুন
MQTT ক্লায়েন্ট (MQTTBOX) কনফিগ করুন
MQTT ক্লায়েন্ট (MQTTBOX) কনফিগ করুন
MQTT ক্লায়েন্ট (MQTTBOX) কনফিগ করুন

এই ধাপে, আমরা দেখাব কিভাবে MQTTBox এ MQTT ক্লায়েন্ট তৈরি করতে হয়।

আপনার MQTTBox খুলুন এবং একটি নতুন MQTT ক্লায়েন্ট যুক্ত করতে নীল বোতামে ক্লিক করুন।

নীচের হিসাবে MQTT ক্লায়েন্ট সেটিং কনফিগার করুন:

  • MQTT ক্লায়েন্টের নাম - আপনার পছন্দ মতো যেকোনো নাম নির্বাচন করুন
  • প্রোটোকল - "mqtt/tcp" নির্বাচন করুন
  • হোস্ট - এই কলামে আপনার "mqtt_server" টাইপ করুন, নিশ্চিত করুন যে এটি আপনার স্কেচের মতো। (আমরা এখানে "broker.mqtt-dashboard.com" ব্যবহার করি)
  • অন্যান্য সেটিংস ডিফল্ট হিসাবে রাখুন
  • আপনার পরিবর্তনগুলি সংরক্ষণ করতে ক্লিক করুন।

পরবর্তী, আপনি স্বয়ংক্রিয়ভাবে নতুন পৃষ্ঠায় প্রবেশ করবেন যদি উপরের সমস্ত কনফিগারেশন সঠিক হয়, "সংযুক্ত নয়" পরিবর্তিত হবে "সংযুক্ত", আপনার MQTT ক্লায়েন্টের নাম এবং হোস্টের নাম এই পৃষ্ঠার শীর্ষে প্রদর্শিত হবে।

টপিক সেটিং: নিশ্চিত করুন যে আপনার MQTT ক্লায়েন্ট পাবলিশ টপিকটি আপনার Arduino স্কেচ সাবস্ক্রাইব টপিক (ইন টপিক এখানে as একই। নিশ্চিত করুন যে আপনার MQTT ক্লায়েন্ট সাবস্ক্রাইব বিষয় আপনার Arduino স্কেচ প্রকাশ বিষয় (outTopic এখানে as

ধাপ 4: প্রোগ্রাম চলার ফলাফল

প্রোগ্রাম চলার ফলাফল
প্রোগ্রাম চলার ফলাফল
প্রোগ্রাম চলার ফলাফল
প্রোগ্রাম চলার ফলাফল
প্রোগ্রাম চলার ফলাফল
প্রোগ্রাম চলার ফলাফল
প্রোগ্রাম চলার ফলাফল
প্রোগ্রাম চলার ফলাফল

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

তারপরে এমকিউটিটি ক্লায়েন্টটি খুলুন এবং বিষয়টিতে পেলোড "1" প্রকাশ করুন, এই নোডএমসিইউ "ইনটপিক" সাবস্ক্রাইব করে এই বার্তাগুলি গ্রহণ করবে এবং LED জ্বলবে।

এই বিষয়ে পেলোড “0” প্রকাশ করুন, NodeMCU LED বন্ধ হয়ে যাবে।

প্রস্তাবিত: