- Java锁的逻辑(结合对象头和ObjectMonitor)
- 还在用饼状图?来瞧瞧这些炫酷的百分比可视化新图形(附代码实现)⛵
- 自动注册实体类到EntityFrameworkCore上下文,并适配ABP及ABPVNext
- 基于Sklearn机器学习代码实战
利用4B树莓派控制步进电机转动,精度可达:0.0144度 (即360度/25000) 。
适用于非常精密的角度转动.
舵机的精度为1度,无法实现超高精度控制.
硬件型号不同,只要功能相同,代码即可兼用.
概述:
用户使用该驱动器可以设置常用的 8 档电流以及 16 档细分,能够满足大多数场合的应用需要。低中高速运 行都很平稳,噪音小。多种功能可通过外部拨码选择,极大地方便了客户的应用.
应用领域:
适合各种中小型自动化设备和仪器,例如:雕刻机、打标机、切割机、激光照排、绘图 仪、数控机床、自动装配设备等.
电气指标:
控制信号接口:
强电接口:
控制信号时序图:
每转脉冲设定:
工作电流设定:
采用 90-264VAC 全范围输入电压,(200W、350W 有拨动开关选择)。可任选一组 5V、12V、24V、36V、48V 单组输出 。
电气指标:
电机接口:
控制信号时序图:
树莓派GPIO接口和驱动器的接线方式:
IN1 = 18 # 接PUL- IN2 = 16 # 接PUL+ IN3 = 15 # 接DIR- IN4 = 13 # 接DIR+ 。
步进电机和驱动器的接线方式:
按照步进电机上的A+、A-等连到驱动器对应位置即可(驱动器上有电机接口标签) 。
开关电源和220V插头接线方式:
220V插头接开关电源的220V输入电压位置,开关电源的V-和V+接驱动器的输入电源位置 。
驱动器细分按键调节:
SW1、SW2、SW3、SW6开关设置为on 。
import RPi.GPIO as GPIO
import time
# 规定GPIO引脚
IN1 = 18 # 接PUL-
IN2 = 16 # 接PUL+
IN3 = 15 # 接DIR-
IN4 = 13 # 接DIR+
def setStep(w1, w2, w3, w4):
GPIO.output(IN1, w1)
GPIO.output(IN2, w2)
GPIO.output(IN3, w3)
GPIO.output(IN4, w4)
def stop():
setStep(0, 0, 0, 0)
def backward(delay, steps):
for i in range(0, steps):
setStep(1, 0, 0, 0)
time.sleep(delay)
setStep(0, 1, 0, 0)
time.sleep(delay)
setStep(0, 0, 1, 0)
time.sleep(delay)
setStep(0, 0, 0, 1)
time.sleep(delay)
def setup():
GPIO.setwarnings(False)
GPIO.setmode(GPIO.BOARD) # Numbers GPIOs by physical location
GPIO.setup(IN1, GPIO.OUT) # Set pin's mode is output
GPIO.setup(IN2, GPIO.OUT)
GPIO.setup(IN3, GPIO.OUT)
GPIO.setup(IN4, GPIO.OUT)
def loop(angle):
print ("backward...")
backward(0.0001, int(angle/0.036)) # 发射脉冲时间间隔0.0001(单位秒) 脉冲个数angle/0.036
print ("stop...")
stop() # stop
time.sleep(1) # sleep 3s
def destroy():
GPIO.cleanup() # 释放数据
if __name__ == '__main__': # Program start from here
setup()
while True:
try:
a = input("please input angle:")
loop(float(a))
except KeyboardInterrupt: # When 'Ctrl+C' is pressed, the child function destroy() will be executed.
destroy()
此代码的精度为:0.036度 。
如果希望精度更高,自行调整代码和驱动器细分按键.
最后,祝大家学习进步,工作顺心! 。
最后此篇关于树莓派4B-细分驱动步进电机的文章就讲到这里了,如果你想了解更多关于树莓派4B-细分驱动步进电机的内容请搜索CFSDN的文章或继续浏览相关文章,希望大家以后支持我的博客! 。
我正在使用一些简单的基于 openni 的处理应用程序来破解 Kinect,我计划很快进行一次演讲,我发现了一个似乎可以控制电机的 API。有一个 moveKinect 方法似乎已添加到主 Conte
我是自动化领域的新手,因此是“初学者”问题: 目标是通过 iPad 应用程序控制两个伺服电机。 我考虑过使用 Panasonic 或 Beckhoff 驱动程序,Panasonic 便宜一点,但 Be
我想与 EPOS2 Maxon Driver 通信。这是我在 File Exchange 上找到的去做。 下载the link并在 \Version2 中创建一个空文件夹 Epos2Windows,其
我正在制作一个小型蓝牙控制机器人。我使用 2 个 L298N 电机 Controller 、HC06 蓝牙模块和 arduino uno。当我按下手机上的前进按钮时,我希望两个电机以 50% 的速度工
我是一名优秀的程序员,十分优秀!