资讯详情

基于STM32和SIM900A的监测系统设计(上位机基于labVIEW开发,数据库采用MySQL)

1. 整体方案

首先,简要说明开发目的:本开发希望实现单片机采集信号,无线传输到上位机,显示采集信息并存储。 思路:

  1. 利用STM32单片机通过串口和SIM900A通信无线模块;
  2. 利用STM32单片机控制SIM900A使用服务器TCP/IP建立连接,通过IP将数据发送到服务器的地址和端口号;
  3. 基于上位机软件TCP/IP协议接收服务器传输的数据,输的数据MySQL数据库。

2. 所用硬件

  1. 使用单片机STM32F103C8T6最小系统板 在这里插入图片描述

  2. 使用无线模块SIM900A模块

  3. CP2102模块 USB TO TTL,USB转串口模块UART

3. 调试步骤

:在开发过程中,从CSDN社区博客学到了很多经验。我在学习过程中努力整理学习资源,希望对大家有所帮助。请按照以下步骤学习调试,然后看第四部分的项目实现。信号收集和使用STM32单片机的ADC关于实现功能STM这里就不赘述32单片机的学习了。强烈建议根据学习,这里给B站学习网站。 https://www.bilibili.com/video/BV1N7411x7Yk?share_source=copy_web

3.1 STM32控制SIM900A的实现方法

https://blog.csdn.net/andylauren/article/details/52251243 本文介绍了使用STM32控制SIM900A分别阐述了硬件和软件的思路,实现了短信的收发和数据的无线传输。思路很清晰,请仔细阅读。

3.2 SIM900A调试:GPRS建立TCP连接到服务器进行数据传输

https://blog.csdn.net/Forever1715/article/details/81020052

SIM900A模块学习资料 链接:https://pan.baidu.com/s/13DPQsht5xB8YXFDePlXTfA 提取码:zkyi 请阅读文件夹:12,调试教程 必看资料 阅读顺序:

  1. UNV-SIM800-V3.92用户手册-V1.0.pdf
  2. AN0021 SIM800-SIM900系列开发板调试.pdf
  3. AN0023-SIM800-sim900系类模块GPRS部分调试笔记.pdf

提供服务器地址,提供服务器地址IP与端口,三分钟内不连接就会失效,但刷新页面自动更新。 http://tt.ai-thinker.com:8000/ttcloud :使用TCP客户端方的客户端TCP所有客户端和页面都发送服务器TCP将服务器数据转发到其他客户端。

3.3 LabVIEW调试:LabVIEW建立TCP连接到服务器进行数据传输

https://blog.csdn.net/weixin_28972031/article/details/113369003 本文中的程序创建了两个过程:生产者和消费者:生产者过程TCP如果有数据,将数据插入队列;消费者从队列中读取数据,延迟200ms然后在字符串控件中显示数据和当前时间连接。动图中的串口转网络助手可使用3.替换2节测试服务器。

根据上述链接的解释,我建立了它 LabVIEW程序,供参考: 链接:https://pan.baidu.com/s/1okE1vdQaw13E7FhgUgc__Q 提取码:6zja

3.4 数据库调试:创建MySQL与labVIEW连接

https://blog.csdn.net/weixin_42576925/article/details/80967392 博主对这篇文章非常用心,,本文详细介绍了创作MySQL与labVIEW连接过程:

  1. 如何安装MySQL
  2. 如何构建数据源
  3. 如何装Navicat for MySQL
  4. 如何安装labVIEW(32位和64位略有区别)
  5. 如何重新配置数据源?ODBC(仅32位labVIEW需要)
  6. 如何安装labSQL实现工具包和存取数据

4. 项目实现

4.1 准备工作

需要准备两台电脑,一台连接到所有硬件部件,另一台打开LabVIEW程序上位机作为远程监控。 用电脑实现效果其实是一样的,但并没有反映远程,哈哈! 请参考数据库配置3.四节,我是按照它的流程配置的。

4.2 硬件接线

传感器模拟信号输出端 --> STM32的PA0, STM32的PA2(TXD)–> SIM900A的RXD, STM32的PA3(RXD) --> SIM900A的TXD, STM32的VDD_3 --> SIM900A的V_MCU, STM32的VSS_3 --> SIM900A的GND。 STM32的PB10(TXD)–> CP2102的RXD, STM32的PB11(RXD) --> CP2102的TXD。 之所以在这里使用串口3,是因为外部显示屏成本高,功耗大,同时学习3.2节SIM900A调试时买的CP2102模块,因此在进行STM编写32程序时,使用串口3和计算机通信显示SIM900A注册到GPRS网络信息。 (程序其实可以进一步优化,不使用串口3,而是将SIM900A注册到GPRS网络的信息经安信可透传云服务器发送至LabVIEW上位机,放LabVIEW优化程序,分别SIM900A注册到GPRS采集信号的网络信息和信息。

4.3 程序

请自行下载: 链接:https://pan.baidu.com/s/1HyqM7hCN1TMJ_fdjmxFkkg 提取码:z25c

标签: oke继电器底座

锐单商城拥有海量元器件数据手册IC替代型号,打造 电子元器件IC百科大全!

锐单商城 - 一站式电子元器件采购平台