সুচিপত্র:

ইন্টারনেট স্পিডোমিটার: 9 টি ধাপ (ছবি সহ)
ইন্টারনেট স্পিডোমিটার: 9 টি ধাপ (ছবি সহ)

ভিডিও: ইন্টারনেট স্পিডোমিটার: 9 টি ধাপ (ছবি সহ)

ভিডিও: ইন্টারনেট স্পিডোমিটার: 9 টি ধাপ (ছবি সহ)
ভিডিও: How To Enable Internet Speed Meter On Notification Bar In Any Mobile || Show Internet Speed Meter 2024, নভেম্বর
Anonim
Image
Image
পরিকল্পনা
পরিকল্পনা

ভারতে সম্পূর্ণ লকডাউন চলছে, মেল পরিষেবা সহ সবকিছু বন্ধ হয়ে গেছে। কোন নতুন পিসিবি প্রকল্প, কোন নতুন উপাদান, কিছুই না! তাই একঘেয়েমি কাটিয়ে উঠতে এবং নিজেকে ব্যস্ত রাখার জন্য, আমি সিদ্ধান্ত নিয়েছি যে আমি ইতিমধ্যে বাড়িতে থাকা অংশগুলি থেকে কিছু তৈরি করব। আমি ইলেকট্রনিক্স জাঙ্কের স্তূপ থেকে অনুসন্ধান শুরু করেছিলাম এবং একটি পুরানো, ভাঙ্গা এনালগ মাল্টিমিটার খুঁজে পেয়েছিলাম। আমি এটি থেকে 'মিটার মুভমেন্ট' উদ্ধার করেছিলাম এবং কিছু ধরনের তথ্য প্রদর্শন করার সিদ্ধান্ত নিয়েছিলাম কিন্তু ঠিক কী তা জানি না। প্রথমত, আমি কোভিড -১ st পরিসংখ্যান প্রদর্শনের কথা ভেবেছিলাম কিন্তু ইন্টারনেটে ইতিমধ্যে অনেক ভাল প্রকল্প রয়েছে। এছাড়াও, কয়েক ঘন্টা পরে ডেটা আপডেট করা হয় এবং মিটারের স্থির নির্দেশক বিরক্তিকর হবে। আমি এমন ডেটা চেয়েছিলাম যা দ্রুত পরিবর্তন হয়, প্রতি সেকেন্ডে পরিবর্তন হয়। আমি ইনস্টাগ্রামে পরামর্শ চেয়েছিলাম এবং আমার একজন অনুগামী ইন্টারনেট স্পিডোমিটার দিয়ে উত্তর দিয়েছিলেন। এটি আকর্ষণীয় শোনাচ্ছিল এবং এটি তৈরি করার সিদ্ধান্ত নিয়েছে!

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

চল শুরু করি

ধাপ 1: পরিকল্পনা

বরাবরের মতো প্রকল্পটি শুরু করার আগে আমি ইন্টারনেটে কিছুটা গবেষণা করেছি। আমি এই বিষয় সম্পর্কিত কয়েকটি প্রকল্প খুঁজে পেয়েছি। তারা দুই ধরনের ছিল। যেটি ওয়াইফাই সিগন্যালের 'শক্তি' পরিমাপ করে ইন্টারনেটের গতি দেখিয়েছে। আমি একজন নেটওয়ার্কিং বিশেষজ্ঞ লোক নই কিন্তু এটা ঠিক শোনেনি। অন্যরা বিলম্বের পরিমাপ করেছে এবং গতি ধীর, মাঝারি বা দ্রুত হিসাবে শ্রেণীবদ্ধ করেছে। বিলম্ব হল অনুরোধ পাঠানো এবং সাড়া পাওয়ার মধ্যে সময় বিলম্ব এবং তাই এটি ইন্টারনেটের গতির প্রকৃত উপস্থাপনা হতে পারে না। যদিও আমরা এটিকে নেটওয়ার্ক প্রতিক্রিয়া গতি বলতে পারি! তারপরে বৈধ প্রকল্প ছিল যা কিছু ডেটা ডাউনলোড করার জন্য প্রয়োজনীয় সময় পরিমাপ করেছিল এবং তার উপর ভিত্তি করে ইন্টারনেটের গতি গণনা করেছিল।

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

তাই ওয়াইফাই রাউটারের সাথে সংযোগ স্থাপনের জন্য NodeMCU ব্যবহার করার পরিকল্পনা রয়েছে। চূড়ান্ত আউটপুট পেতে এই পদক্ষেপগুলি হল:

  • রাউটারকে একটি অনুরোধ পাঠান প্রয়োজনীয় তথ্য 'অনুরোধ'
  • রাউটার থেকে প্রতিক্রিয়া পান
  • প্রতিক্রিয়া বিশ্লেষণ করুন এবং এটি থেকে প্রয়োজনীয় ডেটা বিশ্লেষণ করুন
  • 'কাঁচা' ডেটাকে বোধগম্য তথ্যে রূপান্তর করুন
  • মিটারের জন্য ইন্টারনেটের গতির আনুপাতিক ভোল্টেজ তৈরি করুন
  • পুনরাবৃত্তি করুন

আমি মিটার নিয়ন্ত্রণের জন্য একটি DAC বা ডিজিটাল টু অ্যানালগ কনভার্টার ব্যবহার করব।

ধাপ 2: আপনার যা প্রয়োজন হবে

জিনিস আপনি প্রয়োজন হবে
জিনিস আপনি প্রয়োজন হবে
জিনিস আপনি প্রয়োজন হবে
জিনিস আপনি প্রয়োজন হবে
জিনিস আপনি প্রয়োজন হবে
জিনিস আপনি প্রয়োজন হবে

1x NodeMCU

1x এনালগ মিটার আন্দোলন

1x MPU4725 DAC

1x SPDT সুইচ

1x 10k পোটেন্টিওমিটার

1x প্রতিরোধক

ধাপ 3: পূর্ণ-স্কেল প্রতিফলন বর্তমান গণনা

পূর্ণ-স্কেল প্রতিফলন বর্তমান গণনা করা হচ্ছে
পূর্ণ-স্কেল প্রতিফলন বর্তমান গণনা করা হচ্ছে
পূর্ণ-স্কেল প্রতিফলন বর্তমান গণনা করা হচ্ছে
পূর্ণ-স্কেল প্রতিফলন বর্তমান গণনা করা হচ্ছে

দ্রষ্টব্য: প্রকৃত নির্মাণের জন্য ধাপ 7 এ যান!

যদি আপনি ইতিমধ্যে আপনার মিটারের জন্য পূর্ণ-স্কেল বিকৃতি বর্তমান জানেন তবে এই পদক্ষেপটি এড়িয়ে যান। আমার মিটারে এর কোন উল্লেখ ছিল না তাই আমাকে হিসাব করতে হয়েছিল। কিন্তু প্রথমে, আসুন আমরা তাড়াতাড়ি দেখি কিভাবে এই ধরনের আন্দোলন কাজ করে। এটি একটি চৌম্বক ক্ষেত্রে স্থগিত একটি কুণ্ডলী নিয়ে গঠিত। ফ্যারাডে এর আইন অনুসারে যখন কুণ্ডলী দিয়ে কারেন্ট প্রবাহিত হয়, তখন এটি একটি বল অনুভব করে। কুণ্ডলীকে চৌম্বকক্ষেত্রে অবাধে ঘোরাতে দেওয়া হয় এবং কয়েলের সাথে সংযুক্ত পয়েন্টারটিও তাই। কারেন্টের মাত্রা যা পয়েন্টারকে 'স্কেলের শেষে' নিয়ে যায় তাকে ফুল স্কেল ডিফ্লেকশন কারেন্ট বলে। এটি সর্বোচ্চ স্রোত যা কুণ্ডলী দিয়ে প্রবাহিত হতে হবে।

আরো অনেক কিছু চলছে কিন্তু আমরা যা করছি তার জন্য এটাই যথেষ্ট। আমরা এখন আন্দোলন করছি। এটি একটি ভোল্টমিটার হিসাবে এর সাথে সিরিজের একটি উচ্চ প্রতিরোধের যোগ করে অথবা এর সমান্তরালে একটি ছোট প্রতিরোধের যোগ করে একটি Ammeter হিসাবে ব্যবহার করা যেতে পারে। আমরা ইন্টারনেটের গতির সমানুপাতিক ভোল্টেজ প্রদর্শন করতে এটিকে ভোল্টমিটার হিসেবে ব্যবহার করব। সুতরাং, আমাদের প্রতিরোধের হিসাব করতে হবে যা সিরিজে যোগ করা হবে। এর জন্য, আমাদের প্রথমে পূর্ণ-স্কেলের প্রতিফলন বর্তমান গণনা করতে হবে।

  1. একটি উচ্চ প্রতিরোধের মান নির্বাচন করুন (যেমন> 100k)
  2. এটিকে আন্দোলনের সাথে ধারাবাহিকভাবে সংযুক্ত করুন এবং পাত্রটি ব্যবহার করে এটি জুড়ে একটি পরিবর্তনশীল ভোল্টেজ প্রয়োগ করুন।
  3. পয়েন্টার স্কেলের শেষে না আসা পর্যন্ত ধীরে ধীরে ভোল্টেজ বাড়িয়ে রাখুন।
  4. একটি মাল্টিমিটার ব্যবহার করে, প্রবাহিত কারেন্ট পরিমাপ করুন। এটি পূর্ণ-স্কেলের প্রতিফলন বর্তমান। (আমি = 150uA আমার ক্ষেত্রে)

আমরা একটি DAC ব্যবহার করছি যার আউটপুট ভোল্টেজ পরিসীমা 0 থেকে VCC (NodeMCU এর কারণে 3.3V)। এর মানে হল যে যখন 3.3V মিটারে প্রয়োগ করা হয়, তখন এটি স্কেলের শেষে নির্দেশ করা উচিত। এটি ঘটতে পারে যখন 3.3V প্রয়োগ করা হলে সার্কিটের মধ্য দিয়ে পূর্ণ-স্কেল বিকৃতি বর্তমান প্রবাহিত হয়। ওহমের আইন ব্যবহার করে, 3.3/(পূর্ণ-স্কেলের প্রতিফলন বর্তমান) সিরিজের মধ্যে সন্নিবেশ করা প্রতিরোধের মান দেয়।

ধাপ 4: SNMP GET রিকোয়েস্ট তৈরি করা

SNMP GET রিকোয়েস্ট তৈরি করা
SNMP GET রিকোয়েস্ট তৈরি করা
SNMP GET রিকোয়েস্ট তৈরি করা
SNMP GET রিকোয়েস্ট তৈরি করা
SNMP GET রিকোয়েস্ট তৈরি করা
SNMP GET রিকোয়েস্ট তৈরি করা

সিম্পল নেটওয়ার্ক ম্যানেজমেন্ট প্রোটোকল (এসএনএমপি) হল আইপি নেটওয়ার্কে পরিচালিত ডিভাইস সম্পর্কে তথ্য সংগ্রহ ও সংগঠিত করার এবং ডিভাইসের আচরণ পরিবর্তন করার জন্য সেই তথ্য সংশোধন করার জন্য একটি ইন্টারনেট স্ট্যান্ডার্ড প্রোটোকল। যে ডিভাইসগুলি সাধারণত এসএনএমপি সমর্থন করে তার মধ্যে রয়েছে ক্যাবল মডেম, রাউটার, সুইচ, সার্ভার, ওয়ার্কস্টেশন, প্রিন্টার এবং আরও অনেক কিছু। এই নির্মাণের জন্য, আমরা SNMP ব্যবহার করে আমাদের ওয়াইফাই রাউটারের সাথে যোগাযোগ করব এবং প্রয়োজনীয় ডেটা পাব।

কিন্তু প্রথমে, আমাদেরকে 'GET রিকোয়েস্ট' নামে পরিচিত একটি অনুরোধ পাঠাতে হবে রাউটারে আমরা যে ডেটা চাই তার বিবরণ উল্লেখ করে। GET রিকোয়েস্ট ফরম্যাট ছবিতে দেখানো হয়েছে। অনুরোধটি বিভিন্ন অংশ নিয়ে গঠিত। আমি হাইলাইট করেছি বাইট যা আপনি পরিবর্তন করতে চাইতে পারেন।

দয়া করে মনে রাখবেন যে সবকিছু হেক্সাডেসিমালে রয়েছে।

এসএনএমপি বার্তা -আমার ক্ষেত্রে, পুরো বার্তার দৈর্ঘ্য 40 (ধূসর রঙ) যা হেক্সাডেসিমালে রূপান্তরিত হলে 0x28।

SNMP কমিউনিটি স্ট্রিং - মান 'PUBLIC' হেক্সাডেসিমালে '70 75 62 6C 69 63 'হিসাবে লেখা আছে যার দৈর্ঘ্য 6 (হলুদ)।

SNMP PDU প্রকার - আমার ক্ষেত্রে, বার্তার দৈর্ঘ্য 27 (নীল) অর্থাৎ 0x1B।

Varbind তালিকার ধরন - আমার ক্ষেত্রে, বার্তার দৈর্ঘ্য 16 (সবুজ) অর্থাত 0x10।

Varbind প্রকার - আমার ক্ষেত্রে, বার্তার দৈর্ঘ্য 14 (গোলাপী) অর্থাত 0x0E।

অবজেক্ট আইডেন্টিফায়ার -

আগেই উল্লেখ করা হয়েছে, SNMP- সক্ষম নেটওয়ার্ক ডিভাইস (যেমন রাউটার, সুইচ ইত্যাদি) OIDs দ্বারা চিহ্নিত বস্তু হিসাবে সিস্টেমের অবস্থা, প্রাপ্যতা এবং কর্মক্ষমতা তথ্যের একটি ডাটাবেস বজায় রাখে। আপলোড এবং ডাউনলোড প্যাকেটগুলির জন্য আপনাকে আপনার রাউটারের OID চিহ্নিত করতে হবে। এটি এর মতো একটি বিনামূল্যে এমআইবি ব্রাউজার ব্যবহার করে করা যেতে পারে।

192.168.1.1 এবং OID হিসাবে.1.3.6.1.2.1.2.2.1.10.x (ifInOctets) অথবা.1.3.6.1.2.1.2.2.1.16.x হিসাবে ঠিকানা লিখুন। (ifOutOctets)। Get অপারেশন সিলেক্ট করুন এবং Go এ ক্লিক করুন। আপনার OID এর মান এবং প্রকার সহ দেখতে হবে।

আমার ক্ষেত্রে, বার্তার দৈর্ঘ্য 10 (লাল) অর্থাৎ 0x0A। OID দিয়ে মান প্রতিস্থাপন করুন। এই ক্ষেত্রে, '2B 06 01 02 02 02 02 01 01 10'

এটাই! আপনার অনুরোধ বার্তা প্রস্তুত। বাকি বাইটগুলো যেমন আছে তেমন রাখুন।

আপনার রাউটারে SNMP চালু করা:

  • ডিফল্ট গেটওয়ে দিয়ে আপনার ওয়াইফাই রাউটারের পৃষ্ঠায় লগ ইন করুন। আপনার ব্রাউজারে 192.168.1.1 টাইপ করুন এবং এন্টার টিপুন। ডিফল্টরূপে, ব্যবহারকারীর নাম এবং পাসওয়ার্ড 'অ্যাডমিন' হওয়া উচিত।
  • আমি একটি TP-LINK (TD-W8961N) রাউটার ব্যবহার করছি। এই রাউটারের জন্য, আপনাকে অ্যাক্সেস ম্যানেজমেন্ট> SNMP এ যেতে হবে এবং 'সক্রিয়' নির্বাচন করতে হবে।
  • GET কমিউনিটি: পাবলিক
  • ফাঁদ হোস্ট: 0.0.0.0

ধাপ 5: GET প্রতিক্রিয়া বোঝা

GET প্রতিক্রিয়া বোঝা
GET প্রতিক্রিয়া বোঝা

আপনি এই ধাপটি এড়িয়ে যেতে পারেন, কিন্তু আপনার কিছু সমস্যা সমাধানের প্রয়োজন আছে কিনা তা জানা ভাল।

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

0 থেকে শুরু, 15 তম বাইট PDU প্রকারকে বলে - 0xA2 মানে এটি একটি GetResponse।

48 তম বাইট ডাটা টাইপ বলে - 0x41 মানে ডাটা টাইপ হল কাউন্টার।

49 তম বাইট তথ্যের দৈর্ঘ্য বলে - 0x04 এর মানে হল যে তথ্য 4 বাইট দীর্ঘ।

বাইট 50, 51, 52, 53 ডেটা রয়েছে।

ধাপ 6: ডিজিটাল থেকে এনালগ কনভার্টার (DAC)

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

মাইক্রোকন্ট্রোলার হলো ডিজিটাল ডিভাইস যা সরাসরি এনালগ ভোল্টেজ বুঝতে পারে না। আমি একটি এনালগ মিটার ব্যবহার করছি যার ইনপুট হিসাবে একটি পরিবর্তনশীল ভোল্টেজ প্রয়োজন। কিন্তু মাইক্রোকন্ট্রোলার কেবলমাত্র উচ্চ (NodeMCU এর ক্ষেত্রে 3.3V) এবং নিম্ন (0V) আউটপুট করতে পারে। এখন আপনি বলতে পারেন কেন শুধু PWM ব্যবহার করবেন না। এটি কাজ করবে না কারণ মিটার শুধুমাত্র গড় মান প্রদর্শন করবে।

আমি ভেরিয়েবল ভোল্টেজ পেতে MCP4725 DAC ব্যবহার করছি। এটি একটি 12-বিট DAC অর্থাৎ সহজ ভাষায়, এটি 0 থেকে 3.3V কে 4096 (= 2^12) অংশে ভাগ করবে। রেজোলিউশন হবে 3.3/4096 = 0.8056mV। এর মানে হল যে 0 টি 0V এর সাথে সামঞ্জস্যপূর্ণ, 1 টি 0.8056mV এর সাথে সামঞ্জস্যপূর্ণ, 2 টি 1.6112mV এর সাথে সামঞ্জস্যপূর্ণ,….., 4095 3.3V এর সাথে সামঞ্জস্যপূর্ণ।

ইন্টারনেটের গতি '0 থেকে 7 এমবিপিএস' থেকে '0 থেকে 4095' পর্যন্ত 'ম্যাপ' করা হবে এবং তারপর এই মানটি একটি ভোল্টেজ আউটপুট করার জন্য DAC কে দেওয়া হবে যা ইন্টারনেট গতির সমানুপাতিক হবে।

ধাপ 7: সমাবেশ

সমাবেশ
সমাবেশ
সমাবেশ
সমাবেশ
সমাবেশ
সমাবেশ
সমাবেশ
সমাবেশ

সংযোগগুলি খুব সহজ। পরিকল্পিত এখানে সংযুক্ত করা হয়েছে।

আমি স্কেল ডিজাইন এবং প্রিন্ট করেছি। উপরেরটি ডাউনলোড গতির জন্য এবং নিচেরটি আপলোড গতির জন্য। আমি পুরোনোটির উপর নতুন স্কেল আঠালো।

আমি মাল্টিমিটার থেকে সমস্ত পুরানো জিনিস সরিয়ে দিয়েছি এবং আমি এতে সমস্ত কিছু মুছে ফেলেছি। এটি একটি টাইট ফিট ছিল। আমাকে টগল সুইচ সংযুক্ত করার জন্য সামনে একটি গর্ত ড্রিল করতে হয়েছিল যা আপলোড এবং ডাউনলোডের গতির মধ্যে নির্বাচন করতে ব্যবহৃত হয়।

ধাপ 8: কোডিংয়ের সময়

কোডিং এর সময়
কোডিং এর সময়
কোডিং এর সময়
কোডিং এর সময়
কোডিং এর সময়
কোডিং এর সময়

কোডটি এখানে সংযুক্ত করা হয়েছে। এটি ডাউনলোড করে Arduino IDE তে খুলুন। অ্যাডাফ্রুট থেকে MCP4725 লাইব্রেরি ইনস্টল করুন।

আপলোড করার আগে:

  1. আপনার ওয়াইফাই SSID এবং পাসওয়ার্ড লিখুন
  2. স্কেলে উল্লেখ করা সর্বোচ্চ আপলোড এবং ডাউনলোডের গতি লিখুন।
  3. ডাউনলোডের জন্য অনুরোধের অ্যারেতে প্রয়োজনীয় পরিবর্তন করুন এবং প্যাকেট আপলোড করুন।
  4. সিরিয়াল মনিটরে প্রতিক্রিয়া দেখতে 165 টি লাইন কমেন্ট করুন।

হিট আপলোড!

ধাপ 9: উপভোগ করুন

এটি চালু করুন এবং ইন্টারনেটে সার্ফ করার সময় সুচ নাচতে দেখে উপভোগ করুন!

শেষ পর্যন্ত লেগে থাকার জন্য ধন্যবাদ। আশা করি আপনারা সবাই এই প্রকল্পটি পছন্দ করবেন এবং আজ নতুন কিছু শিখেছেন। আপনি যদি নিজের জন্য এটি তৈরি করেন তবে আমাকে জানান। এরকম আরও প্রকল্পের জন্য আমার ইউটিউব চ্যানেলটি সাবস্ক্রাইব করুন।

প্রস্তাবিত: