4.8 KiB
Windows 接收端环境配置
这份文档只针对接收方,也就是你的 Windows 电脑。
本文假设:
xMonitor仓库就在 Windows 上- 你的电脑在手机热点网络里的固定 IP 是
10.0.0.5 - 发送端会连到
10.0.0.5:9000 - 你希望在 Windows 上运行
main_monitor.py来接收机器人状态并在浏览器里显示
1. 安装 Python
建议使用 Python 3.10 或更新版本。
在 PowerShell 里确认 Python 可用:
py -V
如果没有安装 Python:
- 打开 https://www.python.org/downloads/windows/
- 安装最新版 Python 3
- 安装时勾选
Add Python to PATH
2. 进入项目目录
在 PowerShell 中进入仓库目录:
cd C:\Users\64187\Desktop\Workspace\xMonitor
3. 创建并启用虚拟环境
创建虚拟环境:
py -3 -m venv .venv
启用虚拟环境:
.\.venv\Scripts\Activate.ps1
如果 PowerShell 阻止脚本执行,可先临时放开当前会话:
Set-ExecutionPolicy -Scope Process Bypass
.\.venv\Scripts\Activate.ps1
启用后命令行前面通常会出现 (.venv)。
4. 安装接收端依赖
main_monitor.py 接收端只需要这两个包:
fastapiuvicorn
安装命令:
python -m pip install --upgrade pip
pip install fastapi uvicorn
5. 启动接收端
因为你的发送端现在要往 10.0.0.5:9000 发,所以接收端必须监听 9000 端口。
在 PowerShell 中运行:
uvicorn main_monitor:app --host 0.0.0.0 --port 9000
说明:
--host 0.0.0.0:允许热点网络里的设备访问这台 Windows 电脑--port 9000:和发送端启动参数保持一致
如果你以后改了发送端端口,这里的端口也必须一起改。
6. 放行 Windows 防火墙
第一次启动时,Windows 可能会弹出防火墙提示。
请选择:
- 允许访问
- 至少勾选当前使用的网络类型
如果没有弹窗,可以手动放行 TCP 9000:
New-NetFirewallRule `
-DisplayName "xMonitor 9000" `
-Direction Inbound `
-Protocol TCP `
-LocalPort 9000 `
-Action Allow
查看规则是否创建成功:
Get-NetFirewallRule -DisplayName "xMonitor 9000"
7. 检查本机热点 IP
确认 Windows 当前热点网卡上的 IP 确实是你要给发送端使用的固定地址。
查看 IP:
ipconfig
确认对应热点网络适配器上有:
IPv4 Address . . . . . . . . . . : 10.0.0.5
如果不是这个地址,要么把 Windows 侧固定 IP 配好,要么把发送端里的 --ip 改成实际地址。
8. 打开监控页面
接收端启动成功后,在本机浏览器打开:
http://127.0.0.1:9000
或者直接打开:
http://10.0.0.5:9000
如果发送端已经开始推数据,页面会显示机器人状态。
9. 验证接收端是否正常工作
看端口是否监听
netstat -ano | findstr :9000
能看到 LISTENING 说明服务已经起来了。
看浏览器页面是否能打开
打开:
http://127.0.0.1:9000
若页面能打开,说明 HTTP 服务正常。
看是否收到机器人数据
接收端会把机器人上报的数据写到:
logs\robot_packets.jsonl
可以在项目目录下查看:
Get-Content .\logs\robot_packets.jsonl -Tail 5
如果这里不断有新行,说明 WebSocket 接收正常。
10. 常见问题
1) 浏览器能打开页面,但没有机器人数据
通常检查这几项:
- 发送端是否真的发到了
10.0.0.5:9000 - Windows 防火墙是否放行了
9000 - 电脑和设备是否确实连在同一个手机热点下
- Windows 当前热点 IP 是否还是
10.0.0.5
2) PowerShell 里 Activate.ps1 不能执行
先执行:
Set-ExecutionPolicy -Scope Process Bypass
然后再执行:
.\.venv\Scripts\Activate.ps1
3) uvicorn 命令找不到
通常是虚拟环境没激活,或者依赖没装成功。
重新执行:
.\.venv\Scripts\Activate.ps1
pip install fastapi uvicorn
4) 9000 端口被占用
查看占用:
netstat -ano | findstr :9000
如果必须换端口,比如改成 8000,那就要同时改两边:
- Windows 接收端启动端口
- 发送端
monitor_sender.py --port ...
11. 最小启动流程
以后你在 Windows 上最少只需要这几步:
cd C:\Users\64187\Desktop\Workspace\xMonitor
.\.venv\Scripts\Activate.ps1
uvicorn main_monitor:app --host 0.0.0.0 --port 9000
然后浏览器打开:
http://127.0.0.1:9000
如果需要,我下一步可以再给你补一份“Windows 接收端开机自启”文档,直接做成任务计划程序版本。