# IotSimulator **Repository Path**: mikeduan_admin/iotsimulator ## Basic Information - **Project Name**: IotSimulator - **Description**: 本项目基于dotnet core 8.0和Prism WPF开发的一个IOT 设备模拟器,通过可视化界面,基于IOT系统里的产品属性和设备ID, 可以动态创建虚拟设备,自动上报自身的属性, 摆脱了IOT开发者开发系统时对真实设备的依赖。 目前实现了一个Jetlinks官方TCP协议的,一个自定义协议网关设备和网关子设备的协议,开发者可以基于此代码开发自己的自定义协议 - **Primary Language**: C# - **License**: MIT - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 5 - **Forks**: 5 - **Created**: 2025-09-27 - **Last Updated**: 2025-09-30 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # 🌐 IoT设备模拟器(IoT Device Simulator) **—— 基于 .NET 8 + WPF + Prism 的可视化协议模拟工具** > 一个轻量、灵活、可扩展的 IoT 设备模拟器,支持 JetLinks 官方协议与自定义协议,助力 IoT 开发者快速测试平台接入、协议兼容性与设备管理逻辑。 🔗 **项目地址**:[https://gitee.com/cloudxiang-iot/iotsimulator](https://gitee.com/cloudxiang-iot/iotsimulator) 🎯 **适用人群**:IoT 平台开发者、协议对接工程师、JetLinks 用户、.NET 技术栈爱好者 --- ## 🚀 项目简介 作为一名在外资企业工作的 C# / Java 程序员,我在业余时间深入研究 IoT 软件架构与通信协议。为了更好地理解设备端与平台的交互逻辑,我开发了这款 **IoT 设备模拟器**,目前已开源,欢迎各位开发者使用、反馈与共建! 本项目基于 **.NET 8 + WPF + Prism MVVM 框架** 构建,采用模块化设计,支持 **TCP 通信**,实现了: - ✅ JetLinks 官方设备接入协议 - ✅ 可扩展的自定义协议模板 - ✅ 可视化动态界面,无需编码即可模拟设备行为 - ✅ 支持动态创建“产品”与“设备实例” - ✅ 产品属性、设备属性可动态添加与配置 - ✅ 多设备并发模拟,支持心跳、上报、响应等完整生命周期 --- ## 🎯 为什么要做这个项目? 在实际工作中,我经常需要对接 IoT 平台进行联调测试,但真实设备调试成本高、环境受限。于是,我萌生了开发一个**高仿真的设备模拟器**的想法,既能帮助自己理解协议细节,也能为团队和社区提供一个实用工具。 这个项目不仅是技术练手,更是我对 IoT 软件工程的一次深度实践。我希望通过开源,与更多志同道合的开发者交流,共同完善它,甚至孵化出更强大的 IoT 开发工具链。 --- ## 🛠 技术栈与架构 - **语言**: C# (.NET 8) - **UI 框架**: WPF + Prism 9 (MVVM 模式) - **通信层**: 原生 TCP Socket,支持异步读写 - **协议实现**: - JetLinks 标准协议(JSON 格式) - 自定义二进制/文本协议(可配置) - **数据管理**: 内存缓存 + JSON 配置持久化 - **扩展性**: 插件式协议处理器设计,易于新增协议 --- ## 🖼 界面预览 ![模拟器跟本人搭建的JetLinks Iot平台通信](image/iot-device.png) ![动态添加产品的属性](image/simulator.png) - 动态添加产品与设备 - 拖拽式属性配置 - 实时日志监控与报文解析 - 多标签页管理不同设备连接状态 --- ## 🌱 使用场景 - 测试 IoT 平台的设备接入能力 - 验证协议解析逻辑是否正确 - 演示设备行为与数据上报流程 - 学习 JetLinks 或自定义协议的通信机制 - 作为自动化测试的设备端模拟组件 --- ## 🤝 欢迎参与 & 合作机会 这个项目是我个人业余时间的心血之作,现在决定**完全开源**,希望它能帮助到更多开发者。 如果你: - 对 IoT、边缘计算、设备协议感兴趣 - 正在使用 JetLinks 或自研 IoT 平台 - 想要一起优化这个工具,增加 MQTT、CoAP、Modbus 等协议支持 - 或者有相关的兼职项目需要技术支持(C# / Java / IoT 后端) 👉 欢迎 **Star ⭐、Fork、提 Issue 或 PR**! 👉 也欢迎私信交流,我们可以一起做点有趣的事,甚至接点小项目,挣点零花钱 💰 --- ## 📄 许可证 MIT License – 自由使用、修改与分发,欢迎用于学习与商业项目。 --- ## 📬 联系方式 - Gitee: [@dht6903](https://gitee.com/dht6903) - 邮箱: dht6903@qq.com > “代码改变世界,分享成就彼此。” > —— 一名热爱 IoT 的外资公司程序员 --- 🌟 **如果你觉得这个项目对你有帮助,请给个 Star!这是对我最大的鼓励!**