edyang

我干了什么 究竟拿了时间换了什么
技术分享时间线软件开发、设备接入、视觉与运维实践

Arduino 环境:板卡核心与库版本怎样共同影响编译

同一份 sketch 换电脑后不能编译,可能是板卡核心或库版本变化,而不是源码突然出错。

同一份 sketch 换电脑后不能编译,可能是板卡核心或库版本变化,而不是源码突然出错。 本文使用Arduino IDE 1.8.5、Uno 级演示板与该版本配套核心库。Arduino(开源微控制器平台)简化编译和烧录,仍需要理解循环、计时与硬件状态。不同板卡的电压、编号和库支持不能互相默认兼容。 1. 从现象推到机制 板卡选择决定编译器、引脚定义和上传方式,库提供外设接口。多个同名库...

ESP32 联网:连接、取地址与业务上线分开

Wi-Fi 连接事件出现,不表示设备已经拿到地址,更不表示 MQTT 业务已经恢复。

Wi-Fi 连接事件出现,不表示设备已经拿到地址,更不表示 MQTT 业务已经恢复。 本文使用经典 ESP32、ESP-IDF v2.1 与隔离低压演示电路。ESP-IDF(乐鑫开发框架)版本会改变接口与工具链。本文固定早期开发环境,GPIO 编号、电压和外设复用按具体开发板原理图核对,不把板子排针顺序当芯片引脚编号。 1. 从现象推到机制 无线关联、地址获取、路由和业务会话有不同状态...

ESP32 采样:ADC 原始值不能直接当电压

读到一个 ADC 数字,只能说明转换器输出了原始计数。

读到一个 ADC 数字,只能说明转换器输出了原始计数。电压需要量程、参考与校准信息。 本文使用经典 ESP32、ESP-IDF v2.1 与隔离低压演示电路。ESP-IDF(乐鑫开发框架)版本会改变接口与工具链。本文固定早期开发环境,GPIO 编号、电压和外设复用按具体开发板原理图核对,不把板子排针顺序当芯片引脚编号。 1. 从现象推到机制 衰减配置影响可测输入范围,器件差异与非线性会...

ESP32 入门:先打通编译、烧录和串口监视

串口能识别板子,仍可能因为工具链、启动模式或供电导致烧录失败。

串口能识别板子,仍可能因为工具链、启动模式或供电导致烧录失败。分层检查比反复点击更有效。 本文使用经典 ESP32、ESP-IDF v2.1 与隔离低压演示电路。ESP-IDF(乐鑫开发框架)版本会改变接口与工具链。本文固定早期开发环境,GPIO 编号、电压和外设复用按具体开发板原理图核对,不把板子排针顺序当芯片引脚编号。 1. 从现象推到机制 编译把源码与目标配置生成固件,烧录写入闪...

Node-RED 异常处理:重试应有边界和原始身份

异常节点接回输入口,看起来实现了自动恢复,也可能形成无限循环与消息洪峰。

异常节点接回输入口,看起来实现了自动恢复,也可能形成无限循环与消息洪峰。 本文使用Node-RED 0.18、匹配的 Node.js 与演示消息。Node-RED(可视化流程工具)让接线与转换直观可见,但消息结构、状态归属和异常仍需要设计。连接线存在不说明传入字段符合下游要求。 1. 从现象推到机制 错误恢复需要区分临时故障、非法输入和已经执行但结果未知。重试消息保留业务身份并增加尝试...

Node-RED 状态:context、flow 与 global 的归属

两个设备共用一个计数变量,会让状态互相串扰。

两个设备共用一个计数变量,会让状态互相串扰。状态范围应该跟业务对象一致。 本文使用Node-RED 0.18、匹配的 Node.js 与演示消息。Node-RED(可视化流程工具)让接线与转换直观可见,但消息结构、状态归属和异常仍需要设计。连接线存在不说明传入字段符合下游要求。 1. 从现象推到机制 节点、流程和全局上下文有不同可见范围。扩大范围只是让更多节点能访问,不会自动按设备隔离...

Node-RED 入门:先看完整 msg,再接下一根线

Debug 面板里只有一个数字,很难知道下游期待的 topic、时间和设备身份是否还在。

Debug 面板里只有一个数字,很难知道下游期待的 topic、时间和设备身份是否还在。 本文使用Node-RED 0.18、匹配的 Node.js 与演示消息。Node-RED(可视化流程工具)让接线与转换直观可见,但消息结构、状态归属和异常仍需要设计。连接线存在不说明传入字段符合下游要求。 1. 从现象推到机制 msg 是沿流程传递的对象,payload 只是其中一个字段。节点可能...

米家研究:设备、网关、云与授权的关系

米家应用能控制设备,不代表外部程序已经拥有相同接口和权限。

米家应用能控制设备,不代表外部程序已经拥有相同接口和权限。接入前先画依赖关系。 本文使用米家设备、网关与 Node-RED 的架构研究,接入能力按具体型号确认。米家不是一个所有设备都开放相同本地接口的统一协议。设备型号、网关和固件会影响可用能力,本文不声称任意设备都能绕过云端或直接接受自定义控制。 1. 从现象推到机制 某些设备直接联网,另一些通过网关通信,应用还可能依赖云端账户与授权...

物联网基础:HTTP、MQTT 与 CoAP 按交互方式比较

协议选择不能只比较报文大小。

协议选择不能只比较报文大小。设备是否长连接、是否需要服务端推送,会改变方案。 本文使用MQTT 3.1.1、HTTP 或 CoAP 的演示设备与消息。设备通信需要同时定义身份、数据语义、时序与失败处理。协议传输确认不自动代表业务动作完成,采样时间也不能简单用服务器收到消息的时刻替代。 1. 从现象推到机制 HTTP 便于请求响应与现有 Web 接口集成,MQTT 借助代理实现发布订阅,...

物联网基础:设备数据契约先定义单位和质量

温度值都是二十多,不代表每台设备使用相同单位、量程和校准关系。

温度值都是二十多,不代表每台设备使用相同单位、量程和校准关系。 本文使用MQTT 3.1.1、HTTP 或 CoAP 的演示设备与消息。设备通信需要同时定义身份、数据语义、时序与失败处理。协议传输确认不自动代表业务动作完成,采样时间也不能简单用服务器收到消息的时刻替代。 1. 从现象推到机制 原始寄存器值、工程量和业务判定应分层。设备模型需要字段类型、单位、有效范围、质量与采样时间。异...