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

【通信协议-RTCM】MSM语句(2) - RINEXMSM7语句总结(重要!自动化开发计算卫星状态常用)

注释:
在工作中主要负责的是RTCM-MSM7语句相关开发工作,所以主要介绍的就是MSM7语句相关内容

1. 相位校准参考信号

在这里插入图片描述

2. MSM1、MSM2、MSM3、MSM4、MSM5、MSM6和MSM7的消息头内容

DATA FIELDDF NUMBERDATA TYPENO. OF BITSNOTES
Message Number - 消息编号
DF002
uint12
12
MSM7语句对应:1077、1087、1097、1117、1127(去除IRNSS卫星之外)
Reference station ID - GPS参考站ID
DF003
uint12
12
GNSS Epoch Time - GNSS历元时间
Specific for each GNSS
uint30
30
针对每一个GNSS
Multiple Message Bit - 多消息位
DF393
bit(1)
1
IODS – Issue of Data Station - 数据站问题
DF409
unit3
3
Reserved - 保留位
DF001
bit(7)
7
保留(可能是GNSS特定的)
Clock Steering Indicator - 时钟转向指示灯
DF411
uint2
2
External Clock Indicator - 外部时钟指示器
DF412
uint2
2
GNSS Divergence-free Smoothing Indicator - GNSS无发散平滑指示器
DF417
bit(1)
1
GNSS Smoothing Interval - GNSS平滑间隔
DF418
bit(3)
3
GNSS Satellite Mask - GNSS卫星掩码(后续缩写为Nsat)
DF394
bit(64)
64
GNSS Signal Mask - GNSS信号屏蔽(后续缩写为Nsig)
DF395
bit(32)
32
GNSS Cell Mask - GNSS单元掩码(后续缩写为Ncell)
DF396
bit(X)
X<=64
Total
169+X
注释(重要):
         单元掩码的大小不是固定的,而是在解码卫星和信号掩码后确定的。单元掩码的大小为X=Nsat*Nsig,其中Nsat是卫星数量(比特数量,在卫星掩码中设置为1),Nsig是信号数量(比特数,在信号掩码中设为1)。
         选择限制X≤64是为了保证MSM7(最大的MSM)的完整大小适合单个RTCM-3传输帧。在X≤64的条件下,MSM7完整大小的初步估计不超过5865位,这大约是任何RTCM-3消息最大允许大小的一半。
         在大多数实时应用中,要传输的数据将符合X≤64的限制(例如Nsat≤16,Nsig≤4),因此大多数时候,给定GNSS的所有数据都应该能够在单个RTCM-3传输中生成。
         如果给定GNSS有许多卫星和信号,编码软件有责任通过将完整的观测集划分为几个消息来确保“X≤64”规则。例如,如果Nsat=14和Nsig=6(即多达14*6=84个可观测值),则编码软件必须使用2个单独的传输,例如:第一个传输用于7颗卫星和6个信号,第二个传输用于其余7颗卫星,6个信号。

3. MSM7卫星数据内容(此处仅介绍MSM7)

DATA FIELDDF NUMBERDATA TYPENO. OF BITSNOTES
The number of integer milliseconds in GNSS Satellite rough ranges - GNSS卫星粗略范围内的整数毫秒数
DF397
uint8(Nsat times)
8*Nsat
Extended Satellite Information - 扩展卫星信息
Specific for each GNSS
uint4(Nsat times)
4*Nsat
针对每个GNSS
GNSS Satellite rough ranges modulo 1 millisecond - GNSS卫星粗略范围模1毫秒
DF398
uint10(Nsat times)
10*Nsat
GNSS Satellite rough PhaseRangeRates - GNSS卫星粗略相位范围速率
DF399
int14(Nsat times)
14*Nsat
Total
36*Nsat

4. MSM7信号数据内容

DATA FIELDDF NUMBERDATA TYPENO. OF BITSNOTES
GNSS signal fine Pseudoranges with extended resolution - 具有扩展分辨率的GNSS信号精细伪距
DF405
int20(Ncell times)
20*Ncell
GNSS signal fine Phaserangedata with extended resolution - 具有扩展分辨率的GNSS信号精细相位数据
DF406
int24(Ncell times)
24*Ncell
GNSS Phaserange Lock Time Indicator with extended range and resolution - 具有扩展范围和分辨率的GNSS相位锁定时间指示器
DF407
uint10(Ncell times)
10*Ncell
Half-cycle ambiguity indicator - 半周期模糊度指示器
DF420
bit1(Ncell times)
1*Ncell
GNSS signal CNRs with extended resolution - 具有扩展分辨率的GNSS信号CNR
DF408
uint10(Ncell times)
10*Ncell
GNSS signal fine PhaseRangeRates - GNSS信号精细相位范围速率
DF404
int15(Ncell times)
15*Ncell
Total
80*Ncell

4.1 RTCM实际输出数据示例解析

注释:
左侧为接收机实时获取到的数据(十六进制GPS-1077语句,实时搜星情况为:GPSL1/L2 双频5星),右侧为十六进制数据解析成二进制数据后结果,并标注了MSM7语句中每个Data Field所对应位置

在这里插入图片描述

5. 信号ID映射

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

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

附1:Data File参考文档

DF001 DF002 DF003见之前文章中Data File参考文档

DF #DF NameDF RangeDF ResolutionData TypeData Field Notes
DF393
MSM Multiple message bit
bit(1)
1表示在给定的物理时间和参考站ID下,有更多的MSM跟随
0表示它是给定物理时间和参考站ID的最后一个MSM
DF394
GNSS Satellite mask
bit(64)
比特序列,指定此消息中有可用数据的GNSS卫星。最高有效位(MSb)或第一个编码位对应于ID=1的GNSS卫星,第二个位对应于ID=2的GNSS卫星等。最低有效位(LSb)或最后一个编码位相应于ID=64的GNSS卫星。
实际GNSS卫星(GPS的PRN、GLONASS的“时隙号”等)到卫星掩码ID的精确映射是每个GNSS特有的(见MSM描述中每个GNSS的相应表格)。
一些ID值可能指特定的卫星,而一些ID值在本标准中可能表示为“保留”。这些ID将来可能会用于其他卫星,因此解码软件应确保它不会跳过这些比特,而是解码完整的GNSS卫星掩码,解码相应的可观测值,就像它们是指已知的卫星一样,但应避免使用它们,除非有新的卫星映射表可以将相应的ID映射到特定的卫星。
如果后面有ID=n的卫星数据,则相应的比特(比特数n)设置为1。如果ID=m的卫星的数据不在后面,则相应的比特(比特数m)设置为0。
DF395
GNSS Signal mask
bit(32)
比特序列,指定了此消息中有可用数据的GNSS信号。每个比特对应于给定GNSS的特定信号(可观测)类型。最高有效位(MSb)或第一编码位对应于ID=1的信号,第二位对应于ID=2的信号,以此类推。最低有效位(LSb)或最后一个编码位对应于ID=32的信号。
实际信号标识符(与RINEX 3.01信号命名约定相对应)到信号掩码ID的精确映射对于每个GNSS都是特定的(见每个GNSS的MSM描述中的相应表格)。
一些ID值可能指特定的信号,而一些ID值在本标准中可能表示为“保留”。这些ID将来可能会用于其他信号,因此解码软件应确保它不会跳过这些比特,而是对完整的GNSS信号掩码进行解码,对相应的可观测值进行解码,就像它们指的是已知信号一样,但应避免使用它们,除非有新的信号映射表可以将相应的ID映射到特定的信号。
如果ID=n的信号(可观测)可用于至少一个发射的卫星,则相应的比特(数字n)设置为1,否则相应的比特设置为0。
DF396
GNSS Cell mask
bit(X)
一个二维表,用于确定每个发射卫星的信号可用性。
该字段大小可变:X=Nsig*Nsat,其中Nsat是卫星数量(在卫星掩码DF394中设置为1的那些比特的数量),Nsig是可用信号的数量(在信号掩码DF395中将这些比特的数量设置为1)。
该矩形表的第一行对应于具有最小ID的信号,信号掩码中的对应位被设置为1。第二行对应于具有第二小ID的信号,信号掩码中的对应位设置为1。最后一行对应于具有最高ID的信号,信号掩码中的相应位设置为1。
该矩形表的第一列对应于ID最小的卫星,卫星掩码中的对应位设置为1。第二列对应于具有第二小ID的卫星,其卫星掩码中的对应位设置为1。最后一列对应于ID最高的卫星,卫星掩码中的相应位设置为1。
如果给定卫星和给定信号的可观测数据随之而来,则此表中的相应单元格设置为1,否则设置为0。 该比特表按列打包,从与最小卫星ID对应的列开始。
每列的大小为Nsig比特,并且从与最小信号ID对应的单元开始打包。
表的每个单元格由一个位表示,根据单元格中的值,该位设置为1或0。
DF397
The number of integer milliseconds in GNSS Satellite rough range
0-254ms
1ms
uint8
粗略距离可用于恢复给定卫星的完整可观测性。粗略范围需要18位,分为两个字段(DF397和DF398)。此字段包含卫星粗略范围内的整数毫秒数。如果该字段未被传输(MSM1、MSM2、MSM3),则解码设备有责任使用粗略的参考站位置和星历数据来恢复它。
等效于FFh(255毫秒)的位模式表示无效值。
DF398
GNSS Satellite rough range modulo 1 millisecond
0 to (1-2 -10) ms
2 -10ms
uint10
允许以1/1024毫秒(约300米)的精度恢复整个粗略范围。
DF399
GNSS Satellite rough Phaserange Rate
±8191 m/s
1 m/s
int14
相位范围速率与相位范围的数学导数具有相同的符号。
与距离类似,特定信号可观测到的完整相位范围速率可以通过粗略相位范围速率(对给定卫星唯一)和精细相位范围速率的总和来构建(对与给定卫星对应的每个特定信号唯一)。
相当于2000h(-8192 m/s)的位模式表示无效值
DF404
GNSS signal fine Phaserange Rate
±1.6383 m/s
0.0001 m/s
int15
给定信号的精细相位范围速率。全相位范围速率是该字段与卫星粗略相位范围速率(DF399)之和。
相当于4000h(-1.6384m/s)的位模式表示无效值。
DF405
GNSS signal fine Pseudorange with extended resolution
±(2 –10–2 –29) ms (Approx: ±292 m)
2 -29 ms(Approx: 0.0006 m)
int20
与DF400相同,但具有扩展的分辨率,除了等效于80000h(-2-10ms)的位模式表示无效值,而不是为DF400定义的无效模式。(DF400: 特定于给定卫星的每个信号。添加到字段DF397和DF398允许获得与给定信号对应的完整伪距可观测值。相当于4000h(-2 -10ms)的位模式表示无效值)
DF406
GNSS signal fine Phaserange data with extended resolution
±(2 -8–2 -31) ms (Approx: ±1171 m)
2 -31 ms(Approx: 0.00014 m)
int24
与DF401相同,但具有扩展的分辨率,除了相当于8000000h(-2 -8ms)的位模式表示无效值,而不是为DF401定义的无效模式。(DF401:类似于DF400,但指的是相位范围。在相位范围生成开始时,从原始全载波中删除了适当的整数周期数,以将其与相应的伪范围相匹配。
在接下来的时间段内,这个整数保持不变,直到检测到周期滑动,之后必须确定新的整数周期。在这种情况下,相关的GNSS相位范围锁定时间指示器(DF402)必须重置为零。
请注意,此处定义的相位范围与伪范围具有相同的符号。
某些电离层条件(或不正确的初始化)可能会导致相位范围和伪范围(相位范围-伪范围)之间的差异随着时间的推移而发散,这可能会导致该值超过定义的范围限制。在这种情况下,应重新初始化上述“整数周期数”。在这种情况下,相关的GNSS相位范围锁定时间指示器(DF402)应重置为零。
等于200000小时(-2-8m)的位模式表示无效值。)
DF407
GNSS Phaserange Lock Time Indicator with extended range and resolution.
uint10
与DF402相同,但范围更广,分辨率更高(DF402:锁定时间指示器提供接收器对该卫星信号保持连续锁定的时间量的度量。如果在前一个测量周期内发生循环滑动,锁止指示器将重置为零。)
DF408
GNSS signal CNR with extended resolution
0.0625–63.9375 dB-Hz
2 -4dB-Hz
uint10
与DF403相同,但分辨率更高。
值“0”表示CNR测量值尚未计算或不可用。
CNR的可用性或不可用性不会影响其他可观测值的有效性。(DF403:GNSS CNR测量提供了卫星信号的载噪比估计值,单位为dB Hz。
值“0”表示CNR测量值未计算或不可用。
CNR的可用性或不可用性不会影响相应可观测值的有效性。)
DF409
IODS – Issue Of Data Station
0-7
1
uint3
此字段保留用于将MSM与未来的站点描述(接收器、天线描述等)消息链接起来。
值“0”表示未使用此字段。
DF411
Clock Steering Indicator
uint2
0–未应用时钟转向 ---- 在这种情况下,接收器时钟必须保持在±1 ms(约±300 km)的范围内
1–已应用时钟转向 ---- 在这种情况下,接收器时钟必须保持在±1微秒(约±300米)的范围内。
2–未知的时钟转向状态
3–保留
DF412
External Clock Indicator
uint2
0–使用内部时钟
1–使用外部时钟,时钟状态为“锁定”
2–使用外部时钟,时钟状态为“未锁定”,这可能表明外部时钟故障,传输的数据可能不可靠。
3–使用未知时钟
DF417
GNSS Smoothing Type Indicator
bit1
1–使用无发散平滑
0–使用其他类型的平滑
DF418
GNSS Smoothing Interval
bit3
GNSS平滑间隔是使用载波相位对伪距码相位测量值进行平均的积分周期 信息。
在卫星可见的整个期间内,无发散平滑可能是连续的。
注意:零值表示未使用平滑处理。
DF420
Half-cycle ambiguity indicator
bit(1)
0–无半周期歧义。
1–半周期模糊
当传输带有未解析极性编码的相位范围时,软件应将该位设置为1。无法处理半周期模糊的接收软件应跳过此类相位范围可观测值。
如果极性分辨率迫使相位范围校正半个周期,则相关的GNSS相位范围锁定时间指示器(DF402、DF407)必须重置为零,这表明尽管持续跟踪,最终的相位范围仍经历了不连续性。

注释:
GNSS卫星信息相当复杂,除了上述公有语句之外,还有各个芯片厂商自己定义的私有语句,也是做测开必须掌握了解的,由于保密协议,无法介绍。还有一些RTCM公有语句,因为不常用(估计是我不常用,就不做介绍了),还有其他的星历信息,做伪距相位残差、载波等卫星算法可能会用到,我只是个刚入门的测试,还没有系统学习。至此结束吧,终于填完了一个坑

相关文章:

【通信协议-RTCM】MSM语句(2) - RINEXMSM7语句总结(重要!自动化开发计算卫星状态常用)

注释&#xff1a; 在工作中主要负责的是RTCM-MSM7语句相关开发工作&#xff0c;所以主要介绍的就是MSM7语句相关内容 1. 相位校准参考信号 2. MSM1、MSM2、MSM3、MSM4、MSM5、MSM6和MSM7的消息头内容 DATA FIELDDF NUMBERDATA TYPENO. OF BITSNOTES Message Number - 消息编…...

ios CCUIFont.m

// // CCUIFont.h // CCFC // //#import <Foundation/Foundation.h>// 创建字体对象 #define CREATE_FONT(fontSize) [UIFont systemFontOfSize:(fontSize)]interface UIFont(cc) (void)logAllFonts;end // // CCUIFont.m // CCFC // //#import "CCUIFont.h&…...

调度子系统在特定时间执行

时序逻辑调度器设计模式允许您安排Simulink子系统在指定时间执行。以下模型说明了这种设计模式。 时序逻辑调度器图表包含以下逻辑&#xff1a; 时序逻辑调度器的关键行为 时序逻辑调度器图表包含两个状态&#xff0c;它们以不同的速率调度函数调用子系统A1、A2和A3的执行&…...

【QAC】Dashboard服务端如何配置

【更多软件使用问题请点击亿道电子官方网站】 1、 文档目标 解决Dashboard服务端如何配置的问题。 2、 问题场景 客户想使用Dashboard&#xff0c;Dashboard服务端如何配置。 3、软硬件环境 1、软件版本&#xff1a;HelixQAC23.04 2、机器环境&#xff1a;Windows 64bit 3…...

深入理解Linux网络(四):TCP接收阻塞

TCP socket 接收函数 recv 发出 recvfrom 系统调用。 进⼊系统调⽤后&#xff0c;⽤户进程就进⼊到了内核态&#xff0c;通过执⾏⼀系列的内核协议层函数&#xff0c;然后到 socket 对象的接收队列中查看是否有数据&#xff0c;没有的话就把⾃⼰添加到 socket 对应的等待队列⾥…...

【iOS】内存五大分区

目录 堆&#xff08;Heap&#xff09;是什么五大分区栈区堆区全局/静态区常量区&#xff08;即.rodata&#xff09;代码区&#xff08;.text&#xff09; 函数栈堆和栈的区别和联系图解 OC语言是C语言的超集&#xff0c;所以先了解C语言的内存模型的内存管理会有很大帮助。C语言…...

Jupyter Notebook: 是一个强大的交互式计算

文章目录 引言Jupyter Notebook的原理基础使用安装与启动单元格&#xff08;Cell&#xff09;操作快捷键 高级使用魔术命令Markdown支持可视化版本控制 优缺点优点缺点 官网链接结论 引言 Jupyter Notebook是一个强大的交互式计算环境&#xff0c;特别适用于数据科学、机器学习…...

【C#学习笔记】变量、变量类型

在C#中&#xff0c;变量是存储数据的容器&#xff0c;每个变量都有其特定的数据类型&#xff0c;这决定了变量可以存储的数据类型和大小。以下是关于C#中变量的由浅入深的详细解释&#xff0c;并附带代码示例和解释&#xff1a; 基础概念 定义&#xff1a; 变量是存储数据的容…...

题解:T480718 eating

eating 题目背景 从前有个荣光的王国&#xff0c;小 A 是里面的国王&#xff0c;今天他要赐予他的子民以仓廪。 题目描述 在一条街上有 n n n 个饭店。小 A 站在这条街的最左端。 第 i i i 个饭店离这条街最左端的距离是 a i a_i ai​&#xff0c;它所售卖的菜品的美味…...

MATLAB中matfile用法

目录 语法 说明 示例 创建 MAT 文件对象 启用对 MAT 文件的写访问权限 加载整个变量 将整个变量保存至现有 MAT 文件 加载和保存部分变量 确定变量大小 参数说明 局限性 提示 matfile的功能是访问和更改 MAT 文件中的变量&#xff0c;而不必将文件加载到内存中。 …...

Spring之Spring Bean的生命周期

Spring Bean的生命周期 通过BeanDefinition获取bean的定义信息调用构造函数实例化beanBean的依赖注入处理Aware接口&#xff08;BeanNameAware、BeanFactoryAware、ApplicationContextAware&#xff09;Bean的后置处理器BeanPostProcessor-前置初始化方法&#xff08;Initiali…...

OSINT 开源情报中的地理定位方法

了解 OSINT 中的地理定位技术、如何获取地理位置数据以及如何将地理定位用于各种调查场景。 OSINT 中的地理定位基础知识 OSINT 代表开源情报&#xff0c;指的是从免费公共来源合法收集的有关个人或组织的信息。这包括在互联网上以及书籍、公共图书馆报告、报纸文章、新闻稿、…...

Java面试题系列 - 第17天

Java中的代理模式与动态代理 背景说明&#xff1a;代理模式是一种结构型设计模式&#xff0c;用于在客户端和目标对象之间提供一个代理或占位符。在Java中&#xff0c;动态代理技术允许在运行时创建代理对象&#xff0c;这在AOP&#xff08;面向切面编程&#xff09;和RPC&…...

开发环境搭建

1、Ubuntu 系统设置 root 用户密码 新安装的ubuntu没有设置 root 用户密码,打开终端,输入 sudo passwd root 执行命令后依次输入密码 2、虚拟机设置网络适配器 3、Ubuntu 系统下搭建 FTP 服务器 sudo apt-get update sudo apt-get install vsftpd sudo apt-get install vim…...

【NLP】关于参数do_sample的解释

在自然语言处理&#xff08;NLP&#xff09;领域&#xff0c;特别是在使用神经网络模型进行文本生成时&#xff0c;do_sample是一个常见的参数&#xff0c;用于控制模型生成文本的方式。具体来说&#xff0c;do_sample参数决定模型是否采用随机采样&#xff08;sampling&#x…...

Vbox虚拟机+Ubuntu motest测试drm

1. 效果演示 大家做学习drm的时候&#xff0c;没有硬件测试平台不方便测试&#xff0c;这里给大家演示下如何基于Vbox虚拟机Ubuntu测试drm的一些功能,先看下演示视频。 没有光标测试: demo_vwmfgx_test_drm 带有光标测试: demo_vwmfgx_drm_with_cursor 可以看到&#xff0c;有…...

ArcGIS Pro SDK (九)几何 15 转换

ArcGIS Pro SDK &#xff08;九&#xff09;几何 15 转换 文章目录 ArcGIS Pro SDK &#xff08;九&#xff09;几何 15 转换1 创建地理转换2 创建复合地理变换3 创建投影转换4 创建高压基准变换5 创建复合高压基准变换6 决定转换7 地图点 - 地理坐标字符串转换 环境&#xff1…...

Spring IOC DI --- 认识IOC DI

T04BF &#x1f44b;专栏: 算法|JAVA|MySQL|C语言 &#x1faf5; 今天你敲代码了吗 文章目录 认识Ioc & DIIoc是什么?DI是什么? 认识Ioc & DI 我们知道,Spring 是一个开源框架,让我们的开发更加简单.但是更加具体来说,实际上Spring 是包含了众多工具方法的Ioc容器 …...

常用的python程序汇总——入门级

只用于记录最近的一些日常程序。 目录 前言 一、文件和目录管理 1.读取文件结构 读取所有文件夹和文件 读取到N级子文件夹和文件 只读取到N级子文件夹 2.遍历文件并处理&#xff08;复制、删除&#xff09; 说明&#xff1a; 二、数据分析和处理 三、数据可视化 四、…...

被问到MQ消息已丢失,该如何处理?

在分布式系统中&#xff0c;消息中间件&#xff08;如 RabbitMQ、RocketMQ、Kafka、Pulsar 等&#xff09;扮演着关键角色&#xff0c;用于解耦生产者和消费者&#xff0c;并确保数据传输的可靠性和顺序性。尽管我们通常会采取多种措施来防止消息丢失&#xff0c;如消息持久化、…...

【大模型RAG】拍照搜题技术架构速览:三层管道、两级检索、兜底大模型

摘要 拍照搜题系统采用“三层管道&#xff08;多模态 OCR → 语义检索 → 答案渲染&#xff09;、两级检索&#xff08;倒排 BM25 向量 HNSW&#xff09;并以大语言模型兜底”的整体框架&#xff1a; 多模态 OCR 层 将题目图片经过超分、去噪、倾斜校正后&#xff0c;分别用…...

【杂谈】-递归进化:人工智能的自我改进与监管挑战

递归进化&#xff1a;人工智能的自我改进与监管挑战 文章目录 递归进化&#xff1a;人工智能的自我改进与监管挑战1、自我改进型人工智能的崛起2、人工智能如何挑战人类监管&#xff1f;3、确保人工智能受控的策略4、人类在人工智能发展中的角色5、平衡自主性与控制力6、总结与…...

脑机新手指南(八):OpenBCI_GUI:从环境搭建到数据可视化(下)

一、数据处理与分析实战 &#xff08;一&#xff09;实时滤波与参数调整 基础滤波操作 60Hz 工频滤波&#xff1a;勾选界面右侧 “60Hz” 复选框&#xff0c;可有效抑制电网干扰&#xff08;适用于北美地区&#xff0c;欧洲用户可调整为 50Hz&#xff09;。 平滑处理&…...

Keil 中设置 STM32 Flash 和 RAM 地址详解

文章目录 Keil 中设置 STM32 Flash 和 RAM 地址详解一、Flash 和 RAM 配置界面(Target 选项卡)1. IROM1(用于配置 Flash)2. IRAM1(用于配置 RAM)二、链接器设置界面(Linker 选项卡)1. 勾选“Use Memory Layout from Target Dialog”2. 查看链接器参数(如果没有勾选上面…...

Cloudflare 从 Nginx 到 Pingora:性能、效率与安全的全面升级

在互联网的快速发展中&#xff0c;高性能、高效率和高安全性的网络服务成为了各大互联网基础设施提供商的核心追求。Cloudflare 作为全球领先的互联网安全和基础设施公司&#xff0c;近期做出了一个重大技术决策&#xff1a;弃用长期使用的 Nginx&#xff0c;转而采用其内部开发…...

【git】把本地更改提交远程新分支feature_g

创建并切换新分支 git checkout -b feature_g 添加并提交更改 git add . git commit -m “实现图片上传功能” 推送到远程 git push -u origin feature_g...

多模态大语言模型arxiv论文略读(108)

CROME: Cross-Modal Adapters for Efficient Multimodal LLM ➡️ 论文标题&#xff1a;CROME: Cross-Modal Adapters for Efficient Multimodal LLM ➡️ 论文作者&#xff1a;Sayna Ebrahimi, Sercan O. Arik, Tejas Nama, Tomas Pfister ➡️ 研究机构: Google Cloud AI Re…...

短视频矩阵系统文案创作功能开发实践,定制化开发

在短视频行业迅猛发展的当下&#xff0c;企业和个人创作者为了扩大影响力、提升传播效果&#xff0c;纷纷采用短视频矩阵运营策略&#xff0c;同时管理多个平台、多个账号的内容发布。然而&#xff0c;频繁的文案创作需求让运营者疲于应对&#xff0c;如何高效产出高质量文案成…...

Go 并发编程基础:通道(Channel)的使用

在 Go 中&#xff0c;Channel 是 Goroutine 之间通信的核心机制。它提供了一个线程安全的通信方式&#xff0c;用于在多个 Goroutine 之间传递数据&#xff0c;从而实现高效的并发编程。 本章将介绍 Channel 的基本概念、用法、缓冲、关闭机制以及 select 的使用。 一、Channel…...

Vite中定义@软链接

在webpack中可以直接通过符号表示src路径&#xff0c;但是vite中默认不可以。 如何实现&#xff1a; vite中提供了resolve.alias&#xff1a;通过别名在指向一个具体的路径 在vite.config.js中 import { join } from pathexport default defineConfig({plugins: [vue()],//…...