![Bandwidth Monitor: 7 Hakbang (na may Mga Larawan) Bandwidth Monitor: 7 Hakbang (na may Mga Larawan)](https://i.howwhatproduce.com/images/005/image-14388-j.webp)
Talaan ng mga Nilalaman:
2025 May -akda: John Day | [email protected]. Huling binago: 2025-01-23 15:12
![Monitor ng Bandwidth Monitor ng Bandwidth](https://i.howwhatproduce.com/images/005/image-14388-1-j.webp)
![Monitor ng Bandwidth Monitor ng Bandwidth](https://i.howwhatproduce.com/images/005/image-14388-2-j.webp)
![Monitor ng Bandwidth Monitor ng Bandwidth](https://i.howwhatproduce.com/images/005/image-14388-3-j.webp)
Tulad ng madalas kong tanungin ang aking sarili kung anong bandwidth ang kasalukuyang ibinibigay ng aking ISP (Gumagamit ako ng isang LTE modem para sa koneksyon sa Internet), naisip ko ang isang sistema ng pagsubaybay sa bandwidth. Dahil ang system ay dapat na compact at power-save, pumili ako ng isang Raspberry Pi Zero bilang gitnang bahagi. Ang Raspberry ay konektado sa modem sa pamamagitan ng WLAN, samakatuwid ang mga problema sa WLAN ay maaari ding makita.
Mga gamit
- Raspberry Pi Zero WH
- Ipakita ang Waveshare e-ink (2.9inch-e-paper-module)
- DC-DC converter (hal. DEBO DCDC 20W)
- RGB LED (kinuha mula sa isang lumang aparato)
- Push-button
- Lumipat
- Relais module (hal. 2 Way Relay module2 Way Way Relay)
- Male konektor + Babae konektor (parehong umaangkop sa laki ng iyong modem power supply plug)
- 3D naka-print na kaso
Hakbang 1: Mga Tampok
![Mga Tampok Mga Tampok](https://i.howwhatproduce.com/images/005/image-14388-4-j.webp)
![Mga Tampok Mga Tampok](https://i.howwhatproduce.com/images/005/image-14388-5-j.webp)
![Mga Tampok Mga Tampok](https://i.howwhatproduce.com/images/005/image-14388-6-j.webp)
- Ang Raspberry Pi Zero ay konektado sa pamamagitan ng WLAN, sumusubok ng hanggang- at bilis ng pag-download at nagsasagawa ng pagsukat ng ping tuwing kalahating oras. Ang isang bersyon ng linya ng utos ng speedtest.net ay ginagamit bilang batayan para sa mga sukat.
- Ang resulta ng pagsukat ng bandwidth at ping ay ipinapakita sa isang e-ink display. Ipinapakita rin ang oras ng pagsukat.
- Kung ang bilis ng pag-download ay nahuhulog sa ibaba ng isang tinukoy na halaga ng threshold, isang relay ang papatayin ang modem at nakabukas sa isang maikling panahon. Ang modem ay sa gayon ay nai-reset nang walang anumang pagbabago ng aparato (ang supply ng kuryente lamang ang nagambala).
- Magagamit ang isang pindutan sa harap ng aparato upang manu-manong ma-trigger ang pagsukat ng bandwidth.
- Ang mga sinusukat na halaga ay ipinapakita sa isang Ubidots Dashboard (IOT Portal). Sa pangkalahatang ideya maaari mo ring makita ang kasaysayan ng oras ng mga sinusukat na halaga at ang mga dahilan para sa huling pag-reset.
- Sa IOT Portal maaari ka ring makahanap ng isang pindutan upang malayuan i-reset ang modem.
- Gumagamit ang monitor ng bandwidth ng suplay ng kuryente ng modem. Hindi kailangan ng karagdagang suplay. Pinagambala ng relais ang pagpapasa ng power supply sa modem - nananatiling nakabukas ang raspberry.
Hakbang 2: Mga kable
![Kable Kable](https://i.howwhatproduce.com/images/005/image-14388-7-j.webp)
![Kable Kable](https://i.howwhatproduce.com/images/005/image-14388-8-j.webp)
![Kable Kable](https://i.howwhatproduce.com/images/005/image-14388-9-j.webp)
![Kable Kable](https://i.howwhatproduce.com/images/005/image-14388-10-j.webp)
Sa unang larawan maaari mong makita ang panloob na disenyo ng bandwidth monitor:
Ang mga pangunahing bahagi ay:
- Push button
- E-ink Display
- Raspberry Pi Zero
- Relay Module
- RGB LED + Resistors (depende sa RGB LED na ginagamit mo)
- Lumipat
- DC-DC Converter
- Babaeng konektor
Ang pangalawang larawan ay nagpapakita ng isang eskematiko ng mga kable. Ang positibong poste ng boltahe ng supply ay pinakain sa pamamagitan ng paglipat sa DC-DC boltahe converter (na nagko-convert ng 12V supply boltahe ng router sa 5V para sa Raspberry) at sa pamamagitan ng relay (sa pamamagitan ng pin na konektado sa normaly) pabalik sa output konektor. Sa gayon ang modem ay ibinibigay din sa kapangyarihan kapag ang bandwidth monitor ay naka-off.
Ang pagsukat ng bandwidth ay maaaring simulang manu-mano sa pamamagitan ng isang pindutan. Ginagamit ang isang RGB LED upang mailarawan ang iba't ibang mga estado ng pagpapatakbo.
Ang koneksyon sa pagitan ng Raspberry Pi at e-ink display ay hindi ipinakita sa circuit diagram. Ikonekta ang display ayon sa talahanayan at ang pin-out sa itaas.
Hakbang 3: Pag-print ng 3D at Pagbubuo ng Habol
![Pagpi-print at Pagbuo ng 3D ng 3D Pagpi-print at Pagbuo ng 3D ng 3D](https://i.howwhatproduce.com/images/005/image-14388-11-j.webp)
![Pagpi-print at Pagbuo ng 3D ng 3D Pagpi-print at Pagbuo ng 3D ng 3D](https://i.howwhatproduce.com/images/005/image-14388-12-j.webp)
![Pagpi-print at Pagbuo ng 3D ng 3D Pagpi-print at Pagbuo ng 3D ng 3D](https://i.howwhatproduce.com/images/005/image-14388-13-j.webp)
![Pagpi-print at Pagbuo ng 3D ng 3D Pagpi-print at Pagbuo ng 3D ng 3D](https://i.howwhatproduce.com/images/005/image-14388-14-j.webp)
Ang mga sumusunod na bahagi ay kinakailangan para sa kaso (tingnan ang larawan sa itaas):
- ibabang bahagi
- itaas na bahagi
- sa harap
- bumalik
- 4x mount
Ang lahat ng mga bahagi ay maaaring mai-print nang walang mga suporta. Maaari mo ring makita ang mga file at ilan sa aking iba pang mga disenyo sa Thingiverse:
Ang display ay maaaring naka-attach sa front panel na may mga mount at isang doble na tape. Ang switch button at konektor ng femal ay naka-screw sa likod at likod na panel. Gumamit ako ng 3x20mm screws upang ikonekta ang dalawang halves ng pabahay. Ang mga pagpapaubaya sa mga uka para sa harap at likurang mga panel ay medyo masikip. Kung kinakailangan, ang harap at likurang mga panel ay dapat na may sanded sa gilid (sa loob upang maiwasan ang pagwasak sa ibabaw).
Hakbang 4: Pag-set up ng Raspberry PI
![Pag-set up ng Raspberry PI Pag-set up ng Raspberry PI](https://i.howwhatproduce.com/images/005/image-14388-15-j.webp)
![Pag-set up ng Raspberry PI Pag-set up ng Raspberry PI](https://i.howwhatproduce.com/images/005/image-14388-16-j.webp)
Ang gabay sa pag-setup na ito ay batay sa pag-iipon ng maraming mga tagubilin sa pag-install mula sa iba't ibang mga mapagkukunan (mga tagagawa ng display ng e-Ink,…). Para sa akin ang mga tagubilin ay humantong sa nais na resulta. Dahil hindi ako dalubhasa sa Linux, walang nagawang mga pag-optimize o katulad. May kamalayan ako na tiyak na mas mahusay at mas mahusay ang mga solusyon.
Ipagpalagay na mayroon ka nang naka-install na Raspbian sa iyong Pi (maraming mga tutorial sa kung paano i-install ang pangunahing sistema ng operasyon) at mayroon kang isang display (sa pamamagitan ng miniHDMI), konektado ang mouse at keyboard. Ang isang wastong pag-set up ng koneksyon sa WLAN sa router o sa Internet ay ipinapalagay din. Maliban kung nakasaad sa ibang paraan, ang lahat ng mga pamamaraan sa pag-install ay isinasagawa sa terminal.
I-install ang Remote desktop (upang mai-access ang PI mula sa iyong computer):
sudo apt-get update
sudo apt-get
i-install ang xrdp
o maaari ka ring gumana nang walang ulo sa pamamagitan ng ssh (tingnan ang hal.
Palitan ANG password:
www.raspberrypi.org/forums/viewtopic.php?t=193620
I-install ang speedtest:
sudo
apt-get install python-pip
sudo pip i-install ang speedtest-sij
upang masubukan kung matagumpay na na-install ang pagpapatakbo ng Speedtest sa terminal:
speedtest -jam
kung ang anumang bagay ay tama dapat kang makakuha ng isang bagay tulad ng sa unang larawan sa itaas.
Pag-install ng mga kablePI
sudo apt-get install git-core
git clone git: //git.drogon.net/wiringPi
cd mga kablePi
./itayo
(tingnan din sa
Alternativ:
sudo apt-get install ng mga wiringpi
(tingnan ang
I-install ang BCM2835
(tingnan ang
Mag-download ng bcm2835-1.60.tar.gz (o isang mas bagong bersyon kung magagamit)
tar zxvf bcm2835-1.60.tar.gz
cd bcm2835-1.60
./ configure
gumawa
sudo gumawa ng tseke
sudo gumawa ng pag-install
I-install ang Python imaging library
sudo apt-get install python-imaging
Alternativ:
sudo apt-get install python-pil
Paganahin ang pagpapaandar ng I2C.
Patakbuhin ang sumusunod na utos upang i-configure ang iyong board na Raspberry Pi:
sudo raspi-config
Piliin ang Opsyon ng Interface-> I2C -> oo, upang simulan ang pangunahing driver ng I2C. Pagkatapos ay kailangan mo ring baguhin ang config file. Patakbuhin ang sumusunod na utos upang buksan ang file ng pagsasaayos:
sudo nano / etc / modules
Idagdag ang sumusunod na dalawang linya sa file ng pagsasaayos
i2c-bcm2708
i2c-dev
Tingnan din ang
Paganahin ang pagpapaandar ng SPI
Patakbuhin ang sumusunod na utos upang i-configure ang iyong board na Raspberry Pi:
sudo raspi-config
Piliin ang Opsyon ng Interface-> SPI -> oo, upang simulan ang pangunahing driver ng SPI.
Mag-install ng karagdagang mga font:
sudo apt-get install ttf-mscorefonts-installer
Mag-download at mag-install ng Mga Font (Roboto + Droid)
gksudo
pcmanfm
Upang simulan ang filemanager na may mga root privilege at kopyahin ang mga font ng truetype sa folder / usr / share / font / truetype
Alternativ:
Kopyahin ang mga font sa folder ng Mga Pag-download gamit ang WinSCP (ssh dapat paganahin upang magamit ang WinSCP)
sudo cp -r / home / pi / Mga Download / droid / usr / share / font / truetype
sudo cp -r / home / pi / Mga Download / roboto / usr / share / font / truetype
Kailangan mo ng mga pribilehiyo ng ugat upang mai-access ang font folder. Marahil ay may mga mas mahusay na paraan upang gawin ito (tulad ng nabasa na nabanggit na hindi ako dalubhasa sa Linux) ngunit ang parehong paraan ay nagtrabaho para sa akin.
Mga file ng Python:
Gamitin ang filmanger upang lumikha ng isang bagong folder na "bandwidth_monitor"
Kopyahin ang lahat ng mga file sa direktoryo bandwidth_monitor
Gawing maipapatupad ang mga file ng python at script
chmod + x *.py
chmod + x speedtest-cron.sh
I-configure ang crontab
crontab -e
Ginagamit ang Crontab upang iiskedyul ang pagpapatupad ng programa hal. speedtest tuwing 30 min. Idagdag ang mga sumusunod na linya sa iyong crontab (tingnan din ang pangalawang pigura):
@reboot / usr / bin / python /home/pi/bandwidth_monitor/post_restart_message.py &
@reboot sleep 30 && / usr / bin / python /home/pi/bandwidth_monitor/poll_test_now_button.py * / 30 * * * /home/pi/bandwidth_monitor/speedtest-cron.sh * / 3 * * * / usr / bin / python /home/pi/bandwidth_monitor/poll_killswitch.py 13 03 * * * / usr / bin / python /home/pi/bandwidth_monitor/refresh_display.py
Paglalarawan ng mga naka-iskedyul na gawain:
- sa pag-reboot ang mensahe ng pag-restart ay nakasulat sa dashboard ng IOT
- sa pag-reboot nagsimula ang poll test_now_button
- tuwing 30 minuto ang isang pagsukat ng bandwidth ay ginaganap
- bawat 3 minuto ang katayuan ng pindutang remote reset (sa IOT dashboard) ay naka-check
- isang beses sa isang araw ay nagsimula ang isang cycle ng pag-refresh ng display.
Tingnan ang seksyon ng software para sa isang maikling paglalarawan ng mga programa.
Hakbang 5: Software
![Software Software](https://i.howwhatproduce.com/images/005/image-14388-17-j.webp)
Ang software ay nahahati sa maraming mga file / programa:
Ang bandwidth_monitor_0_4.py ay ang pangunahing programa na tinawag ng Crontab tuwing kalahating oras. Gumagawa ito ng isang pagsubok sa bandwidth (sa pamamagitan ng bersyon ng linya ng utos ng speedtest.net). Sa panahon ng pagsubok, ang RGB LED ay asul. Kung ang bandwidth ay nasa itaas ng napiling threshold, ang halaga ay ipinapakita sa e-ink display (kasama ang isang timestamp) at na-export sa dashboard ng Ubidots. Kung ang bandwidth ay nasa ibaba ng threshold ang LED ay nagiging pula at ang pagsukat ay paulit-ulit pagkatapos ng isang maikling pagkaantala. Pagkatapos ng 3 negatibong mga pagtatangka ang relay ay aktibo at sa gayon ang power supply ng modem ay nagambala. Ang pag-reset ng code (halaga = 2) ay nakasulat sa seksyon ng pag-log.
Binabasa ng poll_killswitch.py ang katayuan ng isang variable ng boolean sa dashboard. Kung ang killswitch_state ay totoo ang relais ay naaktibo isang ang suplay ng kuryente ng modem ay nagambala. Ang RGB LED ay nagiging berde sa panahon ng botohan ng killswitch. Matapos ang pag-reset ang killswitch_state ay itinakda na mali at isang entry sa seksyon ng pag-log ng dashboard ay nabuo (halaga = 1).
Ang poll_test_now_button.py ay naghihintay para sa pushbutton sa harap na panel ng kaso upang mapindot. Sa pamamagitan ng pag-aktibo ng pindutan, ang isang pagsukat ng bandwidth ay manu-manong na-trigger. Kapag nagsimula ang programa (sa pag-reboot ng Raspberry Pi) ang RGB LED ay kumikislap ng pula.
Isusulat ng post_restart_message.py ang reset code (halaga = 3) sa seksyon ng pag-log ng dashboard. Ipinapahiwatig nito na ang bandwidth monitor ay na-restart. Sa panahon ng programa simulan ang RGB LED flashes blue.
Ang test_LED.py at test_relay.py ay mga simpleng script na maaaring magamit upang subukan ang pagpapaandar ng hardware ng RGB LED at ang relay.
Ang epdconfig.py at epd2in9.py ay mga driver ng aparato para sa e-ink display na ibinigay ng Waveshare.
Upang payagan ang mga programa na ma-access ang dashboard ng Ubidots, kailangan mong idagdag ang iyong mga indibidwal na token at aparato o variable na pangalan (kung gumagamit ka ng iba't ibang mga notasyon). Maghanap ng seksyon tulad ng ipinakita sa imahe sa itaas (palitan ang XXXXXXXX ng iyong token).
Ang mga kumpletong tutorial sa kung paano bumuo ng dashboard at kung paano isama ang dashboard sa isang programa ng Python ay maaaring matagpuan nang direkta sa pahina ng Ubidots (https://help.ubidots.com/en/) o sa pamamagitan ng Google.
Hakbang 6: IOT Dashboard
![IOT Dashboard IOT Dashboard](https://i.howwhatproduce.com/images/005/image-14388-18-j.webp)
Ang dashboard na naka-host ng Ubidots (tingnan ang https://ubidots.com) ay naglalaman ng maraming mga lugar na kung saan ay mailarawan sa ibaba.
- Pagkakasunud-sunod ng oras ng hanggang- at bilis ng pag-download. Tuwing kalahating oras ang isang bagong halaga ay naipasok sa diagram.
- Kurso ng oras ng sinusukat na oras ng ping. Tuwing kalahating oras ang isang bagong halaga ay naipasok sa diagram.
- Pagkakasunud-sunod ng oras ng average na bilis ng pag-download. Ang average na halaga na higit sa 24 na oras ay kinakalkula at nakasulat sa diagram.
- Ang representasyon ng Spreadsheet ng kasalukuyang mga halaga ng pagsukat kasama ang time stamp.
- Remote control button para sa pag-reset ng modem sa pamamagitan ng Internet. Ang pagtatanong ay nangyayari tuwing 3 minuto, ibig sabihin, maaaring tumagal ng ilang oras hanggang sa maisagawa ang pagkilos.
- Ang pag-log sa huling pag-reset kasama ang dahilan ng pag-reset (remote na pag-trigger, pag-off o pagkawala ng boltahe, pagbagsak sa ibaba ng minimum na bandwidth)
Ang mga kumpletong tutorial sa kung paano bumuo ng dashboard at kung paano isama ang dashboard sa isang programa ng Python ay maaaring matagpuan nang direkta sa pahina ng Ubidots (https://help.ubidots.com/en/) o sa pamamagitan ng Google.
Inirerekumendang:
Na-hack ang Privacy Monitor Mula sa Isang Lumang Monitor ng LCD: 7 Mga Hakbang (na may Mga Larawan)
![Na-hack ang Privacy Monitor Mula sa Isang Lumang Monitor ng LCD: 7 Mga Hakbang (na may Mga Larawan) Na-hack ang Privacy Monitor Mula sa Isang Lumang Monitor ng LCD: 7 Mga Hakbang (na may Mga Larawan)](https://i.howwhatproduce.com/images/005/image-13216-11-j.webp)
Na-hack ang Privacy Monitor Mula sa isang Lumang LCD Monitor: Sa wakas maaari kang gumawa ng isang bagay sa lumang LCD monitor na mayroon ka sa garahe. Maaari mo itong gawing isang monitor ng privacy! Mukhang puti ang lahat sa lahat maliban sa iyo, dahil nakasuot ka ng " mahika " baso! Ang kailangan mo lang magkaroon ay isang pa
Paano Mag-disassemble ng isang Computer Na May Madaling Hakbang at Mga Larawan: 13 Hakbang (na may Mga Larawan)
![Paano Mag-disassemble ng isang Computer Na May Madaling Hakbang at Mga Larawan: 13 Hakbang (na may Mga Larawan) Paano Mag-disassemble ng isang Computer Na May Madaling Hakbang at Mga Larawan: 13 Hakbang (na may Mga Larawan)](https://i.howwhatproduce.com/images/006/image-15346-7-j.webp)
Paano Mag-disassemble ng isang Computer Na May Madaling Mga Hakbang at Larawan: Ito ay isang tagubilin tungkol sa kung paano i-disassemble ang isang PC. Karamihan sa mga pangunahing sangkap ay modular at madaling matanggal. Gayunpaman mahalaga na maging maayos ka tungkol dito. Makakatulong ito upang maiwasan ka sa pagkawala ng mga bahagi, at sa paggawa din ng muling pagsasama
Ang Laser Pointer na naka-mount sa spectacle para sa Mga Taong May Mga Kapansanan sa Locomotor: 9 Mga Hakbang (na may Mga Larawan)
![Ang Laser Pointer na naka-mount sa spectacle para sa Mga Taong May Mga Kapansanan sa Locomotor: 9 Mga Hakbang (na may Mga Larawan) Ang Laser Pointer na naka-mount sa spectacle para sa Mga Taong May Mga Kapansanan sa Locomotor: 9 Mga Hakbang (na may Mga Larawan)](https://i.howwhatproduce.com/images/001/image-622-47-j.webp)
Ang Laser Pointer na naka-mount sa spectacle para sa Mga Taong May Kapansanan sa Locomotor: Ang mga taong may malubhang mga kapansanan sa lokomotor tulad ng mga sanhi ng cerebral palsy ay madalas na may mga kumplikadong pangangailangan sa komunikasyon. Maaaring kailanganin silang gumamit ng mga board na may alpabeto o karaniwang ginagamit na mga salitang nakalimbag sa kanila upang makatulong sa komunikasyon. Gayunpaman, marami
Pag-hack sa TV Tuner upang Basahin ang Mga Larawan sa Daigdig Mula sa Mga Satellite: 7 Mga Hakbang (na may Mga Larawan)
![Pag-hack sa TV Tuner upang Basahin ang Mga Larawan sa Daigdig Mula sa Mga Satellite: 7 Mga Hakbang (na may Mga Larawan) Pag-hack sa TV Tuner upang Basahin ang Mga Larawan sa Daigdig Mula sa Mga Satellite: 7 Mga Hakbang (na may Mga Larawan)](https://i.howwhatproduce.com/images/002/image-5260-55-j.webp)
Pag-hack sa TV Tuner upang Basahin ang Mga Larawan sa Daigdig Mula sa Mga Satellite: Mayroong maraming mga satellite sa itaas ng aming mga ulo. Alam mo ba, na ang paggamit lamang ng Iyong computer, TV Tuner at simpleng DIY antena Maaari mong matanggap ang mga pagpapadala mula sa kanila? Halimbawa ng mga real time na larawan ng mundo. Ipapakita ko sa iyo kung paano. Kakailanganin mo ang: - 2 w
Pasadyang Arduino upang Panatilihing MAAARI ang Mga Pindutan sa Mga Manibela na May Bagong Car Stereo: 9 Mga Hakbang (na may Mga Larawan)
![Pasadyang Arduino upang Panatilihing MAAARI ang Mga Pindutan sa Mga Manibela na May Bagong Car Stereo: 9 Mga Hakbang (na may Mga Larawan) Pasadyang Arduino upang Panatilihing MAAARI ang Mga Pindutan sa Mga Manibela na May Bagong Car Stereo: 9 Mga Hakbang (na may Mga Larawan)](https://i.howwhatproduce.com/images/003/image-7209-86-j.webp)
Pasadyang Arduino upang Panatilihin ang CAN Steering Wheel Buttons Sa Bagong Car Stereo: Napagpasyahan kong palitan ang orihinal na stereo ng kotse sa aking Volvo V70 -02 ng isang bagong stereo upang masisiyahan ako sa mga bagay tulad ng mp3, bluetooth at handsfree. Ang aking kotse ay may ilang mga kontrol sa manibela para sa stereo na nais kong magamit pa rin.