关于 matlab-simulate-bluetooth-network
用于 MATLAB 无线网络仿真的 Bluetooth 专项技能,面向模拟 BLE 和经典 Bluetooth 网络的用户。它涵盖连接配置、流量设置及不同拓扑可用的 KPI。
主要功能
- 01模拟 BLE ACL、CIS 网络
- 02模拟 BR/EDR 微微网
- 03配置连接与节点角色
- 04按拓扑选择 KPI 和层级
适用场景
- 01评估 BLE 点对点或星形连接
- 02模拟 LE Audio 单播连接
- 03分析经典 Bluetooth 音频和数据网络
- 04研究 BLE 与 BR/EDR 共存
安装
复制下面的命令,在终端中运行。
$
npx skills add https:/ / github.com/ matlab/ matlab-agentic-toolkit --skill matlab-simulate-bluetooth-network安装后在 Claude Code 中输入/matlab-simulate-bluetooth-network确认已加载。
包含的文件
除 SKILL.md 外,安装时一起下载的参考资料和脚本。
manifest.yamlreferences/ble-cis.mdble-connection.mdble-gap-connection.mdbluetooth-bredr.mdbluetooth-coexistence.md详细介绍
Bluetooth 系统级仿真
所有 Bluetooth 系统级仿真的入口。所有 Bluetooth 仿真都使用 sim = wirelessNetworkSimulator.init,并遵循 matlab-simulate-wireless-network 中定义的工作流(仿真器初始化、流量、移动性、仪表化、addNodes、运行)。
适用场景
- BLE ACL 点对点或星型网络连接
- 使用 CIS/CIG 的 LE Audio 单播(立体声扬声器、助听器)
- BLE GAP 连接建立(广播、扫描、连接时序)
- 使用 ACL 数据或 SCO 语音的经典 BR/EDR 微微网
- 具有自适应跳频的 BLE + BR/EDR 共存
- 任何使用
bluetoothLENode、bluetoothNode的仿真
不适用场景
- 非 Bluetooth 无线仿真(请改用
matlab-simulate-wireless-network) - PHY 层或链路级 Bluetooth 波形生成、接收器分析或 BER 分析
- 通用仿真器设置、流量模型或移动性(请改用
matlab-simulate-wireless-network)
场景 → 参考文档路由
| 场景 | 参考文档 |
|---|---|
| BLE 逼真连接设置(广播、扫描、GAP) | references/ble-gap-connection.md |
| BLE 点对点数据、星型网络、ACL 连接 | references/ble-connection.md |
| LE Audio 单播(立体声扬声器、助听器、CIS/CIG) | references/ble-cis.md |
| 经典 Bluetooth 耳塞、SCO 语音、ACL 数据 | references/bluetooth-bredr.md |
| BLE + BR/EDR 共存、自适应跳频 | references/bluetooth-coexistence.md |
| 捕获与可视化(PCAP、IQ、事件跟踪、流量查看器) | 请参阅 matlab-simulate-wireless-network 技能 |
节点角色
- BLE(ACL、CIS):
bluetoothLENode("central")、bluetoothLENode("peripheral") - BR/EDR:
bluetoothNode("central")、bluetoothNode("peripheral")— 每个 central 最多支持 7 个 peripheral
流量附加规则
addTrafficSource(sourceNode, traffic, ...):
- ACL/CIS/BR/EDR:必须设置
DestinationNode=peer。CIS 还需要CISConfig=cfgCISOut。 - BR/EDR SCO:无需调用流量函数 — 通过连接配置中的
SCOPacketType隐式启用。
kpi() 可用性
| 拓扑 | "throughput" | "latency" | "PLR" / "PDR" | 层 |
|---|---|---|---|---|
| BLE ACL | 仅 LL | 仅 App | LL 和 App 均可 | "LL" 或 "App" |
| BLE CIS | 仅 LL | 仅 App | LL 和 App 均可 | "LL" 或 "App" |
| BR/EDR | 基带 | — | 基带 | "Baseband" |
连接/配置设置
| 拓扑 | 配置对象 | 函数 | 说明 |
|---|---|---|---|
| BLE ACL | bluetoothLEConnectionConfig | configureConnection(cfg, central, peripheral) | 在循环中逐个配置 peripheral;每个连接使用唯一的 AccessAddress |
| BLE CIS | bluetoothLEConnectionConfig + bluetoothLECISConfig | [~, cfgCISOut] = configureConnection(cfg, central, peripheral, CISConfig=cfgCIS) | 将 cfgCISOut 传递给 addTrafficSource(..., CISConfig=cfgCISOut) |
| BR/EDR | bluetoothConnectionConfig | configureConnection(cfg, central, peripherals) | 使用 peripheral 向量调用一次 |
常见错误
- 对 BLE 使用
bluetoothNode(或反之):BR/EDR 使用bluetoothNode,BLE 使用bluetoothLENode - kpi 层设置错误:BLE 吞吐量 →
"LL",BLE 延迟 →"App",BR/EDR → 仅"Baseband" run()后属性被锁定:仿真过程中无法更改节点/连接属性。要在仿真过程中更新信道,请使用updateChannelList。- 对 BLE 使用带 peripheral 向量的
configureConnection:必须在循环中逐个调用(BR/EDR 接受向量) - 每个连接使用唯一的
AccessAddress:同一 central 上的每个 BLE 连接都需要不同的 AccessAddress - DataRate 的单位是 Kbps:
DataRate=100表示 100 Kbps,而不是 100 bps GeneratePacket=true无效:不适用于网络级仿真。要生成连续流量,请使用OnTime=Inf。
评论
支持 Markdown