Skip to content

HuangAdd9/AIOT_Proj3

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

AIoT 射频多模态感知 Agent

基于模拟反向散射通信大语言模型推理的近零功耗语义感知系统。

上海交通大学课程设计项目

系统架构

┌─────────────────┐    反向散射    ┌──────────────┐    SDR接收    ┌──────────────────────┐
│  模拟感知前端     │  ──────────→  │  RF 无线信道   │  ────────→  │  软件接收 & DSP 解调   │
│  (VCO + R/L/C)  │   零功耗传输   │              │             │  (IQ → FM解调 → 音频)  │
└─────────────────┘               └──────────────┘             └──────────┬───────────┘
                                                                          │
                                                                          ▼
                                                               ┌──────────────────────┐
                                  ┌──────────────┐             │  AI 感知层            │
                                  │  Streamlit   │  ←────────  │  Whisper ASR + AST    │
                                  │  交互界面     │             │  + LLM Agent 推理     │
                                  └──────────────┘             └──────────────────────┘

项目结构

LLM_demo/
├── agent/                  # LLM Agent 模块
│   ├── prompts/
│   │   └── system.txt      # System Prompt
│   └── core.py             # Agent 核心逻辑 (Tool Calling + 两轮对话)
├── configs/
│   └── settings.py         # 集中配置 (LLM / DSP 参数 / 路径)
├── data/                   # 测试数据 (.bin RF信号文件)
├── tools/
│   ├── dsp/
│   │   └── rf_demod.py     # DSP 解调 (IQ读取 → FM解调 → 频谱图 → Whisper识别)
│   ├── rag/                # RAG 知识库 (预留)
│   └── registry.py         # 工具注册表 (Tool schema 管理)
├── .env                    # API Key 等敏感配置
├── app.py                  # Streamlit Web 入口
└── requirements.txt        # Python 依赖

快速开始

1. 环境准备

conda create -n llm_iot python=3.10
conda activate llm_iot
pip install -r requirements.txt

2. 配置 API Key

编辑 .env 文件,填入你的 LLM API Key:

LLM_API_KEY=sk-你的密钥
LLM_BASE_URL=https://dashscope.aliyuncs.com/compatible-mode/v1
LLM_MODEL=qwen3.5-plus

3. 启动

streamlit run app.py

浏览器访问 http://localhost:8501,上传 .bin 格式的 RF 信号文件即可开始分析。

工作流程

  1. 上传 — 用户通过 Web 界面上传 SDR 采集的原始 IQ 数据 (.bin)
  2. DSP 解调 — 移频 → 低通滤波 → FM 鉴频 → 降采样为 32kHz 音频,同时生成频谱图
  3. AI 感知 — Whisper 进行语音识别 (ASR),提取环境声音事件标签
  4. LLM 推理 — Agent 调用工具获取多模态数据,生成综合诊断报告
  5. 展示 — 左栏显示频谱图 + 音频播放器 + 指标卡片,右栏显示 AI 分析报告

DSP 参数

参数 说明
SDR 采样率 2 MHz IQ 采样率
发射频率 920 MHz 反向散射激励源
接收频率 921 MHz SDR 接收中心频率
音频采样率 32 kHz 解调后音频输出
目标基带频率 -0.75 MHz 副载波中心

技术栈

  • DSP: NumPy, SciPy (信号处理), Matplotlib (频谱图)
  • ASR: OpenAI Whisper (语音识别)
  • LLM: Qwen (通义千问) via DashScope API, OpenAI-compatible Tool Calling
  • Web: Streamlit

About

Wireless Communication Course Project 3

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages

  • Python 100.0%