Arduino/Android 蓝牙通信系统设计解决方案

随着当今安全管理的发展需求以及国家对安全监控行业的支持,这几年,安全监控行业发展迅猛,各类监控系统百花齐放。传统的温度监控系统通过有线或其他方式传送温度数据,而本文提出了利用蓝牙无线传输数据的设计方案,这种利用蓝牙传输的设计方法,可以节约成本,提高生产效率和工作的灵活性。

1.系统硬件设计

蓝牙通信

Arduino 是一块基于开放源代码的 USB 接口 Simple I/0 接口板 (包括12通道数字GPIO4通道PWM输出6~8通道10bit ADC输入通道),该系统的硬件主要由ArduinoUNO主控板、ArduinoXbee 传感器扩展板、蓝牙串口模块和数字温度传感器组成。

1.1 Arduino:UNO主控板

对于开放原始码的电路图设计,可通过程式开发界面免费下载,也可依照需求自己修改使用低价格的微处理控制器ATMEGA328P-PU;可依据官方电路图简化Arduino模组,从而完成独立运作的微处理控制器;还可简单地与传感器、各式各样的电子元件(如红外线、超声波、热敏电阻、光敏电阻、伺服电机等)进行连接:USB 接口可以不需外接电源,500 mA自恢复保险丝可以避免电脑USB 电源过载,另外,还有提供VDC输入接口,USB 与外接电源可自动切换。在应用方面,利用Arduino 可以突破以往只能使用滑鼠、键盘、CCD 等输入装置的互动内容,因而可以更简单地达成单人或多人游戏互动。

1.2Arduino Xbee 传感器扩展板

ArduinoXbee传感器扩展板 V5含有RS485总线/无线数传/蓝牙口,其主要功能是使蓝牙芯片、温度传感器与主控板相连。

1.3蓝牙串口模块

DF-BluetoothV3 蓝牙模块采用独特双层板设计,既美观又可防止静电损坏模块。可以设计两个电源输入口,一个宽电压供电 (3.5~8 V),一个3.3V供电,以适用于各种场合。系统可以用STATE和LINK指示灯清晰显示模块工作状态和连接状态,其中,STATE状态有搜索状态(高 104 ms,周期342 ms,2.9 H 闪烁)和连接状态(高 104 s,周期20.5 Hz闪烁);而LINK 状态一般在配对后常亮。

1.4数字温度传感器

选用DS18B20数字温度传感器可以对环境温度进行定量检测。DS18B20数字温度传感器是美国DALLAS公司生产的单总线数字温度传感器。其测温范围为-55~+125C,固有测温分辨率为0.5C,可支持多点组网功能,多个DS18B20 可以并联在唯一的三线上实现多点测温,测量结果以9~12位数字量方式串行传送

2.系统的软件设计

蓝牙通信系统设计

2.1Arduino 控制软件设计

Arduino具有类似于Java和C语言的IDE 集成开发环境,其编程语言类似于C语言,用户可以通过USB 接口直接进行编程和通信。Arduino端软件的主要功能是要主控板将温度感应器探测到的温度通过蓝牙芯片传递给手机终端。

2.2Android 手机端软件设计

Android是基于Linux内核的操作系统。Android的实质是一种软件架构,主要由操作系统、中间件以及一些关键应用组成。作为由Linux+Java构成的开源软件,Android 已经越来越多地出现在我们的生活中:手机、平板电脑,还有将来的电视甚至汽车。它是当今最火爆,市场占有率最高的移动终端操作系统。而手机端主要通过蓝牙接收Arduino端传递过来的数据并在手机界面上显示。

3.蓝牙通信

3.1蓝牙技术简介

蓝牙是一种支持设备短距离通信 (一般 10m内)的无线电技术,能在包括移动电话PDA、无线耳机、笔记本电脑、相关外设等众多设备之间进行无线信息交换。利用蓝牙技术能够有效地简化移动通信终端设备之间的通信,也能够成功地简化设备与 Internet 之间的通信,从而使数据传输变得更加迅速高效,为无线通信拓宽道路。蓝牙采用分散式网络结构以及快跳频和短包技术,支持点对点及点对多点通信,工作在全球通用的2.4GHZISM(即工业科学、医学)频段。其数据速率为1Mb/s。采用时分双工传输方案,可实现全双工传输。

3.2蓝牙协议

本系统中主要用的是蓝牙配对和 Bluetooth Serial Port 协议。其中配对是两个 Bluetooth 设备间建立新关系的过程。在此过程中,将交换链路密钥(在请求建立连接之前或在连接阶段);而 Bluetooth Serial Port 的主要功能是将 Bluetooth 的通信转化成 Virtual Serial Port (虚拟串口)。经过这样的转换后,使用 Bluetooth 的 Client程序就可以像使用串口一样操作Bluctooth,并通过这个把采集到的温度数值传递给手机端。

3.3蓝牙传输过程

Arduino主控板可将温度传感器探测到的温度以一定发送频率通过蓝牙芯片,以BluetoothSerial Port虚拟串口的方式传递给手机端,然后由手机端在界面上显示温度。

出处:物联网技术

原标题: 基于Arduino/Android 的蓝牙通信系统设计

作者:郑吴 钟志峰 郭吴 许骏

参考资料

https://www.hooketech.com/bluetooth-communication-system.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/300355.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

7_js_dom编程入门1

Objective(本课目标) 掌握获取页面元素的常用方法 掌握事件触发案例 能够区分innerText和innerHTML的区别 综合案例训练 1 DOM 介绍 1.1 什么是DOM 文档对象模型(Document Object Model,简称DOM),是 …

单集群400TB,OceanBase稳定支撑快手核心业务场景

一款日均超过千万人访问的短视频 App 快手,面对高并发流量如何及时有效地处理用户请求?通过在后端配置多套 MySQL 集群来支撑高流量访问,以解决大数据量存储和性能问题,这种传统的 MySQL 分库分表方案有何问题?快手对分…

python 通过opencv及face_recognition识别人脸

效果: 使用Python的cv2库和face_recognition库来进行人脸检测和比对的 0是代表一样 认为是同一人。 代码: pip install opencv-python pip install face_recognition# 导入cv2库,用于图像处理 import cv2 # 导入face_recognition库&#…

关于发票和增值税相关的知识点

关于发票和增值税相关的知识点 问答(Q&A)1、发票的种类有哪些?2、增值税专用发票和增值税普通发票有什么区别?3、增值税怎么计算? 点击进入 易舟云财务软件 官网! 问答(Q&A) 1、发票的种类有哪些? 发票的种类主…

SpringBoot 3.2.0 基于Logback定制日志框架

依赖版本 JDK 17 Spring Boot 3.2.0 工程源码:Gitee 日志门面和日志实现 日志门面(如Slf4j)就是一个标准,同JDBC一样来制定“规则”,把不同的日志系统的实现进行了具体的抽象化,只提供了统一的日志使用接…

渗透测试 | 信息收集常用方法总结

目录 一、关于域名 1.子域名收集 a.搜索引擎查找 b.在线查询 c.工具 d.SSL/TLS证书查询 2.端口型站点收集 3.目录文件扫描 a.目录扫描工具 b.github搜索 c.google搜索 d.在线网站 e.文件接口工具 4.旁站和C段 a.旁站查询 b.C段查询 5.网站技术架构信息 a.基础…

Django(三)

1.快速上手 确保app已注册 【settings.py】 编写URL和视图函数对应关系 【urls.py】 编写视图函数 【views.py】 启动django项目 命令行启动python manage.py runserverPycharm启动 1.1 再写一个页面 2. templates模板

STM32 支持IAP的bootloader开发,使用串口通过Ymodem协议传输固件

资料下载: https://download.csdn.net/download/vvoennvv/88658447 一、概述 关于IAP的原理和Ymodem协议,本文不做任何论述,本文只论述bootloader如何使用串口通过Ymodem协议接收升级程序并进行IAP升级,以及bootloader和主程序两个工程的配置…

CAS-Unsafe类底层汇编源码分析

源码分析: 底层汇编: cmpxchg底层:cmpxchg即比较并交换指令 总结: CAS是靠硬件实现的从而在硬件层面提升效率,最底层还是交给硬件来保证原子性和可见性实现方式是基于硬件平台的汇编指令,在inter的CPU中&a…

Swagger快速入门

1、Swagger快速入门 1.1 swagger介绍 官网:https://swagger.io/ Swagger 是一个规范和完整的Web API框架,用于生成、描述、调用和可视化 RESTful 风格的 Web 服务。 功能主要包含以下几点: A. 使得前后端分离开发更加方便,有利于团队协作…

12/25 分析算法时间复杂度的基本方法

分析算法时间复杂度的基本方法: 若f(n)是m次多项式,则T(n)O() 忽略所有低次幂和最高次幂的系数,体现出增长率的含义! 1.找出语句频度最大的那条语句作为基本语…

JVM 类加载子系统

1. 前言 ​ 虚拟机就是一款用来执行虚拟计算机指令的计算机软件。它相当于一台虚拟计算机。大体上,虚拟机分为系统虚拟机和程序虚拟机。系统虚拟机就相当于一台物理电脑,里面可以安装操作系统;程序虚拟机是为了执行单个计算机程序而设计出来…