py控制gpio,舵机来回转程序
py控制gpio,舵机来回转程序
捍卫机密 发表于1年前
py控制gpio,舵机来回转程序
  • 发表于 1年前
  • 阅读 282
  • 收藏 0
  • 点赞 0
  • 评论 0

标题:腾讯云 新注册用户域名抢购1元起>>>   

摘要: 就是180度来回转,原始程序别人写的,自己改进过

# 这就是一个控制舵机大概模式  自学记录

# 树莓派上运行精度还行,香蕉派上精度不足,非常不足。控制机器人之类必须要加pwm发生芯片

#!/usr/bin/env python
# -*- coding:utf-8 -*-

import RPi.GPIO as GPIO
import time
import signal
import atexit
import sys

# 清理gpio口
atexit.register(GPIO.cleanup)

# 使用gpio22口
servopin = 22
# 设置gpio模式
GPIO.setmode(GPIO.BCM)
# 设置
GPIO.setup(servopin, GPIO.OUT, initial=False)
# 定义50HZ赫兹
gp = GPIO.PWM(servopin,50)
# 从0 开始
gp.start(0)
# 先休息2毫秒?
time.sleep(2)
x = 0

def l(p):
  """设置0-180度 每15度一算占空比"""
  for i in range(0, 181, 15):
    x1=2.5 + 10 * i / 180
    p.ChangeDutyCycle(x1)
    time.sleep(0.1)
    p.ChangeDutyCycle(0)
    time.sleep(0.2)
    #print i


def r(p):
  """设置180-0度 每15度一算占空比"""
  for i in range(181, 0, -15):
    x2=2.5 + 10 * i / 180
    p.ChangeDutyCycle(x2)
    time.sleep(0.1)
    p.ChangeDutyCycle(0)
    time.sleep(0.2)
    #print i

while(True):
  """循环上面过程。其实就是舵机 180度 来回转"""
  x+=1
  print 'change...', x
  l(gp)
  print 'change...', x + 1
  r(gp)
 

标签: PWM
共有 人打赏支持
粉丝 3
博文 109
码字总数 30525
×
捍卫机密
如果觉得我的文章对您有用,请随意打赏。您的支持将鼓励我继续创作!
* 金额(元)
¥1 ¥5 ¥10 ¥20 其他金额
打赏人
留言
* 支付类型
微信扫码支付
打赏金额:
已支付成功
打赏金额: