一种智能化抄表算费系统设计

2023-03-13 15:25吕佳慧
信息记录材料 2023年1期
关键词:开发板电源模块时钟

吕佳慧

(国网山东省电力公司莱阳市供电公司 山东 莱阳 265200)

0 引言

随着经济水平和科学技术的发展,人们对电力需求量越来越大,电力抄核收模式已经不能满足社会需求,传统的抄核收模式不仅费时费力,还容易出错。因此须进行改革,提高效率、降低成本、方便群众,以促进供电企业更好更快地发展,提高服务水平、增加社会效益、实现经济效益最大化。电力抄表核算收费智能化是为减轻电力企业工作人员工作负担而产生的,抄表算费智能化系统提升了抄表核算收费效率[1]。智能电表通常设计有对应的电能统计和远程通信模块,因此,供电公司就可以通过其服务器远程监测用户用电情况,简化烦琐抄表过程,并且耗电数据可由微处理器直接算费。

1 系统整体设计

系统可划分为5个单元:电源模块、STM32F103C8T6芯片的最小系统模块、继电器保护模块、交流电流电压检测模块、Wi-Fi模块。电源模块对系统电路进行供电;STM32F103C8T6芯片的最小系统模块对整个系统进行监控[2];继电器保护模块确保其他模块能够正常工作;交流电流电压检测模块采用交流220 V电源在降压处理后作为外部输入信号,同时也作为Wi-Fi模块的电源输入;Wi-Fi模块以实现系统数据的接收和发送。

2 硬件系统设计

2.1 STM32F103C8T6芯片及时钟电路

STM32F103C8T6芯片作为一款单片机,内核采用32位。它支持多种协议及操作系统,有强大的外设驱动能力,市场潜力巨大。与C51单片机相比,STM32F103C8T6芯片有更多的功能与串口,被用于许多自动化控制设备中[3]。

STM32F103C8T6芯片基本参数电路类别为集成电路(IC)控制型,总线宽度为32位,最高工作速度为72 MHz,输入输出数量为37个,程序存储器的容量为64 KB,程序存储器的型号为FLASHRAM,容量为20 K×8,模数转换器为A/D10x12 b。STM32F103C8T6芯片引脚,如图1所示。

图1 STM32F103C8T6芯片引脚

该设计使用了外部时钟,分别为高速外部时钟8 MHz接PD1、PD0计数,低速外部时钟32.768 kHz接PC14、PC15,以实现时钟的使能。时钟电路的功能主要与晶振电路配套使用,以提高工作的准确性节奏平稳,使用时间片为50 ms,所述系统时钟配置为APB1,使时钟使能,使用10 kHz为计数频率,采用向上计数,以初始化时钟3的时间为基数参数,IRQ通道的使能、外设NVIC寄存器的初始化和使能时钟3的实现[4]。所用2种时钟电路的原理,如图2所示。

图2 时钟电路原理图

2.2 电源模块

STM32F103C8T6芯片工作电压为DC 3.3 V,因此电源电路需要一个能将大于3.3 V电压转换为稳定的3.3 V电压的芯片。选择AMS1117-3.3降压稳压芯片,芯片输入电压为DC 4.75~15 V、输出电压为3.3 V/1 A max,芯片的输入电压具有较宽的范围,以及电路连接方便,输入与输出并联为10 F,22 F滤波电容均可。电源接口为mini贴片USB接口,在开发板上导入5 V供电,串联在一起的二极管用来保护开发板。电源模块电路原理,如图3所示。

图3 电源模块电路原理

2.3 交流电流电压检测模块

将交流220 V电源降压处理后作为外部输入信号,同时也作为Wi-Fi模块电源输入。交流检测模块由电压互感器(TV1005)、电流互感器(TA1005)二极管IN4148、4个电容和4个电阻连接而成。电压互感器原理与变压器作用相似,使用一次绕组(N1)为高压侧连接电源,二次绕组(N2)为低压侧连接输出,起到降压作用。电流互感器的原理与电压互感器原理类似,一次侧匝数(n1)与二次侧匝数(n2)的比为电流比(kn),起到使输入的电流成比缩小的作用。将滤波电容在STM32F103C8T6芯片引脚PA1和PA2作输入信号。

2.4 Wi-Fi模块

Wi-Fi模块选用的是ESP8266芯片,具有体积较小,能耗较少,方便实用,性价比高,可靠性好等优点。Wi-Fi模块利用串口和单片机进行通信,内建TCP/IP协议栈可以实现串口和Wi-Fi的切换。ESP8266芯片内含有满足协议栈网络标准的TCP/IP协议,可以满足本文设计中功能的实现要求。由于使用了以上技术,系统需将多个设备连接起来组成一个局域网,并且具有很强的扩展性。另外,ESP8266芯片本身自带USB接口,能够与其他外部设备相连接。Wi-Fi模块完成串口协议的收发数据,分别为pin1和pin2,功能UART_RXD为接收命令,UART_TXD为发送命令,这是Wi-Fi模块设计时的主要作用。

2.5 继电保护

为了保护其他模块的正常工作,避免负载模块温度过高而造成不应有的损失,设计上增加了继电器对线路进行保护,当使用功率大于200 W后继电器将被带动进而切断电源。电路设计时由于STM32F103C8T6芯片引脚处电流驱动性能很低,难以带动继电器通断,故采用9012三极管供电,从而实现继电器的关闭。LED1亮灭可判断继电器是否关断,若灯亮则继电器已关断,若灯灭则继电器已断路。

为了保证继电器能够可靠工作,需要对三极管的管压和导通时间等参数进行测量,并根据数据进行相应调整。由于元器件数量较多,电路比较复杂,故采用分立元件模型。为保护二极管 前加装限流电阻,则为保护三极管,继电保护设计中也会安装限流电阻。此外,由于STM32F103C8T6芯片内部集成有1个电阻(R)和3个电容(C2、C3、C4),通过改变电阻值可以调节继电器输出电压的高低,进而调整其灵敏度。当输入电压较高时继电器不工作,反之,输入电压较低时则工作。控制引脚RY1收到的信号为高电平,则继电器立即关断,否则继电器不关断。继电器模块如图4所示。

图4 继电器模块

2.6 硬件调试

硬件调试主要分动态调试与静态调试2个部分,检查硬件主要线路有无虚焊短路问题,以直流电源或示波器来整体调试被焊板,检查各器件是否运转正常。静态调试是检查开发板外层有无表面问题、焊接过程中有无焊点问题及线路漏接,利用仪器检查开发板连接线路有无错误,尤其电源模块,需查看管脚接线焊点焊接情况,并使用万用表逐一检查电路判断短路问题[5]。完成检查后,可对开发板进行上电检测,若上电后指示灯能正常点亮且各模块均未发生故障,则可在该开发板上进行各模块功能检测与调试。动态调试是以静态调试已全部调试成功为先决条件,给开发板通电,查看指示灯均是否正常亮,并与PC端相连,看功能能否全部完成。

3 软件系统设计

3.1 主程序设计

就整体程序设计而言,子程序均需连接控制芯片调试,对于不同模块连接方式,需研究不同通道连接的方式。电源模块对通电互感器执行处理,直至控制模块能够接收到电压和电流后,送入控制芯片STM32F103C8T6中进行ADC转换,以实现模拟信号到数字信号的转换,将接收到的数据存入规则数据寄存器(ADC1)寄存器,STM32F103C8T6芯片通过引脚端口与Wi-Fi模块相连,Wi-Fi模块用于将手机端的APP以AP模式进行发送,手机端可显示目前用电量,并且根据当前的最新电价进行计算电费并实时显示电费。若功率大于200 W时,继电器将切断电源,以保护线路[6]。系统设计程序流程,如图5所示。

图5 系统设计程序流程

3.2 ADC模数转换程序

ADC的状态和控制寄存器初始化,主要是针对多重ADC模式下的DMA请求。在ADC程序设计中选用了逐步逼近型使能ADC1时钟,初始化配置并设定六分频器和PA1、PA2用作模拟通道的输入引脚,转换工作选用单通道ADC1进行,工作模式为单次转化,触发方式选用软件触发。选定工作模式后使能规定ADC1并打开AD校准和终止校准,选取规则通道,启动软件转换ADC1,等转换完成,返回近期ADC1规则转换结果,芯片将数据结果发送至规则数据寄存器。ADC模块子程序流程,如图6所示。

图6 ADC模块子程序流程

3.3 Wi-Fi模块子程序

Wi-Fi模块子程序功能负责从芯片接收数据后,向接收数据显示终端发送数据,能用流程图来表达。无线模块的子程序通过初始化使IP地址匹配,VVC输入3.3 V电压,在GPIO3执行UART-RXD接收数据的指令,启动数据接收,Wi-Fi模块用于以AP模式完成UART-TXD的发送命令,将对应电量消耗值显示于手机终端上。模块程序按要求初始化,从芯片接收数据,将外设与Wi-Fi模块相连接收数据,显示所述对应消耗电量及电费。Wi-Fi模块子程序流程,如图7所示。

图7 Wi-Fi模块子程序流程

3.4 程序调试

软件调试前需要对系统进行整体通电调试。硬件的监测是观察其表面焊接有无问题,是否有很明显地破裂,元器件正负极均是否有接反现象,电路接线是否接错等。监测完成后用万用表探测有无短路和其他严重电路连线。整个硬件的焊接情况也需要做细致检查,以保证不出现缺焊、过焊等问题。

调试平台建成后,开始进行软件程序的调试。当程序未出现问题,随即进行功能调试,考察功能能否达到设计要求,如功能有问题,需要立即进行程序的再次调试,直至功能能够完全满足设计的要求,软件调试步骤如下。

步骤1 开发软件Keil uVision5,需从菜单中选择project创建新项目文件夹,查找新项目并键入新项目名称后保存,然后选择“STM32F103”型号单片机。

步骤2 将程序源代码写入到新的空白文本后,保存并命名为文件,即源文件建立成功。

步骤3 进行程序编译与调试,启动编译程序、运行文档、窗口启动输出信息。如出现报错程序时,需及时查找错误并纠正,重新编译直到不报错为止,其中提醒可忽略而不需修改[7-8]。

4 结论

综上所述,本文设计是以STM32F103C8T6芯片为核心,经电源模块降压处理,并将其传送至STM32F103C8T6芯片,实现了模拟信号值到数字信号值的ADC转换,并在ADC1寄存器里保存它们的数据,由此电流电压与其用电量消耗的作用。将所述芯片连接采用AP模式的Wi-Fi模块并向其发送数据,以Wi-Fi作为热点端,对所设计的Wi-Fi和IP地址进行匹配连接,得到一个专门的单一通道的联系,从而达到远程查看电表功能。此设计实现了智能电表远程抄表与算费,方便用户随时随地查看用电量和电费,较好地发挥了其特有的优越性,发展前景非常广阔。

猜你喜欢
开发板电源模块时钟
GRAS发布新12Bx系列、支持TEDS的测量麦克风电源模块
别样的“时钟”
古代的时钟
电源模块产品的智能制造探索与实践
西门子电源模块故障诊断方法研究
有趣的时钟
浅析单片机开发板的设计与制作
时钟会开“花”
ARM宣布mbed Enabled Freescale FRDM—K64F开发板通过微软认证
Mouser为您呈上开发关键之STMicroelectronics Nucleo开发板