基于OneNET的多模式远程控制开关系统设计

物联网技术  2022年 / 第2期
360 引 言
当今时代,物联网技术应用有了很大的发展。网络通信的发展和智能手机、平板等终端设备的普及以及更广的WiFi 信号覆盖范围,为智能设备的远程控制应用提供了良好基础。同时,物联网云平台的推广应用也极大地促进了各种远程控制的实现,远程控制开关系统在智能家居和其他工程控制中有较广阔的应用空间,在控制方式上一般为智能芯片控制(GSM 模块)或WiFi 模块远程控制[1-2]。采用GSM 短信控制方式时,系统接收手机发送的短信,匹配短信内容的关键字,对远程开关进行控制;采用WiFi 远程控制得到了更广泛的应用,主要实现智能插座一路或多路开关的通断控制。本文设计一种以WiFi 方式远程控制的开关系统,以多模式方式实现按键模式控制、定时模式控制、循环模式控制、温控模式控制。相
比传统远程开关单一的开关控制方式,更加适用于不同的应用场合。选择中国移动OneNET 云平台构建手机端可视化用户界面,可以方便地对开关装置实现远程控制。模式设定、参数设置均在手机端完成,并发送到开关装置,开关装置根据不同模式执行不同的功能,根据设置的参数控制开关的运行状态。
1 系统组成与功能
多模式远程开关控制系统包括开关装置部分和OneNET
云平台构建的远程访问控制部分。开关装置部分包括STM32F103RCT6单片机、WiFi 模块ESP8266、时钟芯片DS3231、继电器驱动、温度传感器DS18B20等。系统组成如图1所示。手机端采用OneNET 云平台提供各种控件,例如旋钮、文本框、按键等,创建可视化用户界面,通过调节控件参数,设定模式选项以及各模式下的运行参数
图1 系统组成框图
基本原理:系统接入OneNET 后,单片机读取DS3231的时钟数据作为系统定时模式或循环模式下的时间信息。读取温度传感器的温度测量数据,当系统处于温控模式时,与设定的温度阈值进行比较,从而控制开关的运作状态。单片机通过ESP8266访问OneNET 云平台,把开关装置的运行时间和温度测量值等数据发送到手机端。在云平台创建手机端可视化用户界面,实现开关控制的4种模式切换。手机端通过发送指令随时控制开关装置的运作模式,使开关装置能够按照预设功能对开关进行有效控制。
手机端模式选择设定,设置旋钮0~3对应表示4种 模式:
(1)模式0为按键模式,用户在手机端操作按键控制开关通断;
闫施锦,陈 淼,刘静波
(南京工程学院 信息与通信工程学院,江苏 南京 211167)
摘 要:
随着物联网技术的发展,远程数据传输和远程控制得到了广泛应用。为实现多种模式的远程控制开关系统,改变单一控制开关的通断模式,设计了包括开关装置和OneNET 云平台构建的多模式远程开关控制系统。开关装置采用单片机STM32F103RCT6为主控芯片,通过ESP8266模块连接OneNET ,在手机端创建可视化应用界面,设定按键模式、定时模式、循环模式、温控模式共4种控制模式。开关装置接收手机端发送的指令数据和参数配置,根据不同模式和参数执行不同的功能。经过实际测试,系统4种模式状态运行可靠,参数设定和数据传输正常,多种模式可适用于不同的应用场合。
关键词:
远程控制;开关系统;物联网;单片机;云平台;多模式中图分类号:TP311;TN929.5      文献标识码:A      文章编号:
2095-1302(2022)02-0036-05收稿日期:2021-05-25  修回日期:2021-06-24
基金项目:江苏省青蓝工程项目、江苏省高等教育教学改革研究课
题(2019JSJG139);教育部高等学校电子信息类专业教学指导委员会教改项目:电子信息类应用型本科专业教师发展性分类评价研究与实践(2020-YB-46)
2022年 / 第2期  物联网技术
37
(3)模式2为循环模式,
开关装置接收手机端设定的开、关分钟数值,循环实现当前开、关状态,例如开5 min ,关 3 min 的循环模式状态;
(4)模式3为温控模式,手机端设定温度阈值并发送到开关装置,当开关装置的温度测量值大于阈值时,开关装置处于接通状态,反之断开。
开关装置配置有E 2PROM 存储芯片AT24C02,用以保存手机端下发指令所包含的各项参数,包括定时时间、循环开/关时间、温度阈值等。开关装置接有320×240分辨率的TFT 显示屏,用以显示各项参数和当前模式。
2 硬件电路设计
图2所示为开关装置的硬件电路。以STM32F103RCT6为核心,合理分配单片机的资源,把各模块应用于系统电路中。STM32F103RCT6是基于Cortex-M3架构的高性能处理器[3]
,内含串口、外中断、DMA 控制器、定时器等[4-5]
,可
满足系统的应用需求
图2 硬件电路设计
称重装置
ESP8266作为一款高集成度的WiFi 模块,可以独立访问网络,也可以帮助其他主控芯片访问网络。ESP8266提供一组串口,接单片机串口引脚PA2和PA3,访问OneNET 云平台。ESP8266配置为客户端模式(STA ),连接到路由器访问网络[6],单片机的PA12连接ESP8266的复位管脚,初始化ESP8266时用以复位模块。
信号。单片机通过访问不同的器件地址读取挂载于同一组总线上时钟芯片和存储芯片的数据。DS3231芯片器件地址为0xD0(写)、0xD1(读),图2中AT24C02芯片器件地址为0xA0(写)、0xA1(读)。
DS3231时钟芯片是一款内置温补晶振的时钟芯片[7],供电电压为3.3 V ,DS3231的INT/SQW 引脚接入单片机的PC6,该引脚是1 Hz 信号输出端,需外接10 k Ω上拉电阻。初始化DS3231时,配置其控制寄存器0EH 为00H ,则INT/SQW 输出1 Hz 方波,该信号可作为外中断信号,接入单片机PC6,在中断服务程序中完成处理读取数据、读取温度、显示数据等任务,不占用主程序,提高了系统运行 效率。
DS18B20是单总线数字温度传感器[8],连接于单片机的PA11。DS18B20具备体积小、精度高、测温范围广等特点,在-10~85 ℃测量范围内,测温精度为±0.5 ℃,采用T0-92封装,广泛应用于温度测量、温度调节控制等场合。图2中,DS18B20的3脚电源接入3.3 V 电压,2脚是DQ 数据输入/输出端,通过10 k Ω上拉电阻接3.3 V 电压,与单片机之间以单总线方式进行数据读写。
批量控制器
单片机的PA8是继电器的驱动信号,PA8低电平时触发继电器动作。本系统选用型号为SRD-05VDC-SL-C 的继电器,其触点最大切换电压为250 V AC ,最大切换电流为 15 A ,线圈额定电压为5 V DC 。图2中加入了三极管驱动电路,起到了电平匹配转换的作用,当PA8为低电平时,三极管9012、9013导通,5 V 继电器吸合;当PA8为高电平时,三极管9012、9013截止,继电器断开。
摇臂式喷头3 软件设计
3.1 数据流分析
开关装置与OneNET 之间以MQTT 协议方式传输数 据[9],具备支持双向数据传输,实时性高,长时间稳定连接等优点。在OneNET 用户登录后,选择多协议接入,在MQTT 协议下创建“远程开关”产品,添加设备后,获取产
品ID 和设备ID ,用户设定鉴权信息,为访问OneNET 做准备。在多模式远程开关系统应用中,数据流的规划分为以下两 大类:
环保万能胶(1)上行数据流,即开关装置发送到OneNET 云平台的数据。主要是读取的时钟数据,测量的温度数据等。(2)下行数据流,即云平台下发的指令,包括模式控制、定时时间设定、循环模式下的开关时间设定和温度阈值。
物联网技术  2022年 / 第2期
38用作存放不同数据流的变量数据,数组变量time 用于读取DS3231时间数据[3]。
表1 数据流信息
数据流定义变量名变量含义变量数据类型类 别ON1HOUR alarm[0]定时开小时整型下行数据流ON1M1NUTE alarm[1]定时开分钟整型下行数据流OFF1HOUR alarm[2]定时关小时整型下行数据流OFF1MINUTE alarm[3]定时关分钟整型下行数据流INT_ON_
MINUTE alarm[4]
循环开分钟
整型
下行数据流
INT_OFF_MINUTE alarm[5]循环关分钟整型下行数据流
TEMP_THRESHOLD alarm[6]温度阈值整型下行数据流RUN_MODE
run_mode
模式选择整型下行数据流TEMPERATURE temperature
钙粉加工生产线测量温度浮点上行数据流HOUR time[0]读取小时整型上行数据流MINUTE time[1]读取分钟整型上行数据流SECOND time[2]读取秒整型上行数据流JDQ
jdq
按键
整型
下行数据流
3.2 主程序设计
系统上电后,首先对模块进行初始化处理,包括串口2 初始化、ESP8266初始化、DS18B20初始化、显示屏及外部中断配置初始化。经串口2发送指令给ESP8266,设置ESP8266为STA 模式,等待确认连接OneNET 服务器,按照MQTT 协议TYPE3格式对数据进行打包封装,每隔 5 s 发送数据至云平台。同时,系统随时接收解析平台发送的指令信息,执行不同指令,包括模式选择、温度阈值设定、定时开关时间设定,以及循环模式下的开关时间设定。解析完成后赋给相关变量,保存到AT24C02中。主流程如图3所示,可以看到,主流程中表示了多模式的执行过程,系统根据不同模式执行相应的功能。开关装置读取温度数据和时间信息,显示时间、参数等未放置于主流程中,而是采用STM32F103RCT6外中断服务程序实现,每秒进入一次外中断,读取数据、显示信息,提高主程序的 效率。
接收的变量数据run_mode 执行不同的控制方式。按键模式(run_mode=0),开关装置通过判断是否接收到手机端的按键控制指令控制开关状态;定时模式(run_mode=1),系统读取实时时间,当时间与设定的开、关时间相等时,分别控制运行状态为开或关;温控模式(run_mode=3),测量温度大于设定的阈值温度,开关装置的继电器吸合,反之 断开
图3 系统主流程
循环模式(run_mode=2)是循环执行设定的开、关时间数值,程序中alarm[4]、alarm[5]分别存放接收的循环开分钟和循环关分钟数值,循环开关执行依次运行。程序设计时,定义flag 变量为循环控制的参数,循环开状态结束时flag=1,为转入循环关运行状态准备;反之,循环关状态结束时flag=0,为转入循环开运行状态准备。每个切换过程中,alarm[4]、alarm[5]的数值不能改变,分别转存给int_on_temp 和int_off_temp 。程序中minute_flag==1表示1 min 计时达到,程序中递减开或关int_on_temp 和int_off_temp 的数值,直到开或关每个循环时间结束。minute_flag 是指外中断服务程序计时,可以很方便地得到1 min 的计时状态。实际测试时,系统按照给定的循环开关时间运行。循环模式运行的具体程序如下所示:
2022年 / 第2期  物联网技术
39
……
break;case 1: //定时模式执行
//……
break;case 2: //循环模式执行
if(flag 0) //开alarm[4]分钟
{
if(int_on_temp>0){
JDQ_ON(); //开状态if(minute_flag==1) //1 min 到{
minute_flag=0;
int_on_temp--; //开分钟递减计数}}else {
int_on_temp =alarm[4]; //重新赋值
flag =1; //置标志位,执行关状态光纤电话机
}
}
else //关alarm[5]分钟{
if(int_off_temp>0){
JDQ_OFF(); //关状态
if(minute_flag==1)
//1 min 到 {
minute_flag =0;
int_off_temp--; //关分钟递减计数 }
}else {
int_off_temp =alarm[5]; //重新赋值
flag =0; //置标志位,执行开状态
}
}break;case 3:
//温控模式
//……
在完成软硬件测试后,对系统进行整体测试。当装置连接到OneNET 平台后,查看并确认OneNET 设备的在线状态。OneNET 平台为用户提供数据可视化应用[10],用户通过OneNET 提供的可视化工具设计用户操作界面。根据远程开关系统功能,在
OneNET 创建的产品中到应用管理编辑功能
,用户可将旋钮、开关、文本框等控件拖拽至页面。对每个控件的属性和样式进行编辑,特别是对控
件属性中的数据流进行配置,把控件数据流与程序设定的变量建立关联,才能操作手机端界面发送指令,参数才能正确传输给开关装置,同时,将开关装置测量读取的数据上传到手机端。手机端可视化界面包括模式选择旋钮、一组定时开和关时间设定旋钮、一组循环开关设定旋钮、按键控制开关、温度阈值设置旋钮,以及文本框显示的时间和测量温度数值。开关装置,包括LCD 显示时间、测量温度以及接收的模式与各项参数。图4和图5表示处于循环模式(run_mode=2)测试状态下,手机端应用界面和开关装置实际运行状态。实际测试表明,4种模式运行正常,手机端发送指令后开关装置响应及时,较好地实现了各项 功能。
图4 手机端可视化界面
图5 开关装置实际运行
物联网技术  2022年 / 第2期
40面相互传递数据和接收指令,实现了4种模式下的远程开关控制。数据传输和接收控制指令稳定可靠,功能验证正常。系统实现了不同的时间控制方式,并且加入用传感器方式控制的运行模式,为进一步应用提供了拓展基础,可根据不同的应用场合,选择不同的传感器,实现不同的模式控制。控制芯片STM32拥有丰富的接口,软件部分规划相应的数据流,在OneNET 同步更新应用界面,为进一步由单路多模式扩充多路多模式应用奠定了良好的基础。
[1]杨海波,张晖,刘德全.基于GSM 的远程控制开关设计[J].物联网技术,2019,9(3):69-70.
[2]杨琳,李媛,王咪,等.基于WiFi 物联网的智能家电插座设计[J].
[4]郭书军.ARM Cortex-M3系统设计与实现-STM32基础篇[M].北京:电子工业出版社,2019.
[5]张洋,刘军,严汉宇.原子教你玩STM32(库函数版)[M].北京:北京航空航天大学出版社,2013.
[6]张琥石,林伟龙,杨发柱,等.基于ESP8266 WiFi 模块的物联网体温监测系统[J].物联网技术,2020,10(12):32-35.[7]方洁,陈伟.基于DS3231的高精度时钟接口设计[J].电子设计工程,2010,18(2):134-135.
[8]张仲明,郭东伟,吕巍,等.基于DS18B20温度传感器的温度测量系统设计[J].实验技术与管理,2018,35(5):76-79.[9]张萍.基于OneNET 云平台的智能空调控制系统[J].计算机系统应用,2019,28(12):118-122.
[10]杨芸.基于Arduino 与OneNET 的家居环境远程监测系统设计[J].
物联网技术,2020,10(9):11-13.
作者介绍: 闫施锦(1999—),女,河南新乡人,就读于南京工程学院信息与通信工程学院,研究方向为电子技术应用。
陈 淼(1999—),男,贵州毕节人,就读于南京工程学院信息与通信工程学院,研究方向为电子技术应用。 刘静波(1969—),男,江苏靖江人,南京工程学院信息与通信工程学院高级实验师,研究方向为电子技术应用。
《物联网技术》杂志栏目简介
特别专访:紧追行业热点,邀请行业专家、企业领袖针对我国物联网产业核心技术、标准体系、产业培育、应用示范、信息安全、公共服务等方面进行权威分析、解读,为读者了解物联网产业现状、发展趋势提供参考。
行业资讯:跟踪报道物联网产业重要信息,涵盖国家、地方物联网扶持政策,重大项目实施。物联网行业标准制定进展;新产品及其特点介绍、新技术研发动态。
专题介绍:物联网促进工业、农业、流通、生态环境、安全生产、交通管理、公共安全、城市基础设施管理、智能家居等传统行业信息化、智能化提升方面的顶层设计、系统化论述;全球各国物联网产业相关,如传感网、ITC 、云计算、大数据专题解析。
方案案例:精选物联网技术在智慧政务、智能安防、智能交通、智能电网、智能物流、智慧工业、智能医疗、智能家居、智慧社区等方向的典型解决方案以及具有示范意义的成功应用案例。
iCAN 论坛:与国际大学生物联网创新创业大赛合作,每期优选大赛获奖作品,写实报道大学生令人惊喜的创新成果,带您一览高校学子“传递iCAN 理念、激发创新热情、点燃创业梦想”的中国梦。
学术研究:在物联网技术全面感知、可靠传输、智能处理与应用三个层面,刊载物联网技术学术研究成果,为各高校、科研机构、企业研发部门、行业用户搭建交流平台,促进物联网技术的创新、交流和产业繁荣。

本文发布于:2024-09-24 01:22:25,感谢您对本站的认可!

本文链接:https://www.17tex.com/tex/2/232840.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:开关   模式   控制   装置
留言与评论(共有 0 条评论)
   
验证码:
Copyright ©2019-2024 Comsenz Inc.Powered by © 易纺专利技术学习网 豫ICP备2022007602号 豫公网安备41160202000603 站长QQ:729038198 关于我们 投诉建议