综合电子实训物联网应用实例分析

known 发布于 2025-08-25 阅读(310)

摘" 要:针对综合电子实训项目缺少更新,实训内容单一问题,为提高综合电子实训教学效果,紧跟电子专业发展步伐,设计提出物联网应用和电子综合应用结合的项目实例,从项目方案设计、软硬件设计、系统测试等方面进行阐述。把相关课程内容融入这种综合训练中,将基础知识和综合实践结合,可以提高学生工程综合应用能力,实现学以致用的目的,提高解决问题的能力。

关键词:综合电子实训;物联网;模块化设计;工程应用能力;电源测控

中图分类号:TP39;G434" 文献标识码:A" 文章编号:2096-4706(2024)24-0190-05

Analysis of IoT Application Examples in Comprehensive Electronic Training

LIU Jingbo

(School of Communication and Artificial Intelligence, School of Integrated Circuits, Nanjing Institute of Technology, Nanjing" 211167, China)

Abstract: In response to the problems of lack of updates and single training content in the comprehensive electronic training project, in order to improve the teaching effectiveness of the comprehensive electronic training and keep up with the development pace of the electronic profession, a project example combining Internet of Things application and electronic comprehensive application is designed and proposed, which is elaborated from the aspects of project scheme design, software and hardware design, system testing, and so on. Integrating relevant course content into this kind of comprehensive training and combining the basic knowledge and comprehensive practice could improve students comprehensive engineering application ability, achieve the goal of applying what they have learned, and improve the ability to solve problems.

Keywords: comprehensive electronic training; Internet of Things; modular design; engineering application capability; power measurement and control

0" 引" 言

综合电子实训是电子信息工程专业开设的重要实践类课程,具有设计性、综合性、应用性强的特点,承担提高学生综合应用能力,培养学生掌握电子系统设计安装与测试的方法,具备一定工程创新能力,在专业人才培养过程中发挥不可替代的作用[1]。综合电子实训包括模拟电子技术、数字电子技术、电子线路CAD、传感器应用及单片机技术等多门课程的综合应用,以项目化方式进行教学设计,以工程项目为课程引导[2]。目前在实际教学过程中,教学项目相对固化,内容缺少更新,不能紧跟当前发展的步伐。传统的项目内容分为信号类、控制类、测量类等,但项目相对独立,综合性体现不足,不利于学生综合能力和灵活运用知识能力的提升。如今物联网技术发展很快,远程数据传输与控制得到广泛应用,因此在传统项目的基础上,把综合电子实训与物联网技术结合起来,在项目中把多门课程知识点融合进去,既重视基础,又兼顾应用,适应实际工程需求。

以远程直流电源参数测量与控制为实例,对综合电子实训过程进行分析阐述,通过该项目实例,把综合电子技术与物联网、传感器、智能芯片等技术贯穿其中,对电源直流电压、电流、功率参数进行测量,远程传输测量数据,同时可远程控制电源开关,或设定定时开关等多种应用。这样结合物联网实现远程数据传输与控制,比单一功能实训的项目更实用,更贴近实际工程,有利于提升学生工程综合素养[3]。

1" 设计任务

电子系统运行离不开电源,通常小型电子系统的直流电源输入电压范围5~20 V,负载电流3 A。设计直流电源参数测量与控制系统(电源测控系统),实现如下基本功能:

1)将运行中测量的电压电流和功率数据传输到用户手机端。

2)记录平均功耗,用户可选择查看功耗数据。

3)手动模式和自动模式,手动模式下可远程控制电源打开或关闭,自动模式下。当负载电流超过设定阈值时,电源测控系统切断负载,起到保护作用。

4)自动模式下,可以设定电源的定时开关时间,当运行到定时时间后自动打开或关闭电源。

根据以上功能,在综合电子实训过程中按照方案设计、硬件设计、软件编程、系统调试等几个方面进行。

2" 方案设计

物联网平台选择阿里云的生活物联网平台(飞燕平台),图1是飞燕平台的功能定义界面示意图。飞燕平台提供全链路一站式配置方案,通过每一步的引导操作,让用户快速构建设备到云平台的对接,降低“设备-云-APP”的开发成本,通过功能定义、人机交互、设备调试、批量投产四个步骤快速开发物联网应用。用户可选择阿里云提供的公版APP作为人机交互手机用户界面,用户可编辑APP界面,添加信息和功能控件,完成设备面板的创建。其中信息是远程传输的测量数据,本例中就是测量的电压电流功率参数,功能控件就是通过云平台下发的命令,本例中就是开关控制和定时时间设定以及电流阈值设定等。

图2是电源测控系统设计组成框图。采用STM32F103RCT6单片机为主控芯片,这是高性能处理器,主频72 MHz,具备定时、外中断、串口、ADC、DMA等多种资源[4],丰富的外设和接口适用于电源测控系统,在单片机PB口上连接LCD显示屏用以显示装置测量的实际数据,固定连接四个按键开关用于装置设定初始参数,在SPI1接口接入字库芯片,用以显示汉字等,因此选择STM32F103RCT6是非常合适的。

电压电流功率测量可以采用专用芯片INA226,这是I2C接口的芯片,外接电流取样电阻后,单片机通过I2C接口读取INA226寄存器数据从而得到电压电流和功率参数。还有一种方法是对电源电压进行分压,采用ADC转换可以测量电源电压,电流测量选择INA199电流放大转换芯片,该芯片对电流采样电阻电压放大后,单片机用ADC读取并换算为电流,因此该方案采用两组ADC接口,同样可以测量电压电流。相比之下,INA226电路接口更简单方便。

考虑到定时开关设定与记录平均功耗功能需求,系统加入高精度DS3231时钟芯片和存储芯片AT24C02,不采用单片机内部定时器资源进行定时控制,而把定时器资源应用在物联网编程中,DS3231和AT24C02与单片机之间是I2C接口,与INA226可以并接于一组I2C接口,它们的器件地址不同,单片机访问不同的器件地址可以读写不同的芯片数据,非常方便实用。Wi-Fi模块选用基于ESP8266的ESP-12F模块,在使用中把Wi-Fi模块配置为客户端(STA)模式[5],连接于单片机的串口2,程序中通过AT指令设置工作模式,通过路由器接入网络[6],实现远程数据传输。开关控制部分优先选择MOS管控制,设计MOS管开关电路,采用漏源电流大于2~3倍最大允许电流的MOS管,MOS管漏源间导通电阻非常低,完全适合开关控制。另一种采用继电器进行开关控制的电路,电路体积大,存在机械触点,相比之下MOS开关控制更实用。电源测控系统包括了电压电流取样与测量、数字化芯片接口设计、Wi-Fi远程连接云平台等综合应用。

3" 主要硬件电路设计

3.1" INA226测量电路

INA226是I2C接口的双向电流/功率测量芯片,测量总线电源电压和电流取样电阻压降,从而测量电源电压和电流,可以高侧或低侧取样,可编程校准值,实现电压值、电流值和功率值的直接读取,采用VSSOP-10封装。测量电压范围0~36 V,0.1%增益误差,16个可编程器件地址,芯片采用2.7~ 5.5 V单电源供电,与单片机之间通过I2C接口连接,使用非常方便。图3是INA226应用电路,其中输入电压通过MOS管电子开关控制后,送到INA226的VBUS总线输入端,测量总线输入电压。电路中采用高侧电流采样,选择R2为10 mΩ采样电阻,J1是负载接入端,负载电流在R2上的压降送到INA226的IN+和IN-端子,得到电流在采样电阻上的压降,单片机通过I2C接口读取测量参数。PC11和PC10定义为SDA和SCL,外接有10 kΩ上拉电阻。芯片供电电压3.3 V,与单片机供电一致。A0和A1连接到不同的输入端设定INA226的器件地址,A0和A1分别接3.3 V、GND、SDA、SCL,这样就有16个器件地址组合,灵活应用到单片机系统中,具体可查阅INA226手册。图3中A0和A1简化设定应用,分别通过R9R10和R4R5组合接到3.3 V和GND,也很方便的有四组器件地址可设定,完全满足使用,R4R5和R9R10选择一个接入。

3.2" 电子开关电路设计

MOS管电子开关采用PMOS管,常见的有AO4435、AO4409、AO4447。通过查阅AO4447参数可知,其漏源耐压-30 V,栅源耐压±20 V,连续漏极电流约18 A,极低的漏源导通电阻,作为电子开关非常合适。图4是PMOS管电子开关原理,单片机PC5是控制端,当PC5低电平时,U2光耦导通,使Q1的栅源电压超过PMOS管的导通电压,于是开关打开,电源输出到INA226接入负载并测量参数,当PC5高电平时,U2截止,Q1的栅源接入的R12使栅源压差为0,低于PMOS管导通电压,关闭开关。

4" 软件设计

软件设计中单片机读取INA226数据,采集电压电流和功率,分别保存在变量voltageVal、Shunt_Current和Power中,然后在阿里云创建项目,自定义三个浮点型数据类型的功能标识符,分别是VOLTAGE、CURRENT和POWER,当数据传输到服务器后,采集的数据对应展示在功能标识符对应的信息中。远程控制开关功能控件标识符为SWITCH,操作该功能控件后,单片机接收并解析,匹配出命令含义,对应控制变量POWER_CON(PC5定义为POWER_CON),当解析SWITCH命令为1或0,对应控制POWER_CON为0或1,控制图4中所示PC5电平为0或1实现远程打开或关闭电源输出。电流比较阈值在阿里云功能定义中定义标识符CURRENT_ADJUST,命令下发改变该数值后,单片机接收保存于变量current_threshold,在程序中把测量电流与current_threshold进行比较,当测量负载电流超过current_threshold,电源测控系统关闭开关,起保护作用。设定模式标识符MODE,对应于0或1分别表示手动模式和自动模式(电流比较),单片机接收后存放于变量mode中,程序根据mode值进行判断。

单片机终端与阿里云之间通过MQTT协议通信,图5是系统主流程,表示了一个完整的执行过程。

系统主流程是先判断当Wi-Fi配置好模式,通过路由器是否成功连接服务器。当网络连接成功后必须发送第一个连接报文服务端CONNECT(报头0X10)并确认连接服务端是否成功,再进行报文主题订阅SUBSCRIBE(报头0X82)并确认订阅成功,完成终端装置与阿里云服务端连接的初始化,建立了终端与阿里云之间数据传输和消息发布的通信功能。然后分别判断是否有数据发送、数据接收,其中数据接收部分可单独设置一个命令处理功能。

1)数据发送是终端装置发送数据给服务器,开始阶段连接报文服务端CONNECT和报文主题订阅SUBSCRIBE成功后,后面数据发送主要是定时器设置5 s发送一次电压电流功率等数据给服务器(PUBLISH),每30 s发送一次心跳请求(PING),在MQTT文件中配置CONNECT消息、SUBSCRIBE消息、PUBLISH消息以及PING消息是必不可少的[7]。

2)数据接收分为不同的类型,分别有连接报文确认CONNACK(报头0X20),主题订阅报文确认SUBACK(报头0X90),心跳响应回复PINGRESP(报头0XD0),接收服务器发布消息PUBLISH(报头0X30)。连接报文确认是客户端收到服务器第一个发送的报文,客户端判断接收的字节可知连接是否成功,主题订阅请求报文确认是判断报文主题订阅是否成功。连接报文确认和主题订阅报文确认是终端装置开机运行后接收判断的两个重要环节,首次连接和订阅时,客户端应该收到服务器发送的这两组数据,后续则进入心跳响应回复,终端装置每30 s发送一次心跳请求并接收到一次心跳响应。服务器发布消息是服务器推送数据,单片机接收处理,运行处理数据功能程序。

3)定义命令处理缓冲区用来处理服务器发布(推送的数据信息),命令处理可以看作是对服务器发布消息、推送数据处理的过程,是数据接收的一部分,处理推送数据是把接收的数据信息拷贝到命令缓冲区,以字符串存放在命令缓冲区变量中,命令缓冲区有数据加入后,单片机则会对命令字符进行解析,匹配功能标识符解析命令信息。本例中匹配并解析标识符SWITCH可以得到用户开关命令,匹配并解析标识符CURRENT_ADJUST获取电流阈值数据,匹配模式标识符MODE得到模式切换命令。当模式处于手动模式下,用户可直接控制电源的开启或关闭,当处于自动模式下,手动操作失效,系统判断负载电流是否超过电流阈值,控制电源的开启或关闭。

阈值电流current_threshold同样会转存于EEPROM芯片AT24C02单元,开机后读出AT24C02存储数值,实现阈值电流的断电保存。读取INA226的电源参数数据以及时钟信息并在LCD显示出来放在外中断(EXTI)服务程序中,不占用主程序。

5" 系统调试

系统测试阶段可采用模块化方式[8],把单片机开发板、功能模块INA226、DS3231等正确连接组装。单片机开发板采用自行设计制作的电路板,以STM32F103RCT6最小系统为基础,加入LCD显示、字库芯片、按键和Wi-Fi接口,外接串口下载、STLINK下载接口,并引出可用的GPIO端口,不同于最简化的最小系统板和功能繁杂的开发板,自行设计的单片机开发板兼顾方便性和实用性。MOS管开关电路和INA226可以集成于一块功能模块,把图3和图4组合在一起,留出开关控制接口和I2C数字接口,电源输入和输出负载接口可以根据实际情况采用合适的接口。DS3231和AT24C02可以选择成品模块或自己设计制作模块,当然要预留I2C接口,方便与其他I2C接口模块连接。综合电子实训过程中首先对硬件部分检查是否连接可靠,是否有短路现象,端口连接是否与软件编程接口定义一致,保证硬件部分正确连接,就有很好的基础,在此基础上编写测试软件。

实训过程中软件编程同样采用模块化方式,先对单个软件功能模块进行测试,最后再组合整体测试。测试连接阿里云和数据收发等功能[9],先测试是否连接到网络,是否可发送简单数据,是否可接收服务器下发的简单开关信号,或者先发送一个常量数据测试发送是否正常,然后才能测试发送电压电流功率这些采集的变量数据。在I2C程序基础上读写INA226、DS3231寄存器,采集INA226测试数据、读取DS3231时间和日期数值存放于对应的变量并显示,其间可充分利用串口调试助手,把读写的数据通过串口输出,查看是否正确,或者把某些变量数据输出查看调试结果,这样可以有效地对软件进行测试,符合系统功能需求。图6是手机端截图,测试数据传输,测试时输入电源5 V,负载电流110 mA左右,此时处于手动模式下,手机APP端直接控制电源开关,当前设定电路的阈值电流1.5 A,电源处于开启状态,图7是装置LCD显示运行中的数据和状态。按照INA226设计的采集电路可测试输入电源3~30 V、0~3 A范围的电源参数,后续加入其他功能测试,包括定时状态控制,定时状态是在自动模式下的一种运行方式,根据定时时间实现开关控制。

6" 结" 论

综合电子实训结合当今热门的物联网应用,设计电源参数测量与控制系统项目,对该项目实例作较详细分析。在实训过程中,重视项目的方案设计,方案设计合理对项目实施有很大帮助;合理设计软硬件,两方面结合起来综合考虑,才能达到事半功倍的效果;测试验证阶段,训练学生掌握调试与测试的方法,学习查找调试中出现的软硬件问题,提高自己解决问题的能力,提升自己工程应用能力。

参考文献:

[1] 岳昊嵩,范昌波,张静,等.科教融合理念下电子电路实验的改革与实践 [J].实验技术与管理,2021,38(4):206-209.

[2] 陈荣,赵仁德,郭静,等.新工科背景下基于项目驱动的新能源课程群教学模式探索[J].大学教育,2020(3):49-51.

[3] 王博,韩绍程,高欢,等.新工科背景下“综合电子设计”层次化实验教学探索 [J].职业教育研究,2024(2):76-80.

[4] 过文俊,金恒.基于DSC技术的自助缴费投单机自动控制系统设计 [J].自动化与仪器仪表,2021(2):139-143.

[5] 孙康亚,高红亮,段玉龙,等.基于STM32的物联网远程电路参数监测系统设计 [J].自动化与仪表,2024,39(2):144-148.

[6] 倪项楠,周骥平,于天振,等.废弃物处理工作现场巡检机器人远程监查系统设计 [J].制造业自动化,2024,46(1):111-114.

[7] LIU C Y,JIA Y X,et al.Design of monitoring system for intelligent windows based on cloud platform [J].Journal of Physics:Conference Series,2020,1656(1):012021.

[8] 张璞,刘宁艳,金印彬.基于模块化平台的电子系统综合设计实验 [J].中国现代教育装备,2019(19):31-33.

[9] 施昕昕,顾宇扬.基于MQTT协议的工业物联网数据采集和控制系统 [J].南京工程学院学报:自然科学版,2022,20(2):31-37.

作者简介:刘静波(1969—),男,汉族,江苏靖江市人,高级实验师,本科,研究方向:电子技术应用。

标签:  电流 

免责声明

本文来自网络,不代表本站立场。如有不愿意被转载的情况,请联系我们。

iidomino cuppor