Arduino对57步进电机的控制
最近实验室的智能车从⼤车路线改到了⼩车路线,于是笔者也跟着学习⼀些新的知识。⼤车的控制可以使⽤标准的CAN协议,很多⽅便的指令都能够通过CAN来传输给ECU并得到相应的反馈。然⽽对于最近接触的电动⼩⽩车,控制策略只能使⽤物理机械去控制。因此使⽤步进电机拉杆成为⽬前的解决⽅案之⼀。
1. 设备
【设备】:
古诗鉴赏- 57步进电机套装,包括2相4线的电机以及对应驱动板;
- Arduino UNO;
- 杜邦线若⼲;
- 电源输出设备⼀台(提供24V电压);
我的雨伞
2. 电机连线
【信号输⼊端】:
PUL+:脉冲信号正
花怎么剪
PUL-:脉冲信号负
DIR+:电机正反控制信号正
DIR-:电机正反控制信号负
EN+:电机脱机信号正
EN-:电机脱机信号负
冬桑叶的功效与作用【电源电压】:
DC:9-40V,这⾥我们⽤电源输出设备输出24V即可。
【电路接法】:
牛肉炖番茄怎么做
绿豆发芽需要几天我们使⽤共阴极接法:分别将 PUL-,DIR-,EN-连接到控制系统的地端, 脉冲输⼊信号通过PUL+接⼊,⽅向信号通过DIR+接⼊,使能信号通过EN+接 ⼊。若需限流电阻,则接⼊限流电阻R。(EN信号可不接,并且下图的CP即指脉冲信号PUL)
3. 拨码开关设定细分以及电流
【细分数】:冰激淋
根据驱动板上⾯的开关状态设定,细分后步进电机步距 ⾓按下列⽅法计算:步距⾓=电机固有步距⾓/细分数。
4. Arduino输出脉冲信号
上述连接完毕后,我们⽤Arduino模拟输出脉冲信号:
#define PUL 9
void tup() {
// put your tup code here, to run once:
Serial.begin(9600);
// Set the port function, output or input.
pinMode(PUL, OUTPUT);
}
void loop() {
// put your main code here, to run repeatedly:
analogWrite(PUL, 100);
}
如果需要进⼀步的左右控制,我们定义Arduino的⼀个数字管脚,连接驱动板的DIR+,给出HIGH或者
LOW信号即可改变电机旋转⽅向。 接下来可以通过串⼝通信,实现对电机的转动⽅向、转动速度、⾓度的控制。
>看图猜成语游戏