文档章节

py控制gpio,舵机来回转程序

捍卫机密
 捍卫机密
发布于 2016/12/08 23:04
字数 264
阅读 287
收藏 0
点赞 0
评论 0
PWM

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

# 树莓派上运行精度还行,香蕉派上精度不足,非常不足。控制机器人之类必须要加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)
 

© 著作权归作者所有

共有 人打赏支持
捍卫机密
粉丝 3
博文 114
码字总数 34202
作品 0
成都
程序员
pcDuino在使用GPIO控制舵机时能够用多线程吗?

曾经在arduino制作超声波避障小车,在控制动力电机、摇头舵机的同时还要读取超声波测距,最后效果不是特别理想。 pcDuino既然是32位linux系统,不知道能不能在控制GPIO输入输出的时候使用多线...

e休 ⋅ 2014/04/06 ⋅ 1

STM32——遥控小车从设计到实现详细记录

这次边做边写,基本上把做proj的整个步骤记录下来,包括中间的思考过程,也挺有意思的 小车主控板思路 主控板需要完成的功能: 1.接受传输过来的数据 2.根据数据控制电机PWM 3.根据数据控制舵...

hustcw98 ⋅ 04/14 ⋅ 0

【树莓派+.NET MF打造视频监控智能车】控制篇(.NET MF)

在上一篇《遥控篇》文章中,我们介绍了SonyPS2手柄信号的采集和编程,通过简单的封装,以事件的方式向我们提供按键信息。本篇文章主要介绍.NET Micro Framework系统接受到按键信息后,如何驱...

刘洪峰iot ⋅ 2014/01/26 ⋅ 0

kiwiboard运行demo_servo

这个例子的代码在 https://github.com/kiwiboard/kiwiboard/tree/master/src/demo_servo 通过arduino实现舵机转动的一个小例子,整个过程挺简单的。就是在装usb驱动上费了些劲。 首先下载adk...

blindcat ⋅ 2013/05/24 ⋅ 1

数码舵机常见问题原理分析

一、数码舵机与模拟舵机的区别 传统模拟舵机和数字比例舵机(或称之为标准舵机)的电子电路中无MCU微控制器,一般都称之为模拟舵机。老式模拟舵机由功率运算放大器等接成惠斯登电桥,根据接收...

酸酸苹果汁 ⋅ 2014/04/03 ⋅ 0

[Micropython]TPYBoard v10x 驱动舵机教程

上篇帖子简单的介绍了下TPYBoard 拼插编程的小实验,今天又试了试能不能控制舵机,自己操作了下,拼插编程相比于敲代码最大的缺点就是效率降低了,当然可能是我不熟练的原因,但是对于刚入门...

bodasisiter ⋅ 04/13 ⋅ 0

Micropython实例之DIY超声波避障小车

当今发达的交通在给人们带来便捷的同时也带来了许多的交通事故。人们遇到紧急事情处理超时是造成因素的主要原因之一。如果我们的汽车更加智能,事先能预测并显示前面障碍物距离车的距离,当障...

bodasisiter ⋅ 06/05 ⋅ 0

盛辉SG90舵机 51单片机PWM控制程序 手机屏幕触控

前阵子刷手游,一直要点击屏幕,刚好手上有个sg90舵机,就简单做一个触控手机屏幕的小制作。 效果如图: 因为之前没用过舵机,上网搜索了一下,发现文章比较少,参考了这博客,写了个最简单的...

silentlambj ⋅ 01/28 ⋅ 0

用Python控制pcDuino的GPIO

Python 是一种容易掌握,容易上手,容易集成到系统中去的语言。Python在pcDuino 20130531版本中预装了Python。 Python的例子程序可以在 github https://github.com/pcduino/python-pcduino 上...

pc朵拉 ⋅ 2013/07/25 ⋅ 1

基于pcDuino的WiFi实时视频监控智能小车——硬件部分(一)

一、组装前准备工具: 斜口钳、尖嘴钳、3毫米套筒、2毫米一字螺丝刀、3毫米十字螺丝刀、5毫米十字螺丝刀、万用表电烙铁、焊锡、胶带、镊子、壁纸刀(可能用到的工具还不止这些,只要好用大家...

pc朵拉 ⋅ 2013/07/30 ⋅ 0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

浅谈springboot Web模式下的线程安全问题

我们在@RestController下,一般都是@AutoWired一些Service,由于这些Service都是单例,所以并不存在线程安全问题。 由于Controller本身是单例模式 (非线程安全的), 这意味着每个request过来,...

算法之名 ⋅ 今天 ⋅ 0

知乎Java数据结构

作者:匿名用户 链接:https://www.zhihu.com/question/35947829/answer/66113038 来源:知乎 著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。 感觉知乎上嘲讽题主简...

颖伙虫 ⋅ 今天 ⋅ 0

Confluence 6 恢复一个站点有关使用站点导出为备份的说明

推荐使用生产备份策略。我们推荐你针对你的生产环境中使用的 Confluence 参考 Production Backup Strategy 页面中的内容进行备份和恢复(这个需要你备份你的数据库和 home 目录)。XML 导出备...

honeymose ⋅ 今天 ⋅ 0

JavaScript零基础入门——(九)JavaScript的函数

JavaScript零基础入门——(九)JavaScript的函数 欢迎回到我们的JavaScript零基础入门,上一节课我们了解了有关JS中数组的相关知识点,不知道大家有没有自己去敲一敲,消化一下?这一节课,...

JandenMa ⋅ 今天 ⋅ 0

火狐浏览器各版本下载及插件httprequest

各版本下载地址:http://ftp.mozilla.org/pub/mozilla.org//firefox/releases/ httprequest插件截至57版本可用

xiaoge2016 ⋅ 今天 ⋅ 0

Docker系列教程28-实战:使用Docker Compose运行ELK

原文:http://www.itmuch.com/docker/28-docker-compose-in-action-elk/,转载请说明出处。 ElasticSearch【存储】 Logtash【日志聚合器】 Kibana【界面】 答案: version: '2'services: ...

周立_ITMuch ⋅ 今天 ⋅ 0

使用快嘉sdkg极速搭建接口模拟系统

在具体项目研发过程中,一旦前后端双方约定好接口,前端和app同事就会希望后台同事可以尽快提供可供对接的接口方便调试,而对后台同事来说定好接口还仅是个开始、设计流程,实现业务逻辑,编...

fastjrun ⋅ 今天 ⋅ 0

PXE/KickStart 无人值守安装

导言 作为中小公司的运维,经常会遇到一些机械式的重复工作,例如:有时公司同时上线几十甚至上百台服务器,而且需要我们在短时间内完成系统安装。 常规的办法有什么? 光盘安装系统 ===> 一...

kangvcar ⋅ 昨天 ⋅ 0

使用Puppeteer撸一个爬虫

Puppeteer是什么 puppeteer是谷歌chrome团队官方开发的一个无界面(Headless)chrome工具。Chrome Headless将成为web应用自动化测试的行业标杆。所以我们很有必要来了解一下它。所谓的无头浏...

小草先森 ⋅ 昨天 ⋅ 0

Java Done Right

* 表示难度较大或理论性较强。 ** 表示难度更大或理论性更强。 【Java语言本身】 基础语法,面向对象,顺序编程,并发编程,网络编程,泛型,注解,lambda(Java8),module(Java9),var(...

风华神使 ⋅ 昨天 ⋅ 0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部