【IoT毕设】机智云物联网平台+STM32的10kV智能箱式变电站.....
本帖最后由 Kara 于 2023-8-11 18:16 编辑基于机智云物联网平台+STM32的10kV智能箱式变电站设计
本文介绍的10kV智能箱式变电站远程控制系统是由西安科技大学田辉设计开发完成。该系统以某高校学生公寓 10kV 智能箱变设计为工程背景,设计了基于物联网的 10kV 智能箱变系统。系统由感知层、通讯层和应用层3部分组成。感知层负责传感器数据采集并传送至现场控制器。包括微机保护装置、智能网络电表和智能无功补偿控制器等二次系统设备,以及温湿度、烟雾、水浸传感器等环境检测设备。现场控制器选用 STM32 嵌入式微处理器,包括 LCD 显示屏.语音报警模块、继电器和 GPRS 通信模块等;通信层选用 GPRS 无线通信,负责现场控制器与云平台之间数据的双向传输;应用层在机智云平台开发箱变远程监控系统和手机 APP,负责箱变运行数据的存储、分析和处理等。
本系统最终实现了用户通过电脑 WEB 或手机 APP 远程监控箱变温湿度、烟雾报警和基坑积水等环境参数,以及电流、电压、频率和功率因数等电气参数和设备工作状态等功能。当箱变运行出现异常或故障,监控系统自动判断故障等级,并通过箱变现场整铃、手机 APP、短信和电话等不同组合方式报警,通知相关工作人员及时排除故障隐患,预防电气事故的发生。适用于箱变和配电室的远程监控和集中管理,可以大幅度提高于学校、企业、小区的配电设备的智能化水平和供电安全可靠性。
一、引言
随着社会经济和配电网的建设发展,10kV箱变越来越多。传统的10kV箱变一般采用无人值守,人工定期巡检的运行方式,智能化程度低,缺少环境和设备的远程监控与故障报警系统。 目前,智能传感器技术、嵌入式技术、通信技术和云计算技术的快速发展和成本的降低,基于物联网的10kV智能箱式变电站成为传统箱变升级改造的最优选择。
基于物联网的智能箱式变电站远程监控系统可以实时远程监控箱变环境、设备的运行参数和状态。如图1所示。用户可以随时通过电脑或手机APP远程监控箱变温湿度、烟雾报警、基坑积水等环境参数,以及电流、电压、频率、功率因数等电气参数和设备状态。当箱变运行出现异常或故障,监控系统将会自动根据故障等级,通过手机APP、短信和电话的不同方式报警通知相关工作人员,以便及时排除故障隐患,预防电气事故的发生。
图1 基于物联网的 10kV 智能箱式变电站
该智能箱式变电站远程监控系统由箱变内的“现场总线局域网”和箱变外的“云平台广域网”组成。这其结构模式可应用于二次供水设备远程监控系统、居民用电收费管理系统和电梯远程监控系统等设备远程监控系统的开发,提高传统设备的智能化水平和管理水平,促进传统产业升级,具有良好的应用价值。
二、总体方案设计
基于物联网的智能箱式变电站设计以某高校学生公寓 10kV 智能箱变设计为工程背景。10kV 智能箱变一次系统设计与传统 10kV 箱变相同,且趋于成熟。本文侧重于 10kV 智能箱变智能化设计,下面简单概述10kV 智能箱变一次系统的设计内容。
2.1 10kV 智能箱式变电站一次系统设计
某高校 5 号学生公寓楼用电负荷主要为照明、电脑和新增空调负荷,其中每间宿舍按照 8 人计算,照明负荷 100W,每台学生电脑负荷 200W,每台 1.5P 分体式挂机新装空调功率1.3kW,单间宿舍负荷 3.0kW。根据《工业与民用供配电设计手册》,集体宿舍用电负荷需要系数取 0.7,功率因数取 0.8。5 号学生公寓用电负荷计算表如表1 所示。
表 1 某高校 5 号学生公寓楼负荷统计计算表
考虑未来学生公寓用电负载的增加,变压器需要预留一定的裕度,选择容量为1000kVA 的变压器。综合考虑到变压器的初期投资成本和运行成本,以及国家节能减排政策要求,为此选用低损耗全密封油浸式变压器S13-M-1000/10-0.4,它的主要技术参数如表 2 所示。
表 2 油浸式变压器 S13-M-1000/10-0.4 型主要技术参数
在负荷统计计算、短路计算、动稳定性校验和热稳定性校验的基础上,进行箱变一次系统主要设备的选型。一次系统主要设备的具体型号和技术参数如表 3,表4,表5 和表6 所示。
表3 某高校学生公寓楼箱变电流互感器参数
表4 户内交流高压真空断路器 ZN63-12 型主要参数
表5 低压总开关 DW15-1600 主要技术参数
表6 高低压各回路隔离开关型号一览表
根据 5 号学生公寓工程箱变设计要求和一次系统设计计算,设计的 5 号学生公寓箱变一次系统主接线图如图2所示。
图2 某高校学生公寓箱变一次系统主接线图
2.2 10kV 箱变智能化设计方案
针对 10kV 传统箱变的设计缺陷和运行管理中存在的问题,解决问题的关键在于构建了智能化箱变环境与设备的检测、远程监控和报警的闭环系统,设计具有运行环境和电气设备远程监控功能的智能箱变系统,能够采集和监控箱变门禁、环境温湿度、烟雾报警、电缆沟积水等环境参数,以及电压、电流、有功功率、无功功率、功率因数、电缆温度、变压器器身温度和瓦斯报警信号等设备运行参数,远程控制排风扇、微机保护装置和断路器开关。系统采用工业现场普遍使用的具有通信功能的智能仪表和智能传感器,通过现场总线通信将采集的数据传送至现场控制器,现场控制器通过无线或有线通讯模块将数据传给服务器或云端上位机,实现遥测、遥信和遥控等功能。
基于物联网的 10kV 智能箱变远程监控系统,选用具有数字双向通讯功能的智能仪表和传感器,并统一采用标准 RS485 总线接口和 Modbus-RTU 通信协议。基于物联网的智能箱变远程监控系统由感知层、通讯层和应用层 3 部分组成。
*感知层:通过各种智能仪表、智能传感器采集箱变的各项环境、设备运行参数和设备工作状态,通过 RS485 总线将数据传送至现场控制器,现场控制器内置操作系统,具有数据采集、运算、处理和控制等功能。
*通讯层:该层是数据传递与交换的衔接和纽带,负责云平台与现场控制器之间数据的双向传输。根据箱变实际通讯条件,可选择有线光缆、以太网或无线 GPRS 等多种通信方式将数据传送至云平台。
*应用层:在云平台设计开发箱变远程监控系统,负责历史数据的收发和处理、箱变运行参数的远程监测和事件运行数据的记录存储、分析等工作。并在云平台开发 WEB和手机 APP,值班电工可以通过电脑或手机 APP 随时监控箱变运行数据和设备工作状态。基于物联网的智能箱变远程监控系统图如图3 所示。
图3 基于物联网的智能箱变远程监控系统图
三、系统硬件设计
3.1箱变现场 RS485 总线局域网
随着嵌入式技术的发展进步和成本的降低,针对传统箱变现场设备信息传送的缺点和问题,许多检测仪表、传感器和执行机构都内置了微处理器,可以完成 AD\DA 转化、线性化和数字滤波等功能。这些数字化现场设备内部增加一个串行通信数据接口,使用统一标准的通信协议就能实现场设备间的串行双向通信。目前主要使用的工业总线网络如表 7 所示。
表7 工业总线网络类型
本智能箱变远程监控系统设计的关键之一是选用具有数字双向通讯功能的智能仪表和传感器,并采用标准统一的总线接口和通信协议。从 5 号学生公寓 10kV 智能箱变设计的工程实际出发,选择智能传感器普遍支持的 RS485 总线和 Modbus-RTU通信协议。
根据某高校学生公寓箱变一次系统主接线图和 10kV 智能箱变远程监控系统方案设计系统框图,系统硬件设计以箱变现场控制器为核心,由微机综合保护装置、智能网络电表和智能无功补偿器等二次系统设备,以及温湿度烟雾传感器、PT100 温度传感器和水侵传感器等环境检测传感器组成箱变现场 RS485 总线局域网。箱变 RS485 总线局域网系统图如图4所示。
图4 箱变现场 RS485 总线局域网系统图
(1) RS485 串行通信总线
RS485总线通讯模式为主从方式,由主设备轮询各从设备进行通讯,可以一点对多点进行组网,构成分布式系统。RS485接口是广泛应用的低速串行接口,RS485接口具有以下特点。
* RS485接口。RS485接口通信采用差分传输方式,以及具有平衡驱动器和差分接收器的组合,用缆线两端的电压差值传递信号,大大增强了抗共模干扰和抗噪声干扰能力。
* RS485总线传输速率高且传输距离远。最大传输距离约1200米,最大传输速率10Mbps;其的传输速率与传输距离成反比,20kbps速率以下时能达到最大传输距离。
* 支持节点多。一般情况下,一个RS485总线回路理论上可支持247个设备节点。
(2)Modbus-RTU 串行通讯协议
Modbus 协议应用于工业总线网络,通过协议控制器和现场设备之间可以进行数据通信,不同厂家生产的设备遵循统一的协议就可以组成工业总线网络监控系统。 该协议为主从结构,网络中一个主节点,其他为从节点,每一个从节点有一个唯一的设备地址。在串行总线网络中,主节点启动一个命令,所有从设备都会收到该命令,Modbus 命令中包含了执行该命令的从设备地址,主设备指定的从设备先回应再执行指令。Modbus 命令中有检查码,以确定到达的命令没有被破坏。Modbus 命令可以指令 RTU 改变它的寄存器数值,读取或控制 I/O 端口,命令设备回传一个或多个寄存器数据。
Modbus 包括 ASCII、RTU 和 TCP 三种报文类型。ASCII传输模式,,LRC 校验,传输效率低,但是直观、简单、易调试。RTU传输模式,采用 CRC 校验,传输效率高,比 ASCII 稍微复杂。一般来说,如果所需要传输的数据量较小可以考虑使用 ASCII 协议;所需传输的数据量比较大,最好能使用 RT U 协议。为此,本系统的智能仪表和传感器统一选用 Modbus-RTU 通信模式。
3.2箱变现场控制器硬件设计
箱变现场控制器由嵌入式系统构成。嵌入式系统是以应用为中心、软硬件可裁剪,实现设备的自动化、智能化和远程监控等功能,主要由嵌入式微处理器、相关硬件、嵌入式操作系统和应用软件系统等组成。嵌入式系统的特点如表8所示。
表8 嵌入式系统的特点
本智能箱变现场控制器就是嵌入式系统,其系统设计框图如图5 所示。
图5 智能箱变现场控制器系统框图
(1)STM32 微处理器最小系统
嵌入式微处理器最小系统包括嵌入式微处理器、复位电路和调试电路。时钟电路提供所需的外部时钟信号,复位电路提供统一的初始状态,调试电路提供程序下载和调试的接口。
* 嵌入式微处理器的选择。根据 10kV 智能箱变远程监控系统对现场控制器性能的要求,本系统选择 STM32F103ZET6 芯片作为现场控制器核心微处理器。STM32F103ZET6 嵌入式微处理器, MCU 集成度高、功耗低、性价比高,适用于工业医疗领域的各种应用需求,能够满足本系统数据采集和实时性处理的要求。
* 晶振电路。晶振电路给微处理器提供固定的频率脉冲,使微处理器正常运行。 STM32 微处理器有两个晶振,8MHz 的晶振提供外部高速时钟,32.768KHz 晶振提供外部低速时钟。晶振电路图如图6所示。
图6 晶振电路图
* 复位电路。微处理器复位电路的作用是重启系统,当系统发生故障时按下复位健可以重启设备,一般复位电路使用低电平信号重启。本系统复位电路如图 7所示。
图7 复位电路图
(2)电源电路设计
本系统选用额定电压为 12V(2A)的直流外部电源,选择 USB 接口的直流 5V(2A)电源适配器为现场控制器供电。12V 直流电源接入控制板,通过 LM2596S 降压模块,将直流 12V 电源降压得到直流 5V 电源。5V 电压再通过 AMS1117-3.3V 稳压芯片得到 3.3V 电压给 STM32 芯片供电。LM2596S 及AMS1117-3.3V 电源稳压电路图如图8所示。
图8 LM2596S 及 AMS1117-3.3V 稳压电路图
(3) RS485 接口转 TTL 模块
RS485 接口转 TTL 模块实现了 RS485 信号与 TTL 信号的双向转化和通信,但信号必须轮流交替执行,不能同时在两个方向上进行。所有现场设备均使用该模块与单片机连接,接线图如图 9所示。
图9 RS485 转 TTL 模块接线图
(4) LCD 显示模块
由于箱变远程监控系统现场控制器需要显示的数字和字符内容较多,因此选择 2.8寸 TFT-LCD 液晶显示屏作为显示模块,其内部有 ILI9341 控制器。考虑STM32 可通过 SPI 接口、8080 接口或 RGB 接口与 ILI9341 进行通信。为了实现较快的刷新速度,TFT-LCD 选用 8080 并行数据总线接口。STM32 通过可变静态存储器 FSMC 模块输出数据至 ILI9341 控制器显存,TFT-LCD 与 STM32 芯片的接线图如图10所示。
图10 TFT-LCD 与 STM32 单片机接线图
(5)语音报警模块
当STM32 微处理器检测到箱变运行数据出现异常或故障,它就会向串口发送信息,启动语音报警。语音报警模块选择常用的语音芯片 SYN6288,根据所编写的程序自动广播语音告警信息。系统选用 GB2312 编码,GB2312 编码适用于汉字处理、汉字通信等方面的信息交换。SYN6288 还可以准确识别数字、时间和日期以及常用的测量单位。该模块和 STM32 的连接图如图 11 所示。
图11 SYN6288 语音模块接线图
(6)继电器模块
现场控制器选用一组 2 路光耦隔离继电器模块,用来控制直流 12V 警铃和风扇的开启和关断,可根据箱变排风扇电源类型和功率选择 220V 交流固态继电器。每个继电器回路模块都有常开和常闭触点,以及 LED 状态指示;每个继电器回路均采用光耦隔离,且附带续流二极管,释放继电器感应电压,保护前级电路。当箱变环境温度超过一定的范围时,现场控制器输出高电平,1 路光耦隔离继电器动作打开风扇降温;当发生烟雾浓度过高等严重故障时,控制器驱动另一路光耦隔离继电器接通警铃回路发出现场警报。继电器工作原理图、继电器模块与 STM32 芯片的连接图如图12、13 所示。
图12 继电器工作原理图
图13 继电器与 STM32 芯片接线图
(7)通信模块
针对10kV 智能箱变远程监控系统的设计要求,智能箱变与云端的通信选择流量费用较低的 GPRS 无线通信方式。机智云固件 GPRS 模块。
*机智云固件 GPRS 模块(G510_GAgent 固件)。该模块是运行在各种通讯模组上的一款应用程序,提供云端与产品设备数据的双向传输、设备配置入网、发现绑定和程序升级等功能。GPRS 模块和主控器之间的电路图如图14所示。
图14 机智云固件 GPRS 模块和 STM32 单片机之间的连线图
*GPRS-GA6 模块。该模块可以低功耗的实现语音、短信息和数据的传输。适用于 M2M 应用中的各类设计需求,尤其适用于紧凑型产品的设计。其次,通信协议采用 UART串口总线传输,使用标准的 AT 命令进行模块控制、波特率选择 115200bps。GPRS-GA6 模块与 STM32 单片机的连接电路图如图15所示。
图15 GPRS-GA6 模块和 STM32 单片机之间的连接图
3.3微机综合保护装置
根据电力变压器保护设计规范(GB/T 50062-2008)规定,10kV 变压器通常需要装设带时限的过电流保护。微机保护装置具有变压器和线路的保护、测量和控制功能,以及数据采集、监控和系统自检等功能,并具有较高的灵敏度和可靠性。
根据学生公寓 10kV 智能箱变的设计要求,选择具有 RS485 通讯功能的安科瑞AM3-I电流型微机综合保护装置,具有 IA、IB、IC、UA、UB、UC、P、Q、Fr 等电参量测量,8 路外部开关量信号采集,以及断路器遥控分闸和合闸操作等功能。AM3-I 微机保护装置接线端子图如图 16所示
图16 AM3-I 微机保护装置接线端子图
3.4、智能网络电表
智能网络电表用于检测低压配电回路三相电流、电压和功率等电气参数,以及隔离开关、断路器的开合状态等。根据10kV智能箱变二次系统设计要求选用具有RS485通讯功能的安科瑞ACR智能网络电表,ACR智能网络电表与低压电流互感器接线图和开关量输入输出接线图如图17所示。
图17 ACR 智能网络电表低压电流互感器和开关量输入输出接线图
ACR智能网络电表采用Modbus-RTU协议,可以进行电力参数的测量和采集,开关量输入功能可以检测隔离开关和断路器的开关状态,继电器输出功能可以远程开启和关闭断路器。ACR智能网络电表对通讯地址表有统一规划,可以实现遥测、遥信、遥控三遥功能。
(1)交流模拟量信号的 AD 转换和计算
ACR 智能网络电表直接采集的 3 个相电压信号和 3 个电流信号(电流互感器输出信号)都属于模拟量,需要转换成 CPU 能够识别的数字量信号,才能进行数据处理。首先 3 个相电压 220V 和 3 个电流模拟量经过变换器转变为低电压信号,经过电压形成回路转换为 AD 转换器允许的电压;然后经过低通滤波器输入到采样保持器和多路转换开关,经过 AD 转换为数字信号输入到 CPU。交流模拟量的采样和 AD 转换过程示意图如图18所示
图18 交流模拟量的采样和 AD 转换过程示意图
*模拟量的电压变换和低通滤波。电压形成回路的作用是电气隔离变换电量,一般 AD 转换器要求输入信号是±5V 和±10V,由此可以确定电压变换器的变比。低通滤波器分为无源滤波器和有源滤波器。有源滤波器由电容、电阻和集成运算放大器组成,在滤波的同时对信号起放大作用,无源滤波只有滤波功能没有信号放大功能。
*模拟量信号采样。采样过程要遵循香农采样定理,即采样频率必须不小于 2 倍的输入信号的最高频率。采样的过程非常快,当前的 AD 转换器采样已经达到纳秒级别,而电力系统自动装置的采样周期是毫秒级别,所以 6 个回路的电压和流信号可以共用 1 个 AD 转换器,但是采样电路须配备采样保持器和多路转换开关。
*AD转换。AD转换器有逐次逼近型、积分型、计数型、并行比较型,以及VFC电压频率变换器。逐次逼近型AD转换器是ADC中速度与精度兼顾的代表,它在较高转换速率下具有较高的转换分辨率。
(2)正弦电量的半周波绝对值积分算法
软件算法的关键在于提高算法运算的精确和速度,智能电表的交流采样算法的关键是解决如何根据正弦信号的瞬时值计算正弦采样信号幅值或有效值。正弦量最常用的算法是半周波绝对值积分算法,半周波绝对值积分算法的原理是正弦量在任意半个周期内绝对值的积分为常数 S,而且积分值常数 S 与积分起始角无关。基于正弦函数模型的半周波绝对值积分算法如图 19所示。
图19 基于正弦函数模型的半周波绝对值积分算法
应用半周波绝对值积分算法计算电流有效值的表达式为:
式中,S 表示半个周期内绝对值的积分;I 表示电流有效值; i 表示电流瞬时值; w 表示角速度;T 表示交流电源周期;f 表示交流电源频率;N 表示 1 个周期内采样次数; Ts表示采样周期。
3.5 RS485 温湿度烟雾传感器
考虑箱变内供电线路可能出现漏电、过负荷、短路和接触电阻过大等故障引起火灾,可燃油油浸变压器故障可能引起火灾,因此箱变室内需要安装烟雾传感器用于箱变的火灾检测,以便早期发现故障隐患。为保证测量精度,同时降低成本,选用 RS485 温湿度烟雾三合一传感器用于箱变室内温度、湿度和烟雾浓度检测,温湿度传感器采用 SHT30 探头,传感器对 RS485 接口进行多重保护,能够有效消除工业现场浪涌、脉冲的干扰。传感器有红、黑、黄、绿 4 根线,具体接线方法如下表9 所示。
表 9 RS485 温湿度烟雾传感器
本系统设计的智能仪表、传感器都采用 Modbus-RTU 协议,在全波特率 1200-115200 范围内可靠通信,智能仪表、传感器波特率统一设定为 9600bps。传感器的数据传输格式和数据转换格式如下:
传感器数据问询帧格式。传感器遵循标准 Modbus-RTU 协议,传感器读数保存在保持寄存器中,功能码为 04。上位机读取传感器数据问询帧格式、下位机传感器数据问询帧格式如表 10、表11所示。
表10 上位机读取传感器数据问询帧格式
表 11 下位机传感器数据问询帧格式
3.6 PT100 温度变送器
PT100 温度变送器用于检测变压器器身温度、高压和低压电缆温度,它适用于各种工业现场。变压器运行时会产生损耗,主要是铁损和铜损,也称铁芯损耗和负荷损耗。铜损大小随负载电流而变化,与负载电流的平方成正比。变压器损耗计算公式如下:
式中,P0 表示变压器在额定电压下空载运行的有功功率; I1和 I2 表示高压线电流和低压侧线电流;R1和 R2 表示高压侧电阻和低压侧电阻。
PT100 温度变送器内嵌 RS485 总线接口,每一个温度变送器可接入 4 路 PT100 温度传感器。热电阻 PT100 的工作原理如图22所示。
图22 PT100 温度传感器工作原理
3.7水浸传感器
由于箱变基坑水平面较低,大雨过后电缆沟、基坑常有积水,存在电缆漏电的安全隐患,因此需要不定期检查和排水。本设计使用水浸传感器检测箱变基坑积水情况。水浸传感器应用液体导电原理,用电极探测是否有积水存在。选用带有 RS485 通信功能的接触式水浸探测器。水浸探测器的工作原理如图23所示。
图23 水浸变送器工作原理
四、系统软件设计
该系统软件设计包括箱变现场总线局域网软件设计和基于机智云平台的箱变远程监控系统设计两部分。箱变现场总线局域网中微机综合保护装置、智能网络电表以及智能传感器等设备已内嵌应用软件,所以只需要进行箱变现场控制器的软件程序设计。
4.1 箱变现场控制器软件设计
箱变现场控制器为嵌入式系统,其软件系统由应用程序、API、嵌入式操作系统和BSP(板级支持包)组成。根据10kV智能箱变现场控制器采集的参数多、任务多、实时性要求高的特点,选择广泛应用于商业产品开发和教学研究的μC/OS-Ⅲ嵌入式实时操作系统。μC/OS-Ⅲ以任务为最小单元,任何任务不需要关心资源的具体管理方法,由操作系统来决定。μC/OS-Ⅲ默认有 5 个系统任务如表12所示;μC/OS-Ⅲ的任务可分为 5 种状态如表13所示。
表12 μC/OS-Ⅲ操作系统5个系统任务
表13 μC/OS-Ⅲ操作系统的运行状态
4.2箱变现场控制器软件程序设计
整个软件系统设计以智能仪表、传感器、现场控制器和云平台组成的分布式系统为基础,进行应用软件的设计开发,箱变现场总线设备利用串口通信协议进行现场控制器与传感器模块之间的数据传输和交换,现场控制器与机智云服务器利用 GPRS 固件中的机智云通信协议进行数据传输和交换。箱变现场控制器应用软件的主程序流程图如图24 所示.
图24 箱变现场控制器软件主程序的流程图
*软件主程序。首先,系统各部分进行初始化,比如 GPIO、串口、时钟、内存管理等,并且在 μC/OS-Ⅲ中创建好任务。STM32 进行传感器数据采集和处理,将正确的信息发送到LCD显示。同时STM32给GPRS-G510模块发送AT指令,交互数据,通过LwM2M 协议对接机智云平台,并判断 GPRS 通信模块是否连接机智云服务器成功。若连接成功,则进行数据传输。然后判断处理过的数据是否大于设定阈值。
若属于箱变轻微故障,则通过云平台发送数据信息至手机 APP;若属于一般故障,则通过云平台发送数据报警信息至手机 APP,并启GPRS-GA6 通信模块通过手机短信发送报警信息;若属于严重故障,则通过云平台发送数据报警信息至手机 APP,并启动 GPRS-GA6 通信模块通过手机短信发送报警信息和并拨打预设的相关人员电话。具体程序设计源代码如下:
main.c 文件:
#include "delay.h"
#include "key.h"
#include "sys.h"
#include "usart.h"
#include "rs485.h"
#include "led.h"
#include "Modbus.h"
#include "ModbusCRC.h"
#include "lcd.h"
#include "adc.h"
#include "usart3.h"
#include "timer.h"
#include "gizwits_product.h"
#include "common.h"
#include "includes.h"
#include "task.h"
#include "GA6_module.h"
#include "uart4.h"
#include "uart5.h"
u8 WIFI_start=0;
extern dataPoint_t currentDataPoint;
extern uint8_t text2[];
//协议初始化
void Gizwits_Init(void)
{
//TIM3_Int_Init(9,7199);//1MS 系统定时
usart3_init(9600);//WIFI 初始化
memset((uint8_t*)¤tDataPoint, 0, sizeof(dataPoint_t));//设备状态结构体初始化
//userInit();
gizwitsInit();//缓冲区初始化
//gizwitsSetMode(WIFI_AIRLINK_MODE);//Air-link 模式接入
}
#if 0
void Date_Acquisition(void)
{/*
for(i=0; i<length; i++) //循环发送数据
{
while(USART_GetFlagStatus(USART1,USART_FLAG_TC== RESET);
USART_SendData(USART1,Receive_Buff);
}*/
if(t%50 == 0)
lcd_show();
if(t>210)
t=0;
t++;
}
#endif
extern OS_TCB StartTaskTCB;
extern CPU_STK START_TASK_STK;
int main(void)
{
OS_ERR err;
CPU_SR_ALLOC();
delay_init(); //延时初始化
NVIC_PriorityGroupConfig(NVIC_PriorityGroup_2);//中断分组配置
uart_init(115200); //串口波特率设置
RS485_Init(9600); //初始化 RS485
LED_Init(); //LED 初始化
LCD_Init();
LCD_Clear(BLACK);
POINT_COLOR=WHITE;
KEY_Init(); //按键初始化
uart4_init(115200);
uart5_init(9600);
MY_IO_Init();
Gizwits_Init();
Speak_Init();
for(;;)
{
if(WIFI_start)
{
//Speech(text2,26);
delay_ms(1000);
break;
}
gizwitsHandle((dataPoint_t *)¤tDataPoint);//协议处理
}
OSInit(&err); //初始化 UCOSIII
OS_CRITICAL_ENTER();//进入临界区
//创建开始任务
OSTaskCreate((OS_TCB * )&StartTaskTCB, //任务控制块
(CPU_CHAR * )"start task", //任务名字
(OS_TASK_PTR )start_task, //任务函数
(void * )0, //传递给任务函数的参数
(OS_PRIO )START_TASK_PRIO, //任务优先级
(CPU_STK * )&START_TASK_STK, //任务堆栈基地址
(CPU_STK_SIZE)START_STK_SIZE/10, //任务堆栈深度限位
(CPU_STK_SIZE)START_STK_SIZE, //任务堆栈大小
(OS_MSG_QTY )0,//任务内部消息队列能够接收的最大消息数目,为 0 时禁止接收消息
(OS_TICK )0, //当使能时间片轮转时的时间片长度,为 0 时为默认长度,
(void * )0, //用户补充的存储区
(OS_OPT )OS_OPT_TASK_STK_CHK|OS_OPT_TASK_STK_CLR, //任务选项
(OS_ERR * )&err); //存放该函数错误时的返回值
OS_CRITICAL_EXIT(); //退出临界区
OSStart(&err); //开启 UCOSIII
while(1);
}
task.c 文件
#include "task.h"
#include "led.h"
#include "rs485.h"
#include "delay.h"
#include "Modbus.h"
#include "ModbusCRC.h"
#include "lcd.h"
#include "key.h"
#include "gizwits_product.h"
#include "uart4.h"
#include "uart5.h"
*数据采集子程序设计。首先,主程序开启串口数据通信功能,STM32 按照上位机读取传感器数据问询帧格式向传感器下发数据采集命令,传感器按照下位机传感器数据问询帧格式上传数据。STM32 收到传感器上传的数据帧后,按规定格式解包和 CRC校验;如果 CRC 校验结果错误,则重新采集传感器数据。
理论上,一个 RS485 总线回路可以接 247 个传感器设备,每个传感器都提前定义了一个唯一的地址。STM32 下发的数据帧每个智能传感器都能收到,并对其解包;当传感器地址与 STM32 下发的数据帧的帧头地址一致时,传感器首先进行 CRC 校验;若 CRC校验结果正确,传感器将指定寄存器的数值按照标准数据格式上传至 STM32 单片机。单片机再调用相关程序读取数据,计算出实际参数。STM32 单片机数据收发流程图如图 25 所示。
图25 STM32 单片机数据收发流程图
*GPRS-GA6 子程序设计。STM32 可以通过向 GPRS-GA6 模块发送 AT 指令拨打电话,拨打电话报警任务流程图如图26所示。
图26 GPRS-GA6 拨打电话任务流程图
首先,初始化串口 4,开启中断接收;然后发送“AT”指令确认链路通断情况;如果 GPRS-GA6 模块返回“OK”则表示链路接通。接着发送“AT+CPIN?”确认 SIM 卡是否存在,以及发送“AT+CERG?”确定 GPRS 模块注册网络是否成功。完成这两步检测后,可以发送“ATD+用户手机号;”拨打电话到指定的用户手机上,通过电话报警“箱变发生严重故障”。报警指令发送完成后,马上挂起该任务,以防止短时间多次拨打电话。如果报警指令出错或是发送失败,STM32 的串口 4 没有收到数据指令,则设置错误标志位并直接挂起任务,然后等待错误分析任务确认后重启电话任务。
4.2 机智云平台箱变远程监控系统的设计开发
云平台被喻为第四次信息革命的开端,它将应用部署在云端,充分利用互联网的渗透性,与移动设备完美融合。云端硬件、软件的维护和更新升级由专业云服务提供商负责,用户根据应用系统的需要扩展云端资源,按照自身需求购买服务并支付相应的费用。
机智云为开发者提供了物联网 PaaS 云服务平台,通过多元化的应用 API 提供了完善的 SDK(软件开发工具包),IDE 集成开发环境,MCU 代码自动生成器以及 APP 代码自动生成器等。机智云平台还提供了基于云计算的大数据统计分析,人工智能和标准化 IoT 应用服务,开发者可以在云端进行物联网应用和服务的二次开发。
为了实现端到端的研发,在设备端机智云提供了联网模块 GAgent 和标准串口通讯协议,支持 WiFi、GPRS、3G、4G、NB-IoT 等多种无线接入方式;在 APP 端机智云提供了 iOS 、Android 和微信等 SDK。针对设备开发和应用开发,机智云推出了 MCU 代码自动生成工具和APP 代码自动生成工具,帮助开发者低成本、快速的实现 IoT 设备的数据采集分析、设备管理和用户管理等系统远程监控功能。本系统选用机智云平台作为云端服务器,使用机智云平台提供的 G510 GAgent 组件进行设备与云端的通信。
*G510 Gagent 固件。G510GAgent 主要的作用是数据转发,是设备数据和机智云数据交互的桥梁。该固件内置了《机智云平台标准接入协议之MCU与WiFi模组通讯》、《机智云平台标准接入协议之设备与云端通讯》和《机智云平台标准接入协议之 APP与设备通讯》,用户只需关注产品系统的业务逻辑开发,不用关心数据的通讯功能开发。 G510 GAgent 提供了一套对嵌入式系统开发友好的封装,开发工程师只需面向业务逻辑编程,不用考虑云端通信的细节。该模块通过串口和微控制器进行通讯,采用 DC 5V供电方式。
* 云端创建产品和数据点。机智云基于自助式智能硬件开发工具与开放的云端服务,为开发者提供了自主开发接入流程。开发者按照流程注册一个账号,然后创建新产品,定义产品数据点,进行 MCU 开发和 APP 应用开发。首先在机智云云端创建“10kV智能箱变远程监控系统”产品,机智云会自动为产品分配一组 Product Key 和 Product Secret,每个 G510 模组对应 1 个产品编号和密钥。Product Key 由开发者写入嵌入式系统的 MCU,并告知 GPRS 模块;GPRS 模块登录机智云后,机智云会识别该 Product Key 的产品。本系统已建立了多个传感器数据点,新建数据点界面如图27所示。
图27 机智云平台部分数据点建立图
Product Secret 是 APP 开发和服务器对接时需要使用的参数。数据点用于描述产品属性和功能,数据点创建后可确定云端与设备通讯的数据格式。数据点基本内容包括显示名称,标识名,读写类型,数据类型和备注。数据点的显示名称如:开关、温度等。读写类型包括只读、可写、报警和报警。数据类型包括布尔值、数据类型、数值和扩展。备注用于说明当前数据点的功能和定义方法,提高数据点的易读性。
* 生成 MCU 代码。根据创建的数据点,在“MCU 开发”选项界面中选择“独立 MCU 方案”,以及“硬件平台 STM32F103ZET6”选项,机智云直接生成适应 STM32F103ZET6 芯片的工程代码。自动生成的 MCU SDK 代码提供了机智云通信协议的封包和解析,传感器数据和通信数据的转换逻辑,并且封装成了简单的 API。当设备收到云端传输的数据后,程序将数据转换成对应的事件并通知应用层,开发者只需在对应事件的处理逻辑中添加传感器控制函数,便可完成产品开发。
* 生成手机 APP 代码。为降低开发智能硬件 APP 的开发门槛,机智云在《APP开源框架》的基础上推出了实现产品完整控制功能的 APP 开源代码。在开发者完成产品和相关数据点后,在应用配置中选择 Andriod 或 iOS 手机操作系统,生成对应手机系统的 APP 代码。开发者下载源码后,只需要优化界面设计和产品控制界面的控制逻辑设计,按照机智云 SDK 控制设备的标准流程进行相关代码的优化即可完成智能箱变远程监控系统手机 APP 的开发。
五、系统调试与分析
系统调试与分析的主要任务是检查硬件电路是否正常,启动系统监测设备测量数据是否稳定正确;当达到设定的阈值时,系统是否启动相应报警程序,是否可以发送短信以及拨打电话报警。
设备整体安装完成后,经过调试,温度、湿度、烟雾浓度、电流、电压等数据可以正常在屏幕上显示,并且数据显示正确,更改环境参数后,屏幕显示及时刷新,监测结果正常。设备整体调试如图28 所示,现场控制器 LCD 屏上显示的电气和环境运行参数如图 29所示。
图28 智能箱变远程监控系统调试
图29 现场控制器 LCD 屏显示的箱变电气、环境运行参数
通过机智云平台,PC 端或手机 APP 可以随时查看设备运行状况,APP 显示数据与设备屏幕上显示数据一致,通过手机 APP 可以远程控制风扇的开启。手机 APP 显示的部分监控数据如图 30所示。
图30手机 APP 显示的部分测试数据
经过了一段时间的系统运行测试,远程监控系统设备运行正常,各种传感器测量参数准确,实现了用户通过手机 APP 远程监控箱变环境、电气运行参数和设备工作状态的目标。经过测试,手机 APP 部分经过调试实现了与箱变传感器、执行设备的即时通信,在手机 APP 上可以随时查看箱变的环境和电气运行参数,可以在手机上远程实现对风扇等设备的启停操作。若发生因网络故障导致设备掉线后,还可以实现设备的自动连接。
10kV 智能箱变远程监控系统中设置了多个环境和电气运行参数的阈值,当检测数据超过设定阈值,现场控制器自动启动相应报警程序。根据箱变故障等级,系统设计了不同的现场报警和远程报警模式,以免小故障酿成大事故。具体故障等级和报警模式如表14所示。箱变设备故障短信报警如图31所示。
表14 箱变故障报警模式
图31 箱变设备发生故障时手机短信报警
六、总结
本文针对传统 10kV 箱变缺少运行环境和设备的远程监控,智能化程度低、供电安全、可靠性低等缺陷和问题,以某高校 5 号学生公寓 10kV 智能箱变设计为背景,设计了基于物联网的 10kV 智能箱式变电站。通过侧重于基于物联网的 10kV 智能箱变环境 和设备远程监控系统的设计。该系统经过长时间的实验室设计、制作和整体测试。其中,在机智云平台设计开发了远程监控系统。实现了用户随时通过电脑 WEB 或手机 APP 远程监控箱变温湿度、烟雾报警和电缆基坑积水等环境参数,电流、电压、频率和功率因数等电气参数以及设备工作状态等功能。当箱变运行出现异常或故障,监控系统自动判断故障等级,并通过箱变现场警铃、手机 APP、短信和电话等不同组合方式报警通知相关工作人员,及时排除故障隐患,预防电气事故的发生。
基于物联网的 10kV 智能箱式变电站远程监控系统由箱变内的“现场总线局域 网”和箱变外的“云平台广域网”组成。这种系统结构模式可应用于电力远程抄表、路灯 远程监控管理、管网远程监测、城市能耗监测、供水系统远程监控、电梯远程监控和大中型实验设备远程监控系统等多种设备远程监控系统的设计开发,提升传统设备的智能化水平和管理服务水平。
页:
[1]