99精品伊人亚洲|最近国产中文炮友|九草在线视频支援|AV网站大全最新|美女黄片免费观看|国产精品资源视频|精彩无码视频一区|91大神在线后入|伊人终合在线播放|久草综合久久中文

電子發(fā)燒友App

硬聲App

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示
創(chuàng)作
電子發(fā)燒友網(wǎng)>電子資料下載>電子資料>如何使用SNMP從我的WiFi路由器中獲取數(shù)據(jù)

如何使用SNMP從我的WiFi路由器中獲取數(shù)據(jù)

2022-12-16 | zip | 0.10 MB | 次下載 | 免費(fèi)

資料介紹

描述

隨著印度的全面封鎖,包括郵件服務(wù)在內(nèi)的一切都已關(guān)閉。沒有新的 PCB 項(xiàng)目,沒有新的組件,什么都沒有!因此,為了克服無聊并讓自己忙碌起來,我決定用家里已有的零件制作一些東西。我開始從一堆電子垃圾中搜索,發(fā)現(xiàn)一個(gè)破舊的模擬萬用表。我從中挽救了“儀表運(yùn)動”,并決定顯示某種信息,但不知道具體是什么。首先,我想展示 COVID-19 統(tǒng)計(jì)數(shù)據(jù),但互聯(lián)網(wǎng)上已經(jīng)有很多更好的項(xiàng)目。此外,數(shù)據(jù)會在幾個(gè)小時(shí)后更新,儀表的靜止指針會很無聊。我想要快速變化的數(shù)據(jù),每秒都在變化。我在 Instagram 上征求建議,我的一位追隨者回復(fù)了 Internet Speedometer。

在本教程中,我將向您展示如何使用 SNMP 從我的 WiFi 路由器中獲取數(shù)據(jù),并在儀表上顯示上傳和下載速度。

讓我們開始吧!

第 1 步:計(jì)劃

?
poYBAGOYqUmAMPIaAAgsX93pl7w879.jpg
?

和往常一樣,在開始這個(gè)項(xiàng)目之前,我在互聯(lián)網(wǎng)上做了一些研究。我發(fā)現(xiàn)了一些與這個(gè)主題相關(guān)的項(xiàng)目。它們有兩種。一種通過測量 WiFi 信號的“強(qiáng)度”來顯示互聯(lián)網(wǎng)速度的方法。我不是網(wǎng)絡(luò)專家,但這聽起來不對。其他人測量延遲并將速度分類為慢、中或快。延遲是發(fā)送請求和獲得響應(yīng)之間的時(shí)間延遲,因此它不能代表互聯(lián)網(wǎng)速度的實(shí)際表現(xiàn)。我們可以稱之為網(wǎng)絡(luò)響應(yīng)速度!然后是一些合法的項(xiàng)目,它們測量下載一些數(shù)據(jù)所需的時(shí)間,并據(jù)此計(jì)算互聯(lián)網(wǎng)速度。

但正是在這個(gè)項(xiàng)目(由Alistair 編寫)中,我了解了簡單網(wǎng)絡(luò)管理協(xié)議或 SNMP。使用 SNMP,我們可以與 WiFi 路由器通信并直接從中獲取所需的數(shù)據(jù)。容易,對吧?其實(shí),不!因?yàn)椴煌吞柕?WiFi 路由器使用有不同的設(shè)置,需要大量的反復(fù)試驗(yàn)才能最終得到輸出。不要害怕。我將簡要解釋我對 SNMP 的了解以及在接下來的步驟中遇到的困難。

所以計(jì)劃是使用NodeMCU連接WiFi路由器。這些是獲得最終輸出的步驟:

  • 向“請求”所需數(shù)據(jù)的路由器發(fā)送請求
  • 獲取路由器的響應(yīng)
  • 分析響應(yīng)并從中解析所需的數(shù)據(jù)
  • 將“原始”數(shù)據(jù)轉(zhuǎn)換為可理解的信息
  • 為儀表生成與互聯(lián)網(wǎng)速度成比例的電壓
  • 重復(fù)

我將使用 DAC數(shù)模轉(zhuǎn)換器來控制儀表。

第 2 步:你需要的東西

?
?
?
?
pYYBAGOYqU6AIbosAAJw-_AdDpE174.jpg
?
1 / 3
?

1x NodeMCU

1x 模擬儀表運(yùn)動

1x MPU4725 DAC

1x 單刀雙擲開關(guān)

1x 10k 電位器

1x 電阻

第 3 步:計(jì)算滿量程偏轉(zhuǎn)電流

?
?
?
?
pYYBAGOYqVCAGch4AAATL0g0CJU311.jpg
?
1 / 2
?

注意:跳轉(zhuǎn)到第 7 步進(jìn)行實(shí)際構(gòu)建!

如果您已經(jīng)知道儀表的滿量程偏轉(zhuǎn)電流,請?zhí)^此步驟。我的儀表沒有提到它,所以我不得不計(jì)算。但首先,讓我們快速了解一下這種運(yùn)動是如何運(yùn)作的。它由一個(gè)懸掛在磁場中的線圈組成。當(dāng)電流流過線圈時(shí),根據(jù)法拉第定律,它會受到力。允許線圈在磁場中自由旋轉(zhuǎn),附在線圈上的指針也是如此。使指針在“刻度末端”移動的電流大小稱為滿刻度偏轉(zhuǎn)電流。這也是必須允許流過線圈的最大電流。

還有很多事情要做,但這對于我們正在做的事情來說已經(jīng)足夠了。我們現(xiàn)在有了運(yùn)動。它可以通過串聯(lián)一個(gè)高電阻用作電壓表,也可以通過并聯(lián)一個(gè)小電阻用作電流表。我們將使用它作為電壓表來顯示與互聯(lián)網(wǎng)速度成正比的電壓。因此,我們需要計(jì)算要串聯(lián)添加的電阻。為此,我們首先需要計(jì)算滿量程偏轉(zhuǎn)電流。

  • 選擇高電阻值(如 >100k)
  • 將其與機(jī)芯串聯(lián),并使用電位器在其上施加可變電壓。
  • 繼續(xù)緩慢增加電壓,直到指針到達(dá)刻度的末端。
  • 使用萬用表測量流過的電流。這是滿量程偏轉(zhuǎn)電流。(在我的情況下,I = 150uA)

我們使用的 DAC 的輸出電壓范圍為 0 到 VCC(由于 NodeMCU 為 3.3V)。這意味著當(dāng)向儀表施加 3.3V 時(shí),它應(yīng)該指向刻度的末端。當(dāng)施加 3.3V 電壓時(shí)滿量程偏轉(zhuǎn)電流流過電路時(shí),就會發(fā)生這種情況。使用歐姆定律,3.3/(滿量程偏轉(zhuǎn)電流)給出了串聯(lián)插入的電阻值。

第 4 步:創(chuàng)建 SNMP GET 請求

?
?
?
?
poYBAGOYqWOAIm6VAAbhXh1CGb8573.jpg
?
1 / 3
?

簡單網(wǎng)絡(luò)管理協(xié)議 (SNMP)是一種 Internet 標(biāo)準(zhǔn)協(xié)議,用于收集和組織有關(guān) IP 網(wǎng)絡(luò)上受管設(shè)備的信息,并用于修改該信息以更改設(shè)備行為。通常支持 SNMP 的設(shè)備包括電纜調(diào)制解調(diào)器、路由器、交換機(jī)、服務(wù)器、工作站、打印機(jī)等。對于這個(gè)構(gòu)建,我們將使用 SNMP 與我們的 WiFi 路由器通信并獲取所需的數(shù)據(jù)。

但首先,我們需要向路由器發(fā)送一個(gè)稱為“GET 請求”的請求,其中提及我們想要的數(shù)據(jù)的詳細(xì)信息。GET 請求格式如圖所示。該請求由多個(gè)部分組成。我已經(jīng)突出顯示了您可能想要更改的字節(jié)。

請注意,一切都是十六進(jìn)制的。

SNMP 消息- 就我而言,整個(gè)消息的長度為 40(灰色),轉(zhuǎn)換為十六進(jìn)制時(shí)為 0x28。

SNMP 社區(qū)字符串- 值“PUBLIC”以十六進(jìn)制寫為“70 75 62 6C 69 63”,長度為 6(黃色)。

SNMP PDU 類型- 在我的例子中,消息的長度是 27(藍(lán)色),即 0x1B。

Varbind 列表類型- 在我的例子中,消息的長度是 16(綠色),即 0x10。

Varbind 類型- 在我的例子中,消息的長度是 14(粉紅色),即 0x0E。

對象標(biāo)識符-

如前所述,支持 SNMP 的網(wǎng)絡(luò)設(shè)備(例如路由器、交換機(jī)等)將系統(tǒng)狀態(tài)、可用性和性能信息作為對象維護(hù)一個(gè)數(shù)據(jù)庫,由 OID 標(biāo)識。您需要為上傳和下載數(shù)據(jù)包識別路由器的 OID。可以使用像這樣的免費(fèi)MIB 瀏覽器來完成。

輸入地址為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) 選擇獲取操作并單擊執(zhí)行。您應(yīng)該會看到 OID 及其值和類型。

就我而言,消息的長度是 10(紅色),即 0x0A。將值替換為 OID。在這種情況下,'2B 06 01 02 01 02 02 01 10 10'

而已!您的請求消息已準(zhǔn)備就緒。保持其余字節(jié)不變。

在路由器上打開 SNMP:

  • 通過默認(rèn)網(wǎng)關(guān)登錄到您的 WiFi 路由器頁面。在瀏覽器中輸入 192.168.1.1,然后按 Enter。默認(rèn)情況下,用戶名和密碼應(yīng)為“admin”。
  • 我正在使用 TP-LINK (TD-W8961N) 路由器。對于此路由器,您必須進(jìn)入訪問管理 > SNMP 并選擇“已激活”。
  • GET 社區(qū):公共
  • 陷阱宿主:0.0.0.0

第 5 步:了解 GET 響應(yīng)

?
pYYBAGOYqXuAS4ZHAALbLFPoYh0578.jpg
?

您可以跳過此步驟,但最好知道您是否需要進(jìn)行一些故障排除。

上傳代碼并運(yùn)行后,您可以通過串行監(jiān)視器查看響應(yīng)。它應(yīng)該如圖所示。您需要查找一些我已突出顯示的字節(jié)。

從0開始,

第 15 個(gè)字節(jié)告訴 PDU 類型 - 0xA2 表示它是一個(gè) GetResponse。

第 48 個(gè)字節(jié)告訴數(shù)據(jù)類型 - 0x41 表示數(shù)據(jù)類型是 Counter

第 49 個(gè)字節(jié)表示數(shù)據(jù)的長度 - 0x04 表示數(shù)據(jù)長度為 4 個(gè)字節(jié)。

字節(jié) 50、51、52、53 包含數(shù)據(jù)。

第 6 步:數(shù)模轉(zhuǎn)換器 (DAC)

?
pYYBAGOYqYCAcyi-AAEfaa3PPUw596.jpg
?

微控制器是不直接了解模擬電壓的數(shù)字設(shè)備。我正在使用一個(gè)需要可變電壓作為輸入的模擬儀表。但微控制器只能輸出高電平(NodeMCU 為 3.3V)和低電平(0V)。現(xiàn)在你可能會說為什么不只使用 PWM。它不起作用,因?yàn)閮x表只會顯示平均值。

我正在使用 MCP4725 DAC 來獲得可變電壓。它是一個(gè) 12 位 DAC,簡單來說,它將 0 到 3.3V 分成 4096 (= 2^12) 個(gè)部分。分辨率為 3.3/4096 = 0.8056mV。也就是說0對應(yīng)0V,1對應(yīng)0.8056mV,2對應(yīng)1.6112mV,......,4095對應(yīng)3.3V。

互聯(lián)網(wǎng)速度將從“0 到 7 mbps”“映射”到“0 到 4095”,然后將該值提供給 DAC 以輸出與互聯(lián)網(wǎng)速度成正比的電壓。

第 7 步:大會

?
?
?
?
poYBAGOYqY6ADlzcAAYX_Td7s9o818.jpg
?
1 / 10
?

連接非常簡單。示意圖已附在此處。

我設(shè)計(jì)并打印了秤。上一個(gè)是下載速度,下一個(gè)是上傳速度。我把新秤粘在舊秤上。

我從萬用表中刪除了所有舊的東西,我把所有東西都塞進(jìn)了里面。這是一個(gè)緊身。我不得不在前面鉆一個(gè)孔來連接用于在上傳和下載速度之間進(jìn)行選擇的撥動開關(guān)。

?

第 8 步:編碼時(shí)間

?
?
?
?
poYBAGOYqZCACHo_AABRew95B_U228.jpg
?
1 / 3
?

代碼已附在此處。下載并在 Arduino IDE 中打開它。從 Adafruit安裝MCP4725 庫。

上傳前:

  • 輸入您的 WiFi SSID 和密碼
  • 輸入秤上提到的最大上傳和下載速度。
  • 在請求數(shù)組中對下載和上傳數(shù)據(jù)包進(jìn)行必要的更改。
  • 取消注釋第 165 行以查看串行監(jiān)視器上的響應(yīng)。

點(diǎn)擊上傳!

第9步:享受!

啟動它,享受在網(wǎng)上沖浪時(shí)觀看針頭跳舞的樂趣!

謝謝你堅(jiān)持到最后。希望你們都喜歡這個(gè)項(xiàng)目,并在今天學(xué)到了一些新東西。如果你為自己做一個(gè),請告訴我。訂閱我的YouTube 頻道了解更多此類項(xiàng)目。


下載該資料的人也在下載 下載該資料的人還在閱讀
更多 >

評論

查看更多

下載排行

本周

  1. 1山景DSP芯片AP8248A2數(shù)據(jù)手冊
  2. 1.06 MB  |  532次下載  |  免費(fèi)
  3. 2RK3399完整板原理圖(支持平板,盒子VR)
  4. 3.28 MB  |  339次下載  |  免費(fèi)
  5. 3TC358743XBG評估板參考手冊
  6. 1.36 MB  |  330次下載  |  免費(fèi)
  7. 4DFM軟件使用教程
  8. 0.84 MB  |  295次下載  |  免費(fèi)
  9. 5元宇宙深度解析—未來的未來-風(fēng)口還是泡沫
  10. 6.40 MB  |  227次下載  |  免費(fèi)
  11. 6迪文DGUS開發(fā)指南
  12. 31.67 MB  |  194次下載  |  免費(fèi)
  13. 7元宇宙底層硬件系列報(bào)告
  14. 13.42 MB  |  182次下載  |  免費(fèi)
  15. 8FP5207XR-G1中文應(yīng)用手冊
  16. 1.09 MB  |  178次下載  |  免費(fèi)

本月

  1. 1OrCAD10.5下載OrCAD10.5中文版軟件
  2. 0.00 MB  |  234315次下載  |  免費(fèi)
  3. 2555集成電路應(yīng)用800例(新編版)
  4. 0.00 MB  |  33566次下載  |  免費(fèi)
  5. 3接口電路圖大全
  6. 未知  |  30323次下載  |  免費(fèi)
  7. 4開關(guān)電源設(shè)計(jì)實(shí)例指南
  8. 未知  |  21549次下載  |  免費(fèi)
  9. 5電氣工程師手冊免費(fèi)下載(新編第二版pdf電子書)
  10. 0.00 MB  |  15349次下載  |  免費(fèi)
  11. 6數(shù)字電路基礎(chǔ)pdf(下載)
  12. 未知  |  13750次下載  |  免費(fèi)
  13. 7電子制作實(shí)例集錦 下載
  14. 未知  |  8113次下載  |  免費(fèi)
  15. 8《LED驅(qū)動電路設(shè)計(jì)》 溫德爾著
  16. 0.00 MB  |  6656次下載  |  免費(fèi)

總榜

  1. 1matlab軟件下載入口
  2. 未知  |  935054次下載  |  免費(fèi)
  3. 2protel99se軟件下載(可英文版轉(zhuǎn)中文版)
  4. 78.1 MB  |  537798次下載  |  免費(fèi)
  5. 3MATLAB 7.1 下載 (含軟件介紹)
  6. 未知  |  420027次下載  |  免費(fèi)
  7. 4OrCAD10.5下載OrCAD10.5中文版軟件
  8. 0.00 MB  |  234315次下載  |  免費(fèi)
  9. 5Altium DXP2002下載入口
  10. 未知  |  233046次下載  |  免費(fèi)
  11. 6電路仿真軟件multisim 10.0免費(fèi)下載
  12. 340992  |  191187次下載  |  免費(fèi)
  13. 7十天學(xué)會AVR單片機(jī)與C語言視頻教程 下載
  14. 158M  |  183279次下載  |  免費(fèi)
  15. 8proe5.0野火版下載(中文版免費(fèi)下載)
  16. 未知  |  138040次下載  |  免費(fèi)