知识点:
树莓派GPIO控制步进电机的正转一定角度和反转一定角度

下面是我用的步进电机:
步进电机28BYJ-48名称含义:
28:表示步进电机的有效最大外径为28毫米
B: 表示步进电机“步”字汉语拼音首字母
Y: 表示永磁式“永”字汉语拼音首字母
J: 表示减速型“减”字汉语拼音首字母
BYJ: 组合即为永磁式减速步进电机
48:表示四相八拍
5V:表示额定电压为5V,且为直流电压

下面是我用的步进电机相关信息:
因为步进电机必须加脉冲信号才可以运转,如果没有脉冲信号,步进电机则静止。步进电机接收到一个脉冲信号,其转动一定角度,该角度叫步距角度。其中减速比为1/64的意思是电机内部转64圈,电机外部才相应地转1圈,而这个步进电机是四相八拍的,八拍中一拍就是一个脉冲信号,完成一个内循环要8个脉冲信号。
下面是代码:

import RPi.GPIO as GPIO
import time
from PIL import Imagedelay=2 #延时 2mspin_12 = 12
pin_32 = 32
pin_33 = 33
pin_35 = 35GPIO.setmode(GPIO.BOARD) #设置引脚的编码方式def init():GPIO.setwarnings(False)GPIO.setup(pin_12, GPIO.OUT)GPIO.setup(pin_32, GPIO.OUT)GPIO.setup(pin_33, GPIO.OUT)GPIO.setup(pin_35, GPIO.OUT)def setStep(w1, w2, w3, w4):GPIO.output(pin_12, w1)GPIO.output(pin_32, w2)GPIO.output(pin_33, w3)GPIO.output(pin_35, w4)def zhengzhuan(delay):  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 fanzhuan(delay): 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) p = int(input()) #输入想转的角度:1.360度  2.180度 3.135度 4.45度
init()
while True:if p != 0:if p == 1:for i in range(0,512,1): #正转360度,延时1秒,反转360度zhengzhuan(int(delay) / 1000.0)time.sleep(1)for i in range(0,512,1):fanzhuan(int(delay) / 1000.0)if p == 2:for i in range(0,256,1): #正转180度,延时1秒,反转180度zhengzhuan(int(delay) / 1000.0)time.sleep(1)for i in range(0,256,1):fanzhuan(int(delay) / 1000.0)if p == 3:for i in range(0,192,1): #正转135度,延时1秒,反转135度fanzhuan(int(delay) / 1000.0)time.sleep(1)for i in range(0,192,1):zhengzhuan(int(delay) / 1000.0)if p == 4:for i in range(0,64,1):  #正转45度,延时1秒,反转45度fanzhuan(int(delay) / 1000.0)time.sleep(1)for i in range(0,64,1):zhengzhuan(int(delay) / 1000.0)break
GPIO.cleanup()

学习心得:步进电机对角度的控制这是我认为比较难的地方,开始是错误地认为要调PWM占空比来控制角度(后来才发现它和舵机不一样

树莓派控制步进电机转动一定角度相关推荐

  1. 51单片机通过按钮控制步进电机正反转角度

    51单片机通过按钮控制步进电机正反转角度

  2. python控制树莓派马达_树莓派控制步进电机

    要想使用树莓派制作只能小车,需要先学会控制步进电机,下面就是用python控制28BJY-48步进电机和ULN2003控制板的代码: #!/usr/bin/python #引入需要的库 import ...

  3. python控制电机_利用树莓派控制步进电机——Python语言

    步进电机的优点在于它能够被精确定位,正向或反向一次性转动"一步",并且也能够连续转动. #!/usr/bin/env python ######################## ...

  4. arduino步进电机程序库_Arduino入门教程15(步进电机驱动库的使用):Arduino Uno R3+ULN2003+步进电机 使用Stepper驱动库,控制步进电机转动角度...

    本篇介绍步进电机驱动库的使用,通过读取电位器输入,控制步进电机转动相应角度. Stepper库是官方提供的驱动库,我们启动Arduino IDE,点击「文件」-「示例」就能找到Stepper库,官方提 ...

  5. 树莓派pwm java 步进电机_java控制步进电机

    树莓派通过脉冲宽度调制可以控制电机的速度.实际上在精度要求不是非常高的情况下,普通引脚也可以通过软件模拟来控制电机,实现pwm一样的功能.pwm功能可以控制直流电机的速度,同时,也可以控制步进电机的步 ...

  6. 树莓派harmonyos,【树莓派入门】(三)| 树莓派如何控制步进电机

    树莓派这个东西,一定要亲自动手玩一玩,多实践.所以,我打算录几期视频带大家动手做一做东西.估计要等到下半年,因为目前宿舍地方有限. 上一次我们说到了如何控制超声波传感器,这一次我们来介绍一下如何控制步 ...

  7. 树莓派控制57步进电机

    一.简介 使用树莓派控制57步进电机. 二.硬件设备 57两相四线步进电机 ×1 DM542驱动器 ×1 树莓派 ×1 3.3V-5V电平转换 ×1 24V / 36V电源 ×1 三孔带插头单头裸尾电 ...

  8. python控制电机_树莓派使用Python控制步进电机

    步进电机和普通电机最大的不同是步进电机可以更加精确地旋转,这个特性使得它们在各种树莓派项目中得到广泛运用. 步进电机选择 市面上有很多步进电机可供选择,最后我们还是决定使用ULN2003控制板和28B ...

  9. micro python控制步进电机精确转动一定角度

    一.步进电机的步距角和减速比 步进电机28BYJ-48有两种驱动模式:4拍和8拍,分别对应为: 4拍:A->B->C->D 8拍:A->AB->B->BC-> ...

最新文章

  1. CentOS 6.3下rsync服务器的安装与配置[转]
  2. 小程序 | 微信小程序实现图片是上传、预览功能
  3. Node.js: 深入浅出Nodejs读书笔记
  4. 【今日CV 计算机视觉论文速览】Fri, 22 Feb 2019
  5. 疫情中该如何保证高效远程办公(1)-员工到底是在家办公,还是在家躺着??
  6. android Fragments (Android官方文档中文版)
  7. 简易OA漫谈之工作流设计(一个Demo),完成6年前的一个贴子
  8. 了解单片机解密的一些知识
  9. windows 下关闭135 139 445等危险端口
  10. vector begin()用法
  11. 分布式数据库NoSQL(五)——MongoDB 之滴滴、摩拜都在用的索引
  12. 自动驾驶技术-环境感知篇:V2X技术的介绍
  13. 充电系统(交流慢充,直流快充)
  14. 服务器开机后,自动启动某程序,并且打开Google浏览器,全屏展示
  15. 双软认证企业税收优惠政策
  16. 将PPT导出图片分辨率提高的方法
  17. 微服务分布式构架开发实战PDF,阿里架构师推荐,快快收藏吧
  18. 复选框的name属性
  19. LETO型空间光调制器(SLM)的安装
  20. JS下载图片保存在本地

热门文章

  1. Android上基于HSV颜色模型实现取色盘功能
  2. Matlab/simulink 风电并网系统,风电调频,三机九节点,四机两区,ieee39。潮流计算,一次调频GOV,PSS,AVR。
  3. qqlite 插件开发总结
  4. [译]HIPAA要求的SSL/TLS等级
  5. Mendix架构体系概述(三)- 完结篇
  6. 计算机音乐发展开题报告,求:一篇音乐论文开题报告和5000字的有关音乐的论文...
  7. 校招真题练习035 最少立方数之和(小米)
  8. vue3+ts引入百度地图
  9. 描述cookie隔离的好处_综合一
  10. deepin 团队_深度系统(Deepin)浅度体验记——应用软件篇