Wirehome.Core 智能家居自动化系统 Wirehome.Core

智能家居 1/5 已发布
chkr1011 262 Stars Apache-2.0 BOM 完整度: 0/5 教程完整度: 0/5
Wirehome.Core 智能家居自动化系统

项目简介

Wirehome.Core是用C#编写的.NET Core家庭自动化系统,支持Linux、Windows和macOS。


Wirehome.Core 是一个基于 .NET Core 构建的开源家庭自动化系统,完全使用 C# 编写,并针对 .NET Standard 2.0+ 进行优化。它能够运行在 Windows、macOS 以及 Linux 系统上,包括像 Raspberry Pi 2 Model B+ 这样的单板计算机,具备出色的跨平台兼容性。该项目旨在解决智能家居领域中设备碎片化与协议不统一的问题,通过抽象化的适配器机制,让用户能够灵活地集成和控制各种物理硬件。其核心亮点在于,与硬件的交互是通过 Python 编写的适配器来实现的,这些适配器可以从独立的仓库下载并安装到本地实例中,而 Python 代码的执行引擎则采用了 IronPython。这些适配器能够访问丰富的 Wirehome.API 模块,从而实现对 GPIO、I2C、MQTT、HTTP、COAP 等多种通信协议和接口的支持。此外,Wirehome.Core 内置了一个功能完整的 MQTT 代理和一个 HTTP 服务器,既可以用于托管用户自定义内容,也能直接与设备进行交互。自动化逻辑和自定义服务同样采用 Python 编写,例如对 Open Weather Map 的集成就是完全通过 Python 实现的,并且可以从官方的 Wirehome.Repository 下载和更新版本。项目还附带一个名为 Wirehome.App 的 Web 应用,由 Wirehome.Core 托管,能够在智能手机、平板电脑和 PC 等几乎所有现代设备上流畅运行,为用户提供直观的控制界面。总的来说,Wirehome.Core 特别适合那些希望使用 .NET 技术栈,同时又需要灵活利用 Python 生态来驱动各种智能硬件、构建复杂自动化场景的开发者和智能家居爱好者。

标签

项目特点

跨平台运行:基于 .NET Core,可在 Linux、Windows 和 macOS 上部署,兼容树莓派、PC 等设备。
多硬件支持:原生集成 ESP32、ESP8266、Arduino 等微控制器,以及 Raspberry Pi 的 GPIO 和传感器。
模块化架构:采用组件化设计,支持通过插件和脚本(C#、Python)扩展功能。
本地优先:所有自动化逻辑和数据处理在本地完成,不依赖云服务,保障隐私和响应速度。
丰富的通信协议:支持 MQTT、HTTP、WebSocket 等协议,方便与其他智能设备或系统集成。
可视化配置:提供 Web 管理界面,可实时监控设备状态、编辑自动化规则。

技术规格

开发语言 C# (.NET Core)
运行环境 .NET Core 3.1+ / .NET 5+
支持操作系统 Linux (含 Raspbian)、Windows、macOS
支持的硬件平台 Raspberry Pi (GPIO)、ESP32、ESP8266、Arduino
通信协议 MQTT、HTTP、WebSocket、串口
数据库 SQLite (本地存储)
脚本语言 C#、Python
许可证 Apache-2.0
最新版本 持续更新 (GitHub Release)

项目资源

物料清单 (BOM)

物料名称 数量 参考价格 备注
Raspberry Pi 3/4/5 1 推荐运行主控
树莓派电源适配器 (5V/3A) 1 稳定供电
microSD 卡 (16GB+) 1 系统与数据存储
ESP32 开发板 1+ 无线传感器/执行器节点
ESP8266 开发板 1+ 低成本 Wi-Fi 节点
Arduino Uno/Mega 1+ 有线传感器/执行器节点
温湿度传感器 (DHT22/BME280) 1+ 环境监测
运动传感器 (HC-SR501) 1+ 人体感应
继电器模块 1+ 控制灯光/电器
LED 灯带 (WS2812B) 1+ 氛围灯控制
路由器/交换机 1 局域网通信

能力画像

**记忆与知识检索**:3/5 — 项目文档和 Wiki 提供了基础配置指南,但高级用法需查阅源码和社区讨论。
**动手与操作**:4/5 — 需要动手连接传感器、烧录固件、配置树莓派,硬件搭建步骤清晰。
**编程与算法**:4/5 — 核心逻辑用 C# 编写,支持 Python 脚本扩展,需要编写自动化规则和通信代码。
**设计与建模**:2/5 — 项目已提供固定架构,用户主要做配置和脚本编写,较少涉及系统级设计。
**实验与调试**:4/5 — 支持 Web 界面实时监控,可通过日志和 MQTT 调试工具排查问题。
**协作与分享**:3/5 — 开源社区活跃,可通过 GitHub Issues 和 PR 参与贡献,但文档以英文为主。
**学习与研究**:4/5 — 适合学习 .NET Core 物联网开发、MQTT 协议、跨平台部署等技术。
**系统集成**:5/5 — 支持多种硬件、协议和脚本语言,可无缝集成到现有智能家居系统。

所需技能

基础 Linux 命令行操作(SSH、文件管理、服务管理) C# 或 Python 编程基础(编写自动化脚本) 电子电路基础(连接传感器、继电器等外设) MQTT 协议基本概念 树莓派或类似单板计算机的使用经验 Git 版本控制基础

适用场景

搭建本地化、不依赖云服务的智能家居中枢
用树莓派控制家中灯光、窗帘、空调等设备
集成 ESP32/ESP8266 传感器节点,实现温湿度、运动等环境监测
通过 MQTT 与 Home Assistant、OpenHAB 等其他系统联动
学习 .NET Core 在物联网领域的实际应用
开发自定义自动化规则,如根据时间、传感器数据触发设备动作