本文将深入探讨如何使用Pyboard、MicroPython编程语言以及NB-IoT通信模块BC26,结合DHT11温湿度传感器,通过MQTT协议发送数据。这些技术在物联网(IoT)应用中广泛使用,使得设备能够远程监控环境条件并进行数据交换。 Pyboard是一种基于微控制器的开发板,它搭载了STM32微处理器,具有丰富的GPIO接口,适用于各种硬件交互。MicroPython是Python编程语言的一个精简版,设计用于嵌入式系统,使得开发者可以在Pyboard这样的硬件平台上轻松编写程序。 DHT11是一款经济实惠的数字温湿度传感器,它集成了温度和湿度传感器,能提供精确的环境读数。传感器通过单线接口与Pyboard通信,发送温度和湿度值。在MicroPython代码中,我们需要正确配置这个接口,读取传感器的数据,并将其转化为可发送的格式。 接下来,我们要讨论的是NB-IoT(窄带物联网)技术。这是一种低功耗广域网(LPWAN)标准,专为大规模物联网设备设计,具有覆盖范围广、连接密度高和低功耗的特点。BC26是一款支持NB-IoT的模块,可以连接到蜂窝网络,从而实现远程数据传输。在MicroPython代码中,我们需要设置BC26模块的网络参数,连接到运营商的IoT网络,并确保其处于激活状态。 MQTT(Message Queuing Telemetry Transport)是一种轻量级的发布/订阅消息协议,特别适合于资源有限的设备和低带宽、高延迟的网络环境。在物联网应用中,MQTT协议常用于设备间的数据通信。Pyboard上的MicroPython程序需要实现MQTT客户端,连接到服务器(通常称为MQTT broker),并订阅或发布消息。对于本例,Pyboard将作为发布者,定期发送DHT11传感器读取的温湿度数据到预设的主题。 为了实现这个功能,你需要按照以下步骤编写代码: 1. 初始化Pyboard,设置DHT11传感器的GPIO接口,并读取温度和湿度值。 2. 配置BC26模块,包括SIM卡信息、APN设置以及连接到NB-IoT网络。 3. 实现MQTT客户端,连接到MQTT broker,并设置订阅和发布主题。 4. 将DHT11传感器的温湿度数据构建成MQTT消息,然后发布到指定主题。 5. 设置定时器,定期重复以上步骤,以便持续发送数据。 在实际应用中,可能还需要考虑错误处理、数据校验、网络连接丢失后的重连策略等。此外,为了安全和效率,通常会将数据加密后再发送,以及在服务器端设置相应的数据存储和分析机制。 这个项目展示了如何将Pyboard、MicroPython、NB-IoT通信模块和MQTT协议集成,构建一个远程监测环境温湿度的系统。这种技术方案在农业、气象、智能家居等领域有着广阔的应用前景。通过不断学习和实践,开发者可以掌握更多物联网技术,为现实世界的问题提供智能化解决方案。
2025-03-28 15:45:00 7KB Pyboard MicroPython NB-IoT BC26
1
基于BC26设计的模块原理图,对外串口带有电平转换,方便使用。
2023-03-08 15:28:36 109KB stm32 arm 嵌入式硬件 单片机
1
通过移远BC26模块连接阿里云,完成温湿度信息的向阿里云后台的传送
2022-10-19 23:30:35 344KB bc26模块信号 bc26 BC26连接阿里云
1
opencpu学习记录及其AT指令(中文版) 移远bc26等模块opencpu学习记录及其AT指令(中文版) 移远bc26等模块opencpu学习记录及其AT指令(中文版) 移远bc26等模块
2022-08-17 14:35:30 75KB 技术手册
1
BC26 opencpu开发视频详解。对BC26 opencpu开发过程中遇到的问题进行详细说明:开发所需要的工具文件、操作流程、代码例程解释、下载编辑流程、程序开发调试等等。还有关于NBIOT行业的常见问题解释。
1
NBIOTBC26OpenCPU所用的工具,主要是用于开发移远的BC26模块的开发和调试用具,主要包括ublimetext3(编写代码工具可以选用);BC26-BC66 DL工具(下载固件的工具,官方提供的)
2022-07-31 13:40:15 62.89MB BC26 移远BC26 NBIOTBC26 NBIOTBC26OpenCPU
1
BC26片上程序开发,OPENCPU最新版SDKV1.6、1.6的SDK哦,内部资料,十分难得哦。官方资料
2022-07-14 00:02:11 152.2MB BC26 NBIOT opencpu QUECOPEN
1
5.1 脉冲法校表步骤及算法 1.确定基本参数:HFConst,校表参数清为默认值 根据硬件设计确认电压、电流 ADC 输入信号(需乘以 ADC 增益倍数,单位 V),计算 合适的 HFConst 值: HFConst=[16.1079*Vu*Vi*10^11/(EC*Un*Ib)] Vu:电压通道 ADC 输入信号,需要乘以增益倍数,一般选择为 0.1~0.22v; Vi:电流通道 ADC 输入信号,需要乘以增益倍数,如 5A*(350 微欧/10^6)*16=0.028v; EC:电表脉冲常数(用户自定义),如 3200 Un:额定电压(用户自定义) 单位:V,如 220V Ib:额定电流(用户自定义) 单位: A,如 5A 2.确定电压、电流、功率转换系数: 表台加 Un Ib 读出计量芯片电压有效值 V、电流有效值 I ,计算: Kv=Un/V ;电压转换系数,该系数与寄存器测量值相乘即得到输入的电压 (v) Ki=Ib/I ;电流转换系数,该系数与寄存器测量值相乘即得到输入的电流(A) Kp= 3.22155*10^12/(2^32*HFConst*EC) ; EC 脉冲常数 ;功率转换系数,该系数与寄存器测量值相乘即得到输入的功率(w) 3.增益校正: 台体加 UN、IB、1.0,读误差 ERR,校正值计算: PGAIN=-ERR/(1+ERR) 如果 PGAIN>0,校正值是[PGAIN*2^15]; 如果 PGAIN<0,校正值是[PGAIN*2^15+2^16]; 将校正值写入功率增益校正寄存器 GPQA(0X05)寄存器; 4.相位校正 台体加 UN、IB、0.5L,读误差 ERR, 校正值计算公式如下: θ= [ArcSin (-ERR/1.732)]/0.02; 注:θ为角度 如果θ>0,校正值是将θ取整; 如果θ<0,校正值是θ+2^8 后取整 将校正值写入角度校正寄存器 PHSA 若提高相位校正的准确度(1bit 对应 0.01 度):则计算公式: θ= [ArcSin (-ERR/1.732)]/0.01; 注:θ为角度
2022-06-22 10:39:20 702KB 电能计量
1
自己画的(BC35+BC26)PCB封装,在项目中都已经实际使用了,板子也出了好几套了,没有一点问题,AD任一个版本都能打开。
2022-05-07 01:02:37 672KB PCB封装
1
MZH010 NBIOT 模块开发套件是合肥墨子号科技有限公司用于调试应用 NBIOT 模块BC28 功能而专门设计一套开发系统。开发板以 STM32 单片机微处理器(型号:STM32F103C8T6)为核心,以 BC28 模块为通讯渠道,并且引出了 STM32 单片机的大部分 IO 口资源。用户可在此基础上根据自己的需求开发出完成的系统。如远程控制,远程数据传输等等。
2022-04-02 14:25:49 4.15MB BC26 NB-iot
1