কৃষির জন্য ইন্ডাস্ট্রিয়াল IoT ডেভেলপমেন্ট
একটি একক সেন্সর নোড সহজ; কিন্তু ছয়টি মাঠজুড়ে দুইশো নোডের একটি কার্যকর খামার একটি ডিস্ট্রিবিউটেড-সিস্টেমস সমস্যা। গাছের সারির পেছনে ব্যাকহল হারিয়ে যায়, একমাত্র সেল টাওয়ারটি সম্পত্তির অর্ধেক কভার করে, এবং একটি খারাপ ফার্মওয়্যার পুশ কোনো লোক ঘটনাস্থলে না থাকা অবস্থায় পুরো একটি অঞ্চলকে নীরব করে দিতে পারে। আমরা পুরো পাইপলাইন — এজ, গেটওয়ে, ব্যাকহল, ক্লাউড, ড্যাশবোর্ড ও ফ্লিট কন্ট্রোল — এমনভাবে আর্কিটেক্ট করি যাতে ডিপ্লয়মেন্টটি সুশৃঙ্খলভাবে দুর্বল হয় এবং একজন অপারেটর দূর থেকেই এটি চালাতে পারেন।
Challenges specific to Agriculture
খামারজুড়ে ব্যাকহলে ডেড জোন থাকে
একটি একক LoRaWAN গেটওয়ে বা একটি সেল টাওয়ার কখনোই পুরো একটি সম্পত্তি কভার করে না; পাহাড়ের সারি ও বাগানের পেছনের দূরের মাঠগুলো ঘণ্টার পর ঘণ্টা অন্ধকার থাকে, এবং ডেটা সহজভাবেই কখনো পৌঁছায় না।
সংযোগের ফাঁক মানেই স্থায়ী ডেটা হারানো
আপলিংক বন্ধ থাকলে, যেসব নোড UDP বা আনবাফার্ড MQTT-এর উপর ফায়ার-অ্যান্ড-ফরগেট টেলিমেট্রি পাঠায়, সেগুলো প্রতিটি রিডিং ফেলে দেয়, এমন ফাঁক রেখে যায় যা সেচ ও ফলন মডেল ভেঙে দেয়।
রিকানেক্ট ঝড়ে ক্লাউড ইনজেস্ট ভেঙে পড়ে
একটি আউটেজের পর প্রতিটি নোড একসাথে পুনরায় সংযুক্ত হয় ও তার বাফার রিপ্লে করে; একটি সরল HTTP-প্রতি-রিডিং ইনজেস্ট পথ টাইম আউট হয়, বার্তা ফেলে দেয়, বা একটি অসীম ক্লাউড বিল তুলে দেয়।
নোডের স্বাস্থ্যে কোনো দূরবর্তী দৃশ্যমানতা নেই
অপারেটররা একটি নোড মরে গেছে তা জানতে পারেন কেবল যখন একটি মাঠ শুকনো দেখায়; ব্যাটারি, RSSI ও লাস্ট-সিন টেলিমেট্রি ছাড়া ট্রাক পাঠানোর আগে অফিস থেকে ট্রায়াজ করার কোনো উপায় থাকে না।
ফ্লিট-জুড়ে ফার্মওয়্যার আপডেট মানেই ট্রাক পাঠানো
শত শত ছড়ানো নোডে হাতে কনফিগ বা ফার্মওয়্যার পুশ করতে সপ্তাহ লাগে, এবং একটি খারাপ রোলআউট কোনো স্টেজড বা রোলব্যাক পথ ছাড়াই পুরো একটি অঞ্চলকে ব্রিক করে দিতে পারে।
ড্যাশবোর্ড কাঁচা সংখ্যা দেখায়, কৃষিবিজ্ঞান নয়
চাষিদের প্রয়োজন মাটির আর্দ্রতার ট্রেন্ড, সেচ অঞ্চল ও তুষারপাত সতর্কতা, কাঁচা রেজিস্টার ডাম্প নয়; অ্যাগ্রিগেশন ও অ্যালার্টিং ছাড়া ডেটা অব্যবহৃত পড়ে থাকে এবং সিস্টেমটি পরিত্যক্ত হয়।
How GizanTech solves them
- স্বয়ংক্রিয় ফেইলওভারসহ বহু-পথের ব্যাকহল. ১) আমরা লিংক লেয়ার এমনভাবে ডিজাইন করি যাতে কভারেজ ও খরচ অনুযায়ী LoRaWAN থেকে সেলুলার থেকে স্যাটেলাইটে (Swarm/Iridium) ফেইলওভার করে, যাতে দূরের মাঠগুলো অন্ধকারে না গিয়ে পৌঁছানোযোগ্য থাকে।
- স্টোর-অ্যান্ড-ফরওয়ার্ড গেটওয়ে বাফারিং. ২) মাঠের গেটওয়ে সিকোয়েন্স নম্বরসহ স্থানীয় ফ্ল্যাশ/SQLite-এ টেলিমেট্রি স্থায়ী করে রাখে ও রিকানেক্টে রিপ্লে করে, যাতে বহু-ঘণ্টার আউটেজ হারানো রিডিং নয়, বরং ফাঁকহীন ব্যাকফিল তৈরি করে।
- ব্যাকপ্রেশার-সচেতন ক্লাউড ইনজেস্ট. ৩) AWS IoT Core-এ ব্যাচড MQTT, একটি SQS/Kinesis বাফার, আইডেমপোটেন্ট ডিডাপ কী ও জিটারড রিকানেক্ট ডেটা না ফেলে বা দ্বিগুণ গণনা না করে রিপ্লে ঝড় শোষণ করে।
- ফ্লিট স্বাস্থ্য টেলিমেট্রি ও ট্রায়াজ. ৪) প্রতিটি নোড ব্যাটারি, সোলার চার্জ, RSSI/SNR ও লাস্ট-সিন একটি ডিভাইস রেজিস্ট্রিতে রিপোর্ট করে, যাতে একজন অপারেটর একটি ড্যাশবোর্ড থেকে ট্রায়াজ করেন এবং প্রয়োজন হলেই কেবল ট্রাক পাঠানো হয়।
- স্টেজড, রোলব্যাক-নিরাপদ ফ্লিট OTA. ৫) ক্যানারি কোহর্ট, সাইনড A/B ইমেজ ও প্রতি-অঞ্চল রোলআউট গেট স্বয়ংক্রিয় রোলব্যাকসহ ফ্লিট-জুড়ে ফার্মওয়্যার ও কনফিগ পুশ করে, যাতে একটি খারাপ বিল্ড কখনো পুরো একটি অঞ্চলকে নীরব না করে।
- কৃষিবিজ্ঞান-মুখী ড্যাশবোর্ড ও অ্যালার্টিং. ৬) আমরা কাঁচা টেলিমেট্রিকে আর্দ্রতার ট্রেন্ড, সেচ-অঞ্চলের মানচিত্র ও ওয়েবহুক ও SMS-এর উপর থ্রেশহোল্ড/তুষারপাত সতর্কতায় অ্যাগ্রিগেট করি, যাতে চাষিরা রেজিস্টার মান নয়, অন্তর্দৃষ্টির উপর কাজ করেন।
| ডিপ্লয়মেন্ট স্তর | প্রযুক্তি পছন্দ | কেন এটি একটি দূরবর্তী খামারে মানানসই | এটি যে মাঠ ব্যর্থতা প্রতিরোধ করে |
|---|---|---|---|
| এজ নোড | ESP32-S3 + সোলার/LiFePO4, ডিপ-স্লিপ ডিউটি সাইকেল, স্থানীয় NVS রিং বাফার | একটি প্যানেলে একটি পূর্ণ মৌসুম অযত্নে চলে; ছড়ানো মাঠজুড়ে কোনো মেইনস বা রক্ষণাবেক্ষণ উইন্ডো নেই | কয়েক দিনের মেঘলা আবহাওয়া বা একটি মিস হওয়া আপলিংক নোডকে মেরে ফেলা বা নীরবে তার রিডিং ফেলে দেওয়া |
| মাঠ গেটওয়ে | স্টোর-অ্যান্ড-ফরওয়ার্ড SQLite + সিকোয়েন্স নম্বরসহ একটি Linux SBC-তে LoRaWAN কনসেন্ট্রেটর | একটি মাস্টে কয়েক ডজন নোড একত্র করে ও স্থানীয় পাওয়ারে ব্যাকহল আউটেজ সামলে নেয় | একটি বহু-ঘণ্টার WAN ড্রপআউট মাটির-আর্দ্রতা রেকর্ডে একটি স্থায়ী ফাঁকে পরিণত হওয়া |
| ব্যাকহল | LoRaWAN প্রাথমিক, LTE Cat-M/NB-IoT ফেইলওভার, Swarm/Iridium স্যাটেলাইট শেষ উপায় | কোনো একক লিংক পুরো সম্পত্তি কভার করে না; স্তরবদ্ধ ফলব্যাক পাহাড়ের সারি ও বাগানের পেছনের মাঠে পৌঁছায় | দূর-মাঠের ডেড জোন যেখানে একটি গেটওয়ে বা একটি সেল টাওয়ার খামারের অর্ধেক অন্ধকার রেখে দেয় |
| ক্লাউড ইনজেস্ট | AWS IoT Core MQTT -> রুলস -> Kinesis/SQS, আইডেমপোটেন্ট কী, Timestream/Influx রাইট | ইলাস্টিক, পে-পার-ইউজ, ম্যানুয়াল স্কেলিং ছাড়াই গ্রামীণ আউটেজের পর রিকানেক্ট রিপ্লে বার্স্ট শোষণ করে | রিকানেক্ট ঝড় একটি সরল HTTP ইনজেস্ট টাইম আউট করে, বার্তা ফেলে দেয় বা একটি অসীম বিল তুলে দেয় |
| ড্যাশবোর্ড | আর্দ্রতার ট্রেন্ড, সেচ-অঞ্চলের মানচিত্র, তুষারপাত ও থ্রেশহোল্ড অ্যালার্টিংসহ Grafana/Next.js | কাঁচা রেজিস্টারকে এমন কৃষিবিজ্ঞানে রূপান্তর করে যার উপর চাষি কাজ করেন, অফিস বা ফোন থেকে অ্যাক্সেসযোগ্য | একটি মাঠ দৃশ্যমানভাবে শুকিয়ে যাওয়া ও সিস্টেম পরিত্যক্ত হওয়া পর্যন্ত ডেটা কাঁচা সংখ্যা হিসেবে অব্যবহৃত পড়ে থাকা |
| ফ্লিট ম্যানেজমেন্ট | ডিভাইস রেজিস্ট্রি + ক্যানারি কোহর্ট, সাইনড ইমেজ, প্রতি-অঞ্চল রোলআউট গেটসহ স্টেজড A/B OTA | একজন অপারেটরকে সম্পত্তিতে গাড়ি না চালিয়েই শত শত ছড়ানো নোড আপডেট ও ট্রায়াজ করতে দেয় | একটি খারাপ ফার্মওয়্যার বা কনফিগ পুশ পুরো একটি অঞ্চল ব্রিক করে ও সপ্তাহের পর সপ্তাহ ট্রাক পাঠাতে বাধ্য করা |
Go deeper
Industrial IoT Development for other industries
Frequently asked questions
আপনারা কি পুরো স্ট্যাক তৈরি করেন নাকি শুধু নোড?
পুরো স্ট্যাক একটি একক আর্কিটেকচার হিসেবে: এজ নোড, মাঠ গেটওয়ে, ব্যাকহল, ক্লাউড ইনজেস্ট, ড্যাশবোর্ড ও ফ্লিট ম্যানেজমেন্ট। স্তরগুলো একসাথে ডিজাইন করাই একটি খামারজুড়ে ডিপ্লয়মেন্টকে ফাঁকহীন ও একজনের পক্ষে পরিচালনাযোগ্য রাখে।
একটি সংযোগ আউটেজ থেকে সিস্টেম কীভাবে টিকে থাকে?
গেটওয়ে সিকোয়েন্স নম্বরসহ স্থানীয় ফ্ল্যাশে টেলিমেট্রি স্টোর-অ্যান্ড-ফরওয়ার্ড করে ও রিকানেক্টে রিপ্লে করে, এদিকে ক্লাউড ইনজেস্ট আইডেমপোটেন্ট কী ও একটি বাফার সারি ব্যবহার করে। একটি বহু-ঘণ্টার ড্রপআউট স্থায়ী ডেটা হারানো না হয়ে ফাঁকহীন রেকর্ড হিসেবে ব্যাকফিল হয়।
খামারের একটি অংশে যদি কোনো সেলুলার কভারেজ না থাকে?
আমরা ব্যাকহল স্তরবদ্ধ করি: প্রাথমিক হিসেবে LoRaWAN, ফেইলওভার হিসেবে LTE Cat-M/NB-IoT, এবং শেষ উপায় হিসেবে Swarm বা Iridium স্যাটেলাইট। লিংক লেয়ার কভারেজ ও খরচ অনুযায়ী ফেইলওভার করে যাতে পাহাড়ের সারি ও বাগানের পেছনের মাঠগুলোও রিপোর্ট করে।
প্রতিটিতে না গিয়ে আমরা কি শত শত নোড আপডেট করতে পারি?
হ্যাঁ। ফ্লিট OTA ক্যানারি কোহর্ট, সাইনড A/B ইমেজ ও স্বয়ংক্রিয় রোলব্যাকসহ প্রতি-অঞ্চল রোলআউট গেট ব্যবহার করে। একজন অপারেটর ড্যাশবোর্ড থেকে ফার্মওয়্যার ও কনফিগ পুশ করেন, এবং একটি খারাপ বিল্ড একটি অঞ্চল নীরব করার বদলে রোলব্যাক হয়।
ইনজেস্ট ও স্টোরেজের জন্য আপনারা কোন ক্লাউড লক্ষ্য করেন?
সাধারণত MQTT-এর জন্য AWS IoT Core, যার রুলস Kinesis বা SQS-এ ফিড করে এবং Timestream বা InfluxDB-এর মতো একটি টাইম-সিরিজ স্টোর। ডেটা রেসিডেন্সি বা খরচের প্রয়োজন হলে আমরা Azure IoT Hub বা একটি সেলফ-হোস্টেড MQTT/TimescaleDB স্ট্যাকে ডিপ্লয় করতে পারি।
অপারেটররা কীভাবে জানেন একটি নোডের মনোযোগ প্রয়োজন?
প্রতিটি নোড ব্যাটারি, সোলার চার্জ, RSSI/SNR ও লাস্ট-সিন একটি ডিভাইস রেজিস্ট্রিতে রিপোর্ট করে যা অ্যালার্টিংসহ ড্যাশবোর্ডে দেখানো হয়। অপারেটররা অফিস থেকে ট্রায়াজ করেন এবং অনুমানের ভিত্তিতে নয়, কেবল যখন একটি নোডের সত্যিই হাত প্রয়োজন তখনই ট্রাক পাঠান।