树莓派使用python 控制G90舵机
来源:互联网 发布:上海交大网络教育网 编辑:程序博客网 时间:2024/05/04 11:42
SG90 一共三根线,红线接5v电源,棕线gnd,黄线为数据控制线,该线接到GPIO上,这里使用BCM模式下的21引脚
SG90 脉冲周期为20ms,脉宽0.5ms-2.5ms对应的角度-90到+90,对应的占空比为2.5%-12.5%注意:(在规定范围内) 给多少占空比 有且只有一个角度和它对应
1.首先安装python库和gpio库
2.基于python 的编程,编写sg90.py
#!/usr/bin/env python
import RPI.GPIO as GPIO
import time
import signal
import atexit
atexit.register(GPIO.cleanup)
servopin=21
GPIO.setmode(GPIO.BCM)
GPIO.setup(servopin,GPIO.OUT,initial=False)
p=GPIO.PWM(servopin,50)
p.start(0)
time.sleep(2)
while(True):
注意:
1.在python 语言下
2.程序中 p.ChangeCutyCycle()是指占空比
________________________________________________________
SG90一共三根线,红线接5V电源,棕线GND。黄线为数据控制线,该线接到GPIO上,这里我们是BCM模式的pin 21.
SG90 脉冲周期为20毫秒(millisecond) 不是20微秒(Microsecond),两者差1000倍呢!也就是说最多1秒钟内可以转动50次,但是考虑到每次转动还要耗时,所以实际达不到50次。PWM控制信号周期20ms,脉宽0.5ms-2.5ms对应的角度-90到+90度,范围180度(3度左右偏差),当脉宽1.5ms时舵机在中立点(0度),我们直接用Python的GPIO提供的PWM控制。脉宽0.5ms-2.5ms 对应的占空比为2.5% - 12.5% (脉宽/周期=0.5/20-2.5/20). 理论上,10%的空间可以提供180度的线性分割。
下面的代码可以看到舵机不停的从0度转到180度,再转回来到0度。
// 注
1.时间单位换算时间单位还有: 毫秒(ms)、微秒 (μ s)、纳秒(ns)、皮秒(ps)、飞秒(fs)、阿秒、渺秒 1 s = 10^3 ms = 10^6 us = 10^9 ns = 10^...
2.PWM就是脉冲宽度调制的英文缩写,方波高电平时间跟周期的比例叫占空比,例如1秒高电平1秒低电平的PWM波占空比是50%
3.占空比是指高电平在一个周期之内所占的时间比率.方波的占空比为50%,占空比为0.5,说明正电平所占时间为0.5个周期.
- 树莓派使用python 控制G90舵机
- 树莓派控制SG90舵机
- 树莓派控制SG90舵机
- 舵机控制
- 舵机控制
- 舵机控制
- 舵机控制
- 舵机控制
- 使用51单片机输出PWM控制舵机
- 基于树莓派的舵机控制原理
- 树莓派pca9685舵机驱动板python驱动
- Arduino 摇杆控制 舵机
- arduino-摇杆控制舵机
- Arduino之舵机控制
- Arduino舵机控制1
- FPGA控制舵机转动
- STM32控制舵机转动
- 舵机控制原理
- Memcached 未授权访问漏洞及加固
- python中多参数*args和**kargs学习
- 手机连接不上IIS网站(站点)
- 如何利用form表单提交文件,和SSM如何接收文件参数,并写入到指定路径下的文件中
- 寒假第七天
- 树莓派使用python 控制G90舵机
- mkfs.jffs2参数详解
- perl json unicode 编码转换
- 单片机设置时间。
- 初见OMNET++仿真工具面孔
- 相机姿态可视化——谢晓佳(转载自泡泡机器人)
- ListView、GridView等控件实现刷新
- 贴片陶瓷电容的NPO、C0G、X7R、X5R、Y5V、Z5U辨析
- 5