APP下载

基于物联网的太阳能充电桩收费系统设计

2022-03-16常海青梅华强

物联网技术 2022年3期
关键词:扫码页面太阳能

田 璞,常海青,梅华强

(1.厦门理工学院 光电与通信工程学院,福建 厦门 361024;2.厦门冠宇科技股份有限公司,福建 厦门 361000)

0 引 言

随着工业的进步和发展,全球能源供应紧张、环境污染问题愈演愈烈。我国正努力推动新能源的开发并提高新能源的占比,提倡节能减排和倡导绿色出行,减少传统汽油和柴油车的使用。以蓄电池作为能量来源的电动车(主要是电动自行车和电动汽车)恰好符合我国当前的节能减排政策。

对于大多数人来说,电动自行车是一种常见的绿色环保交通工具,具有节能、便捷、价格低廉的特点,且市场需求量巨大。然而,由于目前相应的充电设备较少,电动自行车电池重量大、携带困难,导致随意私拉电线充电的现象较多,对社区来说存在重大的安全隐患。而太阳能充电桩就很好地解决了上述问题,太阳能是一种清洁环保的绿色能源,具有重要的环保价值;其次它不受地域限制,可以安装到社区、景区、公园广场等空旷位置实现发电的功能。

针对太阳能充电桩的应用场景以及如何进行充电收费的研究具有重要的现实意义。在此之前,已有一些关于普通充电桩计费或控制系统的相关文献。文献[3]介绍了一种基于蓝牙通信的新型充电桩控制系统,通过蓝牙和手机自有的通信网络建立APP客户端的连接,完成充电支付的功能。文献[4]基于STM32F105VCT6芯片,设计了一款支持触摸/刷卡操作的4G通信三相交流充电桩控制系统。文献[5]基于NuMicro M051系列的芯片设计了一款交流充电桩系统,并使用Android 平台开发的APP实现数据采集、显示和交互等功能。文献[6]设计了由手机APP客户端、云服务器、分布式充电桩组成的基于云存储数据的充电桩控制系统。

上述研究针对的是普通充电桩,与太阳能充电桩相比环保性有所欠缺,且针对手机的不同操作系统需单独下载APP。考虑到现有的微信APP不受操作系统限制,且有着超过11亿的月活资源,用户基数大、即开即用、使用方便;另外,目前关于充电桩如何进行收费的文献也较少,本文拟设计一种基于物联网的太阳能充电桩收费系统。云服务器MySQL提供稳定的后台,通过K-means聚类算法对充电桩用户充电数据进行大数据挖掘,控制硬件以STM32、SIM800C为核心,使用微信小程序扫码支付。

1 系统总体设计

系统的结构主要分为三部分:感知层、网络层和应用层。感知层主要是集成了STM32、SIM800C、继电器的充电桩控制硬件等具有数据采集功能和通信功能的终端设备,并控制继电器的通断实现太阳能充电桩的充电功能;网络层主要为阿里云服务器,通过TCP/IP协议与感知层进行连接,提供统一的数据交互和存储处理服务;应用层主要是通过用户手机上的微信APP,为用户提供可视化的服务,通过扫码进入小程序选择通道和套餐支付并开启太阳能充电桩的充电功能。系统框架如图1所示。

图1 系统框架

2 系统组成部分设计

2.1 充电桩控制硬件设计

控制硬件主要包括微处理器模块、GPRS通信模块、继电器模块、电流检测模块、供电模块等。硬件设计以嵌入式微处理器STM32F030C8T6为核心,并利用GPRS通信模块实现与云服务器的数据传输和交互。继电器负责实现太阳能充电桩的通断功能。如图2所示为充电桩控制硬件系统框图。

图2 控制硬件结构

2.1.1 微处理器模块

基于Cortex-M0内核的STM32F030C8T6是由意法半导体(ST)集团生产的一款高性能单片机,其主要原理如图3所示。STM32F030C8T6单片机具有价格低廉、资源丰富、功耗低的特点,其I/O接口丰富,且接口电路比较简单,能充分满足太阳能充电桩控制硬件的功能要求。

图3 STM32F030C8T6的主要原理

2.1.2 GPRS模块

考虑到太阳能充电桩的应用场景主要为室外空旷地区,所以采用GPRS模块可以更好地满足本系统的通信要求。选择SIM800C芯片作为本收费系统的GPRS通信模块,其主要原理如图4所示。SIM800C是一款性能稳定、外观小巧、性价比高的四频GSM/GPRS模块,通过AT指令控制可以低功耗地实现数据信息的传输。单片机只须通过串口与SIM800C模块进行通信。对于放置在室外的太阳能充电桩来说,只要有移动网络的覆盖,它就可以与云服务器端进行TCP/IP协议的传输。

图4 SIM800C的主要原理

2.1.3 供电模块

将太阳能充电桩内的蓄电池作为供电电源,电源输出为12 V,然后经降压恒压芯片H6203转为5.4 V;而控制硬件的核心STM32F030C8T6微处理器需要3.3 V供电,所以再经低功耗稳压芯片HT7333转换为3.3 V给STM32F030C8T6微处理器供电;而SIM800C模块需要4 V供电,所以从H6203芯片转换后还需要经低压差稳压器MIC29302WU转为4 V给SIM800C模块供电。供电模块部分电路如图5所示。

图5 供电模块的原理

2.1.4 继电器模块

继电器模块设计如图6所示。SW1接到STM32F030C8T6微处理器的PB0,当用户扫码选择充电通道并支付成功后,云服务器给充电桩控制硬件下达指令,微处理器输出高电平时三极管导通,随后继电器线圈通电,触点吸合,用户即可充电。

图6 继电器模块的原理

2.1.5 电流检测模块

电流检测模块选用了基于霍尔感应原理的电流检测专用芯片—ACS712,其原理如图7所示。ACS712是由Allegro公司开发的一款线性电流传感器,内置精确的、低偏置的线性霍尔传感器电路,具有输出灵敏度高、响应时间快、性价比高、使用方便等特点。电流经霍尔传感器ACS712后再经过LM358运算放大器输出到STM32F030C8T6微处理器内部的ADC,这样就构成了一个电流检测模块。

图7 电流检测模块原理

2.2 充电桩控制软件设计

设计完充电桩控制硬件后,在此基础上进行充电桩控制软件设计。软件设计在Keil平台上使用C语言进行。

2.2.1 主程序软件设计

主程序软件设计如图8所示。充电桩控制硬件接入太阳能充电桩内,控制硬件上电后执行主程序,微处理器进行初始化操作;然后进入程序的主循环,控制硬件执行GPRS读取程序,准备与云服务器建立网络连接;确认无误后,执行UART发送打包程序,通过GPRS通信方式将数据发送到云服务器固定IP与端口;再将注册包发送给云服务器,收到云服务器回复的数据后确认注册成功,云服务器端获取充电桩设备在线状态,即可等待用户使用。

图8 主程序流程

2.2.2 GPRS通信程序软件设计

通过STM32F030C8T6微处理器可对SIM800C通信模块进行初始化设置与TCP/IP协议封装。微处理器通过向SIM800C发送AT指令完成相关数据交换,AT指令的语法格式以“AT”开头,指令以“ ”结尾;SIM800C上电复位后,微处理器发送一系列AT指令来查询模块相关状态。具体指令见表1所列。

表1 AT指令表

充电桩控制硬件通过TCP/IP协议与云服务器建立稳定连接,控制硬件作为TCP客户端向云服务器发送TCP连接请求。采用AT指令:AT+CIPSTART=“T CP”“8.129.168.129”“8086”,其中“8.129.168.129”是云服务器的IP地址;“8086”是对控制硬件开放的端口号。控制硬件接收该命令后,就与云服务器建立一个TCP连接,成功连接后将返回“CONNECT OK”;发送“AT+CIPSEND”,云服务器返回“>”表示准备完毕;控制硬件端将数据以JSON格式编码发送给云服务器。GPRS数据发送流程如图9所示。

图9 GPRS通信程序软件设计

2.3 云服务器及数据库配置

为方便进行云端开发和托管,本系统采用阿里云服务器。云服务器是太阳能充电桩与用户之间交互的桥梁,一个安全稳定的云服务器是整个太阳能充电桩收费系统安全稳定运行所必须的。将数据库MySQL安装在云服务器中,负责存储、维护与设计系统相关的数据,如何设计数据库是整个软件系统的核心,也是最底层的技术,是保障整个系统稳定运行的关键。

2.3.1 云服务器搭建流程

选用Centos 8.0作为云服务器的操作系统,在系统中配置了JDK、MySQL、Tomcat的工作环境。环境配置所需的具体安装指令如下:

(1)安装JDK1.8指令:

sudo yum install java-1.8.0-openjdk.x86_64

(2)安装MySQL5.7指令:

wget-i-c http://dev.mysql.com/get/mysql57-community-releaseel7-10.noarch.rpm

yum-y install mysql57-community-release-el7-10.noarch.rpm

(3)安装Tomcat指令:

sudo tar-zxvf apache-tomcat-8.0.47.tar.gz-C/opt/tomcat--stripcomponents=1

2.3.2 数据库配置

为了更好地收集太阳能充电桩设备和充电用户的数据,并对其进行存储和处理,经过对比考量,选用MySQL作为本系统的数据库。

MySQL是一种开源的关系型数据库管理系统,该数据库占用内存小,响应速度快,能够充分满足本系统的要求;此外,该数据库将数据存储在不同的表格,而不是将所有数据直接存入一大块内存中,提升了数据访问以及其他操作的灵活性。

(1)JDBC数据库连接

Java DataBase Connectivity是专门用于访问数据库的一套标准,由一组类和接口组成,它负责浏览器与数据库的连接,并执行与数据库相关的操作,简称JDBC。JDBC技术作为J2EE中一种访问数据库的方法,从本质上来说,它是一些API,用来实现Java与数据库的数据交互,同时提供了一个独立于数据库的应用程序接口,供应用程序开发人员来构建应用程序。通过JDBC API云服务器可访问JDBC DriverManager,JDBC DriverManager可 通 过 JDBC Driver API访问各种JDBC Driver。目的是在JDBC API制作的程序调用数据时,实际数据库能够采取相应的处理,从而实现对数据库的访问。JDBC API表示访问接口一般位于JDK中的java.sql包中。

(2)数据库表设计

数据库表主要包含用户表、设备表、订单记录表三类,分别见表2、表3、表4所列。

表2 用户表

表3 设备表

表4 订单记录表

2.3.3 大数据分析模块

K-means是一种应用广泛的数据聚类算法,其基本思想是:首先需要选择,也就是要找到的簇数,接着将之前输入的个数据对象分类为个簇,使得所获得的簇满足相同簇中的对象相似度较高,不同簇中的对象相似度较小这一要求。通过不断地迭代,逐次更新各聚类中心的值,直到获得最好的聚类结果。

为了更好地分析和探索太阳能充电桩用户的充电行为,本设计采用K-means聚类算法对用户充电大数据进行数据挖掘,以便给用户提供个性化的服务,提升用户的使用体验和满意度,达到精准服务的目的。其算法流程如下:

2.4 微信小程序设计

微信小程序是把服务与用户相连接的一种新方法,它具有即开即用的特点;与传统APP相比,它不受手机操作系统限制,不需要下载和安装,用户在微信中搜索或者扫码即可打开应用。

用户通过微信小程序可以定位当前位置,导航到附近最近的充电桩并实现扫码充电、支付结算、查看订单等一系列功能,是实现太阳能充电桩收费功能的重要人机交互界面。

2.4.1 小程序主界面设计

使用微信官方提供的微信开发者工具对微信小程序进行开发。首先要在app.json中新建系统来实现微信小程序需要的页面,在pages路径下进行页面编写。根据需要实现的功能分别建立不同的页面。

在微信小程序主页面开发过程中关键的一项就是pages的配置项,pages配置项接收完一个字符串型的Array参数即可确定小程序的主要组成页面。微信小程序启动时所呈现的页面即初始页面就是Array参数的第一项。在开发微信小程序的过程中,通过修改pages配置项的Array参数来实现对页面的增删改除。在pages配置项中不需要对文件添加后缀名,小程序框架会自动找到对应位置下的WXML、WXSS、JS和JSON文件,WXML文件用来编辑页面的结构并进行数据绑定,WXSS文件主要负责页面的样式设计,JS文件负责页面的动态交互业务逻辑。

图10是小程序的主页面。太阳花智能充电桩是微信小程序的名称;右下方为用户的微信头像;箭头为用户的位置;最上方是扫码充电按钮,点击此按钮将调用手机的相机功能,即可跳转到扫码界面来扫描太阳能充电桩设备上的二维码进行充电。

图10 小程序主页面

2.4.2 扫码支付结算功能模块设计

用户在扫描太阳能充电桩设备的二维码时,调用wx.scanCode接口获取对应设备的信息。若充电设备处于空闲状态,在选择套餐付款成功后则开启太阳能充电桩并对太阳能充电桩所接负载进行充电,实现微信支付功能需要调用wx.requestpayment接口。

在小程序端,用户扫码选择充电套餐后生成待支付订单;支付订单页面主要由支付方式和订单详情两部分组成,用户在核对完订单后进行付款,小程序端就会将支付请求发送给云服务器,小程序页面监听到用户的付款操作,代表用户将会在小程序端执行付款请求,在pay.js控制器中实现付款行为。执行pay.js中的exe.Pay()方法可以对微信预支付订单参数发起请求,通过pre_pay API可以对订单请求支付。小程序客户端的Model层使用wx.requestpay()方法在接收到订单支付请求后将付款结果再返回到微信小程序客户端。图11是小程序支付业务逻辑图。

图11 支付业务逻辑图

3 系统整体测试

将充电桩控制硬件接入太阳能充电桩内,由桩内蓄电池供电,输出端接负载;使用手机扫描太阳能充电桩上对应控制硬件的二维码进入到微信小程序,选择通道界面如图12所示;选择通道一并支付的界面如图13所示;付款完毕后听到继电器打开的声音,太阳能充电桩开始给负载进行充电,在微信小程序可以看到剩余充电时间,如图14所示。

图12 选择通道界面

图13 支付界面

图14 充电界面

4 结 语

本文设计了一种基于物联网技术的太阳能充电桩收费系统。系统包括充电桩控制硬件设计、云服务器及数据库设计、微信小程序设计三部分。经过实际测试,本系统运行正常,用户可以通过微信小程序实现扫码付款并开启太阳能充电桩。为太阳能充电桩提供了一种更智能的收费方式,对新能源的利用和普及具有现实意义。

猜你喜欢

扫码页面太阳能
应用广泛的太阳能无人机
脐橙连上物联网 扫码便知“前世今生”
山之高
刷新生活的页面
太阳能可以这样玩
中国进入“扫码”时代
扫码看直播
太阳能虚拟窗
2016《太阳能》与您同行
网站结构在SEO中的研究与应用