聚丰项目 > 智能NB-IoT物联网的无线充值器系统

智能NB-IoT物联网的无线充值器系统

随着社会的发展,居民生活进入信息时代,在水、电、燃气等民生问题中,水卡,电卡,天然气卡等成为每个居民生活不可缺少的一部分,对水、电、燃气的充值成为生活的需要。 目前针对充值卡的充值采用的是定点充值,当卡里的余额不足时,用户需要安排时间去居住地附近的充值点进行人工充值以保证正常的生活。 人工充值受先下班时间的限制,在突发情况下遇到人工充值点下班不营业的情况下,用户不能充值,会对居民的生活造成困扰。 该系统的优点如下: 1、智能NB-IoT物联网的无线充值器系统,解决现有技术人工充值点受时间限制不能随时充值的问题。 2、该系统设备有智能NB-IoT物联网模块,能够有效的将每次充值的数据推送到后台服务系统。 3、该系统设备有智能NB-IoT物联网模块有定位功能,能在地图上展示设备所在位置,方便用户查找。实现设备共享的目的。 4、使用微信小程序平台实现IC卡充值。

jf_21102043 jf_21102043

分享
0 喜欢这个项目
团队介绍

jf_21102043 jf_21102043

团队成员

李国川 嵌入式工程师

闫耀丽 嵌入式工程师

分享
项目简介
随着社会的发展,居民生活进入信息时代,在水、电、燃气等民生问题中,水卡,电卡,天然气卡等成为每个居民生活不可缺少的一部分,对水、电、燃气的充值成为生活的需要。 目前针对充值卡的充值采用的是定点充值,当卡里的余额不足时,用户需要安排时间去居住地附近的充值点进行人工充值以保证正常的生活。 人工充值受先下班时间的限制,在突发情况下遇到人工充值点下班不营业的情况下,用户不能充值,会对居民的生活造成困扰。 该系统的优点如下: 1、智能NB-IoT物联网的无线充值器系统,解决现有技术人工充值点受时间限制不能随时充值的问题。 2、该系统设备有智能NB-IoT物联网模块,能够有效的将每次充值的数据推送到后台服务系统。 3、该系统设备有智能NB-IoT物联网模块有定位功能,能在地图上展示设备所在位置,方便用户查找。实现设备共享的目的。 4、使用微信小程序平台实现IC卡充值。
硬件说明

按照功能框图对硬件进行描述:

1、通信通知模块是中科蓝讯AB32VG1开发板。该开发板有UART*3,IIC,timer等接口,具体如图一

image.png

图一

2、IC卡识别模块是7816接口,用于对充值卡进行读写,自制的IC承载工具。

    由于IC卡支持7816接口,中科蓝讯AB32VG1开发板的GPIO模拟IIC对充值卡进行读写操作。

3、NB-IoT 物联网通信模块是ME3616-G1A,通过串口命令AT命令通信。该模块有NB-IoT 物联网通信功能,还自带定位功能。实现较为准确的定位。

    中科蓝讯AB32VG1开发板的UART2连接NB-IoT 物联网通信模块是ME3616-G1A的TXD和RXD,用于进行AT命令交互。ME3616-G1A模块通过AT命令驻网,连接到电信平台,同时MCU通过协议交互实现通信。

4、LED指示灯提示系统启动和通信状态。

IC卡识别模块读取成功的信息时,指示灯常亮;当IC卡识别模块读取失败的信息时,指示灯以第一预设时间为周期进行闪烁;当ADC采样电压信息正常时,指示灯以第二预设时间为周期进行闪烁;当ADC采样电压信息异常时,指示灯以第三预设时间为周期进行闪烁;当IC卡识别模块读写成功时,指示灯以第四预设时间为周期进行闪烁;当IC卡识别模块读写失败时,指示灯以第五预设时间为周期进行闪烁。

5、开发板使用说明:

    1)使用内核,使用了多线程,包含空闲线程钩子功能,软件定时器,线程间通信,互斥锁,信号量和消息队列。

    2)组件使用shell命令,HWTIMER设备驱动程序,RTC设备驱动程序。

    3)硬件使用 UART GPIO Timer等。

6、使用BLE和手机蓝牙进行数据交互通信。

    手机微信小程序通过蓝牙连接中科蓝讯AB32VG1开发板蓝牙,简单的发送读写卡命令。实现对充值卡进行读写。

软件说明

平台:RT-Thread Studio

语言:C语言

设备驱动:GPIO、ADC、模拟IIC,UART,BLE

项目地址:https://gitee.com/enterver/ab32-vg1_-project


软件流程图


微信截图_20211130161506.png

软件分布

image.png

说明:

由于时间紧张,很多代码都是集合在一个.c文件中的,简单的说明下各个.c文件实现功能。

ble_process.c文件中的线程主要实现蓝牙通信,数据交互,通过消息队列和ic_type.c线程中的7816接口进行数据交互,实现IC卡的读写。

nbiot.c文件中的线程主要通过AT命令和远程通信模块实现。通过消息队列和ic_type.c线程通信,获取读写卡相关内容,同时获取ADC采样相关信息。

演示效果

演示视频地址:

https://www.bilibili.com/video/BV1GP4y1G7nv/


产品整体框图1

67a9bb7326a67950f772bd3354b857d.jpg

产品整体框图2


评论区(2 )
  • 崽文622: 122121

    回复

    • 崽文622: 1111111

      回复