王 鑫,郭书军
(北方工业大学 信息学院,北京 100144)
随着物联网技术的迅速发展,各高校相应地增加了物联网专业,物联网综合实训成为物联网专业学生走上工作岗位前需要学习的最为重要的学习内容之一[1-2]。物联网综合实训系统将物联网专业学生在专业技能课程中所学的专业知识与技能串联在一起,学生需要完成一个典型的、较复杂的、接近以后工作的物联网项目的设计与开发。
传统的物联网实验过程中经常出现连线错误、设备安装慢等问题,影响实验课程的效果与进度。为了让学生能够准确理解实训任务,快速搭建课程要求的物联网项目,深入地掌握物联网课程相关知识与技术,设计一种基于实验教学竞赛的物联网综合实训系统。该系统可以提升教学效率与学生的学习兴趣,对物联网专业学生的学习与以后的工作有很大的帮助[3],教师也可以进行准确考评,解决管理难题[4]。
为增强系统的可维护性,减少学生因连线错误而浪费时间,系统采用模块化设计思想,将传感器模块与主控芯片采用插拔式的结合方法,令传感器与执行器的拆装组合更方便[5]。
设计中对系统提出需求:处理器具有高速运算能力,能够满足对数据处理与后续项目实训开发的要求;具有记忆存储的能力,可通过设备进行查看,也可以通过调取服务器数据查看历史数据;通用模块接口的设计,多种传感器即插即用,无需费时连线;传感器与执行器的种类丰富,选型尽量贴近工程实践,为学生以后的工作学习打下基础;具有多种无线、有线通信方式,可自由组网配置,满足不同的需求;测控终端低功耗设计,尽量贴近物联网设备实际需求[6]。
本文所研究的基于实验教学竞赛的物联网综合实训系统基于物联网架构进行设计[7],测控终端配置低功耗ARM Cortex M0+处理器STM32L071KBU,结合各传感器模块,实现传感数据的采集与处理。用于数据传输的无线通信LoRa模块是基于SX1278的工业级解决方案,SPI总线接口适用于小数据量的远距离复杂环境数据传输,更符合实际工作项目需求。本系统架构如图1所示。
图1 系统架构
物联网综合实训系统分为测控终端、网关、服务器和用户终端。测控终端通过传感器采集传感数据,控制执行器,由无线通信LoRa模块将数据传至网关,并接收网关传回的命令,网关通过无线或有线通信模块将数据上传至服务器,服务器对数据进行存储,供远程用户终端进行数据分析或控制。
本系统测控终端采用STM32L071KBU为主控芯片,对终端进行控制与数据采集。该芯片配置ARM Cortex M0+处理器,具有低功耗的特点,符合实际项目对功耗的要求。使用无线通信LoRa方式对数据进行传输,具有可远距离传输、低功耗、网络部署灵活等特点。同时测控终端搭配OLED屏,可以实时显示采集到的传感数据信息。测控终端硬件结构框图如图2所示。
2.1.1 传感器模块
传感器模块包含温度传感器模块、湿度传感器模块、空气质量传感器模块和数字陀螺仪传感器模块等。各传感器选型都贴近工程实践,可以通过统一接口自由接入,任意配置。
图2 测控终端硬件结构框图
2.1.2 执行器模块
执行器模块包含高亮LED、继电器和步进电机等。学生可以自由根据采集到的传感数据设计实训项目,控制各执行器,满足不同层次人群的需求。
2.1.3 LoRa模块
用于数据传输的无线通信LoRa模块是基于SX1278的工业级解决方案,而SPI总线接口可用于底层协议开发。用户可根据实践项目的具体情况进行二次开发,设计订制无线网络通信协议,具有可自行组织大规模网络的特点[8],适用于小数据量的远距离复杂环境数据传输,更符合实际工作项目需求。无线通信LoRa模块的电路如图3所示。
图3 无线通信LoRa模块的电路
本系统的网关采用STM32F429VET6为主控芯片,180 MHz主频,ARM Cortex M4内核,结合多种无线通信模块与有线通信模块,完成传感数据的接收并将数据上传至服务器。网关同时配置串口屏,该串口屏为电容触碰智能屏,可完成人机交互界面设计。网关硬件结构如图4所示。
图4 网关硬件结构
首先对测控终端进行系统初始化[9],然后通过学生设定好的采集时间间隔采集传感数据,对传感数据进行处理,将数据通过无线通信方式上传至网关,控制执行器,接收网关发送的命令信息等操作。测控终端软件流程如图5所示。
图5 测控终端软件流程
对网关进行系统初始化,循环检测是否接收到测控终端发送来的传感数据,如果接收到传感数据则对数据进行处理,发送命令信息至测控终端,再将数据通过无线/有线通信方式上传至服务器。网关软件流程如图6所示。
图6 网关软件流程
本文介绍的基于实验教学竞赛需求的物联网综合实训系统,可广泛应用于高校的物联网专业,物联网专业的学生可使用本综合实训系统进行竞赛、日常实训及灵活设计物联网实训场景,学习与掌握不同通信方式的特点与技巧,为以后的工作、学习夯实基础,具有广泛的应用前景[10]。