STM32自己从零开始实操07:电机电路原理图
一、LC滤波电路
其实以下的滤波都可以叫低通滤波器。
1.1倒 “L” 型 LC 滤波电路
1.1.1定性分析
1.1.2仿真实验
电感:通低频阻高频的。仿真中高频信号通过电感,因为电感会阻止电流发生变化,故说阻止高频信号
电容:隔直通交。仿真实验中电容容值比较小,对于高频信号来说,它的容抗比较小,高频信号可以很大一部分流经这个电容导向地。
电阻:该电阻低频信号可以通过,而高频信号会被截止。
但是还要考虑一点:该并联电路,会有谐振问题。可以通过计算器计算 82uH 与 3.3uF 之间产生的谐振频率是 9675HZ ,当电源频率为该数值频率时,可以看到负载的输出达到了 100V 最大电压值,达到 -100V 的最低电压值。而输入电压仅仅有 5V。
这是由于发生了谐振,它的谐振频率与这个电源的频率一样,所以它导致它的增益倍数被放大了很多倍。当我们把电源频率调低一点至 5.7K ,负载电压是 7.61V ,也是被放大了,当再调低一点至 1K 的话, 它的增益就是一倍,就是 5.045 V。
这样也能说明它是通低频阻高频的,而当它到达一定频率之后,它的增益会放大很多倍。所以设计电路为一个低通滤波器的时候,一定要避免这个频率达到它的谐振频率,而有时候是需要利用这个增益的。
倒“L”型LC滤波电路
1.2只有电容滤波
1.3 “π” 型 LC 滤波电路
1.3.1电阻式
在上面的只有电容滤波的电路中 100mA 的电流需要 500uF 的电容,当需要的电流更大时,电容的容值就得增加。这就不如 π 型滤波电路的性价比高。
(注意上面这句话,是不是在不经意间就解决了你“为什么这里用 π 型滤波电路的困惑”)
假设和上面的电路情况一样,经过全波整流之后的参数如下图左边所示。将 500uF 的电容拆成两个 250uF 的,加上一个 100Ω 电阻,你就会发现效率蹭蹭的就上去了。
电压 310V ,电流 100mA ,这就意味着负载的等效电阻为 3.1K ,如图所示。
(你可能会疑惑不是有电阻电容吗?在负载断的电压电流数值怎么不变?请你知道这个电路是一个正儿八经的滤波电路,一些微小的变化,一些微小的分压分流请忽略。)
电容阻抗:
经过第一个电容 C1 滤波之后的纹波:
后面的电路是:电容并联负载后和电阻串联,电容和电阻并联后的电阻仍约等于电容的阻抗。
计算纹波公式为:
纹波从 4V (单电容滤波)变成了 0.24V (后半截 π)。
1.3.2电感式
上面电阻的位置可以换成电感,需要注意一下几点:
(1)根据电流大小选择
上面的电路中电流只有 100mA ,即负载电流比较小,则选择 CRC 型滤波。如果电路电流是 1A 则流过电阻的功耗就大了。
当较大的电流流过电感时,我们认为电感元件进行能量的储存和释放,不消耗电能(理想状态下)。
(2)根据频率大小选择
串联在电路中的电感的阻抗计算公式为:
- 频率高:电感阻抗高,串联分压多,消除纹波效果明显。
- 频率低:电感阻抗低,串联分压少,消除纹波效果不明显,就需要电感量非常的大。
1.3.3总结
小电流+低频:CRC
大电流+高频:CLC
1.4本项目的应用
(1)原因
通过上面的讲解你应该能体会到本项目使用的 π 型滤波的原因:
- 本项目:电机部分驱动电流大-----→ 不能用电阻,功耗大。
- 本项目:高频噪声、纹波偏多-----→用电感串联分压多
(2)数值
电感的值,跟实际 PCB 布局和滤波的频率都有很大的关系,经验值 22uH。
必须有 C66 这样一个大电容在,因为后面电机停转等原因会产生低频干扰。
二、步进电机基础知识
2.1步进电机的原理
2.2步进电机的命名方式
命名 | 解释 |
28:步进电机的有效最大外径是 28mm | 有效最大外径:是步进电机外壳的最大直径,这个尺寸通常用于确定电机的大小和安装空间。 |
B:表示是步进电机 | |
Y:表示是永磁式 | 永磁式:电机内部的转子使用了永久磁铁,这种设计使得电机在停止时具有更高的保持力矩(holding torque)。当电机的定子线圈(通常是电磁铁)通电时,会产生电磁场。这些电磁场与转子的恒定磁场相互作用,产生一个扭矩,使转子定位。当电机停止供电时,转子的永久磁铁与定子铁芯的磁力仍然存在,保持转子在其位置不动。 就像磁铁可以吸住铁片一样,电机内部的永久磁铁可以吸住定子铁芯,使转子在停止时保持不动。 |
J:表示是减速型(减速比1:64) | 减速比: 是指电机内部的某个部分(通常是电机转子)转动一定圈数后,外部输出轴才转动一圈。对于1:64的减速比,意味着电机转子转动64圈,输出轴才转动一圈。 |
48:表示四相八拍 | 四相: 步进电机的四相指的是电机内部有四组线圈,每组线圈称为一相。 八拍: 每相线圈可以以一定顺序通电,使电机转动。八拍指的是一个完整的周期需要8个步进信号,即8个脉冲。 |
电压:5V | |
步距角:步进角度 5.623 X | 步进角度: 是指步进电机接收到一个脉冲信号时,转子转动的角度。对于28BYJ-48 来说,原始步进角度是 5.625 度。 64分之一: 由于减速齿轮的存在,实际输出轴的步进角度需要将原始步进角度除以减速比 64,因此每个步进脉冲输出轴的实际转动角度为 5.625 度 / 64 ≈ 0.088 度。 |
2.3驱动方式
步进电机不能直接使用电流源来工作,必须使用专用的步进电机驱动器,它由以下部分组成:
- 脉冲发生控制单元:生成控制脉冲信号来驱动电机
- 功率驱动单元:提供电机所需的电流和电压
- 保护单元:保护电机和驱动器免受过电流、过电压等故障的影响
三、单极性步进电机
3.1基础知识
3.1.1结构
如下图,单极性步进电机里面有两个大线圈,并在中间引出都引出抽头,将两个大线圈分成了四个小线圈,故又叫四相五线步进电机,又因为电流只有一个方向,又叫单极性步进电机。
红 5 接 5V 电源,皆从红 5 流入,其他四个色接驱动的输出端,从各自相中流出,单片机输出接驱动输入。
3.1.2驱动方法
(下面的知识点可以看懂,看不懂就算了。)
(1)单四拍
A→B→C→D→A→循环往复
特点:步距角 5.625 / 32 ,电流最小,扭矩最小
(2)双四拍
AB→BC→CD→DA→AB→循环往复
特点:步距角 5.625 / 32 ,电流最大,扭矩最大
(3)八拍
A→AB→B→BC→C→CD→D→DA→A→循环往复
特点:步距角 5.625 / 64 ,电流居中,扭矩居中
(4)所需脉冲
单四拍和双四拍转一周需要 2048 个脉冲,八拍需要 4096 个脉冲。
(5)转动位置和通电情况如图(图为自画,比较粗糙)
3.2 ULN2003 数据手册
3.2.1展示
3.2.2描述
ULN2003 是高耐压、大电流达林顿陈列,由七个 NPN 达林顿管组成。所有单元共用发射极,每个单元采用开集电极输出。每一对达林顿都串联一个 2.7K 的基极电阻,直接兼容 TTL 和 5V CMOS 电路,可以直接处理原先需要标准逻辑缓冲器来处理的数据。 ULN2003 工作电压高,工作电流大,灌电流可达 500mA,并且能够在关态时承受 50V 的电压,输出还可以在高负载电流下并行运行, 很好的提供了需要多接口驱动电路的解决方案。
(1)特点:
工作电压范围宽七路高增益达林顿阵列输出电压高(可达 50V )输出电流大(可达 500mA)可与 TTL、CMOS、PMOS 直接连接内置钳位二极管适应感性负载
(2)应用
继电器驱动直流照明驱动步进电机驱动电磁阀直流无刷电机驱动
3.2.3电路框图
3.2.4内部等效线路图
3.2.5陈氏总结
看着会用就可以不用非常了解内部的结构的原理,很久没学习了,不要又陷入自己的误区。
你只需要知道:
- 达林顿晶体管是一种由两个NPN或PNP晶体管组成的复合晶体管,特点是具有高电流增益。第一个晶体管的集电极接第二个晶体管的基极,两个晶体管的电流增益相乘,使得整体的电流增益非常大。
- 达林顿,陈列是由多个达林顿晶体管组成的电路阵列,每个达林顿晶体管都是独立的。ULN2003中包含7个达林顿对,每对都有自己的输入和输出。
- 开集电极意味着每个达林顿对的输出端(集电极)没有连接到电源,而是外部设备需要提供电源。当输入信号使达林顿对导通时,输出端被拉低至接地点,从而完成电流路径。开集电极输出使得这些达林顿对可以直接用于驱动负载,如继电器、灯泡等。
- ULN2003中,每个达林顿对的发射极都连接到同一个接地点(地)。这意味着所有达林顿对的负端都是共用的接地点。
- ULN2003 能够兼容 TTL 和 5V CMOS电路,是因为每个达林顿对的输入端有一个 2.7KΩ 的基极电阻,这使得其输入电压阈值和电流需求与 TTL 和 5V CMOS 电路相匹配,即无论是那种信号的电压过来都是可以驱动达林顿晶体管的。
- 在 ULN2003 中,每个达林顿对在关态时(即输入信号为低电平时),其输出端可以承受最高 50V 的电压而不会损坏。这是因为达林顿晶体管的结构和材料能够承受较高的反向电压。
3.3KF2EDGR-3.81-5P介绍
KF2EDGR-3.81-5P 是插拔式接线端子,展示如下:
此处为四相五线,所以这里的接线端子需要有五跟线。
其中 1 线是公共端接电源,称为 com 端。
其他是电机的其他四相,只需要控制每一项的通断,用的是 ULN2003A 来驱动。
3.4原理图
3.4.1理解原理图之前必须形成的概念
ULN2003A 是一个反向器(在上面 ULN2003A 的电路框图中放大器输出端有一个圆圈,也验证代表反向的意思),左边为输入,中间是达林顿管,可以放大微小信号,右边为输出,电流只有一个方向。
输入 0 则输出 1,连接着上面所说的电机的其他四相。
运行时输入 1 → ULN2003A → 输出0 → 电机的其他四相就是0 → 公共端为1 就导通回路了。
只需要改变供电的次序就可以控制电机的转向。
·3.4.2原理图
四、双极性步进电机
4.1基础知识
4.1.1优缺点
(1)优点
1、精度高,适合定位要求高的场合
2、可靠性好,寿命长
1、如果控制不当容易产生共振
2、难以运转到较高的转速
4.1.2内部结构
右边双极性步进电机里面就只有两个线圈,没有中间的抽头,所以又叫两相四线步进电机。该电机电流有两个方向,需要桥路来驱动,改变线圈电流的方向。
双极性的意思是通过线圈的电流有两个方向:
- A+ → A- A- → A+
- B+ → B- B- → B+
4.1.3驱动方式
与单极性的步进电机一样,有三种驱动方式:单四拍、双四拍、八拍
A+表示电流从A+流向A-,A-表示电流从A-流向A+
(1)单四拍 A+,B+,A-,B- 循环往复
特点:步距角7.5°,电流最小,扭矩最小
(2)双四拍 A+B+,B+A-,A-B-,B-A+ 循环往复
特点:步距角7.5°,电流最大,扭矩最大
(3)八拍A+,A+B+,B+,B+A-,A-,A-B-,B-,B-A+循环往复
特点:距角3.75°,电流居中,扭矩居中
因为单四拍的步距角是 7.5 度,也就是说按 A+,B+,A-,B- 这样线圈通电顺序就可以让步进电机转动 7.5 度,又因为该步进电机没有减速比,所以 360/7.5 = 48,48 个这样的单四拍就可以让电机转动一圈,双四拍的同理。
八拍步距角是 3.75 度,360/3.75 = 96,所以在八拍的驱动方式下,步进电机转一圈要 96 个这样的八拍脉冲。
4.2 LV8548MC-AH 数据手册
(废话不多说版)
4.2.1展示
4.2.2描述
LV8548MC 是一款 2 通道低饱和压 正/反向 电机驱动 IC,它是12V 系统产品中电机驱动的最佳选择,可以驱动两个直流电机,或采用并联连接一个直流电机,或全步和半步步的步进电机。
4.2.3引脚说明
序号 | 引脚名称 | 引脚说明 | 等效电路 |
1 | VCC | 电源电压 ,4.0~16V 。 | |
2 | IN1 | 电机驱动控制输入引脚。 该引脚为数字输入,"L" 电平输入范围为0~0.7(V),"H"电平输入范围为 1.8~5.5(V),可以输入 PWM 信号。 该引脚内置有 100(kΩ) 的下拉电阻。当所有 IN1、IN2、IN3 和 IN4 引脚均为 "L" 电平时,驱动器将进入待机模式,此时电路电流可调至 0。 | |
3 | IN2 | 电机驱动控制输入引脚。 可以输入 PWM 信号。 内置有 100(kΩ) 的下拉电阻。 | |
4 | IN3 | 电机驱动控制输入引脚。 可以输入 PWM 信号。 内置有 100(kΩ) 的下拉电阻。 | |
5 | IN4 | 电机驱动控制输入引脚。 可以输入 PWM 信号。 内置有 100(kΩ) 的下拉电阻。 | |
6 | GND | 地。 | |
7 | OUT4 | 驱动输出引脚。 电机线圈连接在 OUT3 引脚之间。 | |
8 | OUT3 | 驱动输出引脚。 电机线圈连接在 OUT4 引脚之间。 | |
9 | OUT2 | 驱动输出引脚。 电机线圈连接在 OUT1 引脚之间。 | |
10 | OUT1 | 驱动输出引脚。 电机线圈连接在 OUT2 引脚之间。 |
4.2.4应用电路示例(重点)
通过将 IN1 与 IN3 连接,IN2 与 IN4 连接,OUT1 与 OUT3 连接,OUT2 与 OUT4 连接,可以实现如图所示的类似 H 桥的使用方式。(最大电流 Imax=2.0A,上下总 RON=0.522Ω)
4.3原理图
如4.2.4的实例2。
五、两路有刷直流电机
5.1基础知识
5.1.1视频
直流电机工作原理-国语版_哔哩哔哩_bilibili
该视频是有刷直流电机的详细、形象讲解视频,凡是不懂就去听一遍。
5.1.2文字版基础知识
5.1.2.1结构
曲面磁铁:比永磁体磁性更强。
电枢:将绕着电机的螺栓换成的金属环,接上电线就构成了电路也形成一块扁平磁铁。
换向器:(你也发现手动换电线实在是麻烦)具有对称缝隙的圆环,和电枢固定在一起,会和电枢一起旋转。
电刷:会随着换向器的旋转而在上面滑动,电刷上设置的弹簧压力保证了电刷能一直与幻象器接触。
电流:电线流出,通过电刷、换向器后,从另一边导线流出。
通电之后:电磁铁和电枢再次旋转起来,注意看当电刷经过缝隙时,之后电刷会切换与下一个换向器的接触点。请注意,有两个电刷,所以两边都会同时切换,在切换之前,电输中的电流是向这个方向流动的。而在电刷切换后,电流将向反方向流动。这意味着电磁铁的磁极也发生了切换,这将使电枢保持旋转,换向器重复做着电线切换的工作,就像之前手动完成的,但是这一次它是自动完成的。只要接上电池,它就能一直旋转,断开电池,电磁消失,旋转也就停止了。
陈氏总结:靠的就是换向器电枢接触点和开口的地方垂直,实现切换。
5.1.2.2现实生活中的改进
(1)只有一个金属环,这会导致电机运行速度不规则,并且还有可能会在换向器缝隙中间的位置卡住→拆分换向器的圆环,然后添加另一个回路
- 首先电刷接触一个回路的换向器片,驱动对应的金属环使电枢旋转。
- 等固定地方时,电刷就另外一个换向器器接触。这意味着当前回路关闭,然后下一个回路打开,现在新的电磁铁继续旋转,电刷继续切换触点。
- 然后下一个回路打开,电机不断旋转,回路不断切换,这意味着这些回路将轮流变成电磁铁。
- 有些电机会在电枢里加入更多的回路,这样确保了电机可以更加顺畅的旋转。作用于电枢上的旋转力矩称为转矩,转矩越大,转速也就越快。
(2)提高电机的转矩,已知缠绕的电线越多,电磁铁的磁性就越强。对金属螺栓缠绕更多线圈时,磁力的确增强了。同理,在增加电枢回路的线圈数量时,磁力也同样增强了,这样电机就会拥有更强大的磁性,也就意味着它会转得更快。
(3)增大电流
5.1.2.3相关术语
定子:电机中不动的部分。本视频中定子是两侧的永磁体。这些安装在电机外壳的边缘内。
转子:中间的电枢也称为转子。记住,转子只由轴承支撑的旋转体,轴从转子中间穿过电动机延伸到后面。
如果一个设备会动,并由电池供电,里面大概率会有一个直流电动机,其他类型电动机的工作方式这里展示的电动机不尽相同。但不管是哪种类型的电机,大部分都是通过某种旋转来工作的,一旦旋转,就能以此驱动各种设备。
5.2原理图
有刷直流电机只需要两根线,这里是两路有刷直流电机,电路图采用 4.2.4 的实例 1 。
六、无刷直流电机接口
6.1基础知识
6.1.1视频
底层原理极其简单,却很难造出精品!无刷直流电机的工作原理_哔哩哔哩_bilibili
6.1.2文字版基础知识
与有刷直流电机不同,无刷直流电机中间固定不动是定子,外圈在旋转是转子。由于定子与转子之间没有接触,也没有电刷与换向器,所以称之为无刷直流电机。
注意线圈的缠绕方式(下图红色方框),这样就能通过改变电流的方向来控制转子的转动。
而一个真正的无刷电机一般是由四个线圈和四块磁铁构成的。这四个线圈是一根线绕下来的,本质上其实就是一个线圈,所以这种类型的电机又叫单向无刷电机。以最上面的 N 极磁铁为例,此时它不仅受到 1 号线圈的排斥,而且还受到 2 号线圈的吸引,相比之前受力增加了一倍,它转的也会更快。
这里面需要不停的改变电流的方向,这样才会改变线圈的磁性,转子才会不停的转动。为了频繁的改变电流的方向,人们设计一个叫做 H 桥的电路,当开关 S1 和 S4 闭合时,电流从 A 流入,而当开关 S2 和 S3 闭合时,电流开始反向流入,这样线圈的极性就能发生改变。
为了用单片机控制,可以用 4 个 MOS 管替代这四个机械开关。需要注意的是,当给它切换电流方向的时候,改变的只是线圈的极性,是怎么改变电机的转速呢?其实也很简单,可以先闭合 S1,然后不停的开关 S4,这样产生的就是 PWM 波,如果有一半时间导通,一半时间截止,那么将会有一半的能量进入电机,它的速度也会变得更慢, PWM 波的占控比越高,它的速度也越快。
还有一个很关键的问题,那就是电机是怎么知道转子的位置的呢?在无刷电机领域,一般用开关霍尔元件来识别,当磁铁的 n 极靠近时,霍尔元件输出高电瓶,而让磁铁的 s 级靠近时,霍尔元件输出低电瓶。有了霍尔元件的加入,芯片就能根据他输出的高低电瓶来控制电机了。比如在最开始,霍尔器键检测到的是 N 极,一直输出高电瓶,而当转过 90 度之后检测到的是 s 级,它输出的是低电瓶。芯片采集到这个低电瓶之后会立马改变控制策略。也就是每当转子转 90 度,霍尔信号的输出改变一次,旋转一周一共改变 4 次。
接下来还有一个这样的问题,如果转子转到临界位置,那此时霍尔应该输出高电瓶还是低电瓶呢?真实的情况是此时输出就紊乱了,所以只靠一个霍尔元件是不行的。此时只需要再给他加一个霍尔元件,这样即使第一个输出紊乱,第二个霍尔元件也能输出正确的磁极信息,确保芯片能采集到正确的位置。
在实际应用中,应用比较多的是三项无刷直流电机,之所以叫它三项电机,是因为它的三个线圈都是彼此独立的,可以单独控制。把每两个线圈都连起来,也就是我们常说的“ 星 ”形链接,这样就能同时控制两个线圈了,能给转子提供双倍的力,转的也会更快。当转过 60 度之后再给 UW 线圈通电。以此类推,每转过 60 度更换一次线圈的通电方式,这样它就会不停的旋转。
可以看一下转子在各个角度的通电顺序,在控制上需要 6 个 MOS 管。
为了增加电机的力矩,人们在这个基础上设计了四个磁极、 6 个线圈的无刷电机,但是每一组相对的线圈都是串联的,所以本质上只有三个险圈,也属于三项无刷电机,但是这样力举大大增加,转速就会更加的快。
对比:就成本而言单向无刷电机是更有优势的,不仅结构更加简单,而且在控制上只需要 4 个 MOS 管。但是在性能上,三项无刷电机的性能更强,在同等体积下,三项电机拥有更高的功率,在控制方面也比单向电机更先进。
6.2原理图
老师原话:下面电路为接口设计,后续需要驱动无刷直流电机时再设计驱动板和它对接,可以用高级定时器产生六路 pwm 控制驱动桥开关、霍尔信号切换相位。
- BM_HALL_W, BM_HALL_U, BM_HALL_V:这些引脚连接到霍尔传感器,用于检测转子的位置。
- BM_UL, BM_VL, BM_WL, BM_UH, BM_VH, BM_WH:这些引脚连接到电机的三相绕组,分别是U、V、W相的上桥臂和下桥臂。
- BM_EN:使能引脚,用于启用或禁用电机驱动。
- BM_BKIN:刹车输入引脚,用于控制电机制动。
这里有一篇博客详细介绍驱动的设计过程,后续有时间在继续学习:
详解三相直流无刷电机驱动器硬件原理图_无刷直流电机驱动电路原理图-CSDN博客
七、旋转编码器接口
7.1基础知识
7.1.1视频
视频中采用的旋转编码器型号为:EC11E15244B2,编号: C470754。
旋转编码开关,你不懂,编程方法和结构原理吗?拆给你看!_哔哩哔哩_bilibili
7.1.2文字版基础知识
7.1.2.1展示
7.1.2.2陈氏理解
(1)6、7 电源引脚
VCC 与 地 引脚,为器件供电。
(2)A、B、C 旋转编码引脚
这三个引角相当于两个开关串联,中间的引角 g 通常接电源负极,两边的引角 a 和 b 通常通过上拉电阻接电源正极(是为了保证在没有信号输入时,保持稳定的高电平)。运作过程如下:
- 解析旋转开关信号的解析需要以其中一个开关作为基准信号。这里选 a 作为基准,对 a 信号的判断可以是高电瓶、低电瓶、上升沿、下降沿。通常 a 信号的上升延或下降延作为单片机的外部中断触发,这种方式相对比较可靠高效。
- a 信号上升沿:顺时针旋转,上升沿后, b 信号 100 微秒内保持低电瓶;逆时针旋转,上升延后 b 信号 100 微秒内保持高电瓶。
- a 信号下升沿:顺时针旋转,上升沿后, b 信号 100 微秒内保持高电瓶;逆时针旋转,上升延后 b 信号 100 微秒内保持低电瓶。
可以通过两个脉冲相位对比,判断电机的转向;可以通过 B 脉冲单位时间内的数量,判断电机的转速。
(3)D、E 按压开关引脚
按压一次输出一个(高或者低)的脉冲。
7.2原理图
旋转编码器有一根轴,通过设计可以使电机转动时带动旋转编码器上的这根轴也一起转动,再将旋转编码器通过下图的接口将输出连接到 STM32 ,就可以向单片机反馈电机的转速和转向信息。
如果是输出两根线则只连接两根线(转速(和转向));如果是输出四根线则就可以连四根线(可以包含其他信息)。
- 上拉电阻(R46、R47、R48、R49,10kΩ):这些电阻将信号线拉到3.3V,确保信号线在无信号输入时保持高电平。
- 滤波电容(C67、C68、C69、C70,68pF):这些电容与上拉电阻形成低通滤波器,滤除高频噪声,确保信号稳定。
八、每个部分滤波的解释
在电机驱动部分使用100uF电容主要是为了应对大电流变化和低频噪声,提供更稳定的电源电压。而在旋转编码器部分使用10uF电容是因为其电流需求较小,高频噪声相对更重要,较小的电容已经足够满足滤波需求。选择电容值的关键在于其应用场景和所需的滤波效果
忠心的感谢每一个认真讲课的好老师,本文参考:
270_08LC滤波电路_哔哩哔哩_bilibili
STM32物联网项目——单极性步进电机_步进电机stm32开发-CSDN博客
STM32物联网项目-双极性步进电机_步进电机a+a-b+b-是什么意思-CSDN博客
我想尽量不放别的老师的讲解视频,除了第一个视频是我在原视频上的剪辑版,后面的视频我都附上相应的链接。
电机这块确实视频讲解更加形象,我并没有其他任何商业用途,如有侵权请一定及时联系我。
相关文章:
STM32自己从零开始实操07:电机电路原理图
一、LC滤波电路 其实以下的滤波都可以叫低通滤波器。 1.1倒 “L” 型 LC 滤波电路 1.1.1定性分析 1.1.2仿真实验 电感:通低频阻高频的。仿真中高频信号通过电感,因为电感会阻止电流发生变化,故说阻止高频信号 电容:隔直通交。…...
网页计算器的实现
简介 该项目实现了一个功能完备、交互友好的网页计算器应用。只使用了 HTML、CSS 和 JavaScript ,用于检验web前端基础水平。 开发环境:Visual Studio Code开发工具:HTML5、CSS3、JavaScript实现效果 功能设计和模块划分 显示模块&#…...
JAVA设计模式-监听者模式
什么是监听者模式 监听器模式是一种观察者模式的扩展,也被称为发布-订阅模式。在监听器模式中,存在两类角色:事件源(Event Source)和监听器(Listener)。事件源负责产生事件,而监听器…...
anaconda命令大全
目录 查看所有虚拟环境查看某虚拟环境安装的包创建虚拟环境激活创建好的虚拟环境回到之前的环境删除创建的虚拟环境查看conda所在的位置、虚拟环境位置等信息conda修改虚拟环境所在的位置 查看所有虚拟环境 conda env list查看某虚拟环境安装的包 激活要查看的虚拟环境之后&a…...
“论单元测试方法及应用”写作框架,软考高级论文,系统架构设计师论文
论文真题 1、概要叙述你参与管理和开发的软件项目,以吸你所担的主要工作。 2、结给你参与管理和开发的软件项目,简要叙述单元测试中静态测试和动态测试方法的基本内容。 3、结给你惨与管理和研发的软件项目,体阐述在玩测试过程中,如何确定白盒测试的覆盖标准,及如…...
基于布雷格曼偏差校正技术的全变分一维时间序列信号降噪方法(MATLAB R2018A)
信号降噪是信号处理的重要步骤之一,目的是提高所获得信号数据的质量,以达到更高的定性和定量分析精度。信号降噪能提升信号处理其他环节的性能和人们对信息识别的准确率,给信号处理工作提供更可靠的保证。信号降噪的难点是降低噪声的同时也会…...
【CentOS 7.6】Linux版本 portainer本地镜像导入docker安装配置教程,不需要魔法拉取!(找不着镜像的来看我)
吐槽 我本来根本不想写这篇博客,但我很不解也有点生气,CSDN这么大没有人把现在需要魔法才能拉取的镜像放上来。 你们都不放,根本不方便。我来上传资源。 portainer-ce-latest.tar Linux/amd64 镜像下载地址: 链接:h…...
【windows|012】光猫、路由器、交换机详解
🍁博主简介: 🏅云计算领域优质创作者 🏅2022年CSDN新星计划python赛道第一名 🏅2022年CSDN原力计划优质作者 🏅阿里云ACE认证高级工程师 🏅阿里云开发者社区专家博主 💊交流社…...
Node之Web服务
前言 本文将讲解node的web服务 通过讲解http请求,node创建web服务等知识点让你更加深入的理解web服务和node创建的web服务 HTTP请求是什么? HTTP请求是客户端(通常是浏览器或其他应用程序)与服务器之间进行通信的一种方式。 …...
[Day 24] 區塊鏈與人工智能的聯動應用:理論、技術與實踐
AI在自動駕駛中的應用 1. 簡介 自動駕駛技術是現代交通領域的一個革命性進展。通過結合人工智能(AI)、機器學習(ML)、深度學習(DL)和傳感器技術,自動駕駛汽車可以在無人干預的情況下安全駕駛。…...
计算机图形学入门25:BRDF的测量
1.前言 BRDF(双向反射分布函数)可以用各种各样的材质去描述,但是这只是一种基于物理的描述或者近似,那什么是真正的BRDF?只有测出来的才是真正的。 为什么要测出BRDF?因为之前所描述的BRDF并不准确。如下图所示,以菲涅…...
空调计费系统是什么,你知道吗
空调计费系统是一种通过对使用空调的时间和能源消耗进行监测和计量来进行费用计算的系统。它广泛应用于各种场所,如家庭、办公室、商场等,为用户提供了方便、准确的能源使用管理和费用控制。 可实现功能 智能计费:中央空调分户计费系统通过智…...
震惊!张宇25版高数18讲发布,656页惹争议!
这个张宇老师在微博已经解释过了! 我觉得张宇老师本意是好的,在考研数学教学创新这方面,他真的有自己的思考。 他为什么要这么做? 其实作为一个考研高数老师,他完全可以像其他老师一样,什么都不做&#x…...
React+TS前台项目实战(二十三)-- 基于属性自定义数值显示组件Decimal封装
文章目录 前言Decimal组件1. 功能分析2. 代码详细注释3. 使用方式4. 效果展示 总结 前言 今天要封装的Decimal 组件,是通过传入的属性进行定制化显示数值,在渲染时,会根据不同的情况显示整数部分、小数部分和单位,支持自定义样式…...
pip install包出现哈希错误解决
如图,当遇到此类错误时,多半是连接不稳定导致的校验失败。我们可以在PC端,或Ubuntu通过浏览器下载.whl安装文件:直接复制报错信息中的网址到浏览器即可弹出下载窗口。...
多线程压测方法模板
主要步骤 创建一个线程池 ExecutorService service Executors.newFixedThreadPool(20);创建任务 Runnable task () -> {// 具体实现 };提交多个任务到线程池 for (int i 0; i < 100000; i) {service.submit(task); }关闭线程池 service.shutdown();等待所有任务完成 s…...
Uniapp软件库全新带勋章功能(包含前后端源码)
源码介绍: Uniapp开发的软件库全新带勋章功能,搭建好后台 在前端找到 util 这个文件 把两个js文件上面的填上自己的域名,电脑需要下载:HBuilderX 登录账号 没有账号就注册账号, 然后上传文件,打包选择 “…...
秋招突击——7/5——设计模式知识点补充——适配器模式、代理模式和装饰器模式
文章目录 引言正文适配器模式学习篮球翻译适配器 面试题 代理模式学习面试题 装饰器模式学习装饰模式总结 面试题 总结 引言 为了一雪前耻,之前腾讯面试的极其差,设计模式一点都不会,这里找了一点设计模式的面试题,就针对几个常考…...
bmob Harmony鸿蒙快速开发搜索功能
搜索功能是很多应用都需要的功能。在很多平台上,要开发一个兼容性较好的搜索功能都还是需要添加比较多的视图代码的。 为了解决这个问题,鸿蒙ArkUI提供了一个快速添加搜索功能的视图组件给我们,结合Bmob Harmony鸿蒙SDK的搜索能力࿰…...
软通动力子公司鸿湖万联最新成果SwanLink AI亮相世界人工智能大会
7月4日,2024世界人工智能大会暨人工智能全球治理高级别会议(WAIC 2024)在上海拉开帷幕,软通动力董事长兼首席执行官刘天文受邀出席开幕式。其间,软通动力携子公司鸿湖万联深度参与到大会各项活动中,并全面展…...
查看Linux系统中日志文件
Linux 系统中 Ubuntu,Debian,CentOS,RedHat 作为常用的服务器软件系统,很多人都已经熟知。不论是服务器出现问题,还是日常维护或各种环境搭建,我们经常需要登录上服务器查看日志。 如果熟知 Linux 下的 ta…...
技术干货|如何轻松完成空调管路的随机振动分析以及疲劳寿命预测
基于NVHD 的虚拟路面谱激励车内结构路噪优化 作者:戴相花 颜磊 吕霞 杨凯 单位:苏州三星电子有限公司 论文摘要 随机振动试验是评估空调管路流通振动耐久性的重要试验之一。本文以某型号空调管路系统为研究对象,评估空调管路随机振动疲劳…...
中英双语介绍中国的城市:上海市(Shanghai)
中文版 上海市是中国最大的城市之一,也是全球重要的金融、贸易和航运中心。作为一座现代化的国际大都市,上海以其繁华的商业区、丰富的文化遗产和多样化的经济结构而闻名。以下是对上海市的详细介绍,包括其地理位置、人口、经济、教育、文化…...
代码随想录算法训练营第75天:总结篇[1]
代码随想录算法训练营第75天:总结篇 代码随想录姑且是都过了一遍了,最开始了解到的时候还不会c语法,跟着学习还是有难度的,也很难坚持着去写题,后面决定加入训练营与大家齐头并进,刚开始气氛很好ÿ…...
眼动追踪技术 | 眼动的分类和模型
摘要 灵长类动物用于调整中央凹位置的正常眼动,几乎都可以归结为五种基本类型的组合:扫视、平稳追踪、聚散、前庭眼震和生理性眼震(与注视相关的微小运动)。聚散运动用于将双眼聚焦于远处的目标(深度知觉)。其他运动(如适应和聚焦)指的是眼动的非位置变…...
如何使用PHP根据输入文字动态调整图片尺寸?
根据文字改变图片尺寸的PHP代码 以下是一个使用PHP实现根据输入的文字动态调整图片尺寸的示例代码。该代码使用GD库来处理图片。 1. 创建HTML表单 首先,我们需要一个HTML表单来接受用户输入的文字和新的图片尺寸。 <!DOCTYPE html> <html lang"en…...
3.js - hdr贴图 是什么,有什么用
HDR贴图:High-Dynamic Range(高动态范围)贴图 一、定义与特点 定义:HDR贴图是具有高动态范围的环境贴图,能够捕捉并保留丰富的亮部细节和暗部细节,从而模拟出更加真实的光照效果。特点: 高动态…...
Nature Communications|用于电子皮肤的自主自愈晶体管(柔性半导体器件/电子皮肤/柔性电子)
2024年4月23日,韩国庆熙大学Jin Young Oh,美国斯坦福大学鲍哲南(Zhenan Bao)和韩国嘉泉大学Tae Il Lee团队,在《Nature Communications》上发布了一篇题为“Autonomous self-healing supramolecular polymer transistors for skin electronics”的论文。论文内容如下: 一…...
6月30日功能测试Day10
3.4.4拼团购测试点 功能位置:营销-----拼团购 后台优惠促销列表管理可以添加拼团,查看拼团活动,启动活动,编辑活动,删除活动。 可以查看拼团活动中已下单的订单以状态 需求分析 功能和添加拼团 商品拼团活动页 3…...
无人机对地面运动目标定位---获取目标的移动方向和速度
目录 一、引子 我们利用单目无人机通过等时间间隔拍照的形式对地面某移动目标进行定位,当前,我们已经获得了每张相片上该目标的三维坐标,并且知道该无人机在飞行过程中拍照的时间间隔,那么我们就可以通过一定的计算,得…...
管理才是最根本的核心竞争力
相信大家对于华为提出的“管理是核心竞争力”“管理才是企业的核心竞争力”等言论并不陌生,而华为的确也一直践行这样的理念。比如,在华为发展历史上很艰难的2002年,华为仍然坚持重点抓管理。总裁任正非后来提到:“2002年华为快崩…...
Raid阵列中硬盘损坏后,新硬盘可以直接换上吗?
RAID更换的方式基本类似,这里以RAID 1为例。 1. 关闭服务器:确保服务器或RAID控制器处于关闭或已停止状态,以避免数据写入或损坏。确定损坏硬盘:通过RAID控制器的管理界面,确定哪一块硬盘在RAID 中损坏。 2. 拆卸原硬…...
Python爬虫康复训练——笔趣阁《神魂至尊》
还是话不多说,很久没写爬虫了,来个bs4康复训练爬虫,正好我最近在看《神魂至尊》,爬个txt文件下来看看 直接上代码 """ 神魂至尊网址-https://www.bqgui.cc/book/1519/ """ import requests from b…...
Kaptcha验证码
Kaptcha验证码 Kaptcha 是一个用于生成验证码的开源库,在 Java 中使用它可以轻松地为应用程序添加验证码功能。 一、引入依赖 首先,需要在项目的 pom.xml 文件(如果是 Maven 项目)中添加 Kaptcha 的依赖: <depend…...
Rufus 制作启动盘 | 便携的工作空间
唠唠闲话 最近服务器硬盘故障多,在修复过程中,学习了一些操作,这里做个记录。本期主要介绍 U盘启动盘的制作,以及持久化存储。 U 盘启动盘 镜像选择 Ubuntu 的版本命名遵循 “Adjective Animal” 的模式,即 “形容…...
python函数参数
Python 函数参数是函数定义时用于接收传递给函数的值的变量。在Python中,函数可以有多种类型的参数,这增加了函数的灵活性和可重用性。下面是一些主要的参数类型: 1. 位置参数(Positional Arguments) 位置参数是最常…...
深入理解 XML 和 HTML 之间的区别
在现代网络技术的世界中,XML(可扩展标记语言)和 HTML(超文本标记语言) 是两个非常重要的技术。尽管它们都使用标签和属性的格式来描述数据,但它们在形式和用途上有显著的区别。 概述 什么是 XMLÿ…...
代码随想录算法训练营第四十四天|188.买卖股票的最佳时机IV、309.最佳买卖股票时机含冷冻期、714.买卖股票的最佳时机含手续费
188.买卖股票的最佳时机IV 题目链接:188.买卖股票的最佳时机IV 文档讲解:代码随想录 状态:不会 思路: 在股票买卖1使用一维dp的基础上,升级成二维的即可。 定义dp[k1][2],其中 dp[j][0] 表示第j次交易后持…...
YOLOv8改进 添加CVPR2024 PKINet中注意力机制CAAttention
一、PKINet论文 论文地址:2403.06258 (arxiv.org) 二、CAAttention结构 CAA(Context Anchor Attention)注意力模块是一种用于捕捉长距离上下文信息的并行模块。 在计算机视觉领域中,上下文信息是指与目标物体或任务相关的周围环境和语境信息。上下文信息可以帮助我们更好…...
油猴Safari浏览器插件:Tampermonkey for Mac 下载
Tampermonkey 是一个强大的浏览器扩展,用于运行用户脚本,这些脚本可以自定义和增强网页的功能。它允许用户在网页上执行各种自动化任务,比如自动填写表单、移除广告、改变页面布局等。适用浏览器: Tampermonkey 适用于多数主流浏览…...
如何在Vue中添加事件监听器
在Vue中添加事件监听器主要有两种方式:在模板中直接添加和使用Vue实例的方法。以下将详细解释这两种方法。 1. 在模板中直接添加 在Vue的模板中,你可以直接在HTML元素上使用v-on指令(或其简写形式)来监听DOM事件,并在…...
软设之UML图中的用例图
UML图中用例图 用例图描述一组用例,参与者及它们之间的关系 关系包括: 包含关系,扩展关系,泛化关系 用例建模的流程: 识别参与者 合并需求获得用例 细化用例描述 调整用例模型...
弹性伸缩高性能计算服务一一黑石裸金属服务器
在电商、直播、游戏等业务场景中,对服务器的性能、安全性和稳定性要求尤为苛刻。黑石裸金属服务器作为一种创新的计算服务,以其独特的优势,满足了这些行业对高性能计算服务的迫切需求。本文将详细解析黑石裸金属服务器的优势,并在…...
欢乐钓鱼大师攻略:西沙群岛攻略,内置自动辅助云手机!
《欢乐钓鱼大师》是一款以钓鱼为主题的休闲游戏,玩家可以在虚拟的钓鱼世界中体验真实的钓鱼乐趣,并通过捕捉各种珍稀鱼类来提升自己的钓鱼技能和成就。在这篇攻略中,我们将重点介绍如何在西沙群岛区域有效地捕捉各种典藏鱼类,并提…...
Apipost接口测试工具的原理及应用详解(六)
本系列文章简介: 随着软件行业的快速发展,API(应用程序编程接口)作为不同软件组件之间通信的桥梁,其重要性日益凸显。API的质量直接关系到软件系统的稳定性、性能和用户体验。因此,对API进行严格的测试成为…...
矩阵的奇异值(Singular Values)
矩阵的奇异值(Singular Values)是奇异值分解(SVD)过程中得到的一组重要特征值。它们在许多应用中非常重要,如信号处理、数据压缩和统计学等。以下是对奇异值及其计算和性质的详细解释: 奇异值分解…...
清空flowable的表定义的相关表
更多ruoyi-nbcio功能请看演示系统 gitee源代码地址 前后端代码: https://gitee.com/nbacheng/ruoyi-nbcio 演示地址:RuoYi-Nbcio后台管理系统 http://218.75.87.38:9666/ 更多nbcio-boot功能请看演示系统 gitee源代码地址 后端代码: h…...
Tailwind CSS 在vue里 的使用
在Vue项目中使用Tailwind CSS,你需要按照以下步骤操作: 安装Tailwind CSS npm包: npm install -D tailwindcss postcss autoprefixer 使用Tailwind CSS CLI工具创建配置文件: npx tailwindcss init -p 3.在tailwind.config.js中…...
【人工智能】--强化学习(2.0)
个人主页:欢迎来到 Papicatch的博客 课设专栏 :学生成绩管理系统 专业知识专栏: 专业知识 文章目录 🍉强化学习与有监督学习的区别 🍈数据特点 🍈学习目标 🍈反馈机制 🍈策略…...
跟着峰哥学java 微信小程序 第二天 封装ES7 + 后端工作
1.前端 1.1使用promise封装 使用promise封装以至于在图片路径 统一路径中修改 //封装统一请求域名 const baseUrl "http://localhost:8080"; //封装后需导出 export const getBaseUrl()>{return baseUrl; } 导入外来资源 初始化数据 设置数据 将处理后的数据…...