【雕爷学编程】MicroPython动手做(30)——物联网之Blynk 3

news2025/1/18 7:28:20

知识点:什么是掌控板?
掌控板是一块普及STEAM创客教育、人工智能教育、机器人编程教育的开源智能硬件。它集成ESP-32高性能双核芯片,支持WiFi和蓝牙双模通信,可作为物联网节点,实现物联网应用。同时掌控板上集成了OLED显示屏、RGB灯、加速度计、麦克风、光线传感器、蜂鸣器、按键开关、触摸开关、金手指外部拓展接口,支持图形化及MicroPython代码编程,可实现智能机器人、创客智造作品等智能控制类应用。

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

1、物联网(Internet of Things,缩写:IoT)

是基于互联网、传统电信网等信息承载体,让所有能行使独立功能的普通物体实现互联互通的网络。其应用领域主要包括运输和物流、工业制造、健康医疗、智能环境(家庭、办公、工厂)等,具有十分广阔的市场前景。

物联网的概念最早是在1999年由Kevin Ashton在一次演讲中提出来的,当时他是一个RFID研究机构的执行主任,这家研究机构是在宝洁公司和吉列公司的赞助下成立的。而他本人也因此被称为物联网之父。随后麻省理工学院的Neil Gershenfeld教授出版了一本名为《When things Start to Think》的书。以这些为标志,正式揭开了物联网的序幕。

物联网的英文是Internet of Things,缩写为IoT。这里的“物”指的是我身边一切能与网络联通的物品。例如你带的手表、你骑的共享单车、马路上的汽车、家里的冰箱、路边的路灯、甚至是一棵树。只要一件物品能够与网络相连,它就都是物联网中的“物”。而所谓物联网,就是“物”与人,以及“物”与“物”之间,通过网络来传递和处理信息。

在这里插入图片描述
Blynk
专为物联网而设计。它可以远程控制硬件,可以显示传感器数据,可以存储数据,对其进行虚拟化,还可以执行许多其他出色的工作。该平台包含三个主要组件:

1、Blynk应用程序——允许您使用我们提供的各种小部件为您的项目创建惊人的界面。

2、Blynk服务器——负责智能手机和硬件之间的所有通信。您可以使用我们的Blynk Cloud或在本地运行您的私有Blynk服务器。它是开源的,可以轻松处理数千个设备,甚至可以在Raspberry Pi上启动。

3、Blynk库——适用于所有流行的硬件平台-支持与服务器的通信并处理所有传入和传出的命令。

现在想像一下:每次在Blynk应用程序中按下Button时,消息就会传播到Blynk Cloud空间,神奇地在其中找到通向硬件的方式。它在相反方向上的作用相同,并且所有操作都在眨眼间发生。

在这里插入图片描述

3、远程开关控制板载RGB灯

连接服务器IP:116.62.49.166 端口: 8080

设置APP组件

在这里插入图片描述

#MicroPython动手做(30)——物联网之Blynk
#远程开关控制板载RGB灯

#MicroPython动手做(30)——物联网之Blynk
#远程开关控制板载RGB灯

from mpython import *
import network
import blynklib
import time
import music

my_wifi = wifi()

my_wifi.connectWiFi("zh", "zy1567")

blynk = blynklib.Blynk("N14sXx7xQ-rXQF4_gKIFjEQqCC_LzybL", server="116.62.49.166", port=8080)

@blynk.handle_event("connect")
def connect_handler():
    print('Blynk connected')

@blynk.handle_event("disconnect")
def connect_handler():
    print('Blynk disconnected')

@blynk.handle_event('write V1')
def write_virtual_pin_handler(pin, _value):
    global i
    for i in range(0, len(_value)):
        try: _value = eval(_value)
        except: pass
    if len(_value) == 1: _value = _value[0]
    rgb.fill((int(153), int(0), int(0)))
    rgb.write()
    time.sleep_ms(1)
    music.play('G5:1')

@blynk.handle_event('write V0')
def write_virtual_pin_handler(pin, _value):
    global i
    for i in range(0, len(_value)):
        try: _value = eval(_value)
        except: pass
    if len(_value) == 1: _value = _value[0]
    rgb.fill( (0, 0, 0) )
    rgb.write()
    time.sleep_ms(1)
    music.play('E5:1')


oled.fill(0)
oled.DispChar("        网络已经连接", 0, 16, 1)
oled.show()
rgb[1] = (int(0), int(102), int(0))
rgb.write()
time.sleep_ms(1)
music.play('C5:1')
while True:
    blynk.run()

mPython X 实验图形编程

在这里插入图片描述

#MicroPython动手做(30)——物联网之Blynk
#远程开关控制板载RGB灯(实验视频)

https://v.youku.com/v_show/id_XNDcwNDMwMjQwNA==.html?spm=a2h0c.8166622.PhoneSokuUgc_1.dtitle

在这里插入图片描述

4、Blynk远程控制七彩灯
调整APP控制面板元素为

在这里插入图片描述

#MicroPython动手做(30)——物联网之Blynk
#Blynk远程控制七彩灯RGB

#MicroPython动手做(30)——物联网之Blynk
#Blynk远程控制七彩灯RGB

from mpython import *
import network
import music
import blynklib
import time

my_wifi = wifi()

my_wifi.connectWiFi("zh", "zy1567")

blynk = blynklib.Blynk("CO1NhMoRAYxP3p3hBjvsqrrHmIoYzM0e", server="116.62.49.166", port=8080)

@blynk.handle_event("connect")
def connect_handler():
    print('Blynk connected')

@blynk.handle_event("disconnect")
def connect_handler():
    print('Blynk disconnected')

@blynk.handle_event('write V0')
def write_virtual_pin_handler(pin, _value):
    global my_list
    for i in range(0, len(_value)):
        try: _value = eval(_value)
        except: pass
    if len(_value) == 1: _value = _value[0]
    my_list = _value
    rgb.fill( (int(my_list[0]), int(my_list[1]), int(my_list[2])) )
    rgb.write()
    time.sleep_ms(1)


music.play('G5:1')
oled.fill(0)
oled.DispChar("    远程控制七彩灯RGB", 0, 16, 1)
oled.show()
rgb[1] = (int(0), int(102), int(0))
rgb.write()
time.sleep_ms(1)
while True:
    blynk.run()

mPython X 实验图形编程

在这里插入图片描述

#MicroPython动手做(30)——物联网之Blynk
#Blynk远程控制七彩灯RGB

https://v.youku.com/v_show/id_XNDcwNTIxNjAzNg==.html

在这里插入图片描述

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Unity 引擎做残影效果——2、屏幕后处理方式

Unity实现残影效果 大家好,我是阿赵。 这里继续介绍Unity里面做残影的方法。之前介绍了BakeMesh的方法做残影,这一期介绍的是用屏幕后处理的方法做残影。 一、原理 之前的BakeMesh方法,是真的生成了很多个网格模型在场景里面。如果用后处理做…

Linux学习之周期性计划任务cron和crontab

crontab -e可以编辑周期性计划任务。在使用此命令编辑的时候,需要要注意每一行有六个字段,使用空格或者Tab键进行隔开: Min Hour Day Month Day_Week commandToExecute - - - - - | | | | | | | | | --…

optee支持哪些密码学算法

GP规范强制要求 GP规范定义可选实现的 optee os实现的 参考:optee_os-3.20.0/lib/libutee/include/tee_api_defines.h 206 /* Algorithm Identifiers */ 207 #define TEE_ALG_AES_ECB_NOPAD 0x10000010 208 #define TEE_ALG_AES_CBC_NOPAD

【面试题】位图

文章目录 位图如何添加数据如何删除数据代码实现给100亿个整数,如何找到只出现一次的数字代码实现给两个文件,分别有100亿个整数,但只有1g内存,如何找到文件的交集?1个文件有100亿个int,1G内存,…

如何使用ArcGIS Pro制作建筑立体效果

虽然ArcGIS Pro已经将二三维场景融合于一个软件之中,但是在某些使用场景下,我们只需要看到建筑的立体效果就行,不用实际的三维建筑效果,毕竟三维的效果对硬件的要求更高,地图的加载效率也没有二维好,所以这…

【雕爷学编程】Arduino动手做(181)---Maixduino AI开发板6

37款传感器与执行器的提法,在网络上广泛流传,其实Arduino能够兼容的传感器模块肯定是不止这37种的。鉴于本人手头积累了一些传感器和执行器模块,依照实践出真知(一定要动手做)的理念,以学习和交流为目的&am…

住宅小区门禁管理,居然还能这样做!

安全是我们生活中最重要的一环。而在现代社会,门禁监控系统成为了保障居民安全的重要措施之一。 门禁系统利用先进的人脸识别技术,为小区居民带来了更高效、更安全的出入管理体验,更为居民创造了便捷、智能的生活方式。 客户案例 东莞市某花…

Flask项目打包为exe(附带项目资源,静态文件)

1.在项目根目录创建my_app.spec文件,内容如下: # -*- mode: python ; coding: utf-8 -*-block_cipher Nonea Analysis([server.py], # flask入口pathex[],binaries[], datas[("E:/**/templates","/templates"),("E:/**/s…

SpringBoot3 整合Prometheus + Grafana

通过Prometheus Grafana对线上应用进行观测、监控、预警… 健康状况【组件状态、存活状态】Health运行指标【cpu、内存、垃圾回收、吞吐量、响应成功率…】Metrics… 1. SpringBoot Actuator 1. 基本使用 1. 场景引入 <dependency><groupId>org.springframew…

大数据之Hadoop(一)

目录 一、准备三台服务器 二、虚拟机间配置免密登录 三、安装JDK 四、关闭防火墙 五、关闭安全模块SELinux 六、修改时区和自动时间同步 一、准备三台服务器 我们先准备三台服务器&#xff0c;可以通过虚拟机的方式创建&#xff0c;也可以选择云服务器。 关于如何创建虚…

fatal error C1128: 节数超过对象文件格式限制: 请使用 /bigobj 进行编译

问题 默认情况下&#xff0c;对象文件最多可存放 65,536 (2^16) 个可寻址的节。 /bigobj将该地址容量增加至 4,294,967,296 (2^32)。大多数模块将从来不会生成包含数超过 65,536 的 .obj 文件。 但是&#xff0c;计算机生成的代码或大量使用模板库的代码可能需要可存放更多节的…

python爬虫(五)_urllib2:Get请求和Post请求

本篇将介绍urllib2的Get和Post方法&#xff0c;更多内容请参考:python学习指南 urllib2默认只支持HTTP/HTTPS的GET和POST方法 urllib.urlencode() urllib和urllib2都是接受URL请求的相关参数&#xff0c;但是提供了不同的功能。两个最显著的不同如下&#xff1a; urllib仅可以…

人工智能技术

目录 1.什么是人工智能 2.人工智能的由来 3.人工智能的代表作 4.人工智能给人类带来的福利 1.什么是人工智能 人工智能 (Artificial Intelligence, AI) 是一门研究计算机如何模拟、模仿以及执行人类智能活动的科学与技术领域。它涉及了构建智能代理体系&#xff0c;使其能够…

电脑怎么设置密码?简单4招,轻松给电脑上锁!

“新买了部电脑&#xff0c;最近在使用时保存了一些比较重要的文件&#xff0c;想给电脑设置个密码以防文件泄露。电脑怎么设置密码呢&#xff1f;求答案&#xff01;” 电脑对我们的生活越来越重要&#xff0c;我们会将很多重要的文件数据等都保存在电脑中。如果电脑没有设置密…

arcgis字段计算器

1、两字段叠加。要求待叠加的字段类型为文本或字符串类型。如下&#xff1a; 2、字符串部分提取。

【《Python树莓派编程从零开始(第3版)》——树莓派编程的优秀指南】

通过阅读《Python树莓派编程从零开始(第3版)》&#xff0c;你将学会配置树莓派&#xff0c;编写并调试Python程序;学会使用Python的字符串、列表、函数和字典&#xff0c;以及模块、类方法等;还可以使用pygame创建用户友好的游戏&#xff0c;使用guizero构建直观的用户界面&…

【数据结构】快速排序

快速排序是一种高效的排序算法&#xff0c;其基本思想是分治法。它将一个大问题分解成若干个小问题进行解决&#xff0c;最后将这些解合并得到最终结果。 快速排序的主要思路如下&#xff1a; 选择一个基准元素&#xff1a;从待排序的数组中选择一个元素作为基准&#xff08;…

DataBase 1. kaggle 发现无法显示验证码进行人机交互怎么办?

这期开始增加一个系列就是我们经常用到的数据库或者网站&#xff0c;便于我们查找数据&#xff0c;在线分析数据&#xff0c;若能很好的利用别人的工具&#xff0c;就没必要自己一句一句码代码&#xff0c;最主要的是不断出现各种bug处理不了&#xff0c;东问西问搞不定&#x…

css在线代码生成器

这里收集了许多有意思的css效果在线代码生成器适合每一位前端开发者 布局&#xff0c;效果类&#xff1a; 网格生成器https://cssgrid-generator.netlify.app/ CSS Grid Generator可帮助开发人员使用CSS Grid创建复杂的网格布局。网格布局是创建Web页面的灵活和响应式设计的强…

面试题学习以及问题

redis redis缓存 缓存穿透 布隆过滤器主要是用于检索一个元素是否在一个集合中。我们当时使用的是 redisson实现的布隆过滤器。 它的底层主要是先去初始化一个比较大数组&#xff0c;里面存放的二进制0或1。在一 开始都是0&#xff0c;当一个key来了之后经过3次hash计算&…