HMC5883L磁力计使用

article/2025/10/13 19:10:00

一、器件简介

        HMC5883L是一款三轴磁场传感器,电子指南针罗盘模块。采用IIC通讯协议。

二、工作原理

        传统罗盘用一根被磁化的磁针来感应地球磁场,地球磁场与磁针之间的磁力时磁针转动,直至磁针的两端分别指向地球的磁南极与磁北极。电子罗盘也一样,只不过把磁针换成了磁阻传感器,然后将感受到的地磁信息转换为数字信号输出给用户使用。

        用来衡量磁感应强度大小的单位是Tesla或者Gauss(1Tesla=10000Gauss)。

        地磁场是一个矢量,对于一个固定的地点来说,这个矢量可以被分解为两个与当地水平面平行的XY分量和一个与当地水平面垂直的Z分量。如果保持电子罗盘和当地的水平面平行,那么罗盘中磁力计就和这三个分量对应起来了。实际上对水平方向的两个分量来说,他们的矢量和总是指向磁北的。罗盘中的航向角就是方向与磁北的夹角。

三、磁场校准

        因为磁场干扰的原因,实际中我们测量的磁力计数据是不准确的,需要进行校准才可以使用。

         理想效果为图一,实际效果很可能为图二,变成了一个椭球,因此我们需要采用拟合的方法,来修正校准。

修正的输出可以根据下面的方法来计算:    

        1)在磁场干扰的条件下进行,数据收集设备被旋转360°。 

        2)数据进行分析,以产生偏差的偏移和灵敏度的比例因子,以补偿所述干扰。

  • 从数据中发现的X和Y磁强计的最大输出,以上图为例,即可得到结论:X具有更大的反应。我们设置其比例系数为1。即Xs=1
  • Y轴比例系数为  Ys = ( Xmax - Xmin)/( Ymax - Ymin)
  • 对于偏置补偿有 
    • Xb = Xs * [1/2(Xmax - Xmin) - Xmax ]
    • Yb = Ys * [1/2(Ymax - Ymin) - Ymax ]
  • 正确的输出为
    • Xout = Xin*Xs + Xb
    • Yout = Yin*Ys + Yb

四、在ArduinoUNO上的基本使用

        在ArduinoIDE菜单栏 → 项目 → 加载库 → 管理库

        搜索 HMC5883

         我这安装的第一个。

        然后在 ArduinoIDE菜单栏 → 文件 → 示例,找到 Adafruit HMC5883 Unified的唯一一个示例文件,打开。

 

        咱们将HMC5883L模块连接到Arduino UNO板子上,跑跑这个程序吧。结果如下:

         我和手机对比了一下,相差四度,可能是因为手机的磁场干扰到模块了吧。


http://chatgpt.dhexx.cn/article/PDGaTyxg.shtml

相关文章

HMC5883L电子罗盘/指南针实现,附带校准方法(附STM32 源码)

HMC5883L电子罗盘/指南针实现,附带校准方法(附STM32 源码) 前言一、寄存器详解1.配置寄存器A2.配置寄存器B3.模式寄存器4.数据寄存器5.状态寄存器6.识别寄存器 二、使用步骤1.STM32CubeMX设置2.初始化3.读取原始数据 三、校准程序四、方位角计…

【STM32+cubemx】0029 HAL库开发:HMC5883L磁力计的应用(电子指南针)

今天我们来学习电子磁力计HMC5883L的使用。先介绍磁力计的基础知识,再给一个获取磁力计数据的例子,最后讲解HMC5883L磁力计的校准,以及一些使用中的经验。 1)HMC5883L磁力计的基础知识 磁力计是用来测量磁场强弱(也就…

Web 应用防火墙怎样添加域名

Web 应用防火墙是一款基于 AI 的一站式 Web 业务运营风险防护方案。沉淀了安全大数据检测能力和多年自营业务 Web 安全防护经验。通过 Web 入侵防护、0day 漏洞补丁修复、恶意访问惩罚、云备份防篡改等多维度防御策略全面防护网站的系统及业务安全。 包括四个步骤: …

WEB应用防火墙(WAF启明设备)

1.应用背景 网络安全形式严峻 新型0day漏洞频发 等保2.0 热点需求 行业规范 安全事件 2.产品介绍 1.工作原理 a) 桥模式串行部署于Web服务器前端,对应用层攻击行为进行精确识别和实时阻断,主动而有效的保护 Web应用不被攻击及篡改 b) 单臂代理模…

阿里云服务器接入云盾Web应用防火墙教学

什么是云盾Web应用防火墙? 云盾Web应用防火墙(Web Application Firewall, 简称 WAF)基于云安全大数据能力实现,通过防御SQL注入、XSS跨站脚本、常见Web服务器插件漏洞、木马上传、非授权核心资源访问等OWASP常见攻击,过滤海量恶意CC攻击&…

Web应用防火墙和普通防火墙的区别与联系

随着互联网的不断发展,Web应用程序的安全问题日益凸显,各种安全漏洞和攻击手段层出不穷。Web应用防火墙(WAF)作为保障Web应用程序安全的一种有效手段,正在被越来越多的企业所采用。那么,Web应用防火墙到底有什么用呢?web应用防火…

腾某云web应用防火墙-被ban后小技巧绕过

长这样式de 修改xff即可正常访问 (X-Forwarded-For Header)浏览器插件

WEB应用防火墙安全技术要求与测试评价方法

信息安全技术 WEB应用防火墙安全技术要求与测试评价方法 范围 本标准规定了WEB应用防火墙的安全功能要求、自身安全保护要求、性能要求和安全保证要求,并提供了相应的测试评价方法。 本标准适用于WEB应用防火墙的设计、生产、检测及采购。 规范性引用文件 下列…

开源免费的WEB应用防火墙

开源免费的WEB应用防火墙 排名不分前后 资源宝分享:www.httple.net 南墙waf测试linux7.6和宝塔不兼容,会用使用docker版waf隔离开来https://waf.uusec.com/waf-docker-community.v2.1.5.tgz 1、南墙WEB应用防火墙(简称:&#x…

Saas型网站域名如何接入腾讯云的web应用防火墙?

步骤 1:域名添加 使用 Web 应用防火墙(WAF)防护您的 Web 业务前,需要先将防护的网站接入到 Web 应用防火墙。未完成接入前,您的 Web 应用防火墙防护将无法生效。本文档将指导您如何在 SaaS 型 WAF 中接入域名。 登录…

云上守护者—Web应用防火墙

说到防火墙,大家既熟悉又陌生。熟悉,是因为我们日常或多或少听过见过,例如Window自带防火墙。陌生,是因为我们不知道如何定义防火墙。 什么是防火墙? 应用防火墙对应在现实生活中,像公司大门的保安大爷&am…

web应用防火墙与防火墙的差别

在蔚可云众多安全产品中,有一个名为“web应用防火墙”的产品,很容易引起普通开发者的疑惑,web应用防火墙和传统防火墙到底有什么差别,以至于我们还需要购买这一种产品? 传统防火墙 传统防火墙的功能,主要…

Web 应用程序防火墙 (WAF) 相关知识介绍

Web应用程序防火墙 (WAF) 如何工作? Web应用防护系统(也称为:网站应用级入侵防御系统。英文:Web Application Firewall,简称:WAF)。利用国际上公认的一种说法:Web应用防火墙是通过执…

什么是Web应用程序防火墙?

Web应用程序防火墙/WAF简介 Web应用程序防火墙(WAF)为来自恶意安全攻击(例如SQL注入,跨站点脚本(XSS))的在线服务提供Web安全。 WAF安全性可以检测并过滤掉可能会使在线应用程序降级&#xff0…

如何不安装ORACLE就可以连接服务器端Oracle

在2021年10月7日开始我的本科实习的第一天,之前自己写demo和练习技术的时候,数据库用的都是MySQL,可视化工具用的都是navicat,来到了实习单位后,发现公司用的是Oracle数据库,工具只能使用plsql 不给使用na…

sqlserver链接oracle服务器

1.sqlserver链接orcacle数据库前提条件: sqlserver数据库服务器上sqlserver服务端的版本与oracle客户端的版本要统一 都是64为或者都是32位 如果sqlserver数据库服务器的版本是32位的,则需要在sqlserver数据库服务器上安装32位的oracle客户端 如果sqlser…

创建sql server 到Oracle的链接服务器

需要一个软件ODAC112040Xcopy_64bit 我连接的oracle是11g r2 sqlserver 是 2016 软件下载 https://pan.baidu.com/s/1OpYmpReEJcPg4wNESWy61Q 或者:链接:https://pan.baidu.com/s/1uXpWP-QmRzEpaDnlwBuHbg 提取码:nazl 注意:所有操…

Oracle服务器和客户端的安装(图解)

处于网络覆盖的时代, 数据库 对于现代社会和行业已经不是什么新鲜事物,它已经被运用到了社会生产和生活的各个领域。作于一款高性能、高生产率的 数据库管理 应用平台,Oracle9i在数据库管理、数据完整性检查、数据库查询性能、数据 安全 性方…

oracle客户端连接oracle服务器

oracle客户端连接oracle服务器 1、配置监听器 2 启动监听器 启动成功! 3查看当前数据库local_listener的值 发现该参数没有值,没有设置动态注册的监听器信息 4,查看刚配置监听器listner1状态信息 没有任何服务注册 5 动态注册orcl数据库…

oracle服务端安装

oracle服务端安装 1、下载oracle服务端,其安装包包含两个: 2、下载完成后,将2个压缩文件一起选中,鼠标右键—>解压文件,如下图所示。两个压缩文件解压到同一目录下。需要注意的是,路径名称中最好不要出…