สารบัญ:
วีดีโอ: Pi Health Dashboard: 3 ขั้นตอน
2024 ผู้เขียน: John Day | [email protected]. แก้ไขล่าสุด: 2024-01-30 13:04
มีการใช้ Raspberry Pi เพื่อขับเคลื่อนโครงการจำนวนมาก Pi ถูกนำมาใช้ครั้งแรกโดยครูและนักเล่นอดิเรก แต่ตอนนี้การผลิตและธุรกิจต่างๆ ได้รับความสนใจจากพลังอันน่าทึ่งของ Pi แม้จะมีขนาดเล็ก ใช้งานง่าย และราคาไม่แพง แต่ Pi ของคุณมีระบบย่อยที่ซับซ้อนจำนวนมากที่น่าประทับใจ ซึ่งต้องทำงานเพื่อให้โครงการของคุณดำเนินต่อไป ทำให้สามารถตรวจสอบสุขภาพของ Pi ของคุณได้มีความสำคัญในหลาย ๆ แอปพลิเคชัน ตั้งแต่การบำรุงรักษาโครงการระยะยาวอย่างต่อเนื่องไปจนถึงการทำโปรไฟล์ประสิทธิภาพของต้นแบบใหม่
เราจะสร้างแดชบอร์ดบนเบราว์เซอร์ของเราเองเพื่อตรวจสอบสุขภาพและประสิทธิภาพของ Raspberry Pi ที่เชื่อมต่อเว็บ เพื่อให้งานนี้สำเร็จ เราจะเรียกใช้สคริปต์ Python แบบง่ายที่จะรวบรวมข้อมูลระบบจาก Pi และส่งไปยังแพลตฟอร์มระบบคลาวด์ที่เชี่ยวชาญด้านแดชบอร์ด การวิเคราะห์ และการแสดงภาพ
ในบทช่วยสอนทีละขั้นตอนนี้ คุณจะ:
- เรียนรู้วิธีรวบรวมข้อมูลระบบจาก Pi ของคุณผ่านสคริปต์ Python อย่างง่าย
- เรียนรู้วิธีใช้สถานะเริ่มต้นเพื่อสร้างแดชบอร์ดสุขภาพ/ประสิทธิภาพของระบบสำหรับ Pi. ของคุณ
ขั้นตอนที่ 1: สถานะเริ่มต้น
เราต้องการสตรีมข้อมูลการใช้ระบบ Pi ทั้งหมดของเราไปยังบริการคลาวด์และให้บริการนั้นเปลี่ยนข้อมูลของเราให้เป็นแดชบอร์ด ข้อมูลของเราต้องการปลายทาง ดังนั้นจะใช้ Initial State เป็นปลายทางนั้น
ลงทะเบียนบัญชีสถานะเริ่มต้น
ไปที่ https://iot.app.initialstate.com และสร้างบัญชีใหม่ คุณได้รับการทดลองใช้ฟรี 14 วัน และทุกคนที่มีที่อยู่อีเมลสำหรับการศึกษาสามารถลงทะเบียนแผนสำหรับนักเรียนได้ฟรี
ติดตั้ง ISStreamer
ติดตั้งโมดูล Initial State Python ลงใน Raspberry Pi ของคุณ ในพรอมต์คำสั่ง เรียกใช้คำสั่งต่อไปนี้:
$ cd /home/pi/
$ \curl -sSL https://get.initialstate.com/python -o - | sudo bash
ทำให้บางอัตโนมัติ
หลังจากขั้นตอนที่ 2 คุณจะเห็นสิ่งที่คล้ายกับผลลัพธ์ต่อไปนี้ที่หน้าจอ:
pi@raspberrypi ~ $ \curl -sSL https://get.initialstate.com/python -o - | sudo bash
รหัสผ่าน: เริ่มต้น ISStreamer Python ติดตั้งง่าย! อาจใช้เวลาสองสามนาทีในการติดตั้ง หยิบกาแฟ:) แต่อย่าลืมกลับมา ฉันจะมีคำถามในภายหลัง! พบ easy_install: setuptools 1.1.6 พบ pip: pip 1.5.6 จาก /Library/Python/2.7/site-packages/pip-1.5.6- py2.7.egg (python 2.7) รุ่น pip หลัก: 1 pip รุ่นรอง: พบ ISStreamer 5 รายการ กำลังอัปเดต… ข้อกำหนดเป็นปัจจุบันแล้ว: ISStreamer ใน /Library/Python/2.7/site-packages การล้างข้อมูล…คุณต้องการรับสคริปต์ตัวอย่างโดยอัตโนมัติหรือไม่ [y/N] คุณต้องการเก็บตัวอย่างไว้ที่ไหน? [ค่าเริ่มต้น:./is_example.py] โปรดเลือกแอป Initial State ที่คุณใช้อยู่: 1. app.initialstate.com 2. [ใหม่!] iot.app.initialstate.com ป้อนตัวเลือก 1 หรือ 2: ป้อน iot.app.initialstate.com ชื่อผู้ใช้: ป้อน iot.app.initialstate.com รหัสผ่าน:
เมื่อถูกถามว่าคุณต้องการรับสคริปต์ตัวอย่างโดยอัตโนมัติหรือไม่ ให้ใส่ "y" สำหรับใช่ แล้วกด Enter เพื่อบันทึกสคริปต์ของคุณในตำแหน่งเริ่มต้น สำหรับคำถามเกี่ยวกับแอปที่คุณกำลังใช้ ให้เลือก 2 (เว้นแต่คุณจะสมัครก่อนเดือนพฤศจิกายน 2018) แล้วป้อนชื่อผู้ใช้และรหัสผ่านของคุณ
เรียกใช้สคริปต์ตัวอย่าง
เรียกใช้สคริปต์ทดสอบเพื่อให้แน่ใจว่าเราสามารถสร้างสตรีมข้อมูลไปยังบัญชีสถานะเริ่มต้นของคุณได้ เขียนคำสั่งต่อไปนี้:
$ หลาม is_example.py
ตัวอย่างข้อมูล
กลับไปที่บัญชี Initial State ของคุณในเว็บเบราว์เซอร์ ที่เก็บข้อมูลใหม่ที่เรียกว่า "ตัวอย่างสตรีม Python" ควรปรากฏขึ้นทางด้านซ้ายในชั้นวางบันทึกของคุณ (คุณอาจต้องรีเฟรชหน้า) คลิกที่ถังนี้เพื่อดูข้อมูลของคุณ
ขั้นตอนที่ 2: Psutil
เราจะใช้ psutil เพื่อเข้าถึงข้อมูลระบบส่วนใหญ่ที่เราจะใช้เพื่อสร้างแดชบอร์ดของเราได้อย่างง่ายดาย ในการติดตั้งไลบรารี psutil Python ให้ไปที่เทอร์มินัลบน Pi ของคุณและพิมพ์:
$ sudo pip ติดตั้ง psutil
หลังจากการติดตั้งเสร็จสิ้น เราเพียงแค่เรียกใช้สคริปต์ Python เพื่อเริ่มการรวบรวมข้อมูล มาใส่สคริปต์นี้ในไดเร็กทอรีของตัวเองดังนี้:
$ cd /home/pi/
$ mkdir pihealth $ cd pihealth
เมื่ออยู่ในไดเร็กทอรีใหม่ ให้สร้างสคริปต์โดยทำดังนี้:
$ nano pihealth.py
ซึ่งจะเป็นการเปิดโปรแกรมแก้ไขข้อความ คัดลอกและวางโค้ดจากที่เก็บ Github นี้ลงในโปรแกรมแก้ไขข้อความ
ในบรรทัดที่ 8 คุณจะเห็นส่วนการตั้งค่าผู้ใช้:
# --------- การตั้งค่าผู้ใช้ ---------
# การตั้งค่าสถานะเริ่มต้น BUCKET_NAME = ":คอมพิวเตอร์: ประสิทธิภาพ Pi3" BUCKET_KEY = "pi0708" ACCESS_KEY = "ใส่สถานะเริ่มต้นของคุณที่นี่" # ตั้งเวลาระหว่างการตรวจสอบ MINUTES_BETWEEN_READS = 1 METRIC_UNITS = เท็จ # --------- ------------------------
คุณจะต้องวางรหัสการเข้าถึงสถานะเริ่มต้นของคุณในการกำหนดตัวแปร ACCESS_KEY หากต้องการค้นหาสิ่งนี้ ให้ไปที่หน้าแรกของสถานะเริ่มต้น คลิกชื่อผู้ใช้ของคุณที่ด้านบนขวา ไปที่การตั้งค่าของฉัน และค้นหาคีย์การเข้าถึงการสตรีมที่นั่น ถ้าคุณไม่ทำเช่นนี้ ข้อมูลของคุณจะไม่ถูกสตรีมไปยังบัญชี Initial State ของคุณ ทำให้คุณรู้สึกเศร้าและหงุดหงิดมาก
ตัวแปร MINUTES_BETWEEN_READS มีความสำคัญต่อการตั้งค่าตามแอปพลิเคชันของคุณ หากคุณกำลังจะเรียกใช้สคริปต์นี้ในช่วงวัน/สัปดาห์/เดือน คุณจะต้องทำให้ตัวเลขนี้มากขึ้นเช่นทุกๆ 2-5 นาที หากคุณกำลังเรียกใช้สคริปต์นี้เพื่อตรวจสอบประสิทธิภาพของแอปพลิเคชันระยะสั้น คุณอาจต้องการอัปเดตทุกๆ สองสามวินาที
เมื่อคุณอัปเดตข้อความแล้ว ให้บันทึกและออกจากโปรแกรมแก้ไขข้อความ เราพร้อมที่จะเริ่มรวบรวมข้อมูลระบบ ในการรันไฟล์ python ให้พิมพ์คำสั่งต่อไปนี้:
$ python pihealth.py
เคล็ดลับ: หากคุณต้องการเรียกใช้สคริปต์นี้ในเบื้องหลังและต้องแน่ใจว่าสคริปต์จะไม่ออกหากการเชื่อมต่อ SSH ของคุณเสียหรือปิดเทอร์มินัล คุณสามารถใช้คำสั่งต่อไปนี้:
$ nohup python pihealth.py &
ข้อผิดพลาด python.h: หากคุณได้รับข้อผิดพลาดในการอ้างอิง python.h เมื่อใดก็ตามที่คุณพยายามใช้ psutil ในสคริปต์ การติดตั้งไลบรารีการพัฒนา python อาจแก้ไขข้อผิดพลาดได้:
$ sudo apt-get ติดตั้ง gcc python-dev
$ sudo pip ติดตั้ง psutil
ขั้นตอนที่ 3: ปรับแต่งแดชบอร์ดของคุณ
ไปที่บัญชี Initial State ของคุณและคลิกที่ถังข้อมูลใหม่ที่เรียกว่า Pi3 Performance นี่คือแดชบอร์ดของคุณ มาปรับแต่งและจัดระเบียบข้อมูลบนแดชบอร์ดนี้ให้เป็นสิ่งที่มีประโยชน์กันเถอะ
มีไทล์และสตรีมข้อมูลจำนวนมากในแดชบอร์ดนี้ มาทำให้ไทล์เล็กลงและรับข้อมูลทั้งหมดบนหน้าจอเดียว คลิกที่ปุ่มแก้ไขไทล์ที่มุมบนซ้ายและยกเลิกการเลือก "พอดีไทล์เสมอ" สิ่งนี้ทำให้เค้าโครงแดชบอร์ดของเราเข้าสู่โหมดกำหนดเอง ถัดไป ปรับขนาดแต่ละไทล์เป็น 1/4 ขนาดดั้งเดิมโดยคลิกและลากมุมของแต่ละไทล์ขณะอยู่ในโหมดแก้ไข คุณสามารถลากแต่ละไทล์ไปยังตำแหน่งใดก็ได้ที่คุณต้องการบนหน้าจอ
หนึ่งในสิ่งที่ดีมากมายที่คุณสามารถทำได้ด้วยแดชบอร์ดนี้คือการสร้างไทล์และการดูข้อมูลหลายรายการต่อสตรีมข้อมูล ตัวอย่างเช่น คุณสามารถสร้างไทล์เพื่อดูกราฟเส้นสำหรับอุณหภูมิ CPU รวมถึงกราฟเกจและค่าสุดท้าย หากต้องการเพิ่มไทล์ใหม่ ให้คลิกแก้ไขไทล์ จากนั้น +เพิ่มไทล์ กล่องกำหนดค่าไทล์ใหม่จะปรากฏขึ้น เลือกสตรีมข้อมูลที่จะขับเคลื่อนไทล์นี้ในกล่อง SignalKey จากนั้นเลือกประเภทไทล์และสร้างชื่อสำหรับไทล์นี้
ในแดชบอร์ดของฉัน ฉันสตรีม Pi สามตัวในแดชบอร์ดเดียวเพื่อเปรียบเทียบการใช้งาน CPU และอุณหภูมิ
กราฟเกจมีประโยชน์อย่างมากสำหรับสตรีมข้อมูล เช่น การใช้ดิสก์ (%) และการใช้งาน CPU (%) เมื่อคุณเลือกมุมมองกราฟเกจ คุณสามารถตั้งค่าต่ำสุดและสูงสุดสำหรับเกจในการกำหนดค่าไทล์ สิ่งสำคัญคือต้องตั้งค่าต่ำสุด/สูงสุดเป็น 0/100 สำหรับมาตรวัดการใช้งานดิสก์ (%) และการใช้งาน CPU (%) เพื่อให้ไทล์มีความสมเหตุสมผล
คุณสามารถเพิ่มรูปภาพพื้นหลังลงในแดชบอร์ดเพื่อให้ข้อมูลมีบริบทมากขึ้น
นี่คือการแบ่งปันสาธารณะของสองแดชบอร์ดที่ฉันสร้าง:
- https://go.init.st/6g3spq4
- https://go.init.st/ynkuqxv
แนะนำ:
COVID-19 WHO Dashboard: 8 ขั้นตอน (พร้อมรูปภาพ)
COVID-19 WHO Dashboard: คำแนะนำนี้แสดงวิธีใช้ ESP8266 / ESP32 และ LCD เพื่อสร้างแดชบอร์ด WHO สถานการณ์ COVID-19
COVID19 Dashboard บนแผนที่โลก (โดยใช้ Python): 16 ขั้นตอน
COVID19 Dashboard บนแผนที่โลก (โดยใช้ Python): ฉันรู้ว่าพวกเราเกือบทั้งหมดรู้ข้อมูลส่วนใหญ่เกี่ยวกับ COVID19 และคำแนะนำนี้เกี่ยวกับการสร้างแผนที่ฟองเพื่อวางแผนข้อมูลตามเวลาจริง (ของเคส) บนแผนที่โลกเพื่อความสะดวกยิ่งขึ้น ฉันได้เพิ่มโปรแกรมลงในที่เก็บ Github แล้ว:https://github.co
Raspberry Pi Motorcycle Dashboard: 9 ขั้นตอน (พร้อมรูปภาพ)
Raspberry Pi Motorcycle Dashboard: ในฐานะนักเรียนมัลติมีเดีย & เทคโนโลยีการสื่อสารใน Howest Kortrijk ฉันต้องทำโครงการ IoT ของตัวเอง ซึ่งจะรวมโมดูลทั้งหมดที่ตามมาในปีแรกเป็นโครงการใหญ่โครงการเดียว เพราะฉันขี่มอเตอร์ไซค์บ่อยมากในเวลาว่าง
AirVisual Air Quality API Dashboard: 5 ขั้นตอน
AirVisual Air Quality API Dashboard: AirVisual (https://www.airvisual.com) เป็นเว็บไซต์ที่ให้ข้อมูลเกี่ยวกับคุณภาพอากาศทั่วโลก พวกเขามี API ที่เราจะใช้เพื่อรับข้อมูลคุณภาพอากาศเพื่อส่งไปยังแดชบอร์ด เราจะโต้ตอบกับ API นี้เหมือนกับที่เราทำกับ
LTE Arduino GPS Tracker + IoT Dashboard (ตอนที่ 1): 6 ขั้นตอน (พร้อมรูปภาพ)
LTE Arduino GPS Tracker + IoT Dashboard (ตอนที่ 1): บทนำว่าไงพวก! คำแนะนำนี้เป็นการติดตามผลของ Instructable แรกของฉันเกี่ยวกับการใช้ชิลด์ Botletics LTE/NB-IoT สำหรับ Arduino ดังนั้น หากคุณยังไม่ได้อ่าน โปรดอ่านเพื่อรับทราบภาพรวมที่ดีเกี่ยวกับวิธีใช้ชิลด์และ ab ทั้งหมด