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

【机器人】系统辨识之激励轨迹设计(傅里叶级数)

在机器人参数辨识中使用傅里叶级数,主要是为了生成一种激励轨迹,具有良好的数学特性,同时符合物理要求。傅里叶级数的特性使其在机器人动力学辨识的激励轨迹设计中非常常用。


1. 为什么需要激励轨迹?

激励轨迹的作用是通过驱动机器人运动,产生尽可能丰富的数据,帮助准确辨识动力学模型参数。理想的激励轨迹需要满足:

  • 覆盖丰富的动态特性: 激励轨迹需要让系统尽可能激活更多的自由度(关节),产生多样的运动状态(位置、速度、加速度)。
  • 避免高频噪声: 激励轨迹需要避免激发机器人结构的高频柔性振动,导致噪声放大。
  • 控制复杂度: 激励轨迹应易于生成和分析,同时适合实际硬件执行。

2. 为什么用傅里叶级数?

傅里叶级数在激励轨迹设计中的优势包括以下几点:

(1) 数学简洁性

傅里叶级数能够将任何周期性函数表示为正弦和余弦函数的组合:

q(t)=a0+∑n=1N(ancos⁡(nωt)+bnsin⁡(nωt))q(t) = a_0 + \sum_{n=1}^N \left( a_n \cos(n \omega t) + b_n \sin(n \omega t) \right)

这种形式非常适合生成平滑、周期性的激励轨迹。

(2) 可控的频率特性
  • 低频分量为主: 通过选择较低阶的傅里叶项,可以限制轨迹的频率范围,避免激发高频振动。
  • 可调的频率和幅值: 傅里叶级数的参数(系数)可以直接调整轨迹的幅值和频率特性,满足特定动态要求。
(3) 灵活性
  • 可以轻松调整轨迹的复杂性(通过控制傅里叶级数的阶数 NN)。
  • 可以通过优化傅里叶系数(如本代码中使用的 fmincon),设计特定性质的轨迹,如最小化条件数或减少能量消耗。
(4) 周期性要求

傅里叶级数天然适用于周期性轨迹。对于许多机器人系统(如关节型机械臂),周期性运动是自然的选择,因为它可以让系统循环激励而无需频繁切换模式。


3. 具体应用中的目的

在您的代码中,傅里叶级数用于生成激励轨迹,并通过优化傅里叶系数来满足以下目标:

  1. 提高辨识矩阵的条件数
    • 条件数是系统数值稳定性的指标。优化傅里叶系数可以确保辨识矩阵具有较好的数值稳定性,从而提高参数辨识的精度。
  2. 确保轨迹平滑
    • 傅里叶级数生成的轨迹天然是连续且光滑的,避免了不连续或非光滑轨迹对机器人运动的负面影响。
  3. 覆盖丰富动态范围
    • 不同阶的傅里叶分量提供了轨迹的不同频率特性,使得运动数据能够覆盖更广的动态范围。

4. 其他常见激励轨迹设计方法的对比

方法优点缺点
傅里叶级数平滑、易调控、数学简单,适合周期性激励。不适合非周期性轨迹。
多项式轨迹非周期性轨迹设计方便,适合局部运动。高阶多项式可能导致高频振动。
阶跃信号或方波信号易实现、激励强度大。对硬件要求高,可能引入高频噪声。
随机信号(如伪随机序列)激励范围最广,适用于随机系统。难以控制硬件执行,信号可能过于复杂。
预设轨迹(如标准三角波)简单易用,适合某些特定场景。灵活性不足,可能无法覆盖全部动态特性。

5. 总结

傅里叶级数是激励轨迹设计中的一种理想选择,特别适合周期性运动的机器人参数辨识。使用傅里叶级数有助于生成平滑、低噪声、动态特性丰富的轨迹,同时允许通过优化调整参数以满足特定需求。

如果您对傅里叶系数优化或者其他激励轨迹设计方法有进一步问题,可以随时讨论!

6. 总结个人小结以及代码实现

傅里叶级数,直接映射了频域的响应。直接对应了不同omega的响应。 实际操作是常用 3阶 5阶,就可以了。根据物理情况,选择roi omega .e.g. 10 hz

%% Excited Trajectory Generation
clear
clc% 设置傅里叶级数的阶数
N = 3; % 使用三阶傅里叶级数% 设置优化参数和限制条件
OPTIONS = optimoptions('fmincon', 'Algorithm', 'active-set'); % 使用激活集算法进行约束优化
A = []; b = []; % 无线性不等式约束
Aeq = []; beq = []; % 无线性等式约束% 设置傅里叶系数的上下界(例如,振幅限制在 [-3, 3])
lb = [-3 * ones(1, 2), -3, -3 * ones(1, 2 * (N - 1))]; % 下界
ub = [3 * ones(1, 2), 3, 3 * ones(1, 2 * (N - 1))];   % 上界% 优化傅里叶系数,目标函数和约束分别定义在 myfun2 和 mycon
x = fmincon(@(x) myfun2(x), ...             % 目标函数:由 myfun2 定义1 * ones(1, 2 * N + 1), ...    % 初始值:所有系数为 1[], [], [], [], ...            % 无额外的线性约束lb, ub, ...                    % 系数的上下界@(x) mycon(x), ...             % 非线性约束:由 mycon 定义OPTIONS);                      % 优化选项% 轨迹生成的时间参数
Tf = 10;          % 总时间周期 (秒)
omega = 2 * pi / Tf; % 基频 (rad/s)
dt = 0.007;       % 时间步长 (秒)
t = 0:dt:Tf;      % 时间向量%% 生成傅里叶级数轨迹
% 初始化第一个傅里叶级数的各阶分量
l = 1; % 傅里叶级数的阶次
q{1} = x(1) / (omega * l) * sin(omega * l * t) ...- x(2) / (omega * l) * cos(omega * l * t) + x(3); % 位移
dq{1} = x(1) * cos(omega * l * t) + x(2) * sin(omega * l * t); % 速度
ddq{1} = -x(1) * omega * l * sin(omega * l * t) ...+ x(2) * omega * l * cos(omega * l * t); % 加速度% 生成其他傅里叶级数的分量
for i = 2:Nl = i; % 当前傅里叶级数的阶次q{i} = x(2 + (i - 2) * 2 + 2) / (omega * l) * sin(omega * l * t) ...- x(2 + (i - 2) * 2 + 3) / (omega * l) * cos(omega * l * t); % 位移dq{i} = x(2 + (i - 2) * 2 + 2) * cos(omega * l * t) ...+ x(2 + (i - 2) * 2 + 3) * sin(omega * l * t); % 速度ddq{i} = -x(2 + (i - 2) * 2 + 2) * omega * l * sin(omega * l * t) ...+ x(2 + (i - 2) * 2 + 3) * omega * l * cos(omega * l * t); % 加速度
end%% 合并所有傅里叶分量
% 初始化合成轨迹
qF = q{1}; % 合成位置
dqF = dq{1}; % 合成速度
ddqF = ddq{1}; % 合成加速度% 将每阶傅里叶分量累加
for i = 2:NqF = qF + q{i};dqF = dqF + dq{i};ddqF = ddqF + ddq{i};
end%% 生成动力学特征矩阵
% 初始化第一时间点的动力学特征矩阵
F = [ddqF(1), dqF(1), sign(dqF(1)), cos(qF(1)), sin(qF(1))];
for i = 2:length(t)F = [F; ddqF(i), dqF(i), sign(dqF(i)), cos(qF(i)), sin(qF(i))];
end% 计算特征矩阵的条件数(数值稳定性评价)
f = cond(F);%% 保存轨迹数据
save('tra', 'qF', 'dqF', 'ddqF');

此代码用于生成激励轨迹,并计算相应的动力学特征矩阵的条件数。


代码的目的

  • 通过傅里叶级数生成一个周期性激励轨迹 q(t)q(t),其包含位置、速度和加速度。
  • 优化傅里叶系数,以确保动力学辨识矩阵具有良好的条件数(数值稳定性)。
  • 保存生成的轨迹和对应的动力学数据。

/


代码主要部分总结

  1. 优化傅里叶系数

    • 使用 fmincon 优化傅里叶级数系数,以确保生成的轨迹符合约束条件。
    • myfun2mycon 分别定义了优化的目标函数和非线性约束。
  2. 生成轨迹

    • 基于傅里叶级数生成机器人激励轨迹,包括位置 qFqF、速度 dqFdqF 和加速度 ddqFddqF。
  3. 动力学特征矩阵

    • 通过轨迹生成对应的动力学特征矩阵 FF,每一行包括加速度、速度、速度符号、位置的余弦和正弦。
    • 计算矩阵的条件数 cond(F)\text{cond}(F),评估辨识的数值稳定性。
  4. 保存数据

    • 将合成轨迹 qFqF、速度 dqFdqF 和加速度 ddqFddqF 保存到文件 tra.mat,供后续分析使用。

附加建议

  1. 优化目标:进一步明确 myfun2 的具体目标(可能是条件数或轨迹平滑性)。
  2. 约束定义:确保 mycon 合理定义非线性约束,避免优化结果不符合实际物理要求。
  3. 性能提升:如果轨迹生成计算量较大,可以尝试优化循环结构,减少重复计算。

相关文章:

【机器人】系统辨识之激励轨迹设计(傅里叶级数)

在机器人参数辨识中使用傅里叶级数,主要是为了生成一种激励轨迹,具有良好的数学特性,同时符合物理要求。傅里叶级数的特性使其在机器人动力学辨识的激励轨迹设计中非常常用。 1. 为什么需要激励轨迹? 激励轨迹的作用是通过驱动机…...

JVM八股文精简

目录 简述JVM类加载过程简述JVM中的类加载器简述双亲委派机制双亲委派机制的优点简述JVM内存模型简述程序计数器简述虚拟机栈简述本地方法栈简述JVM中的堆简述方法区简述运行时常量池简述Java创建对象的过程简述JVM给对象分配内存的策略Java对象内存分配是如何保证线程安全的如…...

PyTorch基本使用——张量的索引操作

在操作张量时,经常要去获取某些元素进行处理或者修改操作,在这里需要了解torch中的索引操作。 准备数据: data torch.randint(0,10,[4,5]) print(data--->,data)输出结果: data---> tensor([[3, 9, 4, 0, 5],[7, 5, 9, …...

mysql集群MHA方式部署

1. 基本信息 部署机器角色部署路径192.168.242.71MySQL-Mater MHA-NodeMySQL: /alidata1/mysql-8.0.28192.168.242.72MySQL-Slave MHA-NodeMHA-Node: /alidata1/admin/tools/mha4mysql-node-0.58192.168.242.73MySQL-Slave MHA-Node192.168.242.74MHA-ManagerMHA-Manager: …...

Spring Boot中实现JPA多数据源配置指南

本文还有配套的精品资源,点击获取 简介:本文详细介绍了在Spring Boot项目中配置和使用JPA进行多数据源管理的步骤。从引入依赖开始,到配置数据源、创建DataSource bean、定义实体和Repository,最后到配置事务管理器和使用多数据…...

【计算机网络】实验12:网际控制报文协议ICMP的应用

实验12 网际控制报文协议ICMP的应用 一、实验目的 验证ping命令和tracert命令的工作原理。 二、实验环境 Cisco Packet Tracer模拟器 三、实验过程 1.构建网络拓扑并进行信息标注,将所需要配置的IP地址写在对应的主机或者路由器旁边,如图1所示。 图…...

MVC基础——市场管理系统(二)

文章目录 项目地址三、Produtcts的CRUD3.1 Products列表的展示页面(Read)3.1.1 给Product的Model里添加Category的属性3.1.2 View视图里展示Product List3.2 增加Product数据(Add)3.2.1 创建ViewModel用来组合多个Model3.2.2 在_ViewImposts里引入ViewModels3.2.3 添加Add的…...

使用Redis的Bitmap实现签到功能

1.基础签到实现 1.1代码如下Service Slf4j public class SignInService {Autowiredprivate StringRedisTemplate redisTemplate;private static final String SIGN_KEY_PREFIX "sign:";/*** 用户签到* param userId 用户ID* param date 签到日期*/public boolean s…...

OpenCV 图像基本操作

OpenCV快速通关 第一章:OpenCV 简介与环境搭建 第二章:OpenCV 图像基本操作 OpenCV 图像基本操作 OpenCV快速通关第二章:OpenCV 图像基本操作一、相关结构体与函数介绍(一)cv::Mat 结构体(二)c…...

SpringBoot3+Micormeter监控应用指标

监控内容简介 SpringBoot3项目监控服务 ,可以使用Micormeter度量指标库,帮助我们监控应用程序的度量指标,并将其发送到Prometheus中并用Grafana展示。监控指标有系统负载、内存使用情况、应用程序的响应时间、吞吐量、错误率等。 micromete…...

Leetcode打卡:变为棋盘

执行结果:通过 题目:782 变为棋盘 一个 n x n 的二维网络 board 仅由 0 和 1 组成 。每次移动,你能交换任意两列或是两行的位置。 返回 将这个矩阵变为 “棋盘” 所需的最小移动次数 。如果不存在可行的变换,输出 -1。 “棋盘…...

遣其欲,而心自静 -- 33DAI

显然,死做枚举只能的50分。 错了4次总算对了。 大体思路: 因题目说只有两个因数,那么有两种情况: 1:两个质数相乘,如:3*515 5*745 等(不包括5*525 或5*315 重复计算\ 因为3*5算了…...

物品识别 树莓派 5 YOLO v5 v8 v10 11 计算机视觉

0. 要实现的效果 让树莓派可以识别身边的一些物品,比如电脑,鼠标,键盘,杯子,行李箱,双肩包,床,椅子等 1. 硬件设备 树莓派 5 raspberrypi.com/products/raspberry-pi-5/树莓派官方摄…...

鸿蒙NEXT元服务:静态卡片

【引言】 最近上线的鸿蒙NEXT元服务受到了一些用户的反馈,指出其缺乏一个直观的入口。为了解决这个问题并提供类似传统应用程序的桌面快捷方式体验,决定通过添加静态卡片功能来让用户能够直接从桌面访问元服务。本文将详细介绍如何实现这一功能。 【参考…...

vue3父子组件通信

一般常用有6种方式: 使用 props 传递数据:父组件通过 props 传递数据给子组件,子组件通过 defineProps 获取父组件定义的数据。使用 v-model 语法糖:父组件通过 v-model="abc" 传递数据,并监听子组件的更新事件,子组件:通过 defineEmits 获取父传入的属性的更…...

2024年认证杯SPSSPRO杯数学建模D题(第一阶段)AI绘画带来的挑战解题全过程文档及程序

2024年认证杯SPSSPRO杯数学建模 D题 AI绘画带来的挑战 原题再现: 2023 年开年,ChatGPT 作为一款聊天型AI工具,成为了超越疫情的热门词条;而在AI的另一个分支——绘图领域,一款名为Midjourney(MJ&#xff…...

虚幻引擎---材质篇

一、基础知识 虚幻引擎中的材质(Materials) 定义了场景中对象的表面属性,包括颜色、金属度、粗糙度、透明度等等;可以在材质编辑器中可视化地创建和编辑材质;虚幻引擎的渲染管线的着色器是用高级着色语言(…...

【Linux基础】yum 与 vim 的操作

目录 Linux 应用商店——yum yum和yum源是什么 关于镜像的简单理解 yum 的基本操作 yum的安装 yum install 命令 yum查看软件包 yum list 命令 yum的卸载 yum remove 命令 关于 rzsz 软件 安装 rzsz 软件: rz 命令 sz 命令 yum 源拓展 Linux 编辑器…...

一句话木马

作用&#xff1a; 一句话木马的作用主要是利用计算机系统或网络协议的安全漏洞&#xff0c;以实现未经授权访问、数据窃取或其他恶意目的。 木马举例&#xff1a; 1.PHP <?php eval($_POST[attack]);?> 解释 • <?php ... ?> 是 PHP 代码的开始和结束标记…...

给建筑物“穿毛衣”:AI绘图新玩法

随着气温的骤降&#xff0c;我们不仅感受到了自然界的寒冷&#xff0c;甚至连城市的建筑物似乎也在寒风中“颤抖”。在这样的背景下&#xff0c;一种新颖的AI绘图玩法——给建筑“穿毛衣”在网络上迅速走红。本文将详细介绍这一创意玩法&#xff0c;并提供手把手的教学指导。 A…...

【Qt】Qt Creator项目文件(.pro 文件)构建指令学习

文章目录 1. DESTDIR作用&#xff1a;实例&#xff1a; 2. INCLUDEPATH作用&#xff1a;实例&#xff1a; 3. LIBS作用&#xff1a;用法&#xff1a;实例&#xff1a; 4. TEMPLATE作用&#xff1a;实例&#xff1a; 5. OTHER_FILES作用&#xff1a;实例&#xff1a;其它说明 6.…...

突破!自然语言强化学习(NLRL):一个可处理语言反馈的强化学习框架

本论文由伦敦大学学院、上海交通大学、布朗大学、布里斯托大学、新加坡国立大学以及萨里大学的研究者合作完成。 冯熙栋是论文第一作者&#xff0c;即将毕业于伦敦大学学院。目前是Google DeepMind的Research Scientist&#xff0c;主要研究方向包括强化学习与生成模型。刘博是…...

core Webapi jwt 认证

core cookie 验证 Web API Jwt 》》》》用户信息 namespace WebAPI001.Coms {public class Account{public string UserName { get; set; }public string UserPassword { get; set; }public string UserRole { get; set; }} }》》》获取jwt类 using Microsoft.AspNetCore.Mvc…...

【Springboot知识】springboot基础-事件

文章目录 简介一、事件类型二、事件处理机制三、自定义事件和监听器四、异步事件处理五、条件事件监听 如何使用1. 自定义事件2. 发布事件3. 监听事件4. 测试事件机制 ApplicationEventPublisher接口使用的设计模式 简介 在Spring Boot中&#xff0c;事件机制是一种基于观察者…...

经典视觉神经网络1 CNN

一、概述 输入的图像都很大&#xff0c;使用全连接网络的话&#xff0c;计算的代价较高&#xff0c;图像也很难保留原本特征。 卷积神经网络&#xff08;Convolutional Neural Network&#xff0c;CNN&#xff09;是一种专门用于处理具有网格状结构数据的深度学习模型。主要应用…...

解决跨域问题方案

跨域问题在前后端分离架构下尤为常见&#xff0c;是每个 Web 开发者都会遇到的核心问题。本文将通过原理解析、场景剖析、解决方案详解以及最佳实践等多个维度&#xff0c;帮助开发者全面理解并有效应对跨域问题。 目录 **一、跨域的本质****1. 同源策略****2. 同源策略的限制范…...

【python自动化五】接口自动化基础--requests的使用

python的接口请求可以用requests库&#xff0c;这个介绍就不多说了&#xff0c;网上说得很详细。 接下来直接记录下如何使用&#xff08;当然也不限于自动化的使用&#xff09; 1.安装requests requests也需要安装一下 pip install requests2.requests请求 1.常用的请求方法…...

文本三剑客——grep命令

介绍 作用 Linux grep (global regular expression) 命令用于查找文件里符合条件的字符串或正则表达式。 常用选项 -i&#xff1a;忽略大小写进行匹配。-v&#xff1a;反向查找&#xff0c;只打印不匹配的行。-n&#xff1a;显示匹配行的行号。-r&#xff1a;递归查找子目录…...

ASP 实例:深入解析与实战应用

ASP 实例&#xff1a;深入解析与实战应用 引言 ASP&#xff08;Active Server Pages&#xff09;是一种由微软开发的服务器端脚本环境&#xff0c;用于动态网页设计和开发。它允许开发者创建和运行动态交互性网页&#xff0c;如访问数据库、发送电子邮件等。本文将深入探讨AS…...

文件的操作

什么是文件 如何是数据持久化——保存在硬盘上(文件&#xff0c;数据库)磁盘上的文件是文件在程序设计中&#xff0c;我们一般谈的文件有两种&#xff1a;程序文件、数据文件程序文件&#xff0c;比如源文件&#xff08;.c文件&#xff09;读a文件写到b文件里&#xff0c;此时a…...

【简单谈谈UCIE PHY LSM链路训练】

UCIE PHY LSM链路训练 1 UCIE PHY LSM1.1 RESET1.2 SBINT1.3 MBINT1.3.1 MBINT.PARAM1.3.2 MBINIT.CAL1.3.3 MBINIT.REPAIRCLK1.3.4 MBINIT.REPAIRVAL1.3.5 MBINIT.REVERSALMB1.3.6 MBINIT.REPAIRMB 1.4 MBTRAIN1.5 LINKINIT1.6 ACTIVE1.7 L1/L21.8 PHY.RETRAIN1.9 TRAIN.ERROR…...

数学二常用公式(高等数学+线性代数)

目录 高等数学第一章 函数、极限和连续第二章 一元函数微分学第三章 一元函数积分学第四章 多元函数微分学第五章 多元函数积分学第六章 常微分方程 线性代数线性代数篇章涉及的知识内容及常用公式第一章 行列式第二章 矩阵第三章 向量第四章 线性方程组第五章 矩阵的相似化简第…...

【Java计算机毕业设计】Springboot+vue动物保护协会管理系统【源代码+数据库+LW文档+开题报告+答辩稿+部署教程+代码讲解】

源代码数据库LW文档&#xff08;1万字以上&#xff09;开题报告答辩稿 部署教程代码讲解代码时间修改教程 一、开发工具、运行环境、开发技术 开发工具 1、操作系统&#xff1a;Window操作系统 2、开发工具&#xff1a;IntelliJ IDEA或者Eclipse 3、数据库存储&#xff1a…...

鸿蒙面试---1208

HarmonyOS 三大技术理念 分布式架构&#xff1a;HarmonyOS 的分布式架构使得设备之间能够无缝协同工作。例如&#xff0c;它允许用户在不同的智能设备&#xff08;如手机、平板、智能手表等&#xff09;之间共享数据和功能。比如&#xff0c;用户可以在手机上开始编辑文档&…...

【论文阅读】一名系统研究者的攀登之路

作者&#xff1a;陈海波 陈海波是操作系统、系统结构、并行与分布式系统方向大牛&#xff0c;上海交通大学大牛团队 学习体会&#xff1a; 计算机系统论文准备周期较长&#xff0c;十有八九都是在解决新问题的路上~ 因此学习大佬的学习经验&#xff0c;少踩坑&#xff0c;把主…...

MySQL 索引(B+树)详解

MySQL 索引&#xff08;B树&#xff09;详解 MySQL逻辑架构对比InnoDB与MyISAM存储结构存储空间可移植性、备份及恢复事务支持AUTO_INCREMENT表锁差异全文索引表主键表的具体行数CRUD操作外键 sql优化简介什么情况下进行sql优化sql语句执行过程sql优化就是优化索引 索引索引的优…...

【不稳定的BUG】__scrt_is_managed_app()中断

【不稳定的BUG】__scrt_is_managed_app函数中断 参考问题详细的情况临时解决方案 参考 发现出现同样问题的文章: 代码运行完所有功能&#xff0c;仍然会中断 问题详细的情况 if (!__scrt_is_managed_app())exit(main_result);这里触发了一个断点很奇怪,这中断就发生了一次,代…...

护网蓝队日志分析

Windows日志分析 一、事件查看器 在「事件查看器」中&#xff0c;可以查看系统中记录的所有事件日志。操作步骤如下&#xff1a; 1、打开 Windows 事件查看器 1、使用Windows R快捷键打开「运行」对话框&#xff0c;输入eventvwr.msc&#xff0c;然后按回车键打开事件查看…...

滤波器设计(八)-McClellan-Parks design algorithm

步骤 Initialization: Choose an extremal set of frequences {ωi(0)}.Finite Set Approximation: Calculate the best Chebyshev approximation on the present extremal set, giving a value δ(m) for the min-max error on the present extremal set.Interpolation: Calc…...

ElasticSearch常见的索引_集群的备份与恢复方案

方案一&#xff1a;使用Elasticsearch的快照和恢复功能进行备份和恢复。该方案适用于集群整体备份与迁移&#xff0c;包括全量、增量备份和恢复。 方案二&#xff1a;通过reindex操作在集群内或跨集群同步数据。该方案适用于相同集群但不同索引层面的迁移&#xff0c;或者跨集…...

C#对Excel表csv文件的读写操作

C#对Excel表csv文件的读写 一、变量定义二、加载主窗口三、创建表头四、向表中添加数据五、从表中读取数据六、单击按钮向表中添加数据七、测试验证 一、变量定义 #region 变量定义 private string CurAppExeDir System.AppDomain.CurrentDomain.BaseDirectory; private strin…...

【MySQL】mysql服务器架构

目录 1、背景2、mysql服务器架构解释3、总结 1、背景 简单理解一下mysql的服务器架构。 2、mysql服务器架构解释 mysql的架构图如下&#xff1a; 主要分为三部分&#xff1a;客户端、服务端、存储引擎。接下来我们来解释一下各个部分&#xff1a; 客户端 用来连接mysql服务…...

Vue Web开发(三)

1. 添加el-menu样式 将Home.vue文件重新命名为Main.vue文件&#xff0c;本节涉及新的home目录和User目录下的index.js文件&#xff0c;因为侧边导航栏Aside和顶部Header是在每一个页面都存在的&#xff0c;所以重新命名为Main&#xff0c;而home文件夹下的index.js则对应系统首…...

Java项目实战II基于微信小程序的小区租拼车管理信息系统 (开发文档+数据库+源码)

目录 一、前言 二、技术介绍 三、系统实现 四、核心代码 五、源码获取 全栈码农以及毕业设计实战开发&#xff0c;CSDN平台Java领域新星创作者&#xff0c;专注于大学生项目实战开发、讲解和毕业答疑辅导。 一、前言 随着城市化进程的加速&#xff0c;小区居民对于出行方…...

云安全:云计算安全

目录 云安全的定义和重要性 云安全的关键组成部分 云安全技术实现 云安全最佳实践 云安全的定义和重要性 云安全是指在云计算环境中保护数据、应用程序和相关服务不受威胁的一系列策略、技术和控制措施。随着云计算的快速发展&#xff0c;云安全已成为企业和个人用户最关心…...

git clone加速(亲测好用)

用公司网git clone特别卡&#xff0c;本以为宿舍网会好一点&#xff0c;回来下的时候也只有几十kb. 然后找到了一种方法&#xff0c;就是在原始下载命令前加一个gitclone 比如 git clone https://github.com/infiniflow/ragflow.git替换成 git clone https://gitclone.com/gi…...

Python 网络爬虫进阶:突破数据采集的边界

在成功踏入 Python 网络爬虫的入门之境后&#xff0c;我们犹如初窥宝藏的探险家&#xff0c;领略到了数据采集世界的奇妙与潜力。而此刻&#xff0c;进阶之路在脚下徐徐展开&#xff0c;它将引领我们深入这片领域的更深处&#xff0c;挖掘出更为强大和精妙的爬虫技艺&#xff0…...

【网络安全】网站常见安全漏洞 - 网站基本组成及漏洞定义

文章目录 引言1. 一个网站的基本构成2. 一些我们经常听到的安全事件3. 网站攻击者及其意图3.1 网站攻击者的类型3.2 攻击者的意图 4. 漏洞的分类4.1 按来源分类4.2 按危害分类4.3 常见漏洞与OWASP Top 10 引言 在当今的数字化时代&#xff0c;安全问题已成为技术领域不可忽视的…...

[论文解读]Street Gaussians: Modeling Dynamic Urban Scenes with Gaussian Splatting

Street Gaussians是年初的一篇动态场景重建论文&#xff0c; 在当时是做到了SOTA&#xff0c;至今为止很多自动驾驶或者动态场景重建的文章都会将Street Gaussians作为实验的比较对象&#xff0c;这也表明了这篇文章的重要性&#xff0c;今天就一起来看看这篇文章&#xff1b; …...

在Github上上传大文件的办法(图文版)

在上一篇笔记中&#xff0c;笔者用图文的形式介绍了如何在GITHUB中上传文件夹。 可参考这篇笔记 在GITHUB上传本地文件指南&#xff08;详细图文版&#xff09;-CSDN博客 但接下来&#xff0c;笔者在继续上传别的文件的过程中&#xff0c;遇到了新的问题&#xff0c;gitbash…...