Სარჩევი:
- ნაბიჯი 1: გეგმა
- ნაბიჯი 2: ის, რაც დაგჭირდებათ
- ნაბიჯი 3: სრულმასშტაბიანი გადახრის დენის გამოთვლა
- ნაბიჯი 4: SNMP GET მოთხოვნის შექმნა
- ნაბიჯი 5: GET რეაგირების გაგება
- ნაბიჯი 6: ციფრული ანალოგური გადამყვანი (DAC)
- ნაბიჯი 7: ასამბლეა
- ნაბიჯი 8: კოდირების დრო
- ნაბიჯი 9: ისიამოვნეთ
ვიდეო: ინტერნეტის სიჩქარე: 9 ნაბიჯი (სურათებით)
2024 ავტორი: John Day | [email protected]. ბოლოს შეცვლილი: 2024-01-30 10:16
ინდოეთში სრული ჩაკეტვით, ყველაფერი ფოსტის სერვისების ჩათვლით დაიხურა. ახალი PCB პროექტები, ახალი კომპონენტები, არაფერი! ასე რომ, მოწყენილობის დასაძლევად და საკუთარი თავის დაკავების მიზნით, გადავწყვიტე რაღაცეები გამეკეთებინა იმ ნაწილებიდან, რომელიც უკვე სახლში მაქვს. დავიწყე ელექტრონული ნაგვის წყობიდან ძებნა და ვიპოვე ძველი, გატეხილი ანალოგური მულტიმეტრი. მე გადავარჩინე "მეტრის მოძრაობა" მისგან და გადავწყვიტე რაიმე სახის ინფორმაციის ჩვენება, მაგრამ ზუსტად არ ვიცოდი რა. პირველ რიგში, მე ვიფიქრე COVID-19 სტატისტიკის ჩვენებაზე, მაგრამ უკვე ბევრი უკეთესი პროექტია ინტერნეტში. ასევე, მონაცემები განახლდება რამდენიმე საათის შემდეგ და მრიცხველის მაჩვენებელი მოსაწყენი იქნებოდა. მე მინდოდა მონაცემები, რომლებიც სწრაფად იცვლება, იცვლება ყოველ წამს. მე ვთხოვე წინადადებები ინსტაგრამზე და ჩემმა ერთმა მიმდევარმა მიპასუხა ინტერნეტ სპიდომეტრით. საინტერესოდ ჟღერდა და მისი გაკეთება გადაწყვიტა!
ამ ინსტრუქციაში, მე გაჩვენებთ თუ როგორ ავიღე მონაცემები ჩემი WiFi როუტერიდან SNMP გამოყენებით და გამოვაჩინე ატვირთვისა და გადმოტვირთვის სიჩქარე მეტრზე.
Დავიწყოთ
ნაბიჯი 1: გეგმა
როგორც ყოველთვის, სანამ დავიწყებდი პროექტს, მე ცოტა კვლევა ჩავატარე ინტერნეტში. მე აღმოვაჩინე ამ პროექტთან დაკავშირებული რამდენიმე პროექტი. ისინი ორი სახის იყვნენ. ერთი, რომელმაც აჩვენა ინტერნეტის სიჩქარე WiFi სიგნალის "სიძლიერის" გაზომვით. მე არ ვარ ქსელის ექსპერტი, მაგრამ ეს არ ჟღერს სწორად. დანარჩენებმა შეაფასეს შეფერხება და დაადგინეს სიჩქარე ნელი, საშუალო ან სწრაფი. ლატენტურობა არის დროის შეფერხება მოთხოვნის გაგზავნასა და პასუხის მიღებას შორის და, შესაბამისად, ეს არ შეიძლება იყოს ინტერნეტის სიჩქარის ფაქტობრივი წარმოდგენა. ჩვენ შეგვიძლია ვუწოდოთ მას ქსელის რეაგირების სიჩქარე! შემდეგ იყო ლეგიტიმური პროექტები, რომლებმაც გაზომეს გარკვეული დრო მონაცემების გადმოსაწერად და გამოთვალეს ინტერნეტის სიჩქარე ამის საფუძველზე.
მაგრამ სწორედ ამ პროექტში (Alistair– ის მიერ) გავიგე ქსელის მართვის მარტივი პროტოკოლის ან SNMP– ის შესახებ. SNMP– ის გამოყენებით, ჩვენ შეგვიძლია ვუკავშირდეთ WiFi როუტერს და მივიღოთ საჭირო მონაცემები პირდაპირ მისგან. ადვილია, არა? Ფაქტობრივად არა! ვინაიდან WiFi მარშრუტიზატორის სხვადასხვა მოდელს აქვს განსხვავებული პარამეტრები და სჭირდება ბევრი ცდა და შეცდომა სანამ საბოლოოდ მიიღებთ გამომავალს. ნუ გეშინია. მე მოკლედ აგიხსნით ყველაფერს, რაც შევიტყვე SNMP– ს შესახებ და იმ სირთულეების შესახებ, რომელთა წინაშეც აღმოვჩნდი მომდევნო ნაბიჯებში.
ასე რომ, გეგმაა გამოიყენოთ NodeMCU WiFi როუტერთან დასაკავშირებლად. ეს არის ნაბიჯები საბოლოო შედეგამდე მისასვლელად:
- გაგზავნეთ მოთხოვნა როუტერზე 'მოთხოვნით' საჭირო მონაცემებს
- მიიღეთ პასუხი როუტერიდან
- გააანალიზეთ პასუხი და გაანალიზეთ მისგან საჭირო მონაცემები
- გადააქციეთ "ნედლი" მონაცემები გასაგებ ინფორმაციად
- გამოიმუშავეთ ძაბვა ინტერნეტის სიჩქარის პროპორციული მრიცხველისთვის
- გაიმეორეთ
მე ვიყენებ DAC- ს ან ციფრულ ანალოგურ კონვერტორს მრიცხველის გასაკონტროლებლად.
ნაბიჯი 2: ის, რაც დაგჭირდებათ
1x NodeMCU
1x ანალოგური მრიცხველის მოძრაობა
1x MPU4725 DAC
1x SPDT გადამრთველი
1x 10k პოტენომეტრი
1x რეზისტორი
ნაბიჯი 3: სრულმასშტაბიანი გადახრის დენის გამოთვლა
შენიშვნა: გადადით მე -7 საფეხურზე რეალური მშენებლობისთვის!
გამოტოვეთ ეს ნაბიჯი, თუ უკვე იცით თქვენი მრიცხველის სრულმასშტაბიანი გადახრის დენი. ჩემს მრიცხველს არ ჰქონდა ნახსენები, ამიტომ უნდა გამოვთვალო. მაგრამ პირველი, მოდით სწრაფად ვნახოთ როგორ მუშაობს ასეთი მოძრაობა. იგი შედგება მაგნიტურ ველში შეჩერებული კოჭისგან. როდესაც დენი მიედინება კოჭაში, ფარადეის კანონის თანახმად, ის განიცდის ძალას. კოჭას უფლება აქვს თავისუფლად ბრუნოს მაგნიტურ ველში და ასევე მაჩვენებელი, რომელიც მიმაგრებულია კოჭაზე. დენის სიდიდეს, რომელიც მოძრაობს მაჩვენებელს "მასშტაბის ბოლოს" ეწოდება სრულმასშტაბიანი გადახრის დენი. ეს არის ასევე მაქსიმალური დენი, რომელიც უნდა იყოს დაშვებული კოჭის გავლით.
კიდევ ბევრია, მაგრამ ეს საკმარისია იმისთვის, რასაც ჩვენ ვაკეთებთ. ახლა ჩვენ გვაქვს მოძრაობა. ის შეიძლება გამოყენებულ იქნას როგორც ვოლტმეტრი, მასთან ერთად სერიაში მაღალი წინააღმდეგობის დამატებით, ან როგორც ამმეტრი, პარალელურად მცირე წინააღმდეგობის დამატებით. ჩვენ ვიყენებთ მას, როგორც ვოლტმეტრს, რათა გამოვავლინოთ ძაბვა პროპორციულად ინტერნეტის სიჩქარეზე. ამრიგად, ჩვენ უნდა გამოვთვალოთ წინააღმდეგობა, რომელიც უნდა დაემატოს სერიას. ამისათვის ჩვენ ჯერ უნდა გამოვთვალოთ სრულმასშტაბიანი გადახრის დენი.
- აირჩიეთ მაღალი წინააღმდეგობის მნიშვნელობა (მაგალითად> 100k)
- სერიულად დააკავშირეთ იგი მოძრაობასთან და გამოიყენეთ ქვაბის გამოყენებით ცვლადი ძაბვა მის გასწვრივ.
- განაგრძეთ ძაბვის გაზრდა ნელა, სანამ მაჩვენებელი არ მიაღწევს მასშტაბის ბოლოს.
- მულტიმეტრის გამოყენებით, გაზომეთ მიმდინარე დინება. ეს არის სრულმასშტაბიანი გადახრის მიმდინარეობა. (I = 150uA ჩემს შემთხვევაში)
ჩვენ ვიყენებთ DAC– ს, რომელსაც აქვს გამომავალი ძაბვის დიაპაზონი 0 – დან VCC– მდე (3.3V NodeMCU– ს გამო). ეს ნიშნავს, რომ როდესაც 3.3V გამოიყენება მეტრზე, ის უნდა მიუთითოს მასშტაბის ბოლოს. ეს შეიძლება მოხდეს, როდესაც სრულმასშტაბიანი გადახრის დენი მიედინება წრეში, როდესაც გამოიყენება 3.3V. ომის კანონის გამოყენებით, 3.3/(სრულმასშტაბიანი გადახრის დენი) მნიშვნელობას ანიჭებს წინააღმდეგობას სერიაში ჩასასმელად.
ნაბიჯი 4: SNMP GET მოთხოვნის შექმნა
მარტივი ქსელის მართვის პროტოკოლი (SNMP) არის ინტერნეტ სტანდარტული პროტოკოლი IP ქსელებში მართული მოწყობილობების შესახებ ინფორმაციის შეგროვებისა და ორგანიზებისათვის და ამ ინფორმაციის შესაცვლელად მოწყობილობის ქცევის შესაცვლელად. მოწყობილობები, რომლებიც ჩვეულებრივ მხარს უჭერენ SNMP– ს, მოიცავს საკაბელო მოდემებს, მარშრუტიზატორებს, კონცენტრატორებს, სერვერებს, სამუშაო სადგურებს, პრინტერებს და სხვა. ამ აღნაგობისთვის, ჩვენ ვუკავშირდებით ჩვენს WiFi როუტერს SNMP გამოყენებით და მივიღებთ საჭირო მონაცემებს.
მაგრამ პირველ რიგში, ჩვენ უნდა გავაგზავნოთ მოთხოვნა, რომელიც ცნობილია როგორც "GET მოთხოვნა" როუტერზე, სადაც მითითებულია ჩვენთვის სასურველი მონაცემების დეტალები. GET მოთხოვნის ფორმატი ნაჩვენებია სურათზე. მოთხოვნა შედგება სხვადასხვა ნაწილისგან. მე გამოვყოფდი ბაიტებს, რომელთა შეცვლაც გსურთ.
გთხოვთ გაითვალისწინოთ, რომ ყველაფერი თექვსმეტობითაა.
SNMP შეტყობინება -ჩემს შემთხვევაში, მთელი შეტყობინების სიგრძეა 40 (ნაცრისფერი ფერი), რომელიც თექვსმეტობითად გადაქცევისას არის 0x28.
SNMP Community String - მნიშვნელობა 'PUBLIC' არის დაწერილი თექვსმეტობით, როგორც '70 75 62 6C 69 63 ', რომლის სიგრძეა 6 (ყვითელი).
SNMP PDU ტიპი - ჩემს შემთხვევაში, შეტყობინების სიგრძეა 27 (ლურჯი) ანუ 0x1B.
Varbind სიის ტიპი - ჩემს შემთხვევაში, შეტყობინების სიგრძეა 16 (მწვანე) ანუ 0x10.
ვარბინდის ტიპი - ჩემს შემთხვევაში, შეტყობინების სიგრძეა 14 (ვარდისფერი) ანუ 0x0E.
ობიექტის იდენტიფიკატორი -
როგორც უკვე აღვნიშნეთ, SNMP– ით ჩართული ქსელური მოწყობილობები (მაგ. მარშრუტიზატორები, გადამრთველები და სხვა) ინარჩუნებს მონაცემთა სტატუსის, ხელმისაწვდომობისა და შესრულების შესახებ მონაცემთა მონაცემთა ბაზას, როგორც ობიექტებს, რომლებიც გამოვლენილია OID– ებით. თქვენ უნდა დაადგინოთ თქვენი როუტერის OIDs პაკეტების ატვირთვა და ჩამოტვირთვა. ეს შეიძლება გაკეთდეს ამგვარი უფასო 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). აირჩიეთ ოპერაციის მიღება და დააწკაპუნეთ გადასვლაზე. თქვენ უნდა ნახოთ OID მისი მნიშვნელობა და ტიპი.
ჩემს შემთხვევაში, შეტყობინების სიგრძეა 10 (წითელი) ანუ 0x0A. შეცვალეთ მნიშვნელობა OID– ით. ამ შემთხვევაში, '2B 06 01 02 01 02 02 01 01 10 10'
Ის არის! თქვენი მოთხოვნის შეტყობინება მზად არის. შეინახეთ დანარჩენი ბაიტები ისე, როგორც არის.
ჩართეთ SNMP თქვენს როუტერზე:
- შედით თქვენი WiFi როუტერის გვერდზე ნაგულისხმევი კარიბჭის მეშვეობით. ჩაწერეთ 192.168.1.1 თქვენს ბრაუზერში და დააჭირეთ Enter. სტანდარტულად, მომხმარებლის სახელი და პაროლი უნდა იყოს 'admin'.
- მე ვიყენებ TP-LINK (TD-W8961N) როუტერს. ამ როუტერისთვის, თქვენ უნდა შეხვიდეთ წვდომის მენეჯმენტში> SNMP და შეარჩიოთ "გააქტიურებული".
- GET Community: საჯარო
- ხაფანგის მასპინძელი: 0.0.0.0
ნაბიჯი 5: GET რეაგირების გაგება
თქვენ შეგიძლიათ გამოტოვოთ ეს ნაბიჯი, მაგრამ კარგია იცოდეთ გჭირდებათ რაიმე პრობლემის მოგვარება.
მას შემდეგ რაც ატვირთავთ კოდს და გაუშვებთ მას, შეგიძლიათ შეხედოთ პასუხს სერიული მონიტორის საშუალებით. ის უნდა გამოიყურებოდეს ისე როგორც სურათზეა ნაჩვენები. არსებობს რამდენიმე ბაიტი, რომელიც თქვენ უნდა მოძებნოთ, რომელიც მე გამოვყავი.
0 -დან იწყება, მე -15 ბაიტი ეუბნება PDU– ს ტიპს - 0xA2 ნიშნავს, რომ ეს არის GetResponse.
48 -ე ბაიტი გვეუბნება მონაცემთა ტიპს - 0x41 ნიშნავს, რომ მონაცემთა ტიპი არის Counter.
49 -ე ბაიტი გვეუბნება მონაცემების სიგრძეს - 0x04 ნიშნავს, რომ მონაცემები 4 ბაიტი სიგრძისაა.
ბაიტი 50, 51, 52, 53 შეიცავს მონაცემებს.
ნაბიჯი 6: ციფრული ანალოგური გადამყვანი (DAC)
მიკროკონტროლები არის ციფრული მოწყობილობები, რომლებსაც არ ესმით ანალოგური ძაბვები. მე ვიყენებ ანალოგურ მრიცხველს, რომელსაც შესასვლელად სჭირდება ცვლადი ძაბვა. მაგრამ მიკროკონტროლერს შეუძლია გამოუშვას მხოლოდ მაღალი (3.3V NodeMCU- ს შემთხვევაში) და LOW (0V). ახლა თქვენ შეგიძლიათ თქვათ, რატომ არ გამოიყენოთ მხოლოდ PWM. ის არ იმუშავებს, რადგან მეტრი აჩვენებს მხოლოდ საშუალო მნიშვნელობას.
მე ვიყენებ MCP4725 DAC ცვლადი ძაბვის მისაღებად. ეს არის 12 ბიტიანი DAC ანუ მარტივი სიტყვებით, ის 0-დან 3.3 ვ-მდე გაყოფს 4096 (= 2^12) ნაწილად. გარჩევადობა იქნება 3.3/4096 = 0.8056 მვ. ეს ნიშნავს, რომ 0 შეესაბამება 0V, 1 შეესაბამება 0.8056mV, 2 შეესაბამება 1.6112mV,….., 4095 შეესაბამება 3.3V.
ინტერნეტის სიჩქარე იქნება "ასახული" 0 -დან 7 მბ / წმ -მდე "0 -დან 4095" -მდე და შემდეგ ეს მნიშვნელობა გადაეცემა DAC- ს, რათა გამოუშვას ძაბვა, რომელიც პროპორციული იქნება ინტერნეტის სიჩქარეზე.
ნაბიჯი 7: ასამბლეა
კავშირები ძალიან მარტივია. სქემა დაერთო აქ.
მე შევქმენი და დავბეჭდე მასშტაბი. ზედა არის გადმოტვირთვის სიჩქარისთვის და ქვედა არის ატვირთვის სიჩქარისთვის. ახალი სასწორი ძველზე დავაწებე.
მულტიმეტრიდან ამოვიღე ძველი ნივთები და ყველაფერი ჩავწექი მასში. ეს იყო მჭიდრო მორგება. მომიწია წინა ხვრელის გაბურღვა გადასატანი გადამრთველის შესაერთებლად, რომელიც გამოიყენება ატვირთვისა და გადმოტვირთვის სიჩქარეს შორის ასარჩევად.
ნაბიჯი 8: კოდირების დრო
კოდი დაერთო აქ. ჩამოტვირთეთ და გახსენით Arduino IDE– ში. დააინსტალირეთ MCP4725 ბიბლიოთეკა ადაფრუტიდან.
სანამ ატვირთავ:
- შეიყვანეთ თქვენი WiFi SSID და პაროლი
- შეიყვანეთ მასშტაბზე ნახსენები ატვირთვისა და გადმოტვირთვის მაქსიმალური სიჩქარე.
- განახორციელეთ საჭირო ცვლილებები მოთხოვნის მასივში გადმოტვირთვისთვის, ასევე პაკეტების ასატვირთად.
- სერიულ მონიტორზე პასუხის სანახავად დატოვეთ კომენტარი 165 -ე ხაზზე.
დააჭირეთ ატვირთვას!
ნაბიჯი 9: ისიამოვნეთ
გაააქტიურეთ და ისიამოვნეთ ნემსის ყურებით, როცა ინტერნეტში დაათვალიერებთ!
გმადლობთ, რომ ბოლომდე იყავით. იმედია ყველას მოგეწონებათ ეს პროექტი და დღეს ისწავლეთ რაიმე ახალი. ნება მომეცით ვიცი, თუ თქვენ ერთი თქვენთვის. გამოიწერეთ ჩემი YouTube არხი სხვა მსგავსი პროექტებისთვის.
გირჩევთ:
იაფი კომპიუტერი ინტერნეტის დასათვალიერებლად: 8 ნაბიჯი
იაფი კომპიუტერი ინტერნეტის დასათვალიერებლად: იაფფასიანი კომპიუტერი დავდე ინტერნეტთან წვდომის სახელოსნოში. დაფები Intel Atom პროცესორით საკმაოდ იაფია და ჩვენს მიზანს კარგად მოემსახურება. შევიძინე მინი ITX ფორმატის დაფა intel D525MW რომელსაც აქვს PCI Express მინი ბარათის სლოტი და DDR3 მეხსიერება
როგორ გავაკეთე ხილის კალათა Fusion 360 -ში "ინტერნეტის" გამოყენებით?: 5 ნაბიჯი
როგორ გავაკეთე ხილის კალათა Fusion 360 -ში "ინტერნეტის" გამოყენებით ?: რამდენიმე დღის წინ მივხვდი, რომ არ გამომიყენებია " ნეკნები " Fusion 360 -ის მახასიათებელი. ასე რომ, მე ვიფიქრე მისი გამოყენება ამ პროექტში. "ნეკნების" უმარტივესი გამოყენება; თვისება შეიძლება იყოს ხილის კალათის სახით, არა? ნახეთ როგორ გამოიყენოთ
ინტერნეტის შინაარსის გაფილტვრა DNS– ის გამოყენებით: 10 ნაბიჯი
ინტერნეტის შინაარსის გაფილტვრა DNS– ის გამოყენებით: განახლებულია 2021 წლის 3 თებერვალს, რათა შეიცავდეს დამატებით ინფორმაციას 8 – ე საფეხურზე & 9. საყოველთაოდ ცნობილია, რომ ინტერნეტში არის ბევრი შინაარსი, რომელიც არ არის შესაფერისი ბავშვების მიერ სანახავად. ის რაც არც თუ ისე ფართოდ არის ცნობილი არის ის ფაქტი, რომ თქვენ
Youtube ინტერნეტის გარეშე უფასოდ!: 5 ნაბიჯი
Youtube ინტერნეტის გარეშე უფასოდ!: ყოფილხართ ოდესმე მოგზაურობაში, მაგრამ არ გაქვთ ინტერნეტი YouTube– ზე ვიდეოების სანახავად? ახლა კი, როდესაც ხელშია ციდია, შეგიძლიათ უყუროთ YouTube– ს wi-fi– ს გარეშე! ეს იმუშავებს ყველა iOS 3.x - 5.x მოწყობილობაზე. ეს იქნება ერთი მარტივი ინსტალაცია, რომელსაც დასჭირდება 64
ინტერნეტის სიჩქარე: 4 ნაბიჯი (სურათებით)
ინტერნეტ სიჩქარის საზომი: მიმოხილვა ეს " ინტერნეტ სიჩქარის საზომი " მოგცემთ რეალურ დროში თქვენი ქსელის გამოყენების ზედამხედველობას. ეს ინფორმაცია ხელმისაწვდომია სახლის მარშრუტიზატორების უმეტესობის ვებ ინტერფეისზე. თუმცა, მასზე წვდომა მოითხოვს, რომ შეწყვიტოთ თქვენი ამჟამინდელი ამოცანა