树莓派 驱动步进电机 python版
来源:互联网 发布:知否的作者 编辑:程序博客网 时间:2024/06/04 18:11
#!/usr/bin/env python
#########################################################
# File name: stepMotor.py
# Author: Jason Dai
# Date: 2015/01/26
#########################################################
import RPi.GPIO as GPIO
import time
IN1 = 5
IN2 = 6
IN3 = 13
IN4 = 19
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 forward(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 backward(delay, steps):
for i in range(0, steps):
setStep(0, 0, 0, 1)
time.sleep(delay)
setStep(0, 0, 1, 0)
time.sleep(delay)
setStep(0, 1, 0, 0)
time.sleep(delay)
setStep(1, 0, 0, 0)
time.sleep(delay)
def setup():
GPIO.setwarnings(False)
GPIO.setmode(GPIO.BCM) # 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():
while True:
print "backward..."
backward(0.002, 512) # 512 steps --- 360 angle
print "stop..."
stop() # stop
time.sleep(1) # sleep 3s
print "forward..."
forward(0.003, 512)
print "stop..."
stop()
time.sleep(1)
def destroy():
GPIO.cleanup() # Release resource
if __name__ == '__main__': # Program start from here
setup()
try:
loop()
except KeyboardInterrupt: # When 'Ctrl+C' is pressed, the child function destroy() will be executed.
destroy()
#########################################################
# File name: stepMotor.py
# Author: Jason Dai
# Date: 2015/01/26
#########################################################
import RPi.GPIO as GPIO
import time
IN1 = 5
IN2 = 6
IN3 = 13
IN4 = 19
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 forward(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 backward(delay, steps):
for i in range(0, steps):
setStep(0, 0, 0, 1)
time.sleep(delay)
setStep(0, 0, 1, 0)
time.sleep(delay)
setStep(0, 1, 0, 0)
time.sleep(delay)
setStep(1, 0, 0, 0)
time.sleep(delay)
def setup():
GPIO.setwarnings(False)
GPIO.setmode(GPIO.BCM) # 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():
while True:
print "backward..."
backward(0.002, 512) # 512 steps --- 360 angle
print "stop..."
stop() # stop
time.sleep(1) # sleep 3s
print "forward..."
forward(0.003, 512)
print "stop..."
stop()
time.sleep(1)
def destroy():
GPIO.cleanup() # Release resource
if __name__ == '__main__': # Program start from here
setup()
try:
loop()
except KeyboardInterrupt: # When 'Ctrl+C' is pressed, the child function destroy() will be executed.
destroy()
阅读全文
0 0
- 树莓派 驱动步进电机 python版
- 树莓派驱动步进式电机python编程实现
- linux步进电机驱动
- 步进电机linux驱动
- 步进电机细分驱动
- STM32驱动步进电机
- 步进电机驱动基础
- 步进电机驱动芯片
- 四相八拍步进电机驱动
- 树莓派通过GPIO控制步进电机(python)
- 步进电机作小车驱动
- 基于LPC213步进电机驱动
- 常见步进电机驱动芯片
- 步进电机驱动方式总结
- NX300 步进电机驱动电路图
- 12.步进电机驱动实验
- STM32+ULN2003驱动步进电机
- 步进电机原理和驱动
- 数据结构之单链表
- 170520 cmd 下带参数执行python 文件
- jquery 对select中option的移动删除
- 求无向图的 割点和桥 【模版】
- 1116. Come on! Let's C (20)[map]
- 树莓派 驱动步进电机 python版
- JAVA反射机制
- 双向队列元素的插入与删除
- 数据中聚类个数的确定(Determining the number of clusters in a data set)
- 用树莓派做魔镜
- Git 日常使用的命令
- 如何把图像显示到picture控件中
- Spring Framework 精萃
- bootstrap列表添加滚动条