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

51c嵌入式~继电器~合集1

我自己的原文哦~     https://blog.51cto.com/whaosoft/13775821

一、继电器应用细节

   继电器的应用,相信大家都知道,在电路中只要给它供电、断电也就可以工作了。本文讨论它的应用细节。

现在流行的接法

 图中,继电器的线圈经过Q1作为开关,使其导通与断开。D1作为续流,消耗线圈中的能量。

继电器的特点

  • 吸合电流大于释放电流

  • 保持电流小于吸合电流、大于释放电流

    以上两点均为继电器的“通病”,大家可以做一下实验,或看一看说明书。

流行电路的优点及缺点

    大家知道,继电器的线圈相当于电感,它的电流不能突变。在释放时,Q1截止瞬间,线圈将仍保持原来的电流大小,如果不接入D1这个二极管,产生的电压-----理论上是无穷大的(在外电路负载为无穷大时),流行电路中的D1的接入,给线圈中的能量提供了释放的通道。

    然而,假如(理论上)二极管为理想的,即它只单向导通而没有任何功率消耗,那么,在继电器释放时,线圈中的电流将一直保持吸合时的最大电流(同时假如线圈为理想的),这种情况将使继电器无法释放。

    实际中的二极管及线圈都不是理想的,所以,它是可以释放的。继电器的吸合到释放是由线圈中的电流决定的,如果二极管及线圈的等效电阻(直流)很小,那么它的释放时间将很长,反之,则较短。

    由此看,流行电路的优点是提供了Q1截止时的能量释放通道;其缺点是,释放时间还有进一步缩短的可能。

其它接法

    曾见过象下图中电路,也曾见过象下图中没有二极管的接法,这些接法都考虑到了抑制开关Q1截止时的反向电压,但没有考虑到释放时间问题。

建议接法

  • 加入电阻R1,使能量释放快一些。

 上图中,线圈在Q1关断时,能量主要消耗在R1上,使继电器可以快速降到释放电流。

    R1的选择,由Q1的最高反压、线圈工作电流两者决定,电阻越大,释放时间越短。

  • 减小继电器保持时的功耗

    大家知道,继电器吸合时需要较大的电流,而保持吸合状态则不需要和吸合时的电流一样。

    下图接入R1及C1将明显减小继电器的保持功耗。在继电器吸合前,C1已充电至供电电压,吸合的瞬间将由C1为继电器供电,以保障吸合所需的大电流。当吸合后,供给线圈的电流来自R1,它将电流限制到较小状态。

二、继电器介绍

1. 什么是继电器?

我们以在工业应用中经常使用的插入式“继电器”为例。即继电器被“插入”在两个系统之间。

  • 工作原理:

本文讨论的是继电器工作速度。下图所示的硬件用于说明原理。

 1 :图片显示夹在 Millenium Slim PLC 和三相接触器之间的插入继电器

从左到右,我们看到一个 0.5A 断路器,端子块连接器,Crouzet 的可编程逻辑(PLC) 底座安装,控制继电器,浪涌抑制二极管加插座,和一个24VDC 的接触器(DPE09BL)。

技术小贴士 :关闭大型直流接触器或继电器可能是一个有压力的事。回想一下,线圈在磁场中储存能量。还记得电感器“想”保持电流恒定。其结果被称为感应踢脚(inductive kick ),在线圈断电的那一刻,电感器会做任何必要的事情来保持电流恒定。如果没有相关的保护,电压将上升到数百伏,造成电弧来维持电流。这将破坏任何用于控制线圈的半导体开关。浪涌抑制二极管通常被合并,以提供电流的替代路径。

下面,我们来看看打开关闭继电器开关,具体要多少时间?

2. 继电器测试电路 

首先,我们来搭建一个继电器打开关闭时间的测试电路。

硬件部分:

  • 一个工业继电器46.52加插座
  • 一个 Arduino Nano Every 来切换驱动
  • 一个 Digilent 示波器 ANALOG DISCOVERY
  • 探头 BNC 适配器
  • 10x 探头,允许测量高达 +/- 250 VDC的模拟电压

图2: 继电器打开关闭时间的测试电路

3. 继电器关闭时间测试

3.1 继电器关闭测试原理解析:

这个继电器驱动器看起来可能设计得有点复杂,但实际上高边驱动器Q2是必要的,它能把继电器接地。这样,我们就可以安装一个小值的分流电阻R5。因为这个电阻在接地位置,所以我们可以很容易地测量继电器电流,就像测量一个已知电阻上的小电压降一样。

电路的其他部分包括电平转换晶体管Q1,以及通过常闭(常闭)和常开(N.O.)指示LED来检测继电器状态的方式。

别忘了继电器线圈上的D1反馈二极管。当继电器关闭时,这个二极管可以保护晶体管Q2。这个二极管对继电器打开没有影响,但对继电器关闭有重要作用。

图3:继电器关闭测试原理图

技术小贴士:继电器常开 (N.O.) 与常闭 (N.C.) 触点的区别

如下图所示。左侧为常闭 (N.C.)型,右侧为常开 (N.O.).型。观察两种配置单线连接的区别。我们看到电线从N.C.(引脚12)移动到N.O.(引脚14)。

图4. 常开、常闭继电器实验示意图

图5.  Finder(46系列)继电器

3.2 测试结果:

结果如下图 所示。有三个面板:

  • 上面板:橙色曲线(CH 1)是Q2集电极处测得的继电器激活电压。蓝色曲线(CH 2)是R5分流电阻处测得的继电器电流。
  • 中面板:蓝色曲线(CH 2)是继电器常闭触点处测得的电压。
  • 下面板:蓝色曲线(CH 2)是继电器常开触点处测得的电压。

技术提示:Analog Discovery 3 作为双通道示波器运行。当配备 10 X探头时,它能够测量高达 +/- 250VDC 的信号。如果使用 4 通道示波器,则下图的复合图可以构建为单个屏幕截图。

图6. 继电器的激活波形,包括线圈的电流,常闭和常开触点电压

根据上图数据,我们观察到:

  • 电枢运动首次观察到在 4.7ms 时,常闭触点切换。
  • 从4.7ms 到 7.6ms 有 2.9ms 的飞行时间。在这个“飞行时间”中,常闭和常开触点都没有连接到电路。
  • 与常开触点的第一次接触发生在 7.6ms。
  • 从7.6ms 开始一直延伸到8.8 ms,触点反弹 1.2ms 。

除了这些触点的变化,继电器电流中有一个微妙的下降。这发生在电枢运动时。推测,继电器电感变化,因为电枢的铁板与线圈的金属芯有物理接触。线圈电感的突然变化扰乱了继电器电流的缓慢斜坡。注意,如果电枢对着线圈保持在位置上,这种扰动就不会发生。

4. 继电器打开测试

4.1 继电器打开测试原理解析:

和继电器开闭测试原理图稍微有一点不一样。对高侧驱动程序和R4 的位置有轻微的修改。将原来的 MPSA56 换成了电压更高的 2N5401 。这是必要的,因为当继电器停用时,我们将遇到更高的电压。R4 电阻移动,使其与反激二极管 D1 串联。

图7. 继电器打开测试原理图

技术小贴士 :你可能会反对在这种高压情况下使用 1N4001 二极管。毕竟继电器 K1 的感应反打会发展到近 100V。然而,在这种情况下,1N4001 二极管并没有受到压力,因为当继电器断电时,它会传导约 0.7VDC 的二极管降。在正向方向上,它将遇到一个 24VDC 。预期的电压和电流都在 1N4001 二极管的设计最大值之内。

  • 感应回击(Inductive Kick)和反激二极管

电感中的磁场会储存能量。当我们关闭晶体管Q2时,磁场会崩溃,从而在K1线圈上产生电压尖峰。如果我们把继电器(或更准确地说,是继电器内部的电感)想象成一个人,我们可以说电感在晶体管Q2关闭前后都试图保持电流恒定。

电感与“恒定电流”作用相关的特性会产生电压。如果不加以控制,这个电压会上升到几百伏甚至上千伏,以维持电流。过高的电压会破坏晶体管Q2,除非它被钳制住。

请注意,我们正在使用高边驱动器(Q2)来控制继电器。请花点时间观察这个电压尖峰的极性。许多读者可能会基于之前用低边NPN晶体管驱动的继电器实验,而假设这个尖峰是正的。但在这个例子中并非如此。相反,当Q2关闭时,在Q2集电极测得的电压会立即从24伏直流电压变为负电压。这个尖峰的幅度只受到电阻R4和二极管D4正向传导的限制。请参考上面电路图,确保你明白当Q2集电极变为负电时,二极管D4是正向偏置的。

  • R4短路时的结果

大多数系统都不会额外添加电阻R4,而是直接将续流二极管跨接在继电器线圈上。这种配置非常常见,比如这次实验用的工业继电器,就包含一个可选的二极管模块4,如下图所示。

图8. 实验中所用Finder继电器的续流二极管和LED指示模块

这个并联二极管使用起来既有效又简单。但遗憾的是,它会导致继电器打开速度变慢。这是因为继电器的打开速度与其电感时间常数有关,而电感时间常数由下面的公式决定:

其中,L是继电器线圈的电感,R是继电器内部电阻。与原始驱动电压(本例为24伏直流电压)相比,二极管实际上相当于短路。

回想一下你在学校学到的电容放电电路,当时遇到的初始充电问题,能量就是通过电阻耗散的。这里的情况与之类似。能量储存在电感器的磁场中,当与电源断开时,端子就会短路,所有能量都在电感器内部电阻和少量二极管中消耗掉。

结果如下图所示,包含三个面板:

  • 上面板:橙色轨迹(CH 1)是Q2集电极测得的继电器激活电压。蓝色轨迹(CH 2)是跨接在R5分流电阻上测得的继电器电流。
  • 中面板:蓝色轨迹(CH 2)是继电器常闭触点测得的电压。这个常闭触点正在由断开状态转为关闭状态。
  • 下面板:蓝色轨迹(CH 2)是继电器常开触点测得的电压。

图9. 继电器的断电波形,包括线圈电流、常闭和常开触点

根据上图的数据,我们观察到:

  • 当常开触点切换时,首先在8毫秒观察到衔铁运动。
  • 从8毫秒到9.5毫秒是1.5毫秒的“飞行时间”。在这段时间里,无论是常开触点还是常闭触点都没有与电路连接。
  • 在9.5毫秒时,首先与常闭触点接触。
  • 从9.5毫秒开始,触点弹跳持续4.5毫秒,直到14毫秒。

前面文章中提到的电流中的摆动仍然存在。这种飞行时间内的变化是由于衔铁的金属板离开电感器的中央铁芯时电感发生变化造成的。  

与前面的文章相比,带有并联续流二极管的继电器打开速度较慢。在这个L/R系统中,继电器从激活到最终弹跳需要8.8毫秒,我们定义这个时间为t0。它关闭需要14毫秒。

5. 经验教训

我们是不是走进了死胡同?

工程师们的集体智慧告诉我们,继电器更快地断电是一个值得追求的目标。工作原理是线圈能量耗散会导致触点更快移动。这应该能延长继电器的使用寿命,因为更快移动的触点能更好地熄灭负载下触点打开时自然形成的电弧。

不幸的是,这个有限的实验并不支持这个理论。相反,它表明继电器的飞行时间与L/nR时间常数关系不大。回想一下,我们定义飞行时间为双极触点的时间,即衔铁在运动但没有与常闭或常开触点连接的时间。

这种矛盾的想法也得到了接触弹跳时间和弹跳特征的支持。就像一个篮球,移动更快的触点不是有更多的动能,导致它跳得更高,持续弹跳更长时间吗?但看起来并不是这样。

三、继电器为什么两端要并联二极管?

01 电感和电感器

    电感(inductor)是一个绕在磁性材料上的导线线圈(coil),电感通以电流时产生磁场(magnetic field),磁场很懒,不喜欢变化,结果呢,电感就成为阻碍其电流(current)变化的元件。

    如果流过电感的电流恒定,电感就很高兴,不用对电子流出任何力(force),此时的电感线圈就是普通导线。

    如果我们想中断电感中的电流,电感就会出力(电动势,EMF),试图维持其中电流。如果电感自身构成回路,电路中又没有电阻(resistance),那么理论上,电子流永远在循环流动。但是,除非我们采用超导体,否则所有的导线都对电流有阻碍作用,最终电感电流将衰减(decay)为零,且电阻越大,衰减越快。不过,感抗(inductance)越大,衰减则越慢。如图1所示。

图1 中断电感电流时储存的能量释放  

    一旦电流变为零,由于电感总是试图阻碍电流变化,此时它又想维持电路电流为零。

    所以,当我们把电感接入电路中时,电感马上出力,试图阻碍电流增加,但是电流还是慢慢在增加。电感感抗越大,电流增大的速度越慢。当电流不再增加而到达稳态值后,电感又乐不可支了,不用再出力了!如图2所示。

图2 电感电路ON

    当我们切断电感中的电流时,电感又出力想维持稳态电流值。如果此时电感与一个电阻相连,则电阻两端的电压是其电阻值与电流的乘积。由于电感最大的本事就是阻止电流的突变,因此,不管电阻值是多少,在电路被切断后的瞬间,电感中的电流与切断前是一样的。如果电阻值很大,则电流与电阻的乘积也非常大,结果,电感上会产生瞬时的高电压。如图3所示。

图3 电感电路OFF

    由于电感中的电流不能突变,如果要切断电感电路,我们总是需要提供电感电流释放回路。假如没有提供释放回路,电感电流就会自寻通道,比如,通过空气释放,通过开关触点或者其他不应导电的元件释放。短时间的高电压将对电路产生极大的破坏。 

    电感器能够产生高电压的能力在电源设计时非常有用,但也意味着,在没有准备好释放通路时不可以随便切断电感电路。

02 续流二极管

    从图中可以看出断电时EMF产生的瞬时高压(数倍甚至数十倍于电源电压)如果无处释放,会对电路的其他元件造成损害,而如果提供释放回路,又怎么能适时接通呢?即电感电路接通时,释放回路不通,而电感电路断开时释放回路就接通。如图4所示。

图4 释放回路接通的时机

    电阻是双向导电的,而二极管就具有单向导电特性。因此我们采用如图5所示的电路,图中并联在电感两端的二极管称为续流二极管(flyback diode或flywheel diode)。

图5 续流二极管电路

03 续流二极管的作用

    续流二极管通常和储能元件一起使用,其作用是防止电路中电压电流的突变,为反向电动势提供耗电通路。电感线圈可以经过它给负载提供持续的电流,以免负载电流突变,起到平滑电流的作用!在开关电源中,就能见到一个由二极管和电阻串连起来构成的的续流电路。这个电路与变压器原边并联。当开关管关断时,续流电路可以释放掉变压器线圈中储存的能量。

续流二极管工作原理图

04 BUCK电路中续流二极管的选择

BUCK电路图

    BUCK电路中一般选择快速恢复二极管或者肖特基二极管来作为"续流二极管",它在电路中一般用来保护元件不被感应电压击穿或烧坏,以并联的方式接到产生感应电动势的元件两端,并与其形成回路,使其产生的高电动势在回路以续电流方式消耗,从而起到保护电路中的元件不被损坏的作用。

    理论上二极管选用至少2倍于最大电流,实际使用时,由于二极管的瞬间抗过载能力较强,使用最大电流50A的超快速二极管也行,加上合理的散热片,实际使用中一般少有损坏。导通时的总阻抗是 电机内阻+驱动管等效内阻。续流时的总阻抗是 电机内阻+续流二极管等效内阻。一般情况下,由于续流二极管的交流等效内阻要比驱动三极管的交流等效内阻小。所以常规设计,一般续流二极管的最大电流,取二倍于电机最大电流。

    瞬态电流只是一瞬间,面接触型二极管的抗过载能力还是可以的,只要不过压即可,必要时串个小阻值电阻进行限流。续流二极管是为了保护开关器件,续流时的瞬态电流跟电机的工作电压和绕组内阻有关,跟电机功率无关,真要计算的话,瞬态电流的峰值是反向自感电压减去二极管结压降再除以回路电阻。这里之所以还要用一定电流以上的二极管是因为低压大功率电机的绕组内阻较低,所以瞬态电流会比较大,串个小阻值电阻就可以抑制峰值电流,因此造成的开关管瞬态加压的些许上升因为工作电压本来就不高,所以根本不必担心,现在的晶体管耐压至少都在50V以上。

05 继电器续流二极管的选择

  继电器并联的二极管,不是什么BUCK电路中的续流二极管,由于继电器线圈的是感性负载,作用是吸收驱动三极管在断开时继电器线圈的自感电压,根据楞次定律,电感上的电流在减小时,会产生一个自感电压,这个电压的方向是正电源端为负,驱动管集电极为正,这个电压会击穿三极管,所以在继电器上并联一个吸收二极管,吸收这个自感电压。

    第一,电路ms级以下时间参数对机械触点影响给予忽略

    第二,即便是1N4000反向恢复时间也远低于ms,正向导通时间更小

    第三,驱动管极间电容,继电器寄生电容足以使高速二极管无用武之地

    第四,电感储能的消耗主要依靠饶组电阻,一般处于过阻尼状态

    对于图中的开关,我们经常使用晶体管。如图所示,用一个晶体管TR1去控制继电器线圈(relay coil)的导通,继电器触点再去控制负载电路。

继电器线圈的续流电路

    二极管负极接直流电源正极,继电器线圈断电时,二极管因势利导,为线圈高电压提供释放途径。如果没有续流二极管,晶体管断开时在线圈两端产生的高电压将对晶体管电路造成极大的损坏,此时续流二极管起到了保护作用。

    为此,经常将二极管直接和继电器做在一起,如下图所示。

06 触点的保护电路一

    般感性负载比电阻性负载更容易使触点受到损作,如果使用适当的保护电路可以使感性负载对触点的影响与电阻性负载基本相当,但请注意如果不正确使用,可能会产生反效果。

    下表是触点保护电路的代表性例子。

   注意请避免下表中所列的触点保护电路。

07 续流二极管的电路

 续流二极管应该加到感性负载的两端,这里说的感性,就是具有电感特性,而不是性感。感性负载的特性就是电流不能突变,也就是说,不可能一下子就没了,也不可能一下子就有了,需要有个过程。

    常见的感性负载有继电器线圈、电磁阀。

08 为什么要加续流二极管

    感性负载会产生感应电动势,感应电动势的方向和加在它两端的电压方向是相反的,当感性负载突然断电,感应电动势还在,由于感应电动势与原来的电压方向相反,在没有断电的时候,还有原来的电压与之抵消,断电后就没有与感应电动势抵消的电压了,这个感应电动势就有可能造成电路中的元器件损坏,加个二极管以后,这个二极管正好与感性负载形成了一个闭合回路,回路中的电流方向正好和二极管是正向导通的,就可以释放感应电动势的电流了。

09 可以作为续流二极管的型号

    普通二极管如1N4007就可以作为续流二极管,不过,最好是用快速恢复二极管或者肖特基二极管。

    快速恢复二极管可以用:FR107、1N4148

    肖特基二极管可以用:1N5819

10 看二极管datasheet的什么参数

    二极管的耐压,就是反向能加多大电压,你可以看到,续流二极管在电路中是反向连接的。比如你的电路中,线圈加的是12V,那么你的二极管方向耐压值就必须要大于12V才行。不过一般的二极管反向耐压值都非常高。

    二极管的最大正向导通电流,比如1N4148最大正向导通电流是150mA,那么如果你的线圈电流太大,就会烧坏续流二极管。所以1N4148只适合小电流的线圈保护,比如5V的继电器。

11 实践经验

    凡是电路中的继电器线圈两端和电磁阀接口两端都要接续流二极管。接法如上面的图,二极管的负极接线圈的正极,二极管的正极接线圈的负极。不过,你要清楚,续流二极管并不是利用二极管的反方向耐压特性,而是利用二极管的单方向正向导通特性。

    如果懒得看二极管的datasheet参数,就用FR107吧,通吃一般应用。

12 实例

相关文章:

51c嵌入式~继电器~合集1

我自己的原文哦~ https://blog.51cto.com/whaosoft/13775821 一、继电器应用细节 继电器的应用,相信大家都知道,在电路中只要给它供电、断电也就可以工作了。本文讨论它的应用细节。 现在流行的接法 图中,继电器的线圈经过Q1作为开关&am…...

舵机:机器人领域的“关节革命者”

机器人的技术,每一个细微的进步都可能引领一场行业变革。而在这场变革中,舵机作为机器人关节的核心部件,正悄然上演着一场革命性的应用风暴。从简单的关节运动到复杂的姿态控制,舵机以其卓越的性能和无限的可能,重新定…...

飞书集成衡石ChatBot实战:如何10分钟搭建一个业务数据问答机器人?

让数据查询像聊天一样简单 在快节奏的业务环境中,数据查询的实时性和便捷性至关重要。传统BI工具需要复杂的操作,而衡石ChatBot结合飞书,让业务人员只需在聊天窗口提问,就能立刻获取数据反馈,真正实现“零门槛”数据分…...

高并发环境下超发现象的详细分析,包含场景示例、影响分析及解决方案(悲观锁、乐观锁、分布式锁)

以下是针对高并发环境下超发现象的详细分析,包含场景示例、影响分析及解决方案: 高并发下的超发详解 1. 超发现象定义 超发(Over-issuance)指在并发操作中,系统实际发放的资源(如商品库存)超过…...

Git 分支整合策略:Cherry-pick、Merge、Rebase 三者之间对比

Git 分支整合策略详解:Cherry-pick、Merge、Rebase 在日常的 Git 多分支协作开发中,代码合并是常见操作。Git 中主要提供以下三种方式来合并或迁移分支的提交: Cherry-pick:精确挑选部分提交复制到当前分支;Merge&am…...

嵌入式八股---计算机网络篇

前言 这块主要是结合着LWIP去理解计算机网络中常见的面试题 OSI四层/五层/七层模型 OSI分层(7层):物理层、数据链路层、网络层、传输层、会话层(http)、表示层(加密)、应用层。 TCP/IP分层(4层):网络接口层…...

使用 3D Layout 和 Icepak 进行 PCB、DCIR 和热分析

在本教程中,您将学习如何使用 3D Layout 执行 DCIR,然后使用功率损耗数据执行热分析。热分析将使用电子桌面 Icepak 进行。SIwave 及其嵌入式 icepak 可用于执行相同的分析,但有一个例外。电子桌面 Icepak 是一款功能齐全的 3D 工具。用户可以…...

UE5 Windows游戏窗口置顶

参考资料:UE5 UE4 项目设置全局置顶_ue4运行设置置顶-CSDN博客 修改完build.cs后,关掉重新生成解决方案。(不然可能编译报错,在这卡了半个小时) 不知道怎么用C的,可以用这个 Topmost - Keep Editor/Game w…...

【Linux】进程管理

一、程序与进程区别 1.程序: 存放在磁盘文件可执行文件(静态存在) 特点 静态性:程序是静态的,它只是一组指令的集合,在未被执行时,不会占用计算机的运行资源,也不会产生任何实际的…...

Android Studio PNG转SVG方法总结

在 Android Studio 中,将 PNG 位图转换为 SVG 矢量图并非直接内置的功能,但你可以通过以下步骤实现目标: 方法 1:使用在线转换工具 访问在线转换网站 推荐工具: CloudConvert Vector Magic OnlineConvertFree 上传…...

第6篇:Linux程序访问控制FPGA端LEDR<四>

Q:如何设计.c程序代码控制FPGA端外设LEDR动态显示? A:我们来设计程序实现简易计数器:将上一期点亮LEDR的程序代码*LEDR_ptr 0x2aa 改为 *LEDR_ptr *LEDR_ptr 1,读取LEDR端口的data寄存器,将寄存器值递增…...

DP扰码模块verilog仿真

在DisplayPort 1.4协议中,为了减少EMI,在8B/10B编码之前,需进行扰码Scramble。扰码用到了16-bit LFSR,表达式如下。 LFSR每移位8个bit后,用最高有效 8 位以相反的位顺序与一个字节数据进行异或从而实现数据加扰/解扰。…...

协作焊接机器人的应用场景

协作焊接机器人凭借其灵活性、安全性和高效性,在多个领域有着广泛的应用场景,以下是一些主要的方面: 汽车制造 车身焊接:在汽车车身生产线上,协作焊接机器人可与工人协同工作,完成车身各部件的焊接任务。例…...

深入解析计算机操作系统的底层架构与核心模块功能

深入解析计算机操作系统的底层架构与核心模块功能 一、操作系统底层架构总览 操作系统处于计算机系统的核心地位,是计算机硬件与用户之间的关键纽带,承担着资源管理者的重要角色。它负责统筹管理计算机的各类资源,如CPU、内存、存储设备以及…...

Elasticsearch 官网阅读学习笔记01

Elasticsearch 官网阅读学习笔记01 什么是 Elasticsearch? Elasticsearch 是位于 Elastic Stack 核心的分布式搜索和分析引擎。Elasticsearch 可为所有类型的数据提供近乎实时的搜索和分析。无论您拥有的是结构化或非结构化文本、数值数据还是地理空间数据 Elastic…...

玩转Docker | 使用Docker搭建Van-Nav导航站

玩转Docker | 使用Docker搭建Van-Nav导航站 前言一、Van-Nav介绍van-nav 简介主要特点二、系统要求环境要求环境检查Docker版本检查检查操作系统版本三、部署Van-Nav服务下载镜像创建容器检查容器状态检查服务端口安全设置四、访问Van-Nav应用访问Van-Nav首页登录后台管理五、添…...

若依 前后端部署

后端:直接把代码从gitee上拉去到本地目录 (https://gitee.com/y_project/RuoYi-Vue ) 注意下redis连接时password改auth 后端启动成功 前端:运行前首先确保安装了node环境,随后执行: !!一定要用管理员权限…...

笔记:头文件与静态库的使用及组织方式

笔记:头文件与静态库的使用及组织方式 1. 头文件的作用 接口声明:提供函数、类、变量等标识符的声明,供其他模块调用。编译依赖:编译器需要头文件来验证函数调用和类型匹配。避免重复定义:通过包含保护(如…...

PostgreSQL-常用命令

PostgreSQL 提供了丰富的命令行工具和 SQL 命令,用于管理和操作数据库。以下是一些常用的命令和操作: 1. 数据库管理 创建数据库 CREATE DATABASE dbname; 删除数据库 DROP DATABASE dbname; 列出所有数据库 \l SELECT datname FROM pg_database;…...

如何在 Postman(测试工具) 中实现 Cookie 持久化并保持同一会话

在开发基于 Spring Boot 的 Web 应用时,使用 Session 存储验证码等敏感信息是常见的做法。然而,在调试接口时,你可能会遇到这样一个问题:第一次请求接口时存入的验证码在第二次请求时无法获取,原因往往是两个请求所使用…...

粘性定位(position:sticky)——微信小程序学习笔记

1. 简介 CSS 中的粘性定位(Sticky positioning)是一种特殊的定位方式,它可以使元素在滚动时保持在视窗的特定位置,类似于相对定位(relative),但当页面滚动到元素的位置时,它会表现得…...

谷歌浏览器极速安装指南

目录 📋 准备工作 步骤一:访问官网 🌐 步骤二:获取安装包 ⬇️ 步骤三:一键安装 🖱️ 步骤四:首次启动设置 ⚙️ 步骤五:开始探索! 🌟 💬 …...

【2024年最新IEEE Trans】模糊斜率熵Fuzzy Slope entropy及5种多尺度,应用于状态识别、故障诊断!

引言 2024年11月,研究者在测量领域国际顶级期刊《IEEE Transactions on Instrumentation and Measurement》(IF 5.6,JCR 1区,中科院二区)上发表科学研究成果,以“Optimized Fuzzy Slope Entropy: A Comple…...

无人机击落技术难点与要点分析!

一、技术难点 1. 目标探测与识别 小型化和低空飞行:现代无人机体积小、飞行高度低(尤其在城市或复杂地形中),雷达和光学传感器难以有效探测。 隐身技术:部分高端无人机采用吸波材料或低可探测设计,进…...

Flink的数据流图中的数据通道 StreamEdge 详解

本文从基础原理到代码层面逐步解释 Flink 的数据通道 StreamEdge,尽量让初学者也能理解。 主要思路:从概念开始,逐步深入到实现细节,并结合伪代码来逐步推导。 第一步:什么是 StreamEdge? StreamEdge 是 F…...

OpenCV 图形API(25)图像滤波-----均值滤波(模糊处理)函数blur()

操作系统:ubuntu22.04 OpenCV版本:OpenCV4.9 IDE:Visual Studio Code 编程语言:C11 算法描述 使用归一化的方框滤波器模糊图像。 该函数使用以下核来平滑图像: K 1 k s i z e . w i d t h k s i z e . h e i g h t [ 1 1 ⋯ …...

基于频率约束条件的最小惯量需求评估,包括频率变化率ROCOF约束和频率最低点约束matlab/simulink

基于频率约束条件的最小惯量评估,包括频率变化率ROCOF约束和频率最低点约束matlab/simulink 1建立了含新能源调频的频域仿真传函模型,虚拟惯量下垂控制 2基于构建的模型,考虑了不同调频系数,不同扰动情况下的系统最小惯量需求...

.pdf,.docx,.doc文档在一页纸上显示4页内容(详细步骤)

生活中常见一页纸上显示4页内容,我们熟知的是打印文件时,选择“每页4版”,但如果也是为了方便阅读,想要设置成一张纸上显示4页内容,又该怎么做呢?下面分享.docx和.pdf文档,一张纸上显示4页内容的…...

基于CNN-BiLSTM-GRU的深度Q网络(Deep Q-Network,DQN)求解移动机器人路径规划,MATLAB代码

一、深度Q网络(Deep Q-Network,DQN)介绍 1、背景与动机 深度Q网络(DQN)是深度强化学习领域的里程碑算法,由DeepMind于2013年提出。它首次在 Atari 2600 游戏上实现了超越人类的表现,解决了传统…...

高并发场景下的 Java 性能优化

在当今数字化时代,高并发场景已成为众多 Java 应用面临的常态,如电商大促、在线直播等活动期间,系统需承受巨大的访问压力。因此,Java 性能优化在高并发场景下显得尤为重要。传统的人工编写代码优化方式不仅耗时费力,还…...

Java 设计模式:观察者模式详解

Java 设计模式:观察者模式详解 观察者模式(Observer Pattern)是一种行为型设计模式,它定义了对象之间的一对多依赖关系,当一个对象的状态发生变化时,所有依赖它的对象都会收到通知并自动更新。这种模式广泛…...

Linux vagrant 导入Centos

前言 vagrant 导入centos 虚拟机 前提要求 安装 virtualbox 和vagrant<vagrant-disksize> (Linux 方式 Windows 方式) 创建一键部署centos 虚拟机 /opt/vagrant 安装目录/opt/VirtualBox 安装目录/opt/centos8/Vagrantfile &#xff08;可配置网络IP&#xff0c;内存…...

linux Ubuntu 如何删除文件,错误删除后怎么办?

一、删除文件的常用方法 命令行删除 普通删除&#xff1a;rm 文件名 &#xff08;示例&#xff1a;rm old_file.txt&#xff09; 强制删除&#xff08;无提示&#xff09;&#xff1a;rm -f 文件名 &#xff08;示例&#xff1a;rm -f locked_file.txt&#xff09; 删除目录…...

【前端】事件循环专题

引入 以下情况是为什么呢&#xff1f; //q1 for (var i 0; i < 3; i) {setTimeout(() > {console.log(i);}, 1000); } // console: // 3 // 3 // 3//q2 let name;setTimeout(() > {name name;console.log(name); }, 1000);if (name) {name newname;console.log(n…...

3DMAX笔记-UV知识点和烘焙步骤

1. 在展UV时&#xff0c;如何点击模型&#xff0c;就能选中所有这个模型的uv 2. 分多张UV时&#xff0c;不同的UV的可以设置为不同的颜色&#xff0c;然后可以通过颜色进行筛选。 3. 烘焙步骤 摆放完UV后&#xff0c;要另存为一份文件&#xff0c;留作备份 将模型部件全部分成…...

【深度学习】PyTorch实现VGG16模型及网络层数学原理

一、Demo概述 代码已附在文末 1.1 代码功能 ✅ 实现VGG16网络结构✅ 在CIFAR10数据集上训练分类模型 1.2 环境配置 详见【深度学习】Windows系统Anaconda CUDA cuDNN Pytorch环境配置 二、各网络层概念 2.1 卷积层&#xff08;nn.Conv2d&#xff09; nn.Conv2d(in_cha…...

Spring 事务

29.Spring管理事务的方式有几种&#xff1f; Spring中的事务分为编程式事务和声明式事务。 编程式事务是在代码中硬编码&#xff0c;通过 TransactionTemplate或者 TransactionManager 手动管理事务&#xff0c;事务范围过大会出现事务未提交导致超时&#xff0c;比较适合分布…...

GPT - TransformerDecoderBlock

本节代码定义了一个 TransformerDecoderBlock 类&#xff0c;它是 Transformer 架构中解码器的一个基本模块。这个模块包含了多头自注意力&#xff08;Multi-Head Attention&#xff09;、前馈网络&#xff08;Feed-Forward Network, FFN&#xff09;和层归一化&#xff08;Lay…...

【C语言】预处理(预编译)(C语言完结篇)

一、预定义符号 前面我们学习了C语言的编译和链接。 在C语言中设置了一些预定义符号&#xff0c;其可以直接使用&#xff0c;预定义符号也是在预处理期间处理的。 如下&#xff1a; 可以看到上面的预定义符号&#xff0c;其都有两个短下划线&#xff0c;要注意的是&#xff…...

【Kubernetes】Kubernetes 如何进行日志管理?Fluentd / Loki / ELK 适用于什么场景?

由于 Kubernetes 运行在容器化的环境中&#xff0c;应用程序和系统日志通常分布在多个容器和节点上&#xff0c;传统的日志管理方法&#xff08;例如直接访问每个节点的日志文件&#xff09;在 Kubernetes 中不适用。 因此&#xff0c;Kubernetes 引入了集中式日志管理方案&am…...

从 SaaS 到 MCP:构建 AI Agent 生态的标准化服务升级之路

从 SaaS 到 MCP&#xff1a;构建 AI Agent 生态的标准化服务升级之路 —— 以数据连接器 dslink 的技术改造实践为例 引言&#xff1a;AI Agent 时代的 SaaS 服务范式转型 在生成式 AI 爆发式发展的 2025 年&#xff0c;AI Agent 已从概念验证走向企业级应用落地&#xff0c;…...

Linux 入门五:Makefile—— 从手动编译到工程自动化的蜕变

一、概述&#xff1a;Makefile—— 工程编译的 “智能指挥官” 1. 为什么需要 Makefile&#xff1f; 手动编译的痛点&#xff1a;当工程包含数十个源文件时&#xff0c;每次修改都需重复输入冗长的编译命令&#xff08;如gcc file1.c file2.c -o app&#xff09;&#xff0c;…...

CST入门教程:如何从SYZ参数提取电容C和电感L --- 双端口

上期解释了单端口计算S参数&#xff0c;然后后处理很容易提取L或C&#xff0c;已经满足基本需求。 这期我们看复杂一点的情况&#xff0c;电路中放两个端口&#xff0c;比如S2P: 或集总电路&#xff1a; 或导入SPICE&#xff1a; 两个端口的Y和Z参数就是四个量了&#xff0c;Y…...

桌面版本及服务器版本怎么查看网络源软件包的url下载路径

服务器版本&#xff1a; ### 利用yumdownloader工具 - 首先安装yum-utils软件包&#xff0c;它包含yumdownloader工具。执行命令&#xff1a; bash yum install yum-utils - 安装完成后&#xff0c;使用yumdownloader --urls <package_name>命令来获取软件包的下载UR…...

汽车零部件产线节能提效,工业网关解锁数据采集 “密码”

在汽车零部件生产领域&#xff0c;高效的生产监控与精准的数据采集至关重要。工业网关作为智能工厂的关键枢纽&#xff0c;正发挥着不可替代的作用&#xff0c;助力产线实现电表等多种仪表数据的采集与高效监控。 背景简析 汽车零部件产线涉及众多设备与环节&#xff0c;各类电…...

量化策略分类、优劣势及对抗风险解析

一、常见量化策略分类及优劣势 1. 趋势跟踪策略&#xff08;Trend Following&#xff09; 原理&#xff1a;通过捕捉价格趋势&#xff08;如均线突破、动量指标&#xff09;进行交易。 代表模型&#xff1a;海龟交易法则、Dual Thrust。 优势&#xff1a; 在强趋势市场&am…...

Linux调试工具——gdb/cgdb

&#x1f4dd;前言&#xff1a; 这篇文章我们来讲讲Linux调试工具——gdb/cgdb&#xff1a; &#x1f3ac;个人简介&#xff1a;努力学习ing &#x1f4cb;个人专栏&#xff1a;Linux &#x1f380;CSDN主页 愚润求学 &#x1f304;其他专栏&#xff1a;C学习笔记&#xff0c;C…...

SQLite + Redis = Redka

Redka 是一个基于 SQLite 实现的 Redis 替代产品&#xff0c;实现了 Redis 的核心功能&#xff0c;并且完全兼容 Redis API。它可以用于轻量级缓存、嵌入式系统、快速原型开发以及需要事务 ACID 特性的键值操作等场景。 功能特性 Redka 的主要特点包括&#xff1a; 使用 SQLi…...

使用 Terraform 部署 Azure landing zone

Azure 登陆区是架构完善的环境&#xff0c;遵循 Microsoft 针对 Azure 云架构的最佳实践。它们为团队运行工作负载提供了良好管理的基础&#xff0c;从而提供了可扩展性并促进了云的采用。 如果您有兴趣部署 Azure 登陆区&#xff0c;Terraform 是一个不错的选择。本教程概述的…...

【搭建博客网站】老旧笔记本“零成本逆袭”

写在前面&#xff1a;本博客仅作记录学习之用&#xff0c;部分图片来自网络&#xff0c;如需引用请注明出处&#xff0c;同时如有侵犯您的权益&#xff0c;请联系删除&#xff01; 文章目录 前言博客网站搭建免费域名本地主机安装虚拟机安装宝塔及配置花生壳内网穿透 磁盘扩容 …...