当前位置: 首页 > news >正文

Ardunio学习

程序书写

Ardunio程序安装

在 Arduino的官方网站上可以下载这款官方设计的软件及源码、教程和文档。Arduino IDE的官方下载地址 为:http://arduino.cc/en/Main/Software。登录官网,下载软件并安装。

https://www.arduino.cc/。

安装成功后,页面如下所示:

根据已有零件,请deepseek写代码。

Servo舵机控制库是Arduino官方提供的一个库,用于简化舵机的控制。它封装了舵机控制的底层逻辑,使得用户可以通过简单的函数调用月来控制舵机的角度、速度和位置,而无需手动生成PWM信号。这个库支持多种舵机类型(如标准舵机连续旋转舵机),是开发舵机相关项目的理想工具。

  1. 角度控制

    • 控制舵机旋转到指定角度(通常为0°~180°)。
  2. 速度控制

    • 控制连续旋转舵机的转速和方向。
  3. 多舵机支持

    • 支持同时控制多个舵机(最多12个,具体数量取决于硬件)。
  4. 兼容性强

    • 支持标准舵机、数字舵机和连续旋转舵机。


 

安装包

在 Arduino IDE 中遇到 "Missing FQBN (Fully Qualified Board Name)" 错误时,通常是因为没有正确选择开发板型号或缺少对应的开发板支持包。

然后在Ardunio中安装Ardunio IDE 中安装Adafruit PWM servo Driver

然后统一连接电器件之后,可以将代码导入到开发板中。

Ardunio 程序语言

给Arduino编程需要用到IDE(集成开发环境),这是一款免费的软件。在这款软件上编程需要使用
Arduino的语言,这是一种解释型语言,写好的程序被称为sketch,编译通过后就可以下载到开发板中。

运行Ardunio

如果还是没有操作成功,是因为需要选择板子的型号。如下所示:

然后点击勾号,即可输出。

即可完成。

元件构成

单片机

单片机(Microcontroller Unit, MCU)是一种集成度很高的微型计算机系统,通常包含处理器核心(CPU)、存储器(RAM和ROM/Flash)、输入/输出接口(I/O)以及其他外围设备(如定时器、串行通信接口等)于单一芯片上。单片机广泛应用于嵌入式系统中,用于控制和执行特定任务。

主要组成部分:

  1. 中央处理器(CPU):负责执行指令和处理数据。
  2. 存储器
    • ROM/Flash:用于存储程序代码和常量数据。
    • RAM:用于存储运行时的临时数据。
  3. 输入/输出接口(I/O):用于与外部设备进行数据交换,如传感器、执行器等。
  4. 定时器/计数器:用于精确控制时间相关操作。
  5. 串行通信接口:如UART、SPI、I2C等,用于与其他设备进行通信。

应用领域:

  • 家用电器:如洗衣机、微波炉、空调等。
  • 工业控制:如PLC(可编程逻辑控制器)、机器人控制等。
  • 汽车电子:如发动机控制、车载娱乐系统等。
  • 消费电子:如智能手机、智能手表等。
  • 医疗设备:如血糖仪、心电图机等。

优点:

  • 集成度高:所有功能集成在一个芯片上,减少了外部元件的数量。
  • 成本低:由于集成度高,生产成本较低。
  • 功耗低:适合电池供电的设备。
  • 体积小:适合空间受限的应用场景。

常见品牌:

  • IntelMicrochipTexas InstrumentsSTMicroelectronicsNXP等。

单片机是现代电子设备中不可或缺的组成部分,其灵活性和高效性使其在众多领域中得到广泛应用。

舵机和电机

  • 舵机和电机虽然都是将电能转换为机械运动的装置,但它们在结构、功能和应用上有显著区别。以下是两者的详细对比:


    1. 核心功能

    特性舵机(Servo Motor)普通电机(Motor)
    主要用途精确控制角度或位置(如机器人关节、航模舵面)提供连续旋转动力(如风扇、车轮驱动)
    运动形式有限角度旋转(通常0°~180°)或闭环控制位置连续单向/双向旋转,或直线运动(如步进电机)
    控制信号PWM脉冲信号(占空比决定角度)电压/电流大小(调节转速)或方向信号

    2. 结构与工作原理

    特性舵机普通电机
    内部组成电机 + 减速齿轮 + 控制电路 + 位置反馈传感器通常只有电机(无反馈或需外接编码器)
    反馈系统闭环控制(通过电位器或编码器实时校正位置)开环控制(除非外接传感器)
    输出轴只能旋转有限角度(标准舵机)可无限旋转

    3. 控制方式

    特性舵机普通电机
    信号类型PWM脉冲(如1ms=0°,1.5ms=90°,2ms=180°)直流电压(如5V/12V)或PWM调速
    控制精度高(直接定位到特定角度)依赖外部传感器才能精确定位
    典型接口三线(电源、地、信号)两线(正负极)或四线(如步进电机)

    4. 典型应用场景

    舵机普通电机
    - 机器人关节(机械臂、人形机器人)- 电动车轮驱动
    - 航模舵面控制(方向舵、升降舵)- 家用电器(风扇、洗衣机)
    - 摄像头云台- 工业设备(传送带、泵)
    - 自动门锁- 无人机螺旋桨

    5. 关键区别总结

    • 反馈机制:舵机自带闭环控制,电机通常需额外传感器实现闭环。
    • 运动范围:舵机限位旋转,电机可连续旋转。
    • 控制目标:舵机重位置精度,电机重转速/扭矩。
    • 复杂度:舵机集成度高(含控制电路),电机通常需外接驱动板。

    如何选择?

    • 需要精确角度控制(如机械臂)→ 选舵机
    • 需要连续旋转动力(如车轮)→ 选直流/步进电机
    • 需要高速旋转+位置反馈→ 选伺服电机(高级舵机)编码器电机

    两者在项目中常配合使用,例如:用电机驱动小车底盘,用舵机控制摄像头方向。

外部电源

        用电池的电力驱动机器运行。

元件组装

电路连接图(描述性) ,以下是详细的文字描述和连接关系:

1.Arduino与PCA9685连接(12c通信和逻辑供电):

·Arduino5V 引脚->PCA9685vcC引I脚(为 PCA9685芯片提供逻辑电源) ·ArduinoGND引脚->PCA9685GND引|脚(逻辑地线) ·Arduino SDA 引脚(Uno上E通常是A4)->PCA9685SDA弓脚 ·ArduinoSCL引脚(UnoE通常是A5)->PCA9685SCL弓引脚

2.外部电源与PCA9685连接(舵机供电):

·5v-6v外部电源正极(+)->PCA9685V+螺丝端子(或标有V+/ServoPowerIn 的接 口) ·5V-6V外部电源负极(-)-> PCA9685GND螺丝端子(或标有GND/servoPower Ground的接口)

3.舵机与PcA9685连接:

·舵机信号线(通常是橙色、黄色或白色)->PCA9685的PWM输出引脚(你可以选择o 到15中的任意一个) ·舵机电源线(V+)(通常是红色)->PCA9685V+输出排针(对应通道O旁边标记V+的排排 针) o搜索

Arduino UNO 开发板

电脑——Arduino UNO开发板——集成电路板PCA9685

UNO Digital PWM 通常指的是基于 Arduino UNO 开发板的 数字PWM(脉宽调制) 功能。Arduino UNO 是一款广泛使用的开源微控制器开发板,其数字引脚中有一部分支持PWM输出,可用于控制舵机、LED亮度、电机速度等设备。

  1. 控制舵机,通过PWM信号控制舵机的旋转角度(典型频率为50Hz)。

  2. 调节LED亮度,通过改变占空比实现LED的亮度渐变。

  3. 控制电机速度,通过PWM信号调节直流电机的转速

Arduino UNO可以通过以下三种方式供电,能自动选择供电方式:
外部直流电源通过电源插座供电;
电池连接电源连接器的GND和VIN引脚;
USB接口直接供电,图1-4所示的稳压器可以把输入的7V~12V电压稳定到5V。
(韩广义、宋楠:《Arduino开发从零开始学  学电子的都玩这个》,北京:清华大学出版社2014年版)
在电源接口上方,一个右侧引出3个引脚,左侧一个比较大的引脚细看会发现上面有AMST1117的字样, 其实这个芯片是个三端5V稳压器,电源口的电源经过它稳压之后才给板子输入,其实电源适配器内已经有 稳压器,但是电池没有。可以理解为它是一个安检员,一切从电源口经过的电源都必须过它这一关,这 个“安检员”对不同的电源会进行区别对待。
首先,AMS1117的片上微调把基准电压调整到1.5%的误差以内,而且电流限制也得到了调整,以尽量减 少因稳压器和电源电路超载而造成的压力。再者根据输入电压的不同而输出不同的电压,可提供1.8V、 2.5V、2.85V、3.3V、5V稳定输出,电流最大可达800mA,内部的工作原理这里不必去探究,读者只需要知 道,当输入5V的时候输出为3.3V,输入9V的时候输出才为5V,所以用9V(9V~12V均可,但是过高的电源会 烧坏板子)电源供电的原因就在这,如使用5V的适配器与Arduino连接,之后连接外设做实验,会发现一些 传感器没有反应,这就是某些传感器需要5V的信号源,可是板子最高输出只能达到3.3V,必然有问题。
(韩广义、宋楠:《Arduino开发从零开始学  学电子的都玩这个》,北京:清华大学出版社2014年版)

ArduinoUNO开发板上的1到13的孔是数字引脚(Digital Pins),月用于输入或输出数字信号(高电平或低电平)。这些引脚是UNO与外部设备(如传感器、执行器、LED等)交互的主要接口,每个引脚都有特定的功能利使用场景。以下是它们的详细说明和区别:

1、数字输入/输出

        可读取或输出数字信号(高电平:5V,低电平:0V)。
        通过 pinMode(pin, INPUT/OUTPUT) 设置引脚模式。
2、PWM输出

        部分引脚(3、5、6、9、10、11)支持PWM(脉宽调制)输出,用于模拟模拟信号(如调 节 LED亮度、控制舵机角度)。
        使用 analogWrite(pin, value) 输出PWM信号(value范围:0~255)。
3、外部中断

        部分引脚(2、3)支持外部中断,用于快速响应外部事件(如按钮按下)。
使用 attachInterrupt(digitalPinToInterrupt(pin), ISR, mode) 设置中断。

ICSP 针头(In-Circuit Serial Programming)

Arduino UNO 开发板上的 ICSP 针头(In-Circuit Serial Programming)是一种用于编程和调试的接口,主要用于直接对微控制器(如ATmega328P)进行烧录或更新固件。它通过SPI(串行外设接口)协议与外部编程器通信,是开发板的重要功能扩展接口。

ICSP 针头通常为6针(2x3排列),引脚定义如下:

引脚功能说明
1MISO (Master In Slave Out)主设备接收数据,从设备发送数据。
2VCC电源正极(5V)。
3SCK (Serial Clock)SPI时钟信号,由主设备生成。
4MOSI (Master Out Slave In)主设备发送数据,从设备接收数据。
5RESET复位信号,用于重启微控制器。
6GND电源地。

  1. 烧录引导程序(Bootloader),当UNO的引导程序损坏时,可通过ICSP接口重新烧录。

  2. 批量生产,在生产环境中,通过ICSP接口快速烧录程序到多个微控制器。

  3. 调试与开发,使用外部编程器进行实时调试和固件更新。

  4. SPI设备扩展,连接SPI设备(如EEPROM、SD卡模块)进行数据通信。

【摘录】

(邵玮副、张鹏、王斯卉、祝宁华、方蕊:《智能机器人设计与创新实践》,西安:西北工业大学出版社2023年版,第6页。)

电池

          外部电源与转换器连接,转换器将电压转换为元件能够承载的范围。

外部电源——

转换器 HW-319-V6.0 

外部电源——转换器

舵机与PcA9685连接:

·舵机信号线(通常是橙色、黄色或白色)->PCA9685的PWM输出引脚(你可以选择o 到15中的任意一个) ·舵机电源线(V+)(通常是红色)->PCA9685V+输出排针(对应通道O旁边标记V+的排针) 

HW-319-V6.0 是 转换器,一端连接电池,其屏幕板,显示了将电池电压转换为更小的电压,会在屏幕板上显示。

Ardunio板子作为小电脑,然后有电源,第三个是舵机和电机,连接到主控芯片上。

电机可以正常地转动。

驱动电机,实现车轮子的转动。

集成电路板 PCA9685  PWM Driver

外部电源——转换器——集成电路版(PCA96785)

电脑——Arduino UNO开发板——集成电路板PCA9685

外部电源与PCA9685连接(舵机供电):

·5v-6v外部电源正极(+)->PCA9685V+螺丝端子(或标有V+/ServoPowerIn 的接 口) ·5V-6V外部电源负极(-)-> PCA9685GND螺丝端子(或标有GND/servoPower Ground的接口)

PCA9685 16-channel PWM Driver 是一种集成电路模块,专门用于生成脉宽调制(PWM)信号,可同时控制多达16个设备(如舵机、LED灯等)。它通过I²C接口与微控制器(如Arduino、Raspberry Pi)通信,简化了多路PWM信号的控制。

主要作用:

  1. 控制舵机

    • 驱动多路舵机(如机器人关节、机械臂),每路独立控制角度。
    • 典型应用:机器人、航模、自动化设备。
  2. LED调光

    • 控制多路LED亮度,实现渐变、闪烁等效果。
    • 典型应用:灯光装饰、舞台效果。
  3. 简化电路设计

    • 减少主控设备的引脚占用,降低硬件复杂度。
    • 提供外部供电接口(V+、GND),支持大电流设备。

#include <Wire.h>
#include <Adafruit_PWMServoDriver.h>Adafruit_PWMServoDriver pwm = Adafruit_PWMServoDriver();void setup() {pwm.begin();pwm.setPWMFreq(50);  // 设置PWM频率为50Hz(舵机标准)
}void loop() {pwm.setPWM(0, 0, 300);  // 控制第0路舵机到90°位置delay(1000);pwm.setPWM(0, 0, 150);  // 控制第0路舵机到0°位置delay(1000);
}

舵机

外部电源——转换器——集成电路版(PCA96785)——舵机

【心得】

Github的开源项目,

淘宝相关的工具。 

可以直接询问deepseek,输入自己已有的工具,请deepseek 看如何连接。

案例

轴机转动

代码如下

#include <Wire.h>
#include <Adafruit_PWMServoDriver.h>Adafruit_PWMServoDriver pwm = Adafruit_PWMServoDriver(0x40); // 默认I²C地址// 舵机参数(需根据实际舵机校准)
#define SERVO_MIN 150    // 0度对应脉冲值(0.5ms)
#define SERVO_MAX 600    // 180度对应脉冲值(2.5ms)
#define SERVO_MID (SERVO_MIN + (SERVO_MAX - SERVO_MIN)/2) // 90度中间值void setup() {Serial.begin(9600);pwm.begin();pwm.setPWMFreq(50);    // 设置PWM频率为50Hz(舵机标准)Serial.println("输入'w'旋转90度,'s'旋转30度...");
}void loop() {if (Serial.available() > 0) {char cmd = Serial.read();if (cmd == 'w') {pwm.setPWM(0, 0, SERVO_MID); // 通道0旋转90度Serial.println("旋转至90度");} else if (cmd == 's') {pwm.setPWM(0, 0, SERVO_MIN + (SERVO_MAX - SERVO_MIN)*30/180); // 旋转30度Serial.println("旋转至30度");}}
}

如图所示,根据代码,需要输入W,才可以运行。

注意事项

遇到问题,优先拔掉电源,防止烧坏板子。板子烧坏,比较难发现问题所在。

注意正负极连接。正极线连接正极线,负极线连接负极线。

一诗一画

代码如下:

import turtle
import colorsysturtle.tracer(False)
t = turtle.Turtle()t.speed(0)
turtle.bgcolor("black")
t.pensize(2)# 绘制彩色圆形螺旋
for i in range(180):hue = i / 360.0  # 色相值(0~1)color = colorsys.hsv_to_rgb(hue, 1.0, 1.0)  # HSV转RGBt.pencolor(color)t.circle(i)      # 画圆,半径逐渐增大t.left(10)       # 每次左转10度turtle.done()

生成图如下:

相关文章:

Ardunio学习

程序书写 Ardunio程序安装 在 Arduino的官方网站上可以下载这款官方设计的软件及源码、教程和文档。Arduino IDE的官方下载地址 为&#xff1a;http://arduino.cc/en/Main/Software。登录官网&#xff0c;下载软件并安装。 https://www.arduino.cc/。 安装成功后&#xff0…...

dl学习笔记(13):从强化学习到PPO

一、我们为什么要有强化学习 为了更好的有一个宏观感受&#xff0c;下图是DeepMind在2024发表的文章中对AI做出了不同层次的定义 可以看到左边分为了5个不同层次的AI&#xff0c;中间是对于细分的下游任务AI的能力展现&#xff0c;右边则是通用任务的AGI实现。我们可以看到中间…...

【运维】云端掌控:用Python和Boto3实现AWS资源自动化管理

《Python OpenCV从菜鸟到高手》带你进入图像处理与计算机视觉的大门! 解锁Python编程的无限可能:《奇妙的Python》带你漫游代码世界 在云计算时代,AWS(Amazon Web Services)作为领先的云服务平台,其资源管理的高效性对企业至关重要。本文深入探讨如何利用Python的boto3…...

数字技术驱动下教育生态重构:从信息化整合到数字化转型的路径探究

一、引言 &#xff08;一&#xff09;研究背景与问题提出 在当今时代&#xff0c;数字技术正以前所未有的速度和深度渗透到社会的各个领域&#xff0c;教育领域也不例外。从早期的教育信息化整合到如今的数字化转型&#xff0c;教育系统正经历着一场深刻的范式变革。 回顾教…...

《数据库系统工程师》-B站-视频截图整理-2021-23

在2024年准备软考《数据库系统工程师》&#xff0c;跟着B站UP主学习的视频截图记录&#xff0c;当然考试也顺利通过了&#xff08;上午下午都是50多分&#xff09;。 在视频评论区还愿下面看到有人问我的截图资源。 我当时学习用的钉钉的teambition做的记录&#xff0c;在线文档…...

【PINN】DeepXDE学习训练营(5)——function-mf_dataset.py

一、引言 随着人工智能技术的飞速发展&#xff0c;深度学习在图像识别、自然语言处理等领域的应用屡见不鲜&#xff0c;但在科学计算、工程模拟以及物理建模方面&#xff0c;传统的数值方法仍然占据主导地位。偏微分方程&#xff08;Partial Differential Equations, PDEs&…...

lnmp1.5+centos7版本安装php8

1、问题&#xff1a; 1nmp1.5不支持php8 解决办法&#xff1a; 下载lnmp2.1,进入到2.1版本执行安装php多版本命令&#xff0c;选择php8 2、编译安装php8时报C错误问题 解决办法&#xff1a; 安装php8.0报错A compiler with support for C17 language features is required…...

Netmiko 源码解析

1. 源码结构概览 Netmiko 的代码库主要分为以下核心模块&#xff1a; netmiko/ ├── base_connection.py # 连接基类&#xff08;核心逻辑&#xff09; ├── cisco/ # Cisco 设备实现类 ├── juniper/ # Juniper 设备实现类 ├── hp_…...

WPF大数据展示与分析性能优化方向及代码示例

WPF大数据展示与分析性能优化指南 一、大数据展示性能优化方向 1. 虚拟化技术 ​​核心思想​​:只渲染可见区域的数据,动态加载/卸载数据项 ​​实现方式​​: 使用VirtualizingStackPanel(WPF内置)自定义虚拟化容器(如VirtualizingWrapPanel)​​代码示例​​: &…...

Redis的ZSet对象底层原理——跳表

我们来聊聊「跳表&#xff08;Skip List&#xff09;」&#xff0c;这是一个既经典又优雅的数据结构&#xff0c;尤其在 Redis 中非常重要&#xff0c;比如 ZSet&#xff08;有序集合&#xff09;底层就用到了跳表。 &#x1f31f; 跳表&#xff08;Skip List&#xff09;简介 …...

SpringCloud组件——OpenFeign

一.使用 1.为什么要使用 OpenFeign是⼀个声明式的WebService客户端。它让微服务之间的调用变得更简单&#xff0c;类似controller调用service&#xff0c; 只需要创建⼀个接口&#xff0c;然后添加注解即可使用OpenFeign。 2.引入依赖 加下面的依赖引入到服务消费者中&…...

C#里使用libxl来创建EXCEL文件然后发送到网络

前面一个例子说明了从网络直接读取EXCEL数据的方法, 本例子就说明怎么样创建一个EXCEL文件,也可以直接发送到网络,而不需要保存到文件,直接在内存里高效操作。 在这里要使用函数SaveRaw,输入参数是保存数据缓冲区和缓冲区的大小,返回数据和大小。 例子如下: private…...

物联网安全运营概览

这是第二篇博客文章,概述了实施物联网安全及其运行之前所需的内容。上次,我们概述了物联网安全。为了让您更具体地了解它是什么,我们将首先解释它是如何工作的,然后介绍设备 ID、部署选项和许可的概念。 物联网安全各个组件之间的关系如下图所示:基于此图,我们先来看一下…...

如何给GitHub项目提PR(踩坑记录

Fork 项目 (Fork the Repository): 在你使用的代码托管平台&#xff08;如 GitHub、GitLab&#xff09;上&#xff0c;找到你想要贡献的原始项目仓库。点击 "Fork" 按钮。这会在你自己的账户下创建一个该项目的完整副本&#xff08;你的 Fork 仓库&#xff09;。 克…...

Redux和MobX有什么区别

Redux 和 MobX 都是用于 React 应用的全局状态管理库&#xff0c;但它们在设计理念、使用方式和适用场景等方面存在明显的区别&#xff0c;下面为你详细分析&#xff1a; 1. 设计理念 Redux&#xff1a;基于 Flux 架构&#xff0c;遵循单向数据流和纯函数式编程的理念。状态是…...

测试模板x

本篇技术博文摘要 &#x1f31f; 引言 &#x1f4d8; 在这个变幻莫测、快速发展的技术时代&#xff0c;与时俱进是每个IT工程师的必修课。我是盛透侧视攻城狮&#xff0c;一名什么都会一丢丢的网络安全工程师&#xff0c;也是众多技术社区的活跃成员以及多家大厂官方认可人员&a…...

dubbo 隐式传递

隐式传递 隐式传递的应用 传递请求流水号&#xff0c;分布式应用中通过链路追踪号来全局检索日志传递用户信息&#xff0c;以便不同系统在处理业务逻辑时可以获取用户层面的一些信息传递凭证信息&#xff0c;以便不同系统可以有选择性地取出一些数据做业务逻辑&#xff0c;比…...

深入解析 ASP.NET Core 中的 ResourceFilter

在现代 Web 开发中&#xff0c;ASP.NET Core 提供了强大的过滤器&#xff08;Filters&#xff09;机制&#xff0c;用于在处理请求的不同阶段执行特定的代码逻辑。ASP.NET Core 中的 ResourceFilter 是一种非常有用的过滤器类型&#xff0c;允许开发人员在请求到达控制器操作方…...

Java进阶--面向对象设计原则

设计模式 概念 设计模式&#xff0c;又称软件设计模式&#xff0c;是一套被反复使用&#xff0c;经过分类编目的&#xff0c;代码设计经验的总结。描述了在软件设计过程中的一些不断重复发生的问题&#xff0c;以及该问题的解决方。它是解决特定问题的一系列套路&#xff0c;是…...

java每日精进 4.26【多租户之过滤器及请求处理流程】

一月没更&#xff0c;立誓以后断更三天我就是狗&#xff01;&#xff01;&#xff01;&#xff01;&#xff01;&#xff01;&#xff01;&#xff01; 研究多租户框架中一条请求的处理全流程 RestController RequestMapping("/users") public class UserControlle…...

【学习笔记】Stata

一、Stata简介 Stata 是一种用于数据分析、数据管理和图形生成的统计软件包&#xff0c;广泛应用于经济学、社会学、政治科学等社会科学领域。 二、Stata基础语法 2.1 数据管理 Stata 支持多种数据格式的导入&#xff0c;包括 Excel、CSV、文本文件等。 从 Excel 文件导入…...

[MySQL数据库] 事务与锁

&#x1f338;个人主页:https://blog.csdn.net/2301_80050796?spm1000.2115.3001.5343 &#x1f3f5;️热门专栏: &#x1f9ca; Java基本语法(97平均质量分)https://blog.csdn.net/2301_80050796/category_12615970.html?spm1001.2014.3001.5482 &#x1f355; Collection与…...

Rule.issuer(通过父路径配置loader处理器)

说明 正常在设置loader配置规则时&#xff0c;都是通过文件后缀来配置的 issuer的作用是可以通过父级的路径&#xff0c;设置生效的匹配规则 与rule的差别 test: 匹配当前模块的路径&#xff08;如 .css 文件&#xff09; issuer: 匹配引入当前模块的父模块的路径&#xff0…...

MyBatis 插件开发的完整详细例子

MyBatis 插件开发的完整详细例子 MyBatis 插件&#xff08;Interceptor&#xff09;允许开发者在已映射语句执行过程中的某一点进行拦截调用&#xff0c;从而实现自定义逻辑。以下是一个完整的 MyBatis 插件开发示例&#xff0c;涵盖所有使用场景&#xff0c;并附有详细注释和总…...

树状数组底层逻辑探讨 / 模版代码-P3374-P3368

目录 功能 实现 Q:但是&#xff0c;c[x]左端点怎么确定呢&#xff1f; Q:那么为什么要以二进制为基础呢&#xff1f; Q:为什么是补码 - &#xff1f; 区间查询 树形态 性质1.对于x<y,要么c[x]和c[y]不交&#xff0c;要么c[x]包含于c[y] 性质2.c[x] 真包含 于c[x l…...

Eigen库入门

Eigen是一个C模板库&#xff0c;用于线性代数运算&#xff0c;包括矩阵、向量、数值求解和相关算法。它以其高性能、易用性和丰富的功能而闻名。 安装与配置 Eigen是一个纯头文件库&#xff0c;无需编译&#xff0c;只需包含头文件即可使用。 下载Eigen&#xff1a;从官方网站…...

力扣HOT100——102.二叉树层序遍历

给你二叉树的根节点 root &#xff0c;返回其节点值的 层序遍历 。 &#xff08;即逐层地&#xff0c;从左到右访问所有节点&#xff09;。 示例 1&#xff1a; 输入&#xff1a;root [3,9,20,null,null,15,7] 输出&#xff1a;[[3],[9,20],[15,7]] /*** Definition for a bi…...

客户案例 | 光热+数智双驱动!恒基能脉的数字化协同与技术创新实践

光热先锋 智领未来 恒基能脉新能源科技有限公司: 创新驱动&#xff0c;智造光热未来行业领航者 恒基能脉新能源科技有限公司是一家立足于光热发电核心技术产品&#xff0c;专注于“光热” 多能互补项目的国家高新技术企业&#xff0c;其核心产品定日镜广泛应用于光热发电、储…...

第十六周蓝桥杯2025网络安全赛道

因为只会web&#xff0c;其他方向都没碰过&#xff0c;所以只出了4道 做出来的&#xff1a; ezEvtx 找到一个被移动的文件&#xff0c;疑似被入侵 提交flag{confidential.docx}成功解出 flag{confidential.docx} Flowzip 过滤器搜索flag找到flag flag{c6db63e6-6459-4e75-…...

构造函数有哪些种类?

构造函数用于对象的初始化。 1.默认构造函数&#xff1a;没有参数&#xff0c;执行默认的初始化操作&#xff1b; 2.参数化构造函数&#xff1a;传入参数的构造函数&#xff0c;允许构造函数初始化成员变量&#xff1b; 3.拷贝构造函数&#xff1a;将同一类型的实例化对象作…...

第十六届蓝桥杯大赛软件赛省赛 C/C++ 大学B组 [京津冀]

由于官方没有公布题目的数据, 所以代码仅供参考 1. 密密摆放 题目链接&#xff1a;P12337 [蓝桥杯 2025 省 AB/Python B 第二场] 密密摆放 - 洛谷 题目描述 小蓝有一个大箱子&#xff0c;内部的长宽高分别是 200、250、240&#xff08;单位&#xff1a;毫米&#xff09;&…...

关于调度策略的系统性解析与物流机器人应用实践

关于调度策略的系统性解析与物流机器人应用实践 一、调度策略的定义与核心目标 调度策略是用于在复杂环境中协调资源分配、任务排序及路径规划的决策框架,旨在通过优化资源利用率和任务执行效率,实现系统整体性能的最优解。其核心目标包括: 动态适应性:应对实时变化(如订…...

探索具身智能协作机器人:技术、应用与未来

具身智能协作机器人&#xff1a;概念与特点 具身智能协作机器人&#xff0c;简单来说&#xff0c;就是将人工智能技术与机器人实体相结合&#xff0c;使其能够在与人类共享的空间中进行安全、高效协作的智能设备。它打破了传统机器人只能在预设环境中执行固定任务的局限&#…...

毕业项目-Web入侵检测系统

1. 项目简介 系统主要分为两大板块&#xff1a;靶标站点和入侵检测系统。靶标站点是系统的被监测对象&#xff0c;而入侵检测系统则是用于检测靶标站点的流量是否存在异常&#xff0c;以及在检测到异常时进行告警。 入侵检测系统的实现过程简述如下&#xff1a; 数据获取与分…...

【分布式系统中的“瑞士军刀”_ Zookeeper】二、Zookeeper 核心功能深度剖析与技术实现细节

在分布式系统的复杂生态中&#xff0c;Zookeeper 凭借其强大的核心功能&#xff0c;成为保障系统稳定运行的关键组件。上篇文章我们了解了 Zookeeper 的基础概念与安装配置&#xff0c;本文将继续深入剖析 Zookeeper 的核心功能&#xff0c;包括分布式锁、配置管理、命名服务和…...

前端学习笔记(四)自定义组件控制自己的css

1、前言及背景 自己写的一个组件有至少3个页面在使用&#xff0c;组件中的部分文字颜色需要统一修改需要根据一个状态字段来显示不同颜色且不希望受父组件影响 注意&#xff1a;博主学习vue截止目前也就半年&#xff0c;如有知识错误之处还请指出不胜感激&#xff0c;祝学习开…...

从描述语言,非功能性需求,需求和架构的一致性三个方面,说明软件需求到架构的映射存在哪些难点

软件需求到架构的映射是软件工程中的关键环节&#xff0c;其难点主要体现在描述语言差异、非功能性需求的复杂性以及需求与架构的一致性维护三个方面。以下是具体分析&#xff1a; 1. 描述语言的差异 难点&#xff1a;需求与架构使用不同的抽象语言描述&#xff0c;导致语义鸿…...

linux blueZ 第五篇:高阶优化与性能调优——蓝牙吞吐、延迟与功耗全攻略

本篇面向已有实战经验的读者,深入探讨 Classic Bluetooth 与 BLE 在 BlueZ 平台上的性能优化和调优方法,包括连接参数、MTU 调整、PHY 选择、缓存管理、并发策略,以及 HCI 抓包、功耗测量与自动化基准测试,助你打造高吞吐、低延迟、超低功耗的蓝牙应用。 目录 为何要做性能…...

linux的例行性工作(at)

使用场景&#xff1a; 生活中&#xff0c;我们有太多场景需要使用到闹钟&#xff0c;比如早上 7 点起床&#xff0c;下午 4 点开会&#xff0c;晚上 8 购物&#xff0c;等等 在 Linux 系统里&#xff0c;我们同样也有类似的需求。比如我们想在凌晨 1 点将文件上传服务器&#…...

JVM考古现场(二十六):执剑人·降维打击的终极审判

楔子&#xff1a;二向箔的颤动——当修真文明遭遇降维打击 "警告&#xff01;老年代发生维度坍缩&#xff01;"我腰间悬挂的昆仑镜突然迸发幽蓝光芒&#xff0c;终南山巅的河图洛书大阵中&#xff0c;GC日志正以《奇门遁甲》的格局疯狂演化&#xff1a; // 降维打击…...

腾讯云物联网平台

文档&#xff1a;物联网开发平台 MQTT.fx 快速接入物联网开发平台_腾讯云...

Unity之基于MVC的UI框架-含案例

Unity之基于MVC的UI框架-含案例 使用案例&#xff1a;类《双人成行》3D动作益智冒险类双人控制游戏开发教程 资源地址&#xff1a;https://learn.u3d.cn/tutorial/3d-adventure-william-anna 一、MVC框架概览 本框架以MVC的方式搭建&#xff0c;以View视口的方式展现数据&am…...

【Token系列】01 | Token不是词:GPT如何切分语言的最小单元

文章目录 01 | Token不是词&#xff1a;GPT如何切分语言的最小单元&#xff1f;一、什么是 Token&#xff1f;二、Token 是怎么来的&#xff1f;——BPE算法原理BPE核心步骤&#xff1a; 三、为什么不直接用词或字符&#xff1f;四、Token切分的实际影响五、中文Token的特殊性六…...

C++学习之路,从0到精通的征途:List类的模拟实现

目录 一.list的介绍 二.list的接口实现 1.结点 2.list结构 3.迭代器 &#xff08;1&#xff09;begin &#xff08;2&#xff09;end 4.修改 &#xff08;1&#xff09;insert &#xff08;2&#xff09;push_back &#xff08;3&#xff09;push_front &#xff0…...

Java大师成长计划之第4天:Java中的泛型

&#x1f4e2; 友情提示&#xff1a; 本文由银河易创AI&#xff08;https://ai.eaigx.com&#xff09;平台gpt-4o-mini模型辅助创作完成&#xff0c;旨在提供灵感参考与技术分享&#xff0c;文中关键数据、代码与结论建议通过官方渠道验证。 在现代软件开发中&#xff0c;类型安…...

计算机学报 2024年 区块链论文 录用汇总 附pdf下载

计算机学报 Year&#xff1a;2024 1 Title: 区块链中的公钥密码&#xff1a;设计、分析、密评与展望 Authors: Key words: 区块链&#xff1b;公钥密码算法&#xff1b;算法设计&#xff1b;复杂性分析&#xff1b;密评 Abstract: 比特币的成功&#xff0c;吸引了人们研…...

【Castle-X机器人】三、紫外消杀模块安装与调试

持续更新。。。。。。。。。。。。。。。 【Castle-X机器人】紫外消杀模块安装与调试 三、紫外消杀模块安装与调试2.1 安装2.2 调试2.2.1 紫外消杀模块话题2.2.2 测试 三、紫外消杀模块安装与调试 2.1 安装 使用相应工具将紫外消杀模块固定在Castle-X机器人底盘 2.2 调试 2.2…...

精益数据分析(29/126):深入剖析电子商务商业模式

精益数据分析&#xff08;29/126&#xff09;&#xff1a;深入剖析电子商务商业模式 在创业和数据分析的学习道路上&#xff0c;我们始终在探索如何更精准地把握商业规律&#xff0c;提升业务的竞争力。今天&#xff0c;我们依旧怀揣着共同进步的愿望&#xff0c;深入解读《精…...

AI图像编辑器 Luminar Neo 便携版 Win1.24.0.14794

如果你对图像编辑有兴趣&#xff0c;但又不想花费太多时间学习复杂的软件操作&#xff0c;那么 Luminar Neo 可能就是你要找的完美工具。作为一款基于AI技术的创意图像编辑器&#xff0c;Luminar Neo简化了复杂的编辑流程&#xff0c;即使是没有任何图像处理经验的新手&#xf…...

在Mybatis中为什么要同时指定扫描mapper接口和 mapper.xml 文件,理论单独扫描 xml 文件就可以啊

设计考虑因素 历史兼容性&#xff1a; MyBatis早期版本主要依赖XML配置&#xff0c;后来才引入接口绑定方式同时支持两种方式可以保证向后兼容 明确性&#xff1a; 显式指定两种路径可以使映射关系更加明确减少因命名不一致导致的潜在问题 性能考虑&#xff1a; 同时扫描可…...