# Blinker Servo **Repository Path**: juyss/blinker-servo ## Basic Information - **Project Name**: Blinker Servo - **Description**: 使用blinker控制舵机执行开关灯操作 - **Primary Language**: Unknown - **License**: Apache-2.0 - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2025-08-28 - **Last Updated**: 2025-08-28 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # Blinker Servo 控制 ## 项目简介 本项目基于 [Blinker](https://gitee.com/juyss/blinker-servo) 开发,用于通过 Blinker 平台实现对舵机(Servo)的智能控制。项目支持通过 WiFi 连接,并集成了小米智能助手(小爱同学),实现语音控制功能。 ## 功能特性 - 通过 Blinker 平台远程控制舵机角度 - 支持小爱同学语音控制 - 提供按钮控制接口(开/关/角度调节) ## 硬件需求 - ESP8266 或 ESP32 开发板 - 舵机(Servo) - 连接线及电源 ## 软件依赖 - Arduino IDE - Blinker 库 - Servo 库 ## 配置说明 1. **WiFi 配置** 在 `main.cpp` 中设置 WiFi 名称和密码: ```cpp char ssid[] = "your-ssid"; char pswd[] = "your-password"; ``` 2. **Blinker 认证配置** 在 `main.cpp` 中设置 Blinker 认证密钥: ```cpp char auth[] = "your-blinker-auth-key"; ``` 3. **设备控制组件配置** 在 `main.cpp` 中定义按钮和控制逻辑: ```cpp char btn[] = "servo_btn"; char btn_on[] = "servo_on"; char btn_off[] = "servo_off"; ``` ## 使用说明 1. **初始化舵机** 在 `setup()` 函数中初始化舵机: ```cpp servo.attach(D1); // 根据实际引脚调整 ``` 2. **按钮回调函数** 实现按钮点击事件处理函数,用于控制舵机角度: ```cpp void button_callback(const String &state) { int angle = state.toInt(); servo.write(angle); } ``` 3. **语音控制支持** 实现小爱同学控制逻辑: ```cpp void miotPowerState(const String &state) { if (state == "on") { servo.write(90); // 开启角度 } else { servo.write(0); // 关闭角度 } } ``` ## 示例代码 完整示例代码位于 `src/main.cpp`,包含以下核心逻辑: - 初始化 Blinker 连接 - 注册按钮控件 - 绑定语音控制事件 - 控制舵机角度变化 ## 贡献指南 欢迎贡献代码或提出改进建议。请遵循以下步骤: 1. Fork 本项目 2. 创建新分支 3. 提交代码更改 4. 发起 Pull Request ## 许可证 本项目采用 MIT 许可证。详见 [LICENSE](LICENSE) 文件。