热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

MicroPython入坑记(四)利用MQTT实现0编程远程控制(上)(用安卓手机)

其实你被标题党骗了,0编程那是不可能的( ̄▽ ̄)不过也算近似零编程了哈哈MQTT我就不详细介绍了,毕竟看到这个标题进来的一般也就有些基础知识了。简单说说:MQTT是IBM发布的一个物联网

其实你被标题党骗了,0编程那是不可能的( ̄▽ ̄)"

不过也算近似零编程了哈哈

MQTT我就不详细介绍了,毕竟看到这个标题进来的一般也就有些基础知识了。简单说说:

MQTT是IBM发布的一个物联网协议,怎么说呢,微信大家都知道,微信是大家互相联系用的,MQTT其实就类似一个物联网的微信,各个设备间可以通过MQTT来沟通信息。

其实设备间联系的协议有很多,比如TCP/UDP,HTTP等。MQTT作为很晚才出现的后辈,当然是解决以前协议的痛点的。

1.TCP/UDP(SOCKET通讯)这个是物联网甚至是互联网的基础。在应用层面,这算底层了,优点当然是灵活,其实灵活,往往就意味着难用(比如C++就很灵活)你如果想开发一个基于TCP通讯,你需要考虑通讯的方方面面,比如断线重连,比如心跳包,比如加密传输,这些都得自己来实现,可能会占用你大量的调优时间。

2.HTTP,HTTP协议大家都知道是网页传输协议,其实网页传输是HTTP的一种应用而已,HTTP属于对TCP的高层封装,是一种短链接协议,可用于设备间连接。基于HTTP协议的连接方式又有个名字叫RESTful,这个编程就简单了,因为短链接么,就不用考虑啥断线重连之类的了,并且python有urllib,requsets等库,通讯就是一句代码的事,简单至极,但也有缺点:包头太长,每次通讯都要重新连接一次。如果几秒或者几分钟以上通讯一次还差不多,如果太过频繁,不但浪费资源,也太占带宽。

MQTT完美解决了上边这些协议的痛点,并且由于是个标准,现在各种语言,乃至安卓、IOS上都有现成的客户端,特别适合我这种懒得开发JAVA APP的懒人。这里介绍一个好用的安卓APP:ioT MQTT Panel,装了这个APP,设置一下,就能通过MQTT控制设备了,下边是我随便做了个界面:

 

怎么样?是不是有点意思,值得说的是: 这是完全不需要编写代码的装上这个APP,设置一下就可以了,嗯这是跟我的树莓派连接的:

树莓派上我接了一个继电器,一个超声波测距仪,手机客户端则是实时显示树莓派CPU温度、超声波测距的距离,以及控制继电器吸合、断开。

下一篇,我会实战介绍下用这个APP控制ESP8266(nodemcu)来实现无线控制LED灯的亮灭。


推荐阅读
  • 本文介绍了实时流协议(RTSP)的基本概念、组成部分及其与RTCP的交互过程,详细解析了客户端请求格式、服务器响应格式、常用方法分类及协议流程,并提供了SDP格式的深入解析。 ... [详细]
  • 调试利器SSH隧道
    在开发微信公众号或小程序的时候,由于微信平台规则的限制,部分接口需要通过线上域名才能正常访问。但我们一般都会在本地开发,因为这能快速的看到 ... [详细]
  • 如题:2017年10月分析:还记得在没有智能手机的年代大概就是12年前吧,手机上都会有WAP浏览器。当时没接触网络原理,也不 ... [详细]
  • 本文介绍了如何将Spring属性占位符与Jersey的@Path和@ApplicationPath注解结合使用,以便在资源路径中动态解析属性值。 ... [详细]
  • ipsec 加密流程(二):ipsec初始化操作
    《openswan》专栏系列文章主要是记录openswan源码学习过程中的笔记。Author:叨陪鲤Email:vip_13031075266163.comDate:2020.1 ... [详细]
  • 深入浅出:Hadoop架构详解
    Hadoop作为大数据处理的核心技术,包含了一系列组件如HDFS(分布式文件系统)、YARN(资源管理框架)和MapReduce(并行计算模型)。本文将通过实例解析Hadoop的工作原理及其优势。 ... [详细]
  • 构建高性能Feed流系统的设计指南
    随着移动互联网的发展,Feed流系统成为了众多社交应用的核心组成部分。本文将深入探讨如何设计一个高效、稳定的Feed流系统,涵盖从基础架构到高级特性的各个方面。 ... [详细]
  • 深入理解Java字节码:方法调用详解
    本文详细介绍了Java字节码中的方法调用机制,通过具体示例解析了字节码如何处理方法调用及其参数传递。文章由Mahmoud Anouti撰写,原文链接:https://dzone.com/articles/introduction-to-java-bytecode ... [详细]
  • 本文详细介绍了Socket在Linux内核中的实现机制,包括基本的Socket结构、协议操作集以及不同协议下的具体实现。通过这些内容,读者可以更好地理解Socket的工作原理。 ... [详细]
  • STM32代码编写STM32端不需要写关于连接MQTT服务器的代码,连接的工作交给ESP8266来做,STM32只需要通过串口接收和发送数据,间接的与服务器交互。串口三配置串口一已 ... [详细]
  • 如何高效学习鸿蒙操作系统:开发者指南
    本文探讨了开发者如何更有效地学习鸿蒙操作系统,提供了来自行业专家的建议,包括系统化学习方法、职业规划建议以及具体的开发技巧。 ... [详细]
  • 本文探讨为何Request对象的外观设计被认为是精妙的,重点在于其如何利用门面模式确保数据安全,同时保持系统的高效交互。 ... [详细]
  • Spring Boot与Graylog集成实现微服务日志聚合与分析
    本文介绍了如何在Graylog中配置输入源,并详细说明了Spring Boot项目中集成Graylog的日志聚合和分析方法,包括logback.xml的多环境配置。 ... [详细]
  • Python学习day3网络基础之网络协议篇
    一、互联网协议连接两台计算机之间的Internet实际上就是一系列统一的标准,这些标准称之为互联网协议,互联网的本质就是一系列网络协议。二、为什么要有互联网协议互联网协议就相当于计 ... [详细]
  • http:blog.csdn.netzeo112140articledetails7675195使用TCPdump工具,抓TCP数据包。将数据包上传到PC,通过Wireshark查 ... [详细]
author-avatar
joechl
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有