【雕爷学编程】Arduino动手做(158)---VL53L0X激光测距模块

37款传感器与执行器的提法,在网络上广泛流传,其实Arduino能够兼容的传感器模块肯定是不止这37种的。鉴于本人手头积累了一些传感器和执行器模块,依照实践出真知(一定要动手做)的理念,以学习和交流为目的,这里准备逐一动手尝试系列实验,不管成功(程序走通)与否,都会记录下来—小小的进步或是搞不掂的问题,希望能够抛砖引玉。

【Arduino】168种传感器模块系列实验(资料代码+仿真编程+图形编程)
实验一百五十八:GY-530 VL53L0X 激光测距 ToF测距 飞行时间测距传感器模块 IIC通信协议

在这里插入图片描述
在这里插入图片描述
知识点:VL53L0X芯片

是新一代飞行时间(ToF)激光测距模块(不同于传统技术),采用目前市场上最小的封装,无论目标反射率如何,都能提供精确的距离测量。它可以测量2m的绝对距离,为测距性能等级设定了新的基准,为各种新应用打开了大门。 img_vl53l0xVL53L0X集成了一个领先的SPAD阵列(单光子雪崩二极管),并内嵌ST的第二代FlightSense™专利技术。VL53L0X的940nm VCSEL发射器(垂直腔面发射激光器)完全不为人眼所见,加上内置的物理红外滤光片,使其测距距离更长,对环境光的免疫性更强,对盖片的光学串扰具有更好的稳定性,号称世界上最小的飞行时间(ToF)测距传感器。

在这里插入图片描述
VL53L0X功能

完全集成的小型化模块

940 nm 激光器 VCSEL

VCSEL驱动器

测距传感器,内嵌高级微控制器

4.4 x 2.4 x 1.0 mm

快速,精确测距

测量的绝对距离达到2m

报告的距离与目标反射率无关

先进的嵌入式光学串扰补偿,简化盖片的选择

人眼安全

1类激光器件,符合最新标准IEC 60825-1:2014(第3版)要求

方便集成

单回流焊元件

无附加光学元件

单电源

用于器件控制和数据传输的I2C接口

Xshutdown(复位)和中断 GPIO

可编程I2C地址

在这里插入图片描述
VCSEL简介

VCSEL(Vertical-cavity surface-emitting laser),全称垂直腔面发射激光器,又可译为垂直共振腔面射型激光。1996年,VCSEL首次被应用了到光通信中,尤其在短距离光通信领域,850 nm VCSEL成为了理想的光源之一。而后,3D人脸识别出现,为940 nm VCSEL的发展提供了契机。至此,由以光通信为主的850 nm慢慢转向以应用于消费级设备为主的940 nm。

它是一种半导体激光器,有别于传统的边发射激光器沿平行于衬底表面、垂直于解理面的方向出射激光,而面发射激光器其出光方向垂直于衬底表面。

在这里插入图片描述
由于VCSEL的激光是从垂直的衬底发出来的,LED也是从垂直的衬底发出来的,所以VCSEL激光器和LED的芯片结构、制程和封装工艺就比较接近。

它的基本结构是由上下两个DBR(Distributed Bragg Reflector)反射镜和有源区这三部分组成。上下两个DBR反射镜与有源区构成谐振腔。有源区由几个量子阱组成,作为VCSEL的核心部分,决定着器件的阈值增益、激射波长等重要参数。

VCSEL常用的原材料有砷化镓、磷化铟或氮化镓等发光化合物半导体。

VCSEL垂直发光,这使得构建垂直于芯片的VCSEL阵列变得很容易,而且它们在相当宽的温度范围内都非常稳定。它集高输出功率和高转换效率和高质量光束等优点于一身,与传统发射激光器相比优点具有较小的原场发散角,发射光束窄且圆,易与光纤进行耦合,同时VCSEL还具有阈值电流低、调制频率高、不必解理即可完成工艺制作和检测和成本低、易于实现大规模阵列及光电集成等优点。

在这里插入图片描述
意法半导体(ST)发布了第二代激光测距智能传感器VL53L0,新的智能传感器基于成功的FlightSense技术,实现更快、更远、更精确的测距功能,大幅提升手机和平板电脑的拍照性能,为智能机器人、用户检测、无人机、物联网和穿戴式装置市场开拓新的应用机会。

4.4 x 2.4 x 1mm的外观尺寸使VL53L0成为世界上最小的ToF(Time-of-Flight,飞行时间)模块,同时还是首款集成940纳米 VCSEL 光源、SPAD光子检测器和先进微控制器(管理整个测距功能)的测距智能传感器。市场首款应用940纳米发射光的模块,配合先进的红外滤波器,VL53L0具有业内最好的环境光抗干扰性能,将环境光的影响降至最低。在终端产品应用中,嵌入式微控制器和数字算法可以最大限度降低主机处理负荷和系统功耗。

意法半导体影像产品部总经理Eric Aussedat表示:“意法半导体在ToF传感器领域的技术进步正在为数以万计的消费者带来更好的用户体验,彻底颠覆他们用智能手机和平板电脑拍照摄像的方式。意法半导体在2014年推出了首款完全集成的ToF测距智能传感器,随后被多家世界领先的OEM厂商成功地应用于激光辅助自动对焦功能。今天,随着新一代产品VL53L0问世,意法半导体正在树立新的测距产品性能基准,为开发人员在智能机器人和物联网市场开发新应用开启新的机会。”

VL53L0能够在一帧画面内完成全部测量操作,用时通常小于30ms,距离小于2米。这样的测距性能让拍照系统在摄像和连拍模式下瞬间对焦,甚至在低光或低对比度场景中保持同样的性能表现,而对于没有装备ToF技术的拍照系统,低光源或低对比度场景则是一个巨大的挑战。由于测距精确度非常出色,VL53L0还可提升智能手机应用性能,包括双摄像头深度图。意法半导体的VL53L0模块简单易用(6个有效引脚),提供I2C接口,配备全套的API驱动程序和技术文档,使系统集成变得快速、简单。模块封装支持回流焊工艺,符合RoHS有害物质限用标准,完全兼容各种玻璃盖板和外观设计。

在这里插入图片描述
ST为进一步加强其在飞行时间测距传感器(ToF)市场的领导地位,推出第二代FlightSense? 技术,并用于新的VL53L0X激光测距传感器上。

VL53L0X将ToF测距长度扩至两米,精确度在±3百范围内。测量速度较上一代产品更快,测距时间不足30ms;更高能效,正常工作模式下功耗仅20mW,待机功耗只有5μA。封装尺寸为2.4mm x 4.4mm x 1mm,在市面上同类产品中小。

不同于传统的红外接近检测传感器(infrared proximity sensors),VL53L0X输出的是精确到毫米的测距结果,目标物体的颜色和反射光不会影响测距结果。快速响应的FlightSenseTM技术,因被大品牌智能手机摄像头激光辅助自动对焦所采用而享誉业界,能够区分目标物体的横向或纵向移动。传感器内部完成测距计算,通过I2C总线接口输出数据,因而对系统主控制器的需求降至最低。

内部激光器发射940nm波长非可见光,不伤害眼睛,消除了与其它红外接近检测传感器发射红光分散人们注意力的问题,增强了对外部光源的抗干扰性能。该传感器的数字架构和自动补偿功能使其在环境光强较高的场景中仍然具有很高的性能表现。

VL53L0X的感测能力可以支持各种功能,包括各种创新用户界面的手势感测或接近检测;扫地机器人等家电的墙壁探测、悬崖探测、碰撞探测;卫浴产品,例如:水龙头、皂液器、干手机和冲洗器;其它目标应用包括笔记本电脑用户存在检测或电源开关监控器、无人机和物联网(IoT)产品。

在这里插入图片描述
Cadence 的杰出工程师 Gilles Lamant 说:“VCSEL 光往往接近可见光范围,当你提高功率时,这会使它们变得危险。” “使用 LiDAR,您需要非常高的功率才能获得任何类型的范围,这可能会对视力造成风险。然而,即使接近可见光谱,它们对于低功率应用也是安全的,这就是为什么人们关注它们来进行面部识别和诸如相机测距之类的事情。”

Lamant 说,与其他激光源相比,VCSELS 的真正优势在于其便利性、灵活性和功率以及热效率。

“VCSELS 垂直发光,这使得构建垂直于芯片的阵列变得容易,并且它们非常稳定,具有相当大的温度变化,”Lamant 说。“他们还被证明在一个系统内发送数据,而在一个系统内对数据信号进行编码。这将受到您可以做到的频率的限制,尽管如此,我们仍在寻找一种将光学与基于硅的解决方案集成的方法。”

Thompson 说,VCSEL 每瓦功率提供的光比替代激光源要多得多。接线更容易,因为当激光器从顶部出现时,可以从下面进行电气和热管理。

VCSEL 输出的功率量也可按尺寸线性扩展。每个激光孔径都是独立的并且基本相同。芯片上的孔径越多,输出的功率就越大。将它们全部连接到单个电源会使它们全部一致发射。将芯片连接到区域中可以让它们在不同的时间和不同的模式下发射——其功率输出由孔的数量决定。

VCSEL从诞生起,是作为新一代光存储和光通信应用的核心器件,应用在光并行处理、光识别、光互联系统、光存储等领域。

随着工艺、材料技术改进和VCSEL技术的成熟,VCSEL元器件在功耗、制造成本、集成、散热等领域的优势开始显现,以其作为核心元件的光学感测技术进入了行业级应用,同时已在激光打印机、光学鼠标、汽车激光雷达(LiDAR)、辅助驾驶、气体传感器、活体检测、虹膜识别、AR/VR、机器人视觉、医疗美容等领域得以初探,并逐渐应用于工业加热、环境监测、医疗设备等商业级应用以及3D感知、ToF镜头等消费级应用。

在这里插入图片描述
在这里插入图片描述
VL53L0X 参数
超小体积:4.4 x 2.4 x 1.0mm
最大测距:2m
发射的激光对眼镜安全,且完全不可见。
工作电压:2.6 to 3.5 V
通信方式:IIC,400KHz,设备地址0x52,最低位是读写标志位。0表示写,1表示读。

在这里插入图片描述
因此进行写的时候,此8位数据为:0101 0010,即0x52。进行读的时候,此8位数据为:0101 0011,即0x53。

VL53L0X内部框图

在这里插入图片描述
VL53L0X上有两个孔,一个是VCSEL激光发射孔,一个是SPAD激光检测阵列的孔。

在这里插入图片描述
VL53L0X引脚图

1脚AVDDVCSEL:VCSEL电源正

2脚AVSSVCSEL:VCSEL电源地

3脚、4脚、6脚、12脚GND:地

5脚XSHUT:电源模式控制,如果不需要休眠功能,此脚可以直接接到AVDD上。

7脚GPIO1:中断输出。开漏输出,因此必须要外部上拉。

8脚DNC:悬空

9脚和10脚:IIC通信端口

11脚AVDD:电源正。

在这里插入图片描述
VL53L0X电原理图

在这里插入图片描述
VL53L0X激光测距模块

VL53L0X 飞行时间测距传感器是新一代测距传感器。VL53LOX 是一款完全集成的传感器,配备嵌入式红外、高级滤光片和超高速光子检测阵列。它可以测量更远的距离,并具有更高的速度和准确性。VL53L0X的感应能力可以支持多种功能,包括各种创新用户界面的手势感应或接近检测、清洁机器人、服务机器人、家电感应面板和笔记本电脑用户的障碍检测和防碰撞系统。检测或电源开关监视器,以及无人机和物联网 (IoT) 产品。

使用这款革命性的传感器测量长达 2m 的距离。它的工作原理是测量光速,它发出一束光并测量它反射回传感器的时间。得益于 I2C 接口,它可以轻松集成到许多项目中。得益于 IR 滤光片,该传感器还可以在强光环境中工作。

在这里插入图片描述
VL53L0X激光测距模块规格

工作电压:3~5V;

通讯方式:IIC;

测量绝对距离:2m;

Xshutdown/GPIO(中断);

工作温度从-20°C到70°C;

频率 I2C 高达 400kHz,地址 0x52

间距:2.54mm;

尺寸:25 x 12mm;

在这里插入图片描述
VL53L0X模块参考电原理图

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
VL53L0X模块与超声波模块的对比

在这里插入图片描述
电源引脚:

Vin -这是电源引脚。由于该芯片使用2.8 VDC,因此我们在板载了一个稳压器,该稳压器将采用3-5VDC电压并将其安全地转换为低压。要为电路板供电,请为其提供与微控制器逻辑电平相同的功率-例如,对于像Arduino这样的5V微型电池,请使用5V

2v8 -这是稳压器的2.8V输出,如果您愿意,您可以从中获取100mA电流

GND -电源和逻辑的公共接地

I2C逻辑引脚:

SCL -I2C时钟引脚,连接到微控制器的I2C时钟线。

SDA -I2C数据引脚,连接到微控制器的I2C数据线。

控制引脚:

GPIO -这是一个引脚传感器使用它来指示数据已准备就绪。在进行连续感应时很有用。请注意,此引脚上没有电平转换,您可能无法读取5V微控制器上的2.8V逻辑电平电压(我们可以在arduino UNO上读取,但没有保证)。我们的库没有使用此引脚,但对于高级用户来说,它就在这里!

SHDN -传感器的关闭引脚。默认情况下,它被拉高。有一个电平转换二极管,因此您可以在此引脚上使用3-5V逻辑。当该引脚被拉低时,传感器进入关机模式。

在这里插入图片描述
安装VL53L0X Arduino 库

接下来我们需要一个库来与 Arduino 端的传感器进行通信。有两个流行的库:Adafruit的 Adafruit_VL53L0X 和Pololu的 VL53L0X。两个库都有非常相似的 API,使用博世传感器驱动程序代码,并且可以通过 Arduino IDE 库管理器安装。Pololu 的库需要更少的闪存空间和 RAM,但仍然不小,可以与 Arduino Pro Micro 上的 ROS 库一起使用。

在这里插入图片描述
【Arduino】168种传感器模块系列实验(资料代码+仿真编程+图形编程)

实验一百五十八:GY-530 VL53L0X 激光测距 ToF测距 飞行时间测距传感器模块 IIC通信协议

项目之一:使用连续模式进行简易测量(读数以毫米为单位)

实验开源代码

/*

【Arduino】168种传感器模块系列实验(资料代码+仿真编程+图形编程)

  实验一百五十八:GY-530 VL53L0X 激光测距 ToF测距 飞行时间测距传感器模块 IIC通信协议

 项目之一:使用连续模式进行简易测量(读数以毫米为单位)

 模块接线:

 VL53L0X Arduino

 VCC    5V

 GND    GND

 SCL    A5

 SDA    A4

*/



#include <Wire.h>

#include <VL53L0X.h>

VL53L0X sensor;

void setup() {

 Serial.begin(9600);

 Wire.begin();

 sensor.setTimeout(500);

 if (!sensor.init()) {

  Serial.println("Failed to detect and initialize sensor!");

  while (1) {}

 }

 // Start continuous back-to-back mode (take readings as

 // fast as possible). To use continuous timed mode

 // instead, provide a desired inter-measurement period in

 // ms (e.g. sensor.startContinuous(100)).

 sensor.startContinuous();

}

void loop() {

 Serial.print(sensor.readRangeContinuousMillimeters());

 if (sensor.timeoutOccurred()) {

  Serial.print(" TIMEOUT");

 }

 Serial.println();

}


实验串口返回情况

在这里插入图片描述
实验串口绘图器返回情况

在这里插入图片描述
实际测试,简易激光测距的范围在80—850mm左右

在这里插入图片描述
Arduino实验场景图

在这里插入图片描述
【Arduino】168种传感器模块系列实验(资料代码+仿真编程+图形编程)

实验一百五十八:GY-530 VL53L0X 激光测距 ToF测距 飞行时间测距传感器模块 IIC通信协议

项目之二:使用单发射程模式进行简易测量(读数以毫米为单位,测量范围50mm-2000mm)

实验开源代码

/*

 【Arduino】168种传感器模块系列实验(资料代码+仿真编程+图形编程)

 实验一百五十八:GY-530 VL53L0X 激光测距 ToF测距 飞行时间测距传感器模块 IIC通信协议

 项目之二:使用单发射程模式进行简易测量(读数以毫米为单位,测量范围50mm-2000mm)

 模块接线:

 VL53L0X Arduino

 VCC    5V

 GND    GND

 SCL    A5

 SDA    A4

*/



#include <Wire.h>

#include <VL53L0X.h>

VL53L0X sensor;

// Uncomment this line to use long range mode. This

// increases the sensitivity of the sensor and extends its

// potential range, but increases the likelihood of getting

// an inaccurate reading because of reflections from objects

// other than the intended target. It works best in dark

// conditions.

#define LONG_RANGE

// Uncomment ONE of these two lines to get

// - higher speed at the cost of lower accuracy OR

// - higher accuracy at the cost of lower speed

#define HIGH_SPEED

//#define HIGH_ACCURACY

void setup()

{

 Serial.begin(9600);

 Wire.begin();

 sensor.setTimeout(500);

 if (!sensor.init())

 {

  Serial.println("Failed to detect and initialize sensor!");

  while (1) {}

 }

#if defined LONG_RANGE

 // lower the return signal rate limit (default is 0.25 MCPS)

 sensor.setSignalRateLimit(0.1);

 // increase laser pulse periods (defaults are 14 and 10 PCLKs)

 sensor.setVcselPulsePeriod(VL53L0X::VcselPeriodPreRange, 18);

 sensor.setVcselPulsePeriod(VL53L0X::VcselPeriodFinalRange, 14);

#endif

#if defined HIGH_SPEED

 // reduce timing budget to 20 ms (default is about 33 ms)

 sensor.setMeasurementTimingBudget(20000);

#elif defined HIGH_ACCURACY

 // increase timing budget to 200 ms

 sensor.setMeasurementTimingBudget(200000);

#endif

}

void loop(){

 Serial.print(sensor.readRangeSingleMillimeters());

 if (sensor.timeoutOccurred()) {

  Serial.print(" TIMEOUT");

 }

 Serial.println();

}


实验串口返回情况

在这里插入图片描述
实验串口绘图器返回情况

在这里插入图片描述

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

【Django学习】(十二)GenericAPIView_过滤_排序_分页

上篇文章初步接触了GenericAPIView&#xff0c;这次来更加深入的学习它&#xff0c;了解里面的一些使用和方法 get_object&#xff1a;源码中&#xff1a;处理查询集&#xff0c;并含有所需要得pk值,lookup_fieldget_queryset&#xff1a;源码中&#xff1a;先判断queryset是否…

可使用Linux 测试IP和端口是否能访问,查看返回状态码

一、 使用wget判断 wget是linux下的下载工具&#xff0c;需要先安装. 用法: wget ip:port wget ip:port连接存在的端口 二、使用telnet判断 telnet是windows标准服务&#xff0c;可以直接用&#xff1b;如果是linux机器&#xff0c;需要安装telnet. 用法: telnet ip port…

uniapp电子签名以及竖屏签名后内容旋转90度变为横屏图片

用该插件挺不错的 电子签名插件地址 如果你一个页面要用多个该插件&#xff0c;就改成不同的cavas-id&#xff0c;修改插件源码 效果图 竖屏写 旋转成横屏图片 插件内 在拿到签名临时地址后的页面 <!-- 旋转图片canvas --> <canvas canvas-id"camCacnvs&quo…

MySQL-SQL存储函数以及触发器详解

♥️作者&#xff1a;小刘在C站 ♥️个人主页&#xff1a; 小刘主页 ♥️努力不一定有回报&#xff0c;但一定会有收获加油&#xff01;一起努力&#xff0c;共赴美好人生&#xff01; ♥️学习两年总结出的运维经验&#xff0c;以及思科模拟器全套网络实验教程。专栏&#xf…

15 Java 使用for进行死循环

括号里直接写两个分号即可。for(;;) package demo;public class Demo8 {public static void main(String[] args) {for (;;){System.out.println("你是最棒的&#xff01;");}} }

springboot高校党务系统

开发语言&#xff1a;Java 框架&#xff1a;springboot JDK版本&#xff1a;JDK1.8 服务器&#xff1a;tomcat7 数据库&#xff1a;mysql 5.7 数据库工具&#xff1a;Navicat11 开发软件&#xff1a;eclipse/myeclipse/idea Maven包&#xff1a;Maven3.3.9

神经网络解决预测问题(以共享单车预测为例)

背景:大约从2015年起,共享单车席卷了大部分城市。共享单车在给人们带来便利的同时,也存在一些问题:单车的分布很不均匀。比如在早高峰的时候,一些地铁口往往聚集着大量的单车,而到了晚高峰却很难找到一辆单车了。那么如何解决共享单车分布不均匀的问题呢?目前,共享单车…

Docker镜像

是什么 是一种轻量级、可执行的独立软件包&#xff0c;它包含运行某个软件所需的所有内容&#xff0c;我们把应用程序和配置依赖打包好形成一个可交付的运行环境(包括代码、运行时需要的库、环境变量和配置文件等)&#xff0c;这个打包好的运行环境就是image镜像文件。 只有通…

离散化模板(附 区间和 解决方法)

目录 用于解决的问题类型&#xff1a; 作用&#xff1a; 使用到的函数&#xff1a; 常用模板&#xff1a; 例题引入&#xff1a; 题目&#xff1a; 解题思路&#xff1a; 代码详解&#xff1a; 用于解决的问题类型&#xff1a; 对于值域比较大&#xff0c;但个数比较少…

Window10 系统 RabbitMQ的安装和简单使用

1、下载 & 安装 Erlang 因为RabbitMQ的服务端是基于 Erlang编写的&#xff0c;所以&#xff0c;首先需要安装Erlang。 1&#xff09;下载 下载地址如下&#xff1a; https://www.erlang.org/downloads此处下载比较慢&#xff0c;可以参考如下百度网盘&#xff1a; 链接…

SSM框架训练 实现各个功能时遇到的常见问题

快速复制当前代码到下一行&#xff1a;ctrlD 格式化代码&#xff08;快速整理代码&#xff09;&#xff1a;ctrilaltL 一步一步来&#xff0c;后续会不停添加功能。 先创建项目结构&#xff1a;搭建框架 (36条消息) SSM框架模板&#xff08;高配&#xff1a;一次性配完所有…

vue 多环境打包指令配置及编译

1.创建多环境: 在根目录创建.env.xxx文件,如下为例(我创建了两个) 文件内容主要包括&#xff1a; # 页面标题 VUE_APP_TITLE "标题"# 生产环境配置 ENV production# DNA检测仓储管理系统/生产环境 VUE_APP_BASE_API https://xxxxxx 2.设置: 修改根目录下的package…

freemark生成pdf

freemark生成pdf 字体库 simsun.ttc 解决中文问题 /*** 生成pdf* param params* param templPath* param ftlName* param htmlPath* param pdfPath* param fontPath* return*/public String processPdf(Map<String, Object> params, String templPath, String ftlName,…

SSM+Shiro安全框架整合(完成安全认证--登录+权限授权)+ssm整合shiro前后端分离

目录 1.搭建SSM框架 1.1.引入相关的依赖 1.2. spring配置文件 1.3. web.xml配置文件 1.4.配置Tomcat并启动 2.ssm整合shiro---认证功能 (1).引入依赖 (2).修改spring配置文件 (3).修改web.xml文件 (4).新建login.jsp(登录页面) (5).新建success.jsp(登录成功后跳转到此…

监听DOM尺寸变化 - ResizeObserver

一、与 MutationObserver Api的区别 MutationObserver 主要用来监听 DOM 元素的属性和节点变化的&#xff0c;非 DOM 样式尺寸&#xff0c;可查看之前一篇 blog - DOM规范 - MutationObserver接口观察DOM元素的属性和节点变化ResizeObserver 主要用来监听 DOM 元素的 内容区域…

系统运维和网络运维有什么区别吗?

跟着互联网以及科技的高速开展&#xff0c;衍生出了许多的新奇职业&#xff0c;比方网络运维、网络安全运维。 从字面意思了解&#xff0c;两者之间没有什么太大区别&#xff0c;因而很多人很容易将两者混杂。 系统和网络运维有什么区别? 一个偏系统&#xff08;linux、doc…

23款奔驰GLS450更换迈巴赫GLS600外观套件,尽显奢华

在外观上不要过分的张扬&#xff0c;低调的同时还要彰显强大的气场&#xff0c;换装迈巴赫专属套件&#xff0c;迈巴赫专属踏板&#xff0c;还有迈巴赫的醒目M标志&#xff0c;车身轮廓和线条方面&#xff0c;奔驰GLS450和迈巴赫GLS600尺寸及其契合&#xff0c;只需通过增加一些…

网络安全(黑客)学习路线

前言&#xff1a; 学基础花费很长时间&#xff0c;光语言都有几门&#xff0c;有些人会倒在学习 linux 系统及命令的路上&#xff0c;更多的人会倒在学习语言上&#xff1b;1、打基础时间太长 对于网络安全基础内容&#xff0c;很多人不清楚需要学到什么程度&#xff0c;囫囵…

Spark-用IDEA编写wordcount demo

配置 Spark版本&#xff1a;3.2.0 Scala版本&#xff1a;2.12.12 JDK&#xff1a;1.8 Maven&#xff1a;3.6.3 pom文件 <?xml version"1.0" encoding"UTF-8"?> <project xmlns"http://maven.apache.org/POM/4.0.0"xmlns:xsi&quo…

【Redis】—— Redis的AOF持久化机制

&#x1f4a7; 【 R e d i s 】—— R e d i s 的 A O F 持久化机制 \color{#FF1493}{【Redis】 —— Redis的AOF持久化机制} 【Redis】——Redis的AOF持久化机制&#x1f4a7; &#x1f337; 仰望天空&#xff0c;妳我亦是行人.✨ &#x1f984; 个人主页——微风撞…