3★☛基于STM32的手机通过wifi控LED灯√♠★

Posted 行走的皮卡丘

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了3★☛基于STM32的手机通过wifi控LED灯√♠★相关的知识,希望对你有一定的参考价值。

3、★★☞基于STM32的手机通过wifi控LED灯💗💗

1、Introduce

In recent years, wireless networks have developed rapidly, especially the representative WiFi technology has been widely used in various fields, and the lighting field is no exception. The people’s living standards are improving day by day, and the continuous pursuit of visual enjoyment has promoted the gradual complexity of lighting control effects. There are more and more control methods. Traditional wired control is time-consuming and laborious, and the problem of low transmission rate and poor reliability based on wireless sensor network control is increasing. Highlight. This article proposes to integrate WiFi technology with the light control system. It has the advantages of low cost, high transmission rate, long transmission distance, mobility and flexibility, etc., which can solve the above problems well.

This design is based on the STM32F103 single-chip microcomputer and mainly researches the wireless lighting background control system. The system has the following functions:

  • (1) Able to use the mobile phone APP to control the light on and off.

  • (2) You can use the mobile phone APP to change the brightness level of the light.

The main content of this article is to design and develop the wireless lighting backstage control system, and show and elaborate the final results. The main work of this paper is as follows:

  • (1) Organize the theoretical knowledge based on the wireless network lighting control system, analyze the functional architecture, topology deployment and communication methods of the wireless lighting control system, and design and analyze the data format used for communication.

  • (2) Design the wireless lighting background control system, which includes background user interface module design, system communication module design, functional service module design and data storage module design.

  • (3) According to the above-mentioned module design plan, use program development tools to realize part of the functions of the lighting background control system, and explain the background development ideas based on the realization of the function code.

The results show that the designed system has good detection and control functions, convenient portability and scalability.

介绍

近年来,无线网络迅猛发展,特别是具有代表性的WiFi技术在各领域得到了广泛的应用,灯光领域也不例外。人民生活水平日益提高,不断追求视觉享受,促使灯光控制效果逐步复杂化,控制方式与越来越多,传统有线控制费时费力,而基于无线传感网的控制传输速率低、可靠性差的难题日益凸显。本文提出将WiFi技术与灯控系统进行融合,它具有成本低、传输速率高、传输距离远、移动性和灵活性等优点,能够很好的解决上述问题。

本设计基于STM32F103单片机主要研究无线灯光后台控制系统,该系统具有如下功能

  • (1)能够用手机APP控制灯的亮和灭。

  • (2)可以用手机APP改变灯的亮度等级。

本文的主要内容是对无线灯光后台控制系统进行了设计和开发,并展示和阐述了最后的成果。本文的主要工作有以下几点:

  • (1)整理基于无线网络灯光控制系统的理论知识,分析无线灯光控制系统的功能架构、拓扑部署和通信方式,并对通信所用数据格式设计并进行分析。

  • (2)对无线灯光后台控制系统进行设计,该系统包括后台用户界面模块设计、系统通信模块设计、功能服务模块设计和数据存储模块设计。

  • (3)根据上述模块设计规划,利用程序开发工具实现灯光后台控制系统的部分功能,并根据功能代码的实现对后台开发思想进行阐释。

结果表明,设计的系统具有良好的检测和控制功能,方便移植性和可扩展性。

关键字:单片机;WIFI模块;手机APP;LED灯。

1.1、课题背景及其意义

无线网络技术最初是基于计算机实现无线网络互联的通信技术。而随着网络技术的不断发展,当前无线网络技术可容纳多种无线终端实现基于无线的数据通信和资源共享。从无线网络雏形 ALOHNET 网络的开发到 802.1项目的启动,再到无线以太网相容性联(WECA,后更名 Wi Fi 联盟)的成立,无线网络技术日趋成熟。无线网络的传输速度也从最初的几十 Kbps 逐步提高到 11Mbps,54Mbps 108Mbps 甚至300Mbps。近几年来,正是由于无线网络传输速度的不断提升,相关安全以及加密算法的不断发展,人们逐渐体会到无线网络明显的优势和优良的性能,从而促进无线网络以极快的速度在许多领域展开了应用。为了体现无线网络的广泛应用,本课题选取的无线网络应用对象为灯光控制。生活水平的日益提高使人们的精神生活变得越来越丰富多彩,各种各样的庆典、娱乐活动诸如晚会、酒会、公司年会、话剧、舞台剧等成为人们生活不可或缺的调味料。舞台活动成功与否离不开舞台灯光烘托、渲染,因而正确的操作控制舞台灯光对活动效果起着至关重要的作用。

目灯光控制存在各种问题,如随着场景的多变复杂,所需灯光种类量成倍上升,如何规划设计布局布线方式花费人力物力财力,所以,为了避免有线传输的诸多缺点,开发一种适当的无线通信传输方式势在必行。于是便产生了基于无线传感网的灯光系统,但依旧产生了速率低、可靠性差的问题。本文将无线网络应用在灯光信号传输中有效的缓解了这一问题。

1.2、 国内外的研究状况

随着国民经济的发展,国家对文化产业的投资越来越大,随之而来的是我国灯光市场的需求逐年增加,然而大量的投资流入了外国,只因外国拥有更先进的无线、可控、花样多变的灯光技术,因此加大对我国灯光产业的研究和发展对我国灯光产业走向世界有重要意义。虽然当前已经有无线传感网络的灯光控制系统,但当针对大型晚会,通常会涉及成千上万的照明设备,原本的控制方式暴露出各种各样的问题。而无线网络技术的不断发展使照明控制技术拥有了更简单、更便捷的技术支持。与此同时,照明设备数量、种类的不断增加对无线网络控制技术的要求越来越高,为了适应照明控制的需求,灯光控制系统的发展趋势主要有以下几个方面:

  • (1)移动性。网络和设备迁移方便。通信范围不再受线路环境的限制,扩大了覆盖范围,为设备提供有效的网络接入功能,设备可以随时随地获得传输信息。

  • (2)可伸缩性。放置或添加接入点(Acess Point,AP)或扩展点(Extend Point,EP)可扩展组网。

  • (3)经济性。可用在难以进行物理布线的环境,节省了线缆、附件和人工费用。省去了布线工序,快速组网,快速投入使用,成本效益显著。可降低成本快速组建临时性网络。而对频繁布线或更换地点的场合,费用节约更明显。

  • (4)高速性。针对大量的灯光设备,信号的传输速率对灯光的实时展现有至关重要的作用。

为了适应上述需求,无线网络中的 Wi Fi 技术成为了本课题的主要研究方向,不仅可用于解决传统灯光控制系统布局布线工程的困难,使网络的安装铺设大大简化,而且就现有的无线传感网灯光控制系统传输速率低、延时长、可靠性差等缺陷有了很好的改善,还可以灵活组网,方便快捷。此外,针对多种不同厂家照明设备相互不兼容的现象,目前已有的 DMX512 及 Art-Net协议没有办法解决这个问题,而 ACN 协议建立了相对完善的网络设备管理机制,其采用多种网络技术,实现在同一个网络体系内传输灯光信号,体现了灯光控制系统在未来的发展方向,但 ACN 协议并未投入使用,本文定义了一个类 ACN ,该协议是 ACN 协议简化版,同样具备相对完善的网络设备管理机制,用该协议来传输灯光信号对应对市场需求、提供给用户高质量的灯光有重要的作用。对于大型灯光系统,对灯光设备进行管理、控制的灯光后台控制系统是必不可少的。本文对当前应用广泛的无线技术和灯光控制协议进行概述并分析了选择 Wi Fi 技术和类ACN 协议的原因,设计开发了基于 Wi Fi 传输的灯光后台控制系统,通过该系统向前端灯具传递各种命令实现对前台灯光的多样化控制,有效的避免了不必要的布局布线,提高信号的实时性、可靠性。

2、方案的设计

2.1、控制方案的确定

本设计由STM32F103C8T6单片机核心电路+两位高亮LED灯电路+WIFI模块ESP8266电路+电源电路组成。

2.2、控制方式的选择

2.2.1、 单片机芯片的选择

方案一

采用可编程逻辑器件CPLD作为控制器,CPLD可以实现各种复杂的功能、规模大、密度高、体积小、稳定性高、I/O资源丰富、易于进行功能扩展。采用并行的输入输出方式,提高了系统的处理速度,适合作为大规模控制系统的控制核心。但本系统不需要复杂的逻辑功能,对数据的处理速度的要求也不是非常高。且从使用及经济的角度考虑,最终放弃了此方案。

方案二

采用ST公司的STC89C52单片机作为主控制器,STC89S52是一种低功耗、高性能CMOS8位微控制器,具有8K 在系统可编程 Flash 存储器。该单片机功耗低、接口丰富,成本低廉,完全能满足本设计要求。

方案三

采用单片机芯片控制MSP430单片机是美国德州仪器(TI)推出的一种16位超低功 耗的混合信号处理器(Mixed Signal Processor),主要是针对实际应用需求,把许多模拟电路、数字电路和微处理器集成在一个芯片上,以提供“单片”混合信号处理的解决方案。MSP430F149是一个16位的、具有精简指令集的、超低功耗的混合型单片机,具有可靠性高、功耗低、扩展灵活、体积小、价格低和使用方便等优点,广泛应用于仪器仪表、专用设备智能化管理及过程控制等领域,有效地提高了控制质量与经济效益,已成为众多单片机系列中一颗耀眼的新星。

方案四

本文所选单片机控制芯片为STM32单片机,STM32系列处理器是意法半导体ST公司生产的一种基于ARM 7架构的32位、支持实时仿真和跟踪的微控制器。使用ARM最新的、先进架构的Cortex-M3内核,具有优异的实时性能、杰出的功耗控制、出众及创新的外设,并且最大程度的集成整合,十分易于开发,可使产品快速将进入市场。

故选择方案四。

2.2.2、无线遥控模块的选择

方案一

采用红外遥控模块系统进行无线控制,红外载波频率:38KHz,其理论遥控范围为8-10米,遥控范围内,电路简单,成本极低。

中间有无障碍物等因素会影响到遥控距离,实际遥控距离可能更短,丧失了遥测的有用性。

方案二

使用WIFI模块进行本系统数据的无线传输。Wi-Fi是一种可以将个人电脑、手持设备(如PDA、手机)等终端以无线方式互相连接的技术。Wi-Fi是一个无线网路通信技术的品牌,由Wi-Fi联盟(Wi-Fi Alliance)所持有。目的是改善基于IEEE 802.11标准的无线网路产品之间的互通性。Wi-Fi主要是用于替代工作场所一般局域网接入中使用的高速线缆的。这类应用有时也称作无线局域网(WLAN)。其覆盖性强,传输距离远。

方案三

使用蓝牙模块进行本系统数据的无线传输。蓝牙可以替代很多应用场景中的便携式设备的线缆,在能够应用于一些固定场所,如智能家庭能源管理(如恒温器)等。其数据传输为10米,然而蓝牙模块是点对点数据传输,比较单一。

综上所述,故选择方案二。


3、硬件电路的设计

3.1、系统的功能分析及体系结构设计

3.1.1、系统功能分析

本设计由STM32F103C8T6单片机核心电路+两位高亮LED灯电路+WIFI模块ESP8266电路+电源电路组成。

  • 1、stm32实时监测wifi数据,解析数据后通过pwm控制led的亮灭及亮度程度。

  • 2、手机发送指令:

通过开关键控制第一个灯的开关,通过拖动进度条来控制灯的亮灭

3.1.2、系统总体结构

本系统具体框图如下图所示:

3.2、模块电路的设计

3.2.1、 STM32单片机核心电路设计

STM32系列处理器是意法半导体ST公司生产的一种基于ARM 7架构的32位、支持实时仿真和跟踪的微控制器。选择此款控制芯片是因为本系统设计并非追求成本的最低或更小的功耗,而是在实现本设计功能的前提下能够提供更丰富的接口和功能以便于设计实验系统各实验项目所需的外围扩展电路。此款控制芯片在完成单片机课程的学习后上手较为容易,在医疗器械中应用广泛,具有很好的学习、实验研究价值。

一、STM32的主要优点:

  • (1)使用ARM最新的、先进架构的Cortex-M3内核

  • (2) 优异的实时性能

  • (3) 杰出的功耗控制

  • (4) 出众及创新的外设

  • (5) 最大程度的集成整合

  • (6) 易于开发,可使产品快速将进入市场

二、STM32——最佳的平台选项

对于使用同一平台进行多个项目开发而言,STM32是最

佳的选择:

  • (1) 从仅需少量的存储空间和管脚应用到需要更多的存储空间和管脚的应用

  • (2) 从苛求性能的应用到电池供电的应用

  • (3) 从简单而成本敏感的应用到高端应用

  • (4) 全系列脚对脚、外设及软件的高度兼容性,给您带来全方位的灵活性。您可以在不必修改您原始框架及软件的条件下,将您的应用升级到需要更多存储空间或精简到使用更少存储空间/ 或改用不同的封装的规格。

STM32F103C8T6单片机核心板接口电路图如下图所示。

STM32单片机核心板接口原理图

STM32单片机实物图

3.2.2、 高亮LED灯照明电路(高电平有效)设计

超高亮LED是比一般LED发光二极管的亮度高近百倍的新型LED,其外壳是无色透明树脂封装,其发光体本身就能发出某一波长的光,从而呈现出某一种颜色。在本设计中,选择白色高亮LED灯作为照明灯使用。

一、白色高亮LED灯的优点。

  • (1)寿命长,可靠耐用,维护费用极为低廉,可连续使用105h,比普通白炽灯泡长100倍;

  • (2)高效率,其发光效率可达80%~90%,LED比节能灯还要节能1/4;

  • (3)点亮速度快。

在本设计中, LED灯均为高亮LED灯,通过三极管驱动LED灯的亮灭,电阻为限流电阻,保护高亮灯。当单片机的控制引脚为高电平时,此时,高亮LED灯亮。否则,高亮LED灯不亮。 高亮LED灯照明电路原理图如下图所示。

高亮LED灯电路原理图

3.2.3、 ESP8266WIFI模块电路设计电路设计

串口WIFI模块是新一代嵌入式WiFi模块,体积小,功耗低。采用UART接口。串口wifi模块是基于通用串行接口特性,符合IEEE802.11 协议栈网络标准,内置TCP/IP协议栈,使传统串口设备更好的加入无线网络。

ESP8266是一款超低功耗的模块,拥有业内极富竞争力的封装尺寸和超低能耗技术,专为移动设备和互联网的应用设计,可将用户的物理设备连接到WIFI无线网络上,进行互联网或局域网通信,实现联网功能。

ESP8266可广泛应用于智能电网、智能交通、智能家具、手持设备、工业控制等领域。WiFi模块电路图如下图所示。

WIFI模块电路原理图

WIFI模块实物图

4、第四章 系统软件设计

4.1 程序流程图

本系统设计主要采用Keil uVision5软件编写与调试程序,程序语言采取易读性和移植性更高的C语言编写。系统运行流程图如下图所示。

4.2 主要程序代码

#include "led.h"
#include "delay.h"
#include "sys.h"
#include "usart.h"
#include "timer.h"
#include "math.h"
#include "string.h"

int main(void)
 {		
	int len;
	int data;
	delay_init();	    	 //延时函数初始化	  
	NVIC_PriorityGroupConfig(NVIC_PriorityGroup_2); 	 //设置NVIC中断分组2:2位抢占优先级,2位响应优先级
	uart_init(115200);	     //串口初始化为115200
 	LED_Init();			     //LED端口初始化
 	TIM3_PWM_Init(899,0);	 //不分频。PWM频率=72000000/900=80Khz
   	while(1)
	{
		//LED = 0;
 		delay_ms(10);	 
		if(USART_RX_STA&0x8000)
		{					   
			len=USART_RX_STA&0x3fff;    //得到此次接收到的数据长度

			//如果是A或者是B就是开关灯的指令
			if(USART_RX_BUF[0]=='A'||USART_RX_BUF[0]=='B')
			{
				if(USART_RX_BUF[0]=='A')
					LED = 0;
				if(USART_RX_BUF[0]=='B')
					LED = 1;
				 USART_RX_STA=0;
			}
			//否则是控制LED的
			else
			{
				if(len==2)
				{
					Data	=	(USART_RX_BUF[0] - '0')*10+(USART_RX_BUF[1] - '0');
				}
				if(len==3)
				{
					Data	=	(USART_RX_BUF[0] - '0')*100+(USART_RX_BUF[1] - '0'*10)+(USART_RX_BUF[2] - '0');
				}
				TIM_SetCompare1(TIM3,data);
				USART_RX_STA=0;
			}
			}
else{
		}
	}	 
 }

第四章 实物测试

经过测试,系统测试正常。

以上是关于3★☛基于STM32的手机通过wifi控LED灯√♠★的主要内容,如果未能解决你的问题,请参考以下文章

基于STM32单片机项目设计目录-加油吧√

基于STM32单片机项目设计目录-加油吧√

基于STM32的ESP8266 WIFI与ONENET通信连接,云平台以及手机APP数据显示

STM32单片机手机WIFI无线APP控灯亮灭亮度系统

ESP3220.WIFI Web Servers 双色LED灯实验(WiFi库)

ESP3220.WIFI Web Servers 双色LED灯实验(WiFi库)