基于STM32处理器的定时开关装置设计

发布者:bobojrt最新更新时间:2018-03-22 来源: eefocus关键字:STM32  处理器  定时开关装置 手机看文章 扫描二维码
随时随地手机看文章

    本文针对市场上现有的定时开关装置的弊端,设计了一种基于STM32处理器的定时开关装置。该装置利用GSM网络实现远程遥控功能,并通过nRF24L0l+无线通信模块,遥控在一定范围内任意分布的多个开关。系统具有友好的人机交流界面,可设置多组定时时间,以及触摸屏控制、掉电保护和红外遥控等功能。


    目前,国内市场上出现了多种定时开关产品,并被广泛应用于家居生活、汽车服务、公共照明和仓库管理等领域。其中大部分产品都只有简单的定时功能;无法实现遥控、显示等高级功能。而少数可遥控的产品也只局限于较近距离的范围内,并未实现远程控制,这些降低了它的便利性和实用性。随着科技的进步,人们向往智能化、节约化的家居生活,各种网络家电应运而生,但其高昂的价格却让普通大众望而却步,因此怎样使传统电器“智能化”是当前一个值得研究的问题。
    针对上述问题,设计了—种新型的智能开关装置,在传统定时开关的基础上改进完善,并对GSM网络在该领域的应用进行了研究,真正实现用户在任何时间、地点,对用电器工作状态的控制。不仅如此,设计还对传统定时开关结构进行了改进,使得一个主控制器可在一定范围内无线遥控任意分布的多个定时开关分机,帮助建立类似于网络家电体系的小型民用遥控开关控制系统,可大幅降低使用成本。设计中还加入了触摸屏显示和红外遥控等功能,使得产品更加人性化,具有操作方便、可靠性强、小型化、低功耗等特点,弥补了传统产品的不足,同样适合老年人、残疾人使用。

1 系统概述
    系统利用GSM短信网络,使用户在信号覆盖范围内的任何位置,都能随意控制各种用电器的工作状态,系统整体结构如图1所示。

a.JPG

    
    用户处在远程位置时,可以使用手机或其他方式,通过现有GSM网络以短信息的形式向主控制器发送指令。当主控制器的处理器单元检测到接收完成后,会立即从GSM模块中读取短信内容,并分析判断是否需要执行。如需执行,则处理器就会启动无线传输模块向指定的一个或多个控制分机发送相应的指令,并通过触摸屏显示相关参数;当控制分机的处理器单元读取并识别指令后,会控制光耦对继电器做出相应动作。
    当用户在近距离范围内时,可以通过红外遥控器或主控制器自带的触摸屏,向主控制器发送“定时开(关)”等指令,主控制器的红外接收器或处理器单元接收到指令后,经过分析处理,根据指令内容做出相应动作。

2 硬件电路设计
    系统分为主控制器和控制分机两部分。主控制器系统以意法半导体公司的SWM32F103RBT6芯片为核心的处理器单元和西门子公司生产的TC35模块为主,还包括了由AT24C02芯片组成的存储电路、nRF24L01+无线传输模块、红外接收器HS0038B、以及一块2.8寸(1寸=2.54 cm)TFT触摸屏。其硬件结构如图2所示。

b.JPG


    控制分机系统如图3所示,其处理器单元采用低成本的STC89C52芯片,并与无线传输模块、红外接收器、数字温度传感器DS18B20、LED指示灯等构成控制分机系统。而控制分机的执行模块,则由光耦芯片PC817、继电器驱动电路和插座共同组成。为保证系统的稳定可靠和使用安全,控制分机的系统电源和继电器驱动路的电源相互独立,二者之间没有联系。

c.JPG

    
2.1 处理器单元
    主控制器的处理器单元选用意法半导体公司新STM32F103RBT6芯片,它是基于ARM公司推出的V7平台的Cortex—M3内核的32位处理器。该处理器芯片具有64个引脚、51个IO口、128 kB Flash、20 kBSRAM、3个串口、2个SPI接口、1个CAN总线和1个USB接口。芯片的数据处理能力为1.25 dMi/s·MHz,在72 MHz的工作频率下,工作电流为36 mA,待机时下降到2 mA,是目前32位处理器市场上功耗最低的产品。其售价接近51系列单片机的市场售价,但它的数据处理能力却几乎媲美DSP,较高的性价比,使其具有较好的发展前景。
    STM32主控芯片内部包含实时时钟(RTC)。RTC是一个独立的定时器,该模块拥有一组连续计数的计数器,再配合相应的软件设置,就可似提供时钟日历的功能,并支持掉电保护,通过修改计数器的值来重新设置系统当前的日期和时间。设计中,定时开关的定时时钟功能可以依靠RTC来完成,因此主控制器只需利用STM32F103RBT6自带的RTC模块就能够满足设计要求。控制分机系统的处理器单元采用价格低廉的STC89 C52单片机,该芯片的资源足以满足控制分机系统的设计要求。
2. 2 GSM模块TC35
    作为系统设计中远程控制部分的核心,GSM通讯模块选用了性价比高,并且已经拥有国内的无线电设备入网证的西门子TC35系列模块。T C35是西门子公司推出的GSM模块,它支持双频和标准的AT指令集。TC35模块通过配套的天线连接器和接口连接器,可分别与天线和SIM卡读卡器连接,并通过串口与处理器芯片连接。

d.JPG

    TC35模块电路如图4所示,共有40个引脚,通过一个ZIF(Zero Insertion Force)连接器引出,这40个引脚可以划分为5类,即电探、SIM卡、数据输入/输出、音频接口和控制。TC35模块的数据输入/输出接口是一个串行异步收发器,符合ITU—T RS232接口标准,波特率在300 bit.s-1~115kbit·s-1范围内可选,利用AT命令切换操作模式,可以使它处于数据、语音、短消息或传真模式。TC35模块的短信功能支持TEXT和PDU两种模式,设计使用TEXT模式来收发短信息。

    2.3 nRF24L01+无线收发模块

    系统设计中的另一个重要组成部分,就是用于主控制器和控制分机之间进行通信的无线数据传输模块,该部分选用nRF24L01+系列无线收发模块。nRF24L01+是nRF24L01的加强型,两者在引脚上完全兼容,它工作在2.4~2.5 GHz ISM频段,内置频率合成器、功率放大器、晶体振荡器、调制器等功能模块,并且融合了增强型ShockBurst技术,具有成本低、功耗小、网络结点多等特点。在使用PCB制板天线时,nRF 24L01+的通信距离一般可达100 m,而使用配套的加长天线后,通信距离还有较大提升。

    根据设计要求,系统采用PCB制版天线的nRF24L01+模块。在主控制器系统中,nRF24L01+模块与STM32F103RBT6处理器使用SPI口通信协议;对于控制分机部分,则利用STC89C52单片机的普通IO口模拟SPI时序与nRF24L01+模块完成通信。


    3 软件设计

    3.1 主控制器部分

    主控制器的软件部分是在MDK4.0环境下使用V3.5.0版本的库函数完成编程的,软件设计流程如图5所示。系统加电后,初始讫相关外设,读取AT24C02芯片内的数据,根据数据内容执行相关函数。由于STM32自带的RTC模块提供了闹钟中断功能,利用这一功能可以实现预约定时开(关)的功能。TC35与处理器通过串口完成通信,并在串口中断服务函数中完成对短信内容的识别工作,系统还利用外部中断的方式接收红外遥控发出的指令。


e.JPG

    
3.2 控制分机部分
    如图6所示,控制分机分析判断无线模块接收到的指令信息,通过控制光耦实现间接控制继电器的目的,开关装置温度过高时,系统自动切断电源,以防止事故发生。

f.JPG

    4 调试与测试结果

    系统采用模块化与整体组合相结合的方法进行调试,经过软件仿真、组装调试和系统测试,基本实现了系统设计的功能。测试时,用户通过短信或手动方式向装置传达指令,装置依照指令完成相应的功能,同时通过触摸屏来显示相关参数。经测试,装置在高噪音、多尘等恶劣环境下也可正常运行。

    5 结束语

    此装置实现了多组定时、电路保护、掉电数据保持等功能,同时加入了红外遥控控制和触摸屏显示,与传统的定时开关类产品相比,更稳定、智能,且易于操作,弥补了传统产品的不足。


关键字:STM32  处理器  定时开关装置 引用地址:基于STM32处理器的定时开关装置设计

上一篇:基于物联网技术的智能农业应用系统设计
下一篇:基于ARM9的自由摆平板控制板的设计及实现

推荐阅读最新更新时间:2024-03-16 15:58

STM32 | 学习STM32的一些经验分享
前言 前两天在群里看到群友们在讨论学习STM32的话题,并且今天也有一位机械专业的准研究生读者也问了STM32的入门问题。 正好我也有一点点经验,所以试着分享一下这个话题。我也不是什么大神,只是一名普通的工程师,以下分享仅仅是自己的一点经验及看法,仅供参考,希望能对一些初学的朋友有所帮助。老鸟略过~~ 找资料 在知乎,我也有看到类似问题:学STM32要买什么书籍、看什么书籍? STM32编程作为一项实操性很强的技能,所以要多实操。初学的话,我觉得书籍就暂时先不买吧,先考虑入手一块STM32开发板,然后跟着开发板的教程走。 几年前,做STM32的教程有很多家: 现在市面上还比较火的基本就只剩前4家了,从这4家中选择一家买
[单片机]
<font color='red'>STM32</font> | 学习<font color='red'>STM32</font>的一些经验分享
STM32 IAP程序设计以及问题
一、IAP实现方法: 1、编译firmware时,从axf文件转换成bin文件并对bin文件进行加密处理; 2、通过PC机软件 固件升级 功能把加密后的bin文件下载到SPI Flash中; 3、ARM接收完毕新的固件并校验后设置固件升级信息,然后复位系统; 4、在ARM系统中,前4KB包含IAP(在线编程)程序。IAP在启动时首先检查固件升级信息区,如果有升级内容则根据信息区内容从SPI Flash中读取并解密固件,然后写入ARM的内部Flash。 5、升级完毕后,IAP调用固件程序执行正常程序功能; 二、IAP程序的要求和基本流程: 1、IAP程序不需要从串口、USB口或以太网接收数据,固件传输由应用软件自行完成; 2、IAP
[单片机]
意法半导体(ST)推出新款汽车音频处理器
中国,2014年12月1日 —— 横跨多重电子应用领域、全球领先的半导体供应商、市场领先的汽车信息娱乐系统半导体解决方案供应商意法半导体(STMicroelectronics,简称ST,纽约证券交易所代码:STM)为汽车音响和车内影音系统推出新一代音频处理器。基于深受市场欢迎的音频系统芯片STA1052的成功,新款 Accordo2 系列(STA1095及其衍生产品)实现了前所未有的软硬件集成度,助力系统厂商开发业内研发周期最短且价值最高的解决方案。 Accordo2系列是一个集成全部音频功能的音频子系统,包括媒体解码、音频路由 (audio routing)、声音处理、模拟音频输入输出和独立的安全控制器区域网络
[汽车电子]
基于STM32单片机和EM310的无线终端设计
在监测监控及数据采集系统(SCADA)系统中,采集数据的实时性和准确性对系统有很大的影响,合适的通信网络可以有效提高SCADA系统的效益,本文设计的GPRS无线终端在SCADA系统中的应用解决了上述问题,除满足数据实时性和准确性外,还具有建设成本低.结构简单.传输容量大.可远程控制等优势. 1 终端简介 1.1终端结构 无线终端由EM310GSM模块和STM32F103单片机构成,以STM32F103单片机为核心,STM32F103单片机有丰富的通信接口,用于连接EM310和现场仪表;还有丰富的I/O资源,可以扩展较大容量的RAM,一方面存储指令集,用于解读指令并作出相应的动作;另一方面用于暂时存储监测点采集到的数据.
[电源管理]
基于<font color='red'>STM32</font>单片机和EM310的无线终端设计
STM32】HAL库 STM32CubeMX教程四---UART串口通信详解
前言: 今天我们学习STM32CubeMX串口的操作,以及HAL库串口的配置,我们会详细的讲解各个模块的使用和具体功能,并且基于HAL库实现Printf函数功能重定向,UART中断接收,本系列教程将HAL库与STM32CubeMX结合在一起讲解,使您可以更快速的学会各个模块的使用 所用工具: 1、芯片: STM32F407ZET6 2、STM32CubeMx软件 3、IDE: MDK-Keil软件 4、STM32F1xx/STM32F4xxHAL库 5、串口: 使用USART1 PA9,PA10 知识概括: 通过本篇博客您将学到: STM32CubeMX创建串口例程 HAL库UATR函数库
[单片机]
【<font color='red'>STM32</font>】HAL库 STM32CubeMX教程四---UART串口通信详解
STM32入门笔记(3)——GPIO
STM32的每个I/O口都由7个寄存器控制:2个32位端口配置寄存器CRL和CRH;2个32位的数据寄存器IDR和ODR;1个32位的置位复位寄存器BSRR;1个16位的复位寄存器BRR;1个32位的锁存寄存器LCKR;最常用的有4个:CRL/CRH/IDR/ODR;因此通常情况下只需要配置好以上四个寄存器就可以了。而CRH和CRL作用是完全一样的,只不过CRH控制的是高8位的IO而CRL控制的是低8位的,因此IO的控制就显的比较简单了。 (1)使能IO时钟 老规矩,用到哪个IO使能哪组IO时钟。例:RCC- APB2ENR|=1 2; // 使能PORTA时钟 (2)配置IO输入/输出模式 STM32的输入输
[单片机]
Qualcomm发布三款全新骁龙处理器
Qualcomm Incorporated(NASDAQ: QCOM)近期宣布,其子公司Qualcomm Technologies, Inc.发布三款全新下一代高通骁龙 处理器:骁龙625、435和425。 这三款全新处理器通过利用包括摄像头、视频、游戏及连接等在内的定制开发技术,旨在为更广泛的智能手机生态系统提供部分最顶级的高端用户体验。 全新的三款骁龙处理器都集成了领先技术,包括LTE载波聚合、骁龙全网通、支持MU-MIMO的802.11ac、双摄像头图像信号处理器(ISP)、提高通话可靠性的Qualcomm TruSignal 技术、针对传感器中枢的低功耗音频的Qualcomm Hexagon DSP 满足Andr
[网络通信]
STM32的数据类型基础介绍
首先说一下编程过程中几个步骤吧 第一,选择一门语言,C语言或汇编语言,嵌入式编程一般目前流行还是C,这个需要基础与时间 第二读懂了解 MCU的寄存器各寄存器的功能,尤其是一些IO口设置,各模块时钟设置比如定时器,I2C,同步异步串口,PWM等等,以前的话51的话没有这样设置。而现在MCU基本上各模块时钟都分开了。这个可以看官方数据说明书就可以了。 其实程的目的就是设置一系列寄存器.并根据你设计程序流程去执行它,期间可能加入了你设计好的一些算法,和数学公式。进行计算,或执行。 第三,你有一块你的实验板就如这次STM32推的F429,你还需要下载程序的编程器。就是把编译器编译好的代码下载到你的目标实验板上,不过ST推的多数
[单片机]
<font color='red'>STM32</font>的数据类型基础介绍
小广播
添点儿料...
无论热点新闻、行业分析、技术干货……
设计资源 培训 开发板 精华推荐

最新单片机文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

换一换 更多 相关热搜器件
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved