সুচিপত্র:

IoTea LoRa সলিউশন (Azure, 1812 আপডেট সহ) দেখুন: 5 টি ধাপ
IoTea LoRa সলিউশন (Azure, 1812 আপডেট সহ) দেখুন: 5 টি ধাপ

ভিডিও: IoTea LoRa সলিউশন (Azure, 1812 আপডেট সহ) দেখুন: 5 টি ধাপ

ভিডিও: IoTea LoRa সলিউশন (Azure, 1812 আপডেট সহ) দেখুন: 5 টি ধাপ
ভিডিও: Seeed IoTea Lora Solution 2024, জুন
Anonim
IoTea LoRa সমাধান দেখেছি (Azure, 1812 আপডেট সহ)
IoTea LoRa সমাধান দেখেছি (Azure, 1812 আপডেট সহ)

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

ধাপ 1: এই প্রকল্পে ব্যবহৃত জিনিসগুলি

হার্ডওয়্যার উপাদান

  • গ্রোভ - কার্বন ডাই অক্সাইড সেন্সর (MH -Z16)
  • গ্রোভ - ডিজিটাল লাইট সেন্সর
  • গ্রোভ - ডাস্ট সেন্সর (PPD42NS
  • গ্রোভ-অক্সিজেন সেন্সর (ME2-O2-Ф20)
  • মাটির আর্দ্রতা এবং তাপমাত্রা সেন্সর
  • LoRa LoRaWAN গেটওয়ে - রাস্পবেরি পাই 3 সহ 868MHz কিট
  • Grove - Temp & Humi & Barometer Sensor (BME280)

সফটওয়্যার অ্যাপ এবং অনলাইন সেবা

  • মাইক্রোসফট ভিসুয়াল স্টুডিও 2015
  • মাইক্রোসফট আজুর

ধাপ 2: গল্প

ইয়ান, সিচুয়ানের উত্তর -পূর্বে মেনডিং পর্বতে, পর্বতশৃঙ্গ সবুজের সমুদ্রে পশ্চিম থেকে পূর্ব দিকে চলেছে। 36 বছর বয়সী দেংয়ের জন্য এটি একটি অতি পরিচিত দৃশ্য, তার প্রজন্মের খুব কম মেনডিং চা প্রস্তুতকারকদের মধ্যে একজন, 50 মিটার (= 3.3 হেক্টর) বাগান সমুদ্রপৃষ্ঠ থেকে 1100 মিটার উপরে অবস্থিত। ডেং চা প্রস্তুতকারকদের পরিবার থেকে এসেছে, কিন্তু পারিবারিক উত্তরাধিকার বহন করা সহজ কাজ নয়। “আমাদের চাগুলি একটি জৈব পরিবেশে উচ্চ উচ্চতায় উত্থিত হয় যাতে এর চমৎকার গুণমান নিশ্চিত করা যায়। কিন্তু একই সময়ে, বৃদ্ধির ঘনত্ব কম, খরচ বেশি এবং উদীয়মান অসম, চা ফসল কাটা কঠিন। এ কারণেই উচ্চ-পর্বত চাগুলি সাধারণত ছোট ফসল হয় এবং তাদের মূল্য বাজারে প্রতিফলিত হয় না।”গত দুই বছর ধরে, ডেং উচ্চ-পর্বত চা সম্পর্কে তাদের মূল্য বৃদ্ধির জন্য ভোক্তাদের সচেতনতা বাড়ানোর চেষ্টা করছে। এবং যখন তিনি ফ্যানের সাথে দেখা করলেন, যিনি সিডের আইওটিয়া প্রযুক্তি বাস্তবায়নের জন্য একটি বৃক্ষরোপণ খুঁজছিলেন, তখন সমাধানের জন্য একটি নিখুঁত মিল তৈরি করা হয়েছিল।

ধাপ 3: হার্ডওয়্যার সংযোগ

আপনার হার্ডওয়্যার সংযোগ করতে পূর্ববর্তী টিউটোরিয়াল অনুসরণ করুন।

ধাপ 4: ক্লাউড কনফিগার

ধাপ 1. রিসোর্স গ্রুপ তৈরি করুন

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

ছবি
ছবি

একটি রিসোর্স গ্রুপ প্রকল্পের সমস্ত রিসোর্স ম্যানেজ করার জন্য ব্যবহার করা হয়, ক্লাউড রিসোর্স ব্যবহার করার পর, চার্জ এড়ানোর জন্য রিসোর্স গ্রুপ ডিলিট করে সব রিসোর্স ডিলিট করে। খোলা পৃষ্ঠায়, রিসোর্স গ্রুপের নাম পূরণ করুন (যেমন iotea), প্রয়োজন হলে সাবস্ক্রিপশন এবং রিসোর্স গ্রুপের অবস্থান নির্বাচন করুন, একটি রিসোর্স গ্রুপ তৈরি করতে তৈরি করুন ক্লিক করুন।

ধাপ 2. Iot Hub তৈরি করুন

এখন আপনি একটি ক্লাউড রিসোর্স তৈরি করতে পারেন, বাম দিকে একটি রিসাউস তৈরি করুন ক্লিক করুন, ইন্টারনেট অফ থিংস - আইওটি হাব নির্বাচন করুন, এটি একটি নতুন পৃষ্ঠা খুলবে।

বেসিকস ট্যাবে, আপনার তৈরি করা রিসোর্স গ্রুপটি চয়ন করুন এবং আইওটি হাবের নাম পূরণ করুন (যেমন আইওটিয়া), প্রয়োজন হলে সাবস্ক্রিপশন এবং অঞ্চল নির্বাচন করুন এবং তারপরে সাইজ এবং স্কেল ট্যাবে যান।

ছবি
ছবি

সাইজ এবং স্কেল ট্যাবে, F1: ফ্রি টায়ার বা B1: প্রাইসিং এবং স্কেল টিয়ার কম্বোতে বেসিক টিয়ার বেছে নিন, বেসিক টিয়ার প্রতি মাসে 10.00 ইউএসডি লাগবে। অবশেষে, রিভিউ + ক্রিয়েট ট্যাবে আপনার ইনপুট চেক করুন এবং একটি আইওটি হাব তৈরি করতে তৈরি ক্লিক করুন।

ছবি
ছবি

ধাপ 3. LORIOT কনফিগার করুন

আপনার তৈরি করা আইওটি হাবটি প্রবেশ করুন, ভাগ করা অ্যাক্সেস নীতি - ডিভাইস ক্লিক করুন, ডানদিকে পৃষ্ঠায় প্রাথমিক কী অনুলিপি করুন।

ছবি
ছবি

একটি নতুন ব্রাউজার উইন্ডো (বা ট্যাব) খুলুন, আপনার LORIOT কন্ট্রোল প্যানেলে লগইন করুন, অ্যাপ্লিকেশন - SampleApp- এ যান, কন্ট্রোল গ্রুপে ডেটা আউটপুট ক্লিক করুন - পরিবর্তন করুন। আউটপুট টাইপ গ্রুপ পরিবর্তন করুন, Azure Iot Hub নির্বাচন করুন, আপনার Iot Hub নাম এবং প্রাথমিক কী পূরণ করুন এবং নীচে কনফার্ম চেঞ্জ বাটনে ক্লিক করুন।

ছবি
ছবি

ধাপ 4. Iot ডিভাইস যোগ করুন

LORIOT এ বাম দিকের তালিকায় থাকা ডিভাইসগুলিতে ক্লিক করুন, আপনার ডিভাইস EUI অনুলিপি করুন।

ছবি
ছবি

Azure Iot Hub এ ফিরে যান, Iot Hub এর বাম দিকের তালিকায় Iot ডিভাইসগুলোতে ক্লিক করুন। যোগ করুন ক্লিক করুন, খোলা পৃষ্ঠায় ডিভাইস আইইউতে ডিভাইস EUI পূরণ করুন।

গুরুত্বপূর্ণ: ডিভাইস EUI- এর সব সেপারেটর মুছে দিন, মনে হচ্ছে 1122334455667788

ছবি
ছবি

সেভ ক্লিক করুন, সব শেষ।

ধাপ 5. D2C (ক্লাউড থেকে ডিভাইস) বার্তাগুলি গ্রহণ করুন

আপনি D2C বার্তাগুলি পড়তে মাইক্রোসফ্ট ডক্স অনুসরণ করতে পারেন।

ধাপ 5: সফটওয়্যার প্রোগ্রামিং

সফটওয়্যার প্রোগ্রামিং 3 ভাগে বিভক্ত: নোড, গেটওয়ে এবং ওয়েবসাইট, অনুগ্রহ করে নোড পার্ট এবং গেটওয়ে পার্ট প্রোগ্রামের পূর্ববর্তী টিউটোরিয়াল অনুসরণ করুন। ওয়েবসাইট অংশের 1 থেকে 8 ধাপগুলি পূর্ববর্তী টিউটোরিয়ালের মতোই।

যদি আপনি ইতিমধ্যেই মাইক্রোসফট আজুর কনফিগার করে থাকেন, একটি টার্মিনাল খুলুন, আপনার ওয়েবসাইটের রুট ফোল্ডারে প্রবেশ করুন, ভার্চুয়াল পরিবেশ সক্রিয় করুন:

cd ~/iotea-hb

উৎস বিন/সক্রিয় করুন

পিপের মাধ্যমে আজুর ইভেন্ট হাব মডিউল ইনস্টল করুন এবং একটি নতুন.পি ফাইল তৈরি করুন (যেমন iothub_recv.py):

pip azure-eventhub ইনস্টল করুন

iothub_recv.py স্পর্শ করুন

এবং তারপরে নিম্নলিখিত কোডগুলি লিখুন:

# --------------------------------------------------------------------------------------------

# কপিরাইট (গ) মাইক্রোসফট কর্পোরেশন। সমস্ত অধিকার সংরক্ষিত. # এমআইটি লাইসেন্সের অধীনে লাইসেন্সপ্রাপ্ত। লাইসেন্স তথ্যের জন্য প্রজেক্ট রুট এ License.txt দেখুন। # ------------------------------------------------- ------------------------------------------- নীল থেকে আমদানি ইভেন্ট হাব। eventhub আমদানি EventData, EventHubClient, অফসেট আমদানি লগিং logger = logging.getLogger ('azure.eventhub') আমদানি db, json, time, datetime def get_time (): cntime = datetime.datetime.now () + datetime.timedelta (ঘন্টা = +8) তারিখ = cntime.strftime ('%Y-{}-{}')। বিন্যাস (cntime.strftime ('%m')। zfill (2), cntime.strftime ('%d')। zfill (2)) ঘন্টা = cntime.strftime ('%H')। zfill (2) মিনিট = cntime.strftime ('%M')। zfill (2) সেকেন্ড = cntime.strftime ('%S')।) ফেরত [তারিখ, ঘন্টা, মিনিট, সেকেন্ড] ডিফ get_iothub_data (): তালিকা = ['0'] * 11 ক্লায়েন্ট = EventHubClient.from_iothub_connection_string ('', ডিবাগ = সত্য) রিসিভার = client.add_receiver ("$ default", " 3 ", অপারেশন = '/বার্তা/ঘটনা', অফসেট = অফসেট (datetime.datetime.utcnow ())) চেষ্টা করুন: client.run () eh_info = client.get_eventhub_info () প্রিন্ট (eh_info) প্রাপ্ত = receiver.receive (সময়সীমা = 5) প্রাপ্ত আইটেমের জন্য প্রিন্ট (প্রাপ্ত): আমি ssage = json.loads (str (item.message)) মুদ্রণ (বার্তা) যদি বার্তায় 'ডেটা' থাকে: data = message ['data'] air_temp = str (int (data [0: 2], 16)) air_hum = str (int (data [2: 4], 16)) চাপ = str (int ((data [4: 8]), 16)) co2 = str (int (data [8:12], 16)) ধুলো = str (int (data [12:16], 16)) আলোকসজ্জা = str (int (data [16:20], 16)) o2 = str (round (int (data [20:22], 16) / 10, 1)) soil_temp = str (int (data [22:24], 16)) soil_hum = str (int (data [24:26], 16)) voltage = str (round (int (data [26:28], 16) / int ('ff', 16) * 5, 1)) error = str (int (data [28:], 16)) list = [air_temp, air_hum, pressure, co2, dust, illumination, o2, soil_temp, মাটি_হুম, ভোল্টেজ, ত্রুটি] অবশেষে: client.stop () রিটার্ন তালিকা যখন সত্য: তালিকা = get_time () + get_iothub_data () db.insert (তালিকা) মুদ্রণ (তালিকা)

আপনি প্রোগ্রামটি চালানোর আগে, আপনার সংযোগের স্ট্রিং পরিবর্তন করুন

ক্লায়েন্ট = EventHubClient.from_iothub_connection_string ('', ডিবাগ = সত্য)

আপনি শেয়ার করা অ্যাক্সেস নীতি - আইওট হাব -এ iotowner ক্লিক করে আপনার সংযোগ স্ট্রিং পেতে পারেন, খোলা পৃষ্ঠায় সংযোগ স্ট্রিং -প্রাইমনারি কী হল সংযোগ স্ট্রিং।

ছবি
ছবি

এর পরে, আপনি প্রোগ্রামটি শুরু করতে পারেন:

gunicorn iothub_recv: অ্যাপ

প্রস্তাবিত: