单相计量芯片RN8209C串口应用模块,百万级产品实测
1 芯片介绍
1.1 芯片特性
1. 计量
- 提供三路Σ-△ADC
- 有功电能误差在8000:1动态范围内<0.1%,支持IEC62053-22:2003标准要求
- 无功电能误差在8000:1动态范围内<0.1%,支持IEC62053-23:2003 标准要求
- 提供两路电流和一路电压有效值测量,在1000:1动态范围内,有效值误差<0.1%
- 提供一路脉冲频率发生器,可用于对用户自定义功率进行电能量累加积分
- 提供三路ADC的瞬时采样值
- 潜动阈值可调
- 提供反相功率指示
- 提供电压通道频率测量
- 提供电压通道过零检测
- 提供参考基准监测功能
2. 软件校表
- 电表常数(HFConst)可调
- 提供增益和相位校正
- 提供有功、无功、有效值offset校正
- 提供小信号校表加速功能
- 提供配置参数自动校验功能
- 提供SPI/UART接口
- 具有电源监控功能
- 具备电能寄存器定时冻结功能
- UART的RX输入引脚同时具备管脚复位功能
- RN8209 +5V/3.3V电源供电,功耗典型值为15mW@5V、8mW@3.3V
- 内置1.25V±1% 参考电压,温度系数典型值5ppm/℃,最大15ppm/℃
- 采用SSOP24(RN8209D)/SOP16L(RN8209C)绿色封装
1.2 功能简介
RN8209能够测量有功功率、无功功率、有功能量、无功能量,并能同时提供两路独立的有功功率和有效值、电压有效值、线频率、过零中断等,可以实现灵活的防窃电方案。 RN8209支持全数字的增益、相位和offset校正。有功电能脉冲从PF管脚输出,无功电能脉冲/用户自定义电能脉冲频率从QF引脚输出。 RN8209C提供串行接口UART,固定波特率4800,管脚复位与UART输入引脚RX复用。RN8209D提供串行接口SPI和UART,方便与外部MCU之间进行通信。
RN8209 内部的电源监控电路可以保证上电和断电时芯片的可靠工作。
1.3 管脚定义
1.5 典型应用
2 校表流程
可利用标准电能表进行校表,有功和自定义能量脉冲PF/QF 可以通过光耦直接连接到标准
表上去,然后根据标准电能表的误差读数对RN8209 进行校正。详细参考芯片用户手册。
2 代码实现
本代码基于RN8209C通过串口进行通信,本模块产品美国市场已经出货百万级,具体实现如下:
RN8209C模块接口:app_DriverRN8209C.h
/** app_DriverRN8209D.h** Created on: 2009年8月10日* Author: smartlabs*/#ifndef SRC_APP_DRIVERRN8209D_H_
#define SRC_APP_DRIVERRN8209D_H_#define CALIBRATION_FLAG 0x88
/*
#define C_Standard_Power (1800)//1800 //校准功率
#define C_Standard_Current (15)//(15) //校准电流
#define C_Standard_Voltage (120) //校准电压
*/
#define Alarm_Power (2000000) //报警功率 后三位小数typedef enum{POWER_DATA_CURRENT, //电流POWER_DATA_VOLTAGE, //电压POWER_DATA_ACTIVE_POWER, //功率POWER_DATA_ENEGRY, //电量POWER_DATA_POWER_FACTOR,//功率因数
}power_data_type_e;typedef enum
{CALIBRABION_STATUS_WAITING = 1, //校准等待CALIBRABION_STATUS_CALIBRATING = 2, //校准过程CALIBRABION_STATUS_FINISHED = 3 //校准完成
}CALIBRATION_STATUS_ENUM;typedef enum
{WORK_MODE_CALIBRATE=1, //校准模式WORK_MODE_NORMAL=2 //正常模式
}WORK_MODE_ENUM;extern WORK_MODE_ENUM g_eWorkMode;//工作模式
extern CALIBRATION_STATUS_ENUM g_eCalibrationStatus; //当前校准状态
extern uint8_t g_cCalibrationTaskMode;
extern uint8_t g_bCalibrationFlag;extern uint32_t g_wCalibrationCurrent; //校准电流
extern uint32_t g_wCalibrationVoltage; //校准电压
extern uint32_t g_wCalibrationPower; //校准功率//RN8209C硬件初始化
void app_initRN8209HW(void );
//RN8209C软件初始化
void app_initRN8209SW(void );
//RN8209C复位
void app_resetRN8209(void );
//RN8209C计量
bool app_calculateRN8209(void);
//设置工作模式
void app_setWorkMode(WORK_MODE_ENUM mode);
//RN8209校准
void app_calibrateRN8209(void );
//获取当前电量,保留3位小数位数
uint32_t app_getEnergy(void );
//获取当前功率,保留3位小数位数
uint32_t app_getPower(void );
//获取当前电压,保留3位小数位数
uint32_t app_getVoltage(void );
//获取当前电流,保留3位小数位数
uint32_t app_getCurrent(void );
#endif /* SRC_APP_DRIVERRN8209D_H_ */
3 测试报告
原文地址:电表级单相计量芯片RN8209C在Zigbee和Z-Wave智能家居系统中的应用
RN8209C计量芯片驱动模块源代码,欢迎留言联系
QQ:279716582
微信:smartlabs
单相计量芯片RN8209C串口应用模块,百万级产品实测相关推荐
- stm32 + RN8209C单相计量芯片使用心得
RN8209C单相计量芯片使用心得 由于项目需求,最近使用了一下RN8209C单相电量计量芯片,用STM32读取外接用电器的有效功率.第一次接触肯定是看技术手册. RN8209C技术手册V1.5 单相 ...
- 单相计量芯片RN8209D使用经验分享(转)
单相计量芯片RN8209D使用经验分享 转载于:https://www.cnblogs.com/LittleTiger/p/10736060.html
- vs code 插件_[VSCode插件开发] 由浅入深,带你了解如何打造百万级产品
去年,笔者有幸在微软技术暨生态大会上做了个演讲,主题是"从零开始开发一款属于你的 Visual Studio Code 插件". 演讲内容主要覆盖了VS Code插件开发的四个方面 ...
- 电能计量芯片应用心得之选型篇
电能计量芯片应用心得之选型篇 什么是计量芯片 计量芯片是测量交流电信号的一类芯片,因最早是使用于电表产品,所以在行业内也俗称电表芯片,它可以统计用电负载的用电量.测量用电负载的功率大小和电流大小,以及 ...
- 免校准的电量计量芯片_交直流两用计量芯片HLW8112
芯片介绍 HLW8112是一款高精度的电能计量IC,它采用CMOS制造工艺,该器件内部集成了三个∑-Δ型ADC和一个高精度的电能计量内核. HLW8112主要用于单相应用,也可以测量直流信号. HLW ...
- 交直流两用计量芯片HLW8112
芯片介绍 HLW8112是一款高精度的电能计量IC,它采用CMOS制造工艺,该器件内部集成了三个∑-Δ型ADC和一个高精度的电能计量内核. HLW8112主要用于单相应用,也可以测量直流信号. HLW ...
- 免校准的电量计量芯片_技术 | 免校准电能计量芯片,让家电智能化更简单
物联网时代,随着人们对节能环保,以及电器安全使用意识的提高,"能源智慧管理"."设备故障预判"."智能诊断"成为了智能电器产品的热门口号. ...
- 免校准的电量计量芯片_免校准电能计量芯片,让家电智能化更简单
原标题:免校准电能计量芯片,让家电智能化更简单 物联网时代,随着人们对节能环保,以及电器安全使用意识的提高,"能源智慧管理"."设备故障预判"."智能 ...
- 计量芯片应用心得之软件篇
本文内容是我从对电表芯片应用中,积累的一些经验,以便于工程师朋友可以对计量芯片有更多的了解,在应用过程中能够有一些帮助和收获.我们以HLW8110为例,讲一讲软件处理前需要知道的一些芯片原理,和在软件 ...
最新文章
- Android中如何使用ViewPager实现类似laucher左右拖动效果
- 《微信公众平台开发:从零基础到ThinkPHP5高性能框架实践》——3.3 微信开发者中心...
- 嵌入式---时钟结构
- nodejs模块导入导出
- python对象序列化或持久化的方法
- 活动选择(信息学奥赛一本通-T1323)
- POJ-1681 Painter's Problem 高消
- [转]说说大型高并发高负载网站的系统架构
- 华硕老毛子(Padavan)——校园网锐捷(Ruijie)认证路由器开机启动设置(开机脚本设置)
- 傅里叶变换、拉普拉斯变换、Z 变换的联系是什么?为什么要进行这些变换?
- 通过proj4js实现不同椭球之间的坐标点的七参数转换
- NLP初学-简易聊天机器人
- 股市大涨该买吗?教你用算法量化交易行为!
- 路人超能100手游如何用电脑玩 路人超能100PC电脑版玩法教程
- 八大排序(一):四种简单的排序(直接插入排序、希尔排序、冒泡排序、选择排序)
- 高可用集群软件--LifeKeeper
- 社招:海康威视一面2021.04.21
- 数组指针,指针数组例子解析
- JPG 转PDF?-- 4种在线免费工具,手机和电脑均适用
- java实现单机版和网络对战版五子棋
热门文章
- 做了10年烟草制造业转行进入IT的开始
- AI进化指南:数据质量推动人工智能良性发展
- 中国普通护照免签国家一览(2018年)
- iOS动画进阶(十二)性能调优
- mysql utf8mb4_general_ci_MySQL 编码utf8 与 utf8mb4 utf8mb4_unicode_ci 与 utf8mb4_general_ci
- ant-design中对单个或多个table列表数据进行动态列合并
- mysql 删除mul key_删除MySQL重复数据的方法
- 电脑强制关机后mysql_电脑强制关机后再开机后出现
- maven install 本地jar包
- html左右飘窗高度不一致,飘窗离地面多高合适 40厘米高度飘窗效果