【雕爷学编程】MicroPython动手做(21)——掌控板之磁场传感器

news2024/11/17 22:45:41

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

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

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

掌控板硬件特性:
ESP-32主控
处理器:Tensilica LX6双核处理器(一核处理高速连接;一核独立应用开发)
主频:高达240MHz的时钟频率
SRAM:520KB
Flash:8MB
Wi-Fi标准:FCC/CE/TELEC/KCC
Wi-Fi协议:802.11 b/g/n/d/e/i/k/r (802.11n,速度高达150 Mbps),A-MPDU和A-MSDU聚合,支持0.4us防护间隔
频率范围:2.4~2.5 GHz
蓝牙协议:符合蓝牙v4.2 BR/EDR和BLE标准
蓝牙音频:CVSD和SBC音频低功耗:10uA
供电方式:Micro USB供电
工作电压:3.3V
最大工作电流:200mA
最大负载电流:1000mA
掌控板载
三轴加速度计MSA300,测量范围:±2/4/8/16G
地磁传感器MMC5983MA,测量范围:±8 Gauss;精度0.4mGz,电子罗盘误差±0.5°
光线传感器
麦克风
3 颗全彩ws2812灯珠
1.3英寸OLED显示屏,支持16*16字符显示,分辨率128x64
无源蜂鸣器
支持2个物理按键(A/B)、6个触摸按键
支持1路鳄鱼夹接口,可方便接入各种阻性传感器
拓展接口
20通道数字I/O, (其中支持12路PWM,6路触摸输入)
5通道12bit模拟输入ADC,P0~P4
1路的外部输入鳄鱼夹接口:EXT/GND
支持I2C、UART、SPI通讯协议

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

地磁(磁场)传感器MMC5983MA
测量范围:±8 Gauss
精度0.4mGz,电子罗盘误差±0.5°

注:掌控板2.0版本才有

在这里插入图片描述
MMC5983AM特征

完全集成的3轴磁传感器和

需要较少外部电路的电子电路

组件

出色的动态范围和精度:

±8G FSR,16位操作

每LSB分辨率0.25mG

0.4mG的总RMS噪声

使航向精度达到1º

最大输出数据速率为600Hz

工业标准薄型包装

3.0x3.0x1.0毫米

使用内置的SET / RESET功能消磁

消除了热变化引起的偏移

错误(空字段输出)

清除残留的磁化强度

来自强大的外部领域

片内灵敏度补偿

片上温度传感器

Motion_Detection和Data_Ready中断

低功耗

1µA的掉电电流

I2

C从机,FAST(≤400KHz)模式

2.5V单路低功耗电源

1.8V I2

C接口

符合RoHS

与HMC5883L兼容的P2P

在这里插入图片描述

地磁(磁场)传感器MMC5983MA参数

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

地球磁场(the earth magnetic field)
是指地球周围空间分布的磁场。偶极型,近似于把一个磁铁棒放到地球中心,地磁北(N)极处于地理南极附近,地磁南(S)极处于地理北极附近。磁极与地理极不完全重合,存在磁偏角。地球磁场属于电磁场,是通过外核的电子随地球自转的电流效应(近似于电生磁)产生的磁场。

历史上,第一个提出地磁场理论概念的是英国人吉尔伯特。他在1600年提出一种论点,认为地球自身就是一个巨大的磁体,它的两极和地理两极相重合。这一理论确立了地磁场与地球的关系,指出地磁场的起因不应该在地球之外,而应在地球内部。

1893年,数学家高斯在他的著作《地磁力的绝对强度》中,从地磁成因于地球内部这一假设出发,创立了描绘地磁场的数学方法,从而使地磁场的测量和起源研究都可以用数学理论来表示。但这仅仅是一种形式上的理论,并没有从本质上阐明地磁场的起源。科学家们已掌握了地磁场的分布与变化规律,但是,对于地磁场的起源问题,学术界却一直没有找到一个令人满意的答案。关于地磁场起源的假说归纳起来可分为两大类,第一类假说是以现有的物理学理论为依据;第二类假说则独辟蹊径,认为对于地球这样一个宇宙物体,存在着不同于现有已知理论的特殊规律。属于第一类假说的有旋转电荷假说。它假定地球上存在着等量的异性电荷,一种分布在地球内部,另一种分布在地球表面,电荷随地球旋转,因而产生了磁场。这一假说能够很自然地通过电与磁的关系解释地磁场的成因。但是,这个假说却有一个致命缺点,首先它不能解释地球内外的电荷是如何分离的;其次,地球负载的电荷并不多,由它产生的磁场是很微弱的,根据计算,如果要想得到地磁场这样的磁场强度,地球的电荷储量需要扩大1亿倍才行,理论计算和实际情况出入很大。以地核为前提条件的地磁场假说也属于第一类假说,弗兰克在这类假说中提出了发电机效应理论。他认为地核中电流的形成,应该是地核金属物质在磁场中做涡旋运动时,通过感应的方式而发生的。同时,电流自身形式的场就是连续不断的再生磁场,好像发电机中的情形一样。弗兰克所建立的模型说明了怎样实现地磁场的再生过程,解释了地磁场有一定的数值。但是在应用这种模型的时候,却很难解释地核中的这种电路是怎样通过圆形回路而闭合的。此外,这个模型也没有考虑到电流对涡旋运动的反作用,而这种反作用是不允许涡旋分布于平行赤道面的平面内的。属于第一类假说的还有漂移电流假说、热力效应假说和霍尔效应假说等,但这些假说都不能全面地解释地磁场的奇异特性。关于地磁场起源还有第二类假说,这其中最具代表性的就是重物旋转假说。

1947年,布莱克特提出任意一个旋转体都具有磁矩,它与旋转体内是否存在电荷无关。这一假说认为,地球和其他天体的磁场都是在旋转中产生的,也就是说星体自然生磁,就好像电荷转动能产生磁场一样。但是,这一假说在试验和天文观测两方面都遇到了困难。在现有的实验条件下,还没有观察到旋转物体产生的磁效应。而对天体的观测结果表明,每个星球的磁场分布状况都很复杂,尚不能证明星球的旋转与磁场之间存在着必然的依存关系。因此上说,关于地磁场的起源问题,学术界仍处在探索与争鸣之中,尚没有一个具有相当说服力的理论,对地磁场的成因作出解释。

在这里插入图片描述
2、简易测量自然磁场(地磁)强度

#MicroPython动手做(21)——掌控板之指南针模块
#简易测量自然磁场(地磁)强度

from mpython import *
while True:
    magnetic.peeling()
    oled.fill(0)
    oled.DispChar('磁场强度', 40, 15, 1)
    oled.DispChar((str(magnetic.get_field_strength())), 33, 30, 1)
    oled.show()

mPython 图形编程
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
3、柱状条动态地磁强度值

#MicroPython动手做(21)——掌控板之指南针模块
#柱状条动态地磁强度值

from mpython import *

myUI = UI(oled)
while True:
    cc = ((100 - 0) / (2.7 - 0)) * (magnetic.get_field_strength() - 0) + 0
    magnetic.peeling()
    oled.fill(0)
    oled.DispChar('磁场强度', 8, 15, 1)
    oled.DispChar((str(magnetic.get_field_strength())), 56, 15, 1)
    myUI.stripBar(6, 35, 110, 10, cc, 1, 1)
    oled.show()

mPython 图形编程

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

4、磁感应开关控制RGB

#MicroPython动手做(21)——掌控板之指南针模块
#磁感应开关控制RGB

from mpython import *
import time


while True:
    magnetic.peeling()
    oled.fill(0)
    oled.DispChar("磁场强度", 39, 15, 1)
    oled.DispChar((str(magnetic.get_field_strength())), 33, 35, 1)
    oled.show()
    if int(magnetic.get_field_strength()) > 200:
        rgb.fill((int(255), int(0), int(0)))
        rgb.write()
        time.sleep_ms(1)
        oled.fill(0)
        oled.DispChar("三颗红灯  开", 26, 20, 1)
        oled.show()
        time.sleep(1)
    else:
        rgb.fill( (0, 0, 0) )
        rgb.write()
        time.sleep_ms(1)

mPython X 图形编程
在这里插入图片描述
在这里插入图片描述

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

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

相关文章

hooks复杂前端业务解题之道

hooks 大势所趋 2019年年初,react 在 16.8.x 版本正式具备了 hooks 能力,同年6月;尤雨溪在 vue/github-issues 里提出了关于 vue3 Component API 的提案(vue hooks的基础)。在Vue3的组合式API出现后,githu…

session反序列化+SoapClientSSRF+CRLF

文章目录 session反序列化SoapClientSSRFCRLF前言bestphps revengecall_user_func()方法的特性SSRFCRLF组合拳session反序列化 解题步骤总结 session反序列化SoapClientSSRFCRLF 前言 从一道题分析通过session反序列化出发SoapClientSSRF利用CRLF解题 bestphp’s revenge 首…

计算机毕设 深度学习人体语义分割在弹幕防遮挡上的实现 - python

文章目录 1 课题背景2 技术原理和方法2.1基本原理2.2 技术选型和方法 3 实例分割4 实现效果5 最后 # 1 前言 🚩 深度学习人体语义分割在弹幕防遮挡上的应用 🥇学长这里给一个题目综合评分(每项满分5分) 难度系数:3分工作量:3分…

ChatGPT在教育领域的应用:改变学习方式的前沿技术

🌷🍁 博主 libin9iOak带您 Go to New World.✨🍁 🦄 个人主页——libin9iOak的博客🎐 🐳 《面试题大全》 文章图文并茂🦕生动形象🦖简单易学!欢迎大家来踩踩~&#x1f33…

Flutter Add to App 问题记录

前一阵应用中接入了Flutter,使用的是官方的Multiple FlutterEngine管理方案,目前线上运行良好,这里整理一下遇到的问题。 将 Flutter 集成到现有应用整体来说没有什么问题,按照文档的说明结合demo操作就行。接入后多语言&#xf…

【应用层】Http协议总结

文章目录 一、续->Http协议的学习 1.http请求中的get方法和post方法 2.http的状态码 3.http的报头 4.长链接 5.cookie(会话保持)总结 继续上一篇的内容: 上一篇的最后我们讲到了web根目录,知道…

Git的.gitignore文件、标签管理以及给命令起别名

文章目录 1. 前言2. .gitignore文件3. 标签管理4. 给命令起别名 1. 前言 本文主要讲解Git中容易被忽略但比较重要一些知识:.gitignore文件、标签管理以及给命令起别名. 2. .gitignore文件 在新建仓库时,有一个添加.gitignore 模板: .gitignore 是一个用于指定 Git 忽略特定文…

Mysql第四,五连弹

第四弹 一、💛 主键约束(Primary key): 通过这个约束来指定某一个列作为主键(1.非空,2.不能重复) ,主键:一条数据,身份标识(类似于内存地址) 😄&a…

Python爬虫Scrapy(二)_入门案例

入门案例 学习目标 创建一个Scrapy项目定义提取的结构化数据(Item)编写爬取网站的Spider并提取出结构化数据(Item)编写Item Pipelines来存储提取到的Item(即结构化数据) 一、新建项目(scrapy startproject) 在开始爬取之前,必须创建一个新的Scrapy项目。进入自定…

计算机毕设 深度学习人体跌倒检测 -yolo 机器视觉 opencv python

文章目录 0 前言1.前言2.实现效果3.相关技术原理3.1卷积神经网络3.1YOLOV5简介3.2 YOLOv5s 模型算法流程和原理4.数据集处理3.1 数据标注简介3.2 数据保存 5.模型训练 6 最后 0 前言 🔥 这两年开始毕业设计和毕业答辩的要求和难度不断提升,传统的毕设题…

[Round#14 Illuminate with your bril]

周末NSS的PWN专题,只作了3个,结束后跟NSS的师傅聊,对方确认了第4题的作法,重作成功。第5题看师傅的WP复现成功。 love 主函数给了个printf,这里可以得到所有地址,并且要求把v4,v5改相等 int __cdecl mai…

Linux 版本的 Abyss Locker 勒索软件针对 VMware ESXi 服务器

Abyss Locker 是最新开发的 Linux 加密器,旨在针对 VMware 的 ESXi 虚拟机平台对企业进行攻击。 随着企业从单个服务器转向虚拟机以实现更好的资源管理、性能和灾难恢复,勒索软件团伙创建了专注于针对该平台的加密器。 随着 VMware ESXi 成为最流行的虚…

UE5 摄像机与NPC重叠阻挡导致视角闪现的解决方法

文章目录 前言问题背景问题剖析摄像机碰撞分析解决方法总结前言 本文基于虚幻5.2.1版本,对摄像机与NPC重叠阻挡导致视角闪现提供一个解决方案,并深入讲解摄像机碰撞原理,提升大家的思维与解决问题的能力。 问题背景 当我们被NPC攻击或者NPC介于摄像机与玩家之间导致摄像机…

小研究 - JVM GC 对 IMS HSS 延迟分析(二)

用户归属服务器(IMS HSS)是下一代通信网(NGN)核心网络 IP 多媒体子系统(IMS)中的主要用户数据库。IMS HSS 中存储用户的配置文件,可执行用户的身份验证和授权,并提供对呼叫控制服务器…

微服务入门---Docker

微服务入门---Docker 1.初识Docker1.1.什么是Docker1.1.1.应用部署的环境问题1.1.2.Docker解决依赖兼容问题1.1.3.Docker解决操作系统环境差异1.1.4.小结 1.2.Docker和虚拟机的区别1.3.Docker架构1.3.1.镜像和容器1.3.2.DockerHub1.3.3.Docker架构1.3.4.小结 1.4.安装Docker 2.…

Flutter环境搭建踩坑集锦

Flutter 背景准备工作先检查一下自己的电脑,看一下是不是满足配置要求下载安装配置环境下载安装JDK下载安装Android studio下载Flutterflutter doctor故障Android license status unknownNetwork resources 故障 后记 背景 发现一个不错的框架Flutter,听…

web题型

0X01 命令执行 漏洞原理 没有对用户输入的内容进行一定过滤直接传给shell_exec、system一类函数执行 看一个具体例子 cmd1|cmd2:无论cmd1是否执行成功,cmd2将被执行 cmd1;cmd2:无论cmd1是否执行成功,cmd2将被执行 cmd1&cmd2:无论cmd1是否执行成…

【C++继承】

目录 一、继承的概念及定义1.1继承的概念1.2继承的定义1.2.1定义格式1.2.2继承方式与访问限定符的组合 二、基类和派生类对象赋值转换三、继承中的作用域四、派生类的默认成员函数五、继承与友元六、继承与静态成员七、复杂的菱形继承及菱形虚拟继承八、虚拟继承的原理 一、继承…

(AcWing)满足条件的01序列

给定 n 个 0 和 n 个 1,它们将按照某种顺序排成长度为 2n 的序列,求它们能排列成的所有序列中,能够满足任意前缀序列中 0 的个数都不少于 1 的个数的序列有多少个。 输出的答案对 10^97 取模。 输入格式 共一行,包含整数 n。 …

Kotlin基础(十):函数进阶

前言 本文主要讲解kotlin函数,之前系列文章中提到过函数,本文是kotlin函数的进阶内容。 Kotlin文章列表 Kotlin文章列表: 点击此处跳转查看 目录 1.1 函数基本用法 Kotlin 是一种现代的静态类型编程语言,它在函数的定义和使用上有一些特点…