Daftar Isi:
- Langkah 1: Rencana
- Langkah 2: Hal-hal yang Anda Butuhkan
- Langkah 3: Menghitung Arus Defleksi Skala Penuh
- Langkah 4: Membuat Permintaan GET SNMP
- Langkah 5: Memahami GET Response
- Langkah 6: Konverter Digital ke Analog (DAC)
- Langkah 7: Majelis
- Langkah 8: Saatnya Coding
- Langkah 9: Nikmati
Video: Speedometer Internet: 9 Langkah (dengan Gambar)
2024 Pengarang: John Day | [email protected]. Terakhir diubah: 2024-01-30 09:54
Dengan penguncian total yang terjadi di India, semuanya termasuk layanan surat telah ditutup. Tidak ada proyek PCB baru, tidak ada komponen baru, tidak ada! Jadi untuk mengatasi kebosanan dan menyibukkan diri, saya memutuskan untuk membuat sesuatu dari bagian-bagian yang sudah saya miliki di rumah. Saya mulai mencari dari tumpukan sampah elektronik dan menemukan multimeter analog tua yang rusak. Saya menyelamatkan 'pergerakan meteran' darinya dan memutuskan untuk menampilkan semacam informasi tetapi tidak tahu persis apa. Pertama, saya berpikir untuk menampilkan statistik COVID-19 tetapi sudah ada banyak proyek yang lebih baik di internet. Juga, data diperbarui setelah beberapa jam dan penunjuk meter yang diam akan membosankan. Saya ingin data yang berubah dengan cepat, berubah setiap detik. Saya meminta saran di Instagram dan salah satu pengikut saya menjawab dengan Internet Speedometer. Kedengarannya menarik dan memutuskan untuk membuatnya!
Dalam Instruksi ini, saya akan menunjukkan kepada Anda bagaimana saya mengambil data dari router WiFi saya menggunakan SNMP dan menampilkan kecepatan unggah dan unduh pada meteran.
Mari kita mulai
Langkah 1: Rencana
Seperti biasa sebelum memulai proyek, saya melakukan sedikit riset di internet. Saya menemukan beberapa proyek yang terkait dengan topik ini. Mereka terdiri dari dua jenis. Salah satunya yang menunjukkan kecepatan internet dengan mengukur 'kekuatan' sinyal WiFi. Saya bukan orang yang ahli jaringan tetapi ini kedengarannya tidak benar. Yang lain mengukur latensi dan mengkategorikan kecepatan sebagai lambat, sedang atau cepat. Latency adalah waktu tunda antara mengirim permintaan dan mendapatkan respons sehingga tidak bisa menjadi representasi sebenarnya dari kecepatan internet. Kami dapat menyebutnya sebagai kecepatan respons jaringan! Lalu ada proyek resmi yang mengukur waktu yang diperlukan untuk mengunduh beberapa data dan menghitung kecepatan internet berdasarkan itu.
Tapi di proyek ini (oleh Alistair) saya belajar tentang Simple Network Management Protocol atau SNMP. Menggunakan SNMP, kita dapat berkomunikasi dengan router WiFi dan mendapatkan data yang diperlukan langsung darinya. Mudah, kan? Sebenarnya tidak! Karena model yang berbeda dari penggunaan router WiFi memiliki pengaturan yang berbeda dan membutuhkan banyak trial and error sebelum Anda akhirnya mendapatkan output. Jangan takut. Saya akan menjelaskan secara singkat apa pun yang saya pelajari tentang SNMP dan kesulitan yang saya hadapi di langkah-langkah mendatang.
Jadi rencananya akan menggunakan NodeMCU untuk terhubung ke Router WiFi. Ini adalah langkah-langkah untuk mendapatkan hasil akhir:
- Kirim permintaan ke router 'meminta' data yang diperlukan
- Dapatkan respons dari router
- Analisis respons dan uraikan data yang diperlukan darinya
- Ubah data 'mentah' menjadi informasi yang dapat dipahami
- Hasilkan tegangan sebanding dengan kecepatan internet untuk meteran
- Mengulang
Saya akan menggunakan DAC atau Digital to Analog Converter untuk mengontrol meteran.
Langkah 2: Hal-hal yang Anda Butuhkan
1x NodeMCU
1x Gerakan Meter Analog
1x MPU4725 DAC
1x Saklar SPDT
Potensiometer 1x 10k
1x Resistor
Langkah 3: Menghitung Arus Defleksi Skala Penuh
Catatan: Langsung ke Langkah 7 untuk build yang sebenarnya!
Lewati langkah ini jika Anda sudah mengetahui arus defleksi skala penuh untuk meteran Anda. Meteran saya tidak menyebutkannya jadi saya harus menghitung. Tapi pertama-tama, mari kita lihat dengan cepat bagaimana gerakan seperti itu bekerja. Ini terdiri dari sebuah kumparan tergantung dalam medan magnet. Ketika arus mengalir melalui kumparan, menurut hukum Faraday, ia mengalami gaya. Kumparan dibiarkan berputar bebas dalam medan magnet dan begitu juga penunjuk yang menempel pada kumparan. Besarnya arus yang membuat penunjuk bergerak pada 'ujung skala' disebut arus defleksi skala penuh. Ini juga merupakan arus maksimum yang harus dibiarkan mengalir melalui koil.
Masih banyak lagi yang terjadi tapi ini sudah cukup untuk apa yang kita lakukan. Kami sekarang memiliki gerakan. Ini dapat digunakan sebagai voltmeter dengan menambahkan resistansi tinggi secara seri atau sebagai Ammeter dengan menambahkan resistansi kecil secara paralel. Kami akan menggunakannya sebagai voltmeter untuk menampilkan tegangan sebanding dengan kecepatan internet. Jadi, kita perlu menghitung hambatan yang akan ditambahkan secara seri. Untuk itu, pertama-tama kita perlu menghitung arus defleksi skala penuh.
- Pilih nilai resistansi tinggi (seperti >100k)
- Hubungkan secara seri dengan gerakan dan berikan tegangan variabel di atasnya menggunakan panci.
- Terus naikkan voltase secara perlahan hingga penunjuk mencapai ujung skala.
- Dengan menggunakan multimeter, ukur arus yang mengalir. Ini adalah arus defleksi skala penuh. (I = 150uA dalam kasus saya)
Kami menggunakan DAC yang memiliki rentang tegangan keluaran dari 0 hingga VCC (3.3V karena NodeMCU). Ini berarti bahwa ketika 3.3V diterapkan ke meteran, itu harus menunjuk ke ujung skala. Ini dapat terjadi ketika arus defleksi skala penuh mengalir melalui rangkaian ketika 3.3V diterapkan. Menggunakan Hukum Ohm, 3,3/(arus defleksi skala penuh) memberikan nilai resistansi untuk dimasukkan secara seri.
Langkah 4: Membuat Permintaan GET SNMP
Simple Network Management Protocol (SNMP) adalah protokol Standar Internet untuk mengumpulkan dan mengatur informasi tentang perangkat yang dikelola di jaringan IP dan untuk memodifikasi informasi tersebut untuk mengubah perilaku perangkat. Perangkat yang biasanya mendukung SNMP termasuk modem kabel, router, switch, server, workstation, printer, dan banyak lagi. Untuk build ini, kami akan berkomunikasi dengan Router WiFi kami menggunakan SNMP dan mendapatkan data yang diperlukan.
Tapi pertama-tama, kita perlu mengirim permintaan yang dikenal sebagai 'GET Request' ke router dengan menyebutkan detail data yang kita inginkan. Format Permintaan GET ditunjukkan pada gambar. Permintaan terdiri dari berbagai bagian. Saya telah menyoroti byte yang mungkin ingin Anda ubah.
Harap dicatat bahwa semuanya dalam Heksadesimal.
Pesan SNMP -Dalam kasus saya, panjang seluruh pesan adalah 40 (warna abu-abu) yang ketika dikonversi ke heksadesimal adalah 0x28.
SNMP Community String - Nilai 'PUBLIC' ditulis dalam heksadesimal sebagai '70 75 62 6C 69 63' yang panjangnya 6 (kuning).
SNMP PDU Type - Dalam kasus saya, panjang pesan adalah 27 (biru) yaitu 0x1B.
Jenis Daftar Varbind - Dalam kasus saya, panjang pesan adalah 16 (hijau) yaitu 0x10.
Jenis Varbind - Dalam kasus saya, panjang pesan adalah 14 (merah muda) yaitu 0x0E.
Pengenal Objek -
Seperti disebutkan sebelumnya, perangkat jaringan berkemampuan SNMP (misalnya router, switch, dll.) memelihara database status sistem, ketersediaan, dan informasi kinerja sebagai objek, yang diidentifikasi oleh OID. Anda perlu mengidentifikasi OID router Anda untuk paket Upload dan Download. Itu dapat dilakukan dengan menggunakan Browser MIB gratis seperti ini.
Masukkan Alamat sebagai 192.168.1.1 dan OID sebagai.1.3.6.1.2.1.2.2.1.10.x (ifInOctets) atau.1.3.6.1.2.1.2.2.1.16.x. (ifOutOctets). Pilih Get operation dan klik Go. Anda akan melihat OID beserta nilai dan jenisnya.
Dalam kasus saya, panjang pesan adalah 10 (merah) yaitu 0x0A. Ganti nilainya dengan OID. Dalam hal ini, '2B 06 01 02 01 02 02 01 10 10'
Itu dia! Pesan permintaan Anda sudah siap. Pertahankan sisa byte apa adanya.
Mengaktifkan SNMP di router Anda:
- Masuk ke halaman router WiFi Anda melalui gateway default. Ketik 192.168.1.1 di browser Anda dan tekan enter. Secara default, nama pengguna dan kata sandi harus 'admin'.
- Saya menggunakan router TP-LINK (TD-W8961N). Untuk router ini, Anda harus pergi ke Access Management > SNMP dan pilih 'Activated'.
- DAPATKAN Komunitas: publik
- Tuan rumah perangkap: 0.0.0.0
Langkah 5: Memahami GET Response
Anda dapat melewati langkah ini, tetapi ada baiknya mengetahui apakah Anda perlu melakukan pemecahan masalah.
Setelah Anda mengunggah kode dan menjalankannya, Anda dapat melihat respons melalui monitor Serial. Seharusnya terlihat seperti yang ditunjukkan pada gambar. Ada beberapa byte yang perlu Anda cari yang telah saya soroti.
Mulai dari 0, Byte ke-15 memberi tahu Jenis PDU - 0xA2 berarti itu adalah GetResponse.
Byte ke-48 memberi tahu tipe data - 0x41 berarti tipe datanya adalah Counter.
Byte ke-49 menunjukkan panjang data - 0x04 berarti panjang data adalah 4 byte.
Byte 50, 51, 52, 53 berisi data.
Langkah 6: Konverter Digital ke Analog (DAC)
Mikrokontroler adalah perangkat digital yang tidak memahami tegangan Analog secara langsung. Saya menggunakan meteran analog yang membutuhkan tegangan variabel sebagai input. Tetapi mikrokontroler hanya dapat mengeluarkan TINGGI (3.3V dalam kasus NodeMCU) dan RENDAH (0V). Sekarang Anda mungkin mengatakan mengapa tidak menggunakan PWM saja. Ini tidak akan berfungsi karena meteran hanya akan menampilkan nilai rata-rata.
Saya menggunakan MCP4725 DAC untuk mendapatkan tegangan variabel. Ini adalah DAC 12-bit yaitu dalam istilah sederhana, itu akan membagi 0 hingga 3.3V menjadi 4096 (= 2 ^ 12) bagian. Resolusinya akan menjadi 3,3/4096 = 0,8056mV. Ini berarti bahwa 0 sesuai dengan 0V, 1 sesuai dengan 0.8056mV, 2 sesuai dengan 1.6112mV, ….., 4095 sesuai dengan 3.3V.
Kecepatan internet akan 'dipetakan' dari '0 hingga 7 mbps' hingga '0 hingga 4095' dan kemudian nilai ini akan diberikan ke DAC untuk mengeluarkan tegangan yang akan sebanding dengan kecepatan internet.
Langkah 7: Majelis
Koneksi sangat sederhana. Skema telah dilampirkan di sini.
Saya merancang dan mencetak timbangan. Yang atas untuk kecepatan unduh dan yang bawah untuk kecepatan unggah. Saya merekatkan timbangan baru di atas timbangan lama.
Saya menghapus semua barang lama dari multimeter dan saya menjejalkan semua yang ada di dalamnya. Itu sangat ketat. Saya harus mengebor lubang di bagian depan untuk memasang sakelar sakelar yang digunakan untuk memilih antara kecepatan unggah dan unduh.
Langkah 8: Saatnya Coding
Kode telah dilampirkan di sini. Unduh dan buka di Arduino IDE. Instal pustaka MCP4725 dari Adafruit.
Sebelum Anda mengunggah:
- Masukkan SSID dan Kata Sandi WiFi Anda
- Masukkan kecepatan unggah dan unduh maksimum yang disebutkan pada skala.
- Buat perubahan yang diperlukan dalam larik permintaan untuk mengunduh serta mengunggah paket.
- Batalkan komentar pada baris 165 untuk melihat respons pada monitor serial.
Tekan unggah!
Langkah 9: Nikmati
Nyalakan dan nikmati menonton jarum menari-nari saat Anda menjelajahi internet!
Terima kasih telah bertahan sampai akhir. Semoga Anda semua menyukai proyek ini dan belajar sesuatu yang baru hari ini. Beri tahu saya jika Anda membuatnya sendiri. Berlangganan ke saluran YouTube saya untuk lebih banyak proyek serupa.
Direkomendasikan:
Tampilan Speedometer Sepeda: 10 Langkah (dengan Gambar)
Tampilan Speedometer Sepeda: Apa Itu? Seperti namanya, dalam proyek ini Anda akan belajar cara membuat tampilan untuk sepeda Anda yang terdiri dari speedometer dan odometer. Menunjukkan kecepatan waktu nyata dan jarak yang ditempuh. Total biaya proyek ini sekitar
GPS Speedometer: 4 Langkah (dengan Gambar)
GPS Speedometer: Mobil perusahaan saya yang biasa saya kendarai cenderung "kecil" masalah dari waktu ke waktu, speedometer turun ke 0 Km/jam saat mengemudi (setelah beberapa waktu dilanjutkan lagi). Biasanya ini bukan masalah besar karena jika Anda tahu cara mengendarai mobil
Bekerja Speedometer Mobil RC: 4 Langkah (dengan Gambar)
Speedometer Mobil RC yang Bekerja: Ini adalah proyek singkat yang saya buat sebagai bagian dari RC yang lebih besar dari Land Rover Ringan. Saya memutuskan bahwa saya ingin memiliki speedometer yang berfungsi di dasbor, tetapi saya tahu bahwa servo tidak akan memotongnya. Hanya ada satu pilihan yang masuk akal: d
Speedometer Siklus DIY: 6 Langkah (dengan Gambar)
Speedometer Siklus DIY: Proyek ini muncul di benak saya ketika melakukan proyek MEM (Mechanical Engineering Measurement) saya, subjek di B.tech saya. Idenya adalah untuk mengukur kecepatan sudut roda sepeda saya. Dengan demikian mengetahui diameter dan legenda matematika sepanjang masa
Tachometer Terbuat Dari Speedometer Sepeda (cyclocomputer): 3 Langkah (dengan Gambar)
Tachometer Terbuat Dari Speedometer Sepeda (cyclocomputer): Terkadang Anda hanya perlu mengetahui seberapa cepat roda atau poros atau motor berputar. Alat pengukur kecepatan putar adalah tachometer. Tapi harganya mahal dan tidak mudah ditemukan. Pembuatannya yang murah dan mudah menggunakan speedometer sepeda (