如何处理任何未知的步进电机?
本节介绍了一个特殊程序,对找出步进马达的类型,其终端,线圈序列,阶跃分辨率以及步进电动机的所有内容。如果有人拥有没有任何规格的草原发动机,那么在按照程序之后浏览了本节后,他将能够为他的所有上述内容找出上述内容步进电机。
首先,找出从步进电机的接口提供了多少个终端或结果。如果有四个端子,则将是双极步进电动机,如果超过四个端子意味着六个端子中的五个,则将是单极步进电动机。两种电动机的构造都是不同的,因此操作也是如此。
单极步进电机: -
给定的图显示了单极步进电动机的内部体系结构。
定子有四个线圈,每个线圈的一端都绑定以取出一个公共端子。如果电动机有六个端子,那么并非所有四个端子,而是两个线圈的末端都绑在一起,并且将两个端子视为常见。
现在找出哪个终端是常见的,哪个是线圈的,请逐步遵循该步骤
- 乘以万用表并将其置于连续性模式
- 将红色探针与任何一个终端连接
- 现在,将黑色探针与任何其他终端连接。
- 如果您彼此获得线圈电阻(其他任何读数,则无穷大),那么当前端子将是普通端子
- 而且,如果您仅使用一个端子获得线圈电阻,则第二个端子将是普通端子。与所有其他终端进行检查。
- 识别终端后,我们必须找出精确的线圈序列的排列方式,因为电动机直到以正确序列施加的脉冲才旋转。
- 为此,您必须在通用PCB或面包板上制作一个测试电路,并通过U可以找到线圈序列,用C语言编写一个简单的程序。
单极步进电动机电路
- 电路如电路TAB1所示。电路的唯一组成部分是电流驱动器芯片ULN2003A。
- 联系:-芯片的所有输入(引脚编号-1、2、3、4)均与25个销钉型女性连接器(LPT连接器)的数据引脚(D0-D4)连接。输出(第16、15、14、13号引脚)与所有四个线圈端子连接。公共端子与+5 V连接。芯片在引脚号上给出偏差。9和8如图所示
- 手术: -芯片由每个输入的8个达灵顿对一对。当您从计算机通过LPT端口应用高输入时,它将在输出侧提供较低的逻辑,以便电流可以通过电动机线圈。
- 现在,我们必须用C语言编写一个程序,该程序将使脉冲端口端口并旋转电动机。
- 有三种操作模式的单极步进电动机(1)单线圈(2)双线圈和(3)半步。从这三种模式中,我们将使用第一模式,意味着一次只能一次通电。
- 由于四个线圈与LPT端口D0-D3的四个数据输出连接,因此输出数据字节将为01H,02H,04H和08H。请参考表。
COIL4 D3 |
COIL3 D2 |
COIL2 D1 |
COIL1 D0 |
数据字节 |
0 |
0 |
0 |
1 |
01 h |
0 |
0 |
1 |
0 |
02H |
0 |
1 |
0 |
0 |
04H |
1 |
0 |
0 |
0 |
08 h |
如果电动机旋转,则宾果游戏!!!!您已经以正确的顺序连接了线圈。但是,如果它不尝试更改程序中的序列,例如尝试1428、1482、2148、2184等,或者您可以更改线圈终端的连接并保持序列1248。一次,电动机将顺时针或逆时针旋转。记下序列,并根据它给出线圈数。
现在,要找出步骤解决方案,只需在程序中提供的增加计数器(i)即可。每次看到电动机何时完成一场完整的革命。看到计数。由于我们在一个环中施加4个脉冲,总施加的脉冲将为计数×4。阶跃分辨率将为360/计数器×4。让我们举个例子。如果计数器为50,则总脉冲将为200,而步骤分辨率将为360/200 = 1.8。为了提高或降低速度,只需在延迟下改变。如果延迟提高,速度将降低,反之亦然。
双极步进电机
双极步进电机: -
给定的图显示了双极步进电动机的内部结构
这里只有两个线圈,其所有四个端子都被取出,没有人很常见。要旋转电动机,两个线圈都必须按顺序通电,要使线圈通电一个线圈的端子应处于高逻辑,第二个线圈必须处于低逻辑。
在这里,我们只需要找出两个端子之间的线圈。
- 乘以万用表并将其置于连续性模式
- 将红色概率与任何一个终端连接
- 现在,将黑色探针与任何其他终端连接。
- 如果您要获得线圈电阻(其他读取其他读数),那么这两个端子之间必须有一个线圈。如果没有,请尝试其他
- 一旦获得一个线圈端子,很明显,其他两个将用于第二线圈。
- 现在,要再次找出终端的顺序,我们必须制作一个简单的电路并用C语言编写程序。
- 只有一个操作模式,因此这里只有一种脉冲序列。如表所示
线圈1 |
线圈2 |
数据字节 |
||
1号航站楼 |
终端2 |
终端3 |
终端4 |
|
0 |
1 |
0 |
1 |
05 h |
1 |
0 |
0 |
1 |
09 h |
1 |
0 |
1 |
0 |
0a h |
0 |
1 |
1 |
0 |
06 h |
- 为了以这种方式为线圈充电,我们需要一个双H桥驱动器电路,如电路图Tab2所示
- 它由8个晶体管,8个电阻和8个十六进制。
- 有关这些电路的更多详细信息这个链接
- 同样,我们必须在C中编写相同的程序。所有内容都保持不变,然后是数据字节。数据字节将为33H,3CH,CCH和C3H。
如果电动机不运行,请不要更改程序中的脉冲序列,只是一次不同时更改一个线圈端子。再试一次。如果它不再起作用,则更改第二个线圈终端。您最多有四种可能性。在一个连接中,电动机将顺时针旋转,并且仅通过恢复第二个线圈端子电动机将逆时针运行。
现在找出步骤解决方案执行相同的过程。只需在程序中提供的增加计数器(i)即可。每次看到电动机何时完成一场完整的革命。看到计数。由于我们在一个环中应用4个脉冲,总施加的脉冲将是反×4。阶跃分辨率为360/计数器×4。让我们举个例子。如果计数器为5,则总脉冲将为200,而阶跃分辨率将为360/20 = 18。为了提高或降低速度,只需在延迟下改变速度。如果延迟增加,速度将降低,反之亦然。
因此,这就是人们可以找到任何没有规格的步进电机的端子和其他未知参数。
项目源代码
项目源代码
###
单极步进电机的代码
#包括
#包括
void main()
{
for(int i = 0; i <5; i ++)
{
声音(500);
出口(0x0378,0x01);
延迟(100);
出口(0x0378,0x02);
延迟(100);
没有声音();
出口(0x0378,0x04);
延迟(100);
出口(0x0378,0x08);
延迟(100);
}
}
双极步进电机的代码
#包括
#包括
void main()
{
for(int i = 0; i <5; i ++)
{
声音(500);
出口(0x0378,0x33);
延迟(100);
出口(0x0378,0x3c);
延迟(100);
没有声音();
外口(0x0378,0xcc);
延迟(100);
出口(0x0378,0xc3);
延迟(100);
}
###
电路图
提交以下:电路设计
与本文有关的问题?
询问并讨论Electro-Tech-online.com和edaboard.com论坛。
告诉我们你的想法!!
你一定是登录发表评论。