帮我写一个实时监测树莓派温度、CPU、内存、硬盘使用情况并利用tcp传输给上位机的代码
时间: 2023-06-05 20:04:21 浏览: 154
好的,我可以帮您写一个实时监测树莓派硬件信息并传输给上位机的代码。以下是代码示例:
```python
import psutil
import socket
import time
# 设定TCP IP和端口号
TCP_IP = '上位机IP'
TCP_PORT = 5005
# 创建TCP socket连接
s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
s.connect((TCP_IP, TCP_PORT))
while True:
# 获取CPU、内存、硬盘使用情况
cpu_percent = psutil.cpu_percent()
mem_percent = psutil.virtual_memory().percent
disk_percent = psutil.disk_usage('/').percent
# 获取树莓派温度信息
with open('/sys/class/thermal/thermal_zone0/temp', 'r') as f:
temp = float(f.read()) / 1000
# 将获取到的信息打包成字符串
message = f'Temperature: {temp:.1f}℃\nCPU Usage: {cpu_percent}%\nMemory Usage: {mem_percent}%\nDisk Usage: {disk_percent}%'
# 发送信息给上位机
s.send(message.encode())
# 等待1秒钟
time.sleep(1)
```
请将代码中的上位机IP替换为您要传输到的IP地址,保存后运行即可。如果您需要监测更多硬件信息,可通过psutil库获取更多信息并加入到字符串中。
阅读全文