树莓派实现移动拍照


Posted in Python onJune 22, 2019

驱动树莓派gpio的中间层库函数有wiringPi,BCM2835,以及PRi.GPIO,这里我选择使用Python语言开发的PRi.GPIO。

1、安装RPi.GPIO

(1)先安装python-dev,输入以下指令。

sudo apt-get install python-dev

(2)安装RPi.GPIO

wget https://pypi.python.org/packages/source/R/RPi.GPIO/RPi.GPIO-0.5.11.tar.gz
#解压:
tar -zxvf RPi.GPIO-0.5.11.tar.gz
#进入解压之后的目录 :
cd RPi.GPIO-0.5.3a
#启动安装 :
sudo python setup.py install

2、编写驱动电机的程序

(1)树莓派与XY-160D驱动板连接方法

# 树莓派供电:
# 5V电源正极接到树莓派4号5V电源引脚,负极接到树莓派39号GND引脚
# 树莓派绿色ATC灯闪烁则SD卡正在运行,红色PWR灯常亮则供电正常
# 更多指示灯状态请参照:树莓派LED指示灯状态的解释

#
# 驱动板电源端供电:
# 14.8V电源接驱动板电源端正极,电源负极接驱动板电源端负极
#
# 驱动板信号端供电:
# 树莓派1号引脚3.3V接到驱动板信号端+5V引脚,14号引脚GND接到驱动板信号端GND引脚
# 驱动板供电正常则DS1指示灯亮起

(2)代码

使用一段简单的电机驱动代码进行测试,新建motor_drive.py文件,添加如下代码并保存:

#!/usr/bin/python2
#coding=utf-8
import RPi.GPIO as GPIO
import time
 
# 初始化设置引脚输出
IN1 = 12     #11号引脚对应GPIO0,12号引脚对应GPIO1
IN2 = 11     #11号与12号引脚分别接到驱动板IN2,IN1引脚,控制其中一侧电机
IN3 = 13     #13号引脚对应GPIO2,15号引脚对应GPIO3
IN4 = 15     #13号与15号引脚分别接到驱动板IN3,IN4引脚,控制另一侧电机
def init():
  GPIO.setmode(GPIO.BOARD) #设置GPIO编码为物理引脚BOARD编码
  GPIO.setup(IN1, GPIO.OUT)
  GPIO.setup(IN2, GPIO.OUT)
  GPIO.setup(IN3, GPIO.OUT)
  GPIO.setup(IN4, GPIO.OUT)
 
# 所有引脚置低电平,用于复位、停止运行的功能
def reset():
  GPIO.output(IN1, GPIO.LOW)
  GPIO.output(IN2, GPIO.LOW)
  GPIO.output(IN3, GPIO.LOW)
  GPIO.output(IN4, GPIO.LOW)
  
def forward(): 
  GPIO.output(IN1, GPIO.HIGH)
  GPIO.output(IN2, GPIO.LOW)
  GPIO.output(IN3, GPIO.HIGH)
  GPIO.output(IN4, GPIO.LOW)
def back():
  GPIO.output(IN1, GPIO.LOW)
  GPIO.output(IN2, GPIO.HIGH)
  GPIO.output(IN3, GPIO.LOW)
  GPIO.output(IN4, GPIO.HIGH)
 
def stop():
  reset()
if __name__ == "__main__":
  init()
  reset()
  try:
   while True:
    forward()
    time.sleep(5)
    stop()
    time.sleep(1)    
    back()
    time.sleep(1)
    stop()
    time.sleep(1)
  except KeyboardInterrupt:
   print("except")
   stop()
  GPIO.cleanup()

执行程序,按Ctrl + c结束程序

sudo python motor_drive.py

注:

(1)#!/usr/bin/env python,定义python解析脚本的绝对路径。
(2)# -*- coding: utf-8 -*- ,python文件为utf-8格式,否则无法写入中文注释。
(3)GPIO.setmode(GPIO.BOARD),采用board编号方式。
(4)python程序使用try except语言,当按下Ctrl+C结束程序是会触发异常,程序执行gpio.cleanup()语句清楚GPIO管脚状态。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python中获取网页状态码的两个方法
Nov 03 Python
Python中对象迭代与反迭代的技巧总结
Sep 17 Python
Python下载网络小说实例代码
Feb 03 Python
Python selenium抓取微博内容的示例代码
May 17 Python
通过Python模块filecmp 对文件比较的实现方法
Jun 29 Python
对python GUI实现完美进度条的示例详解
Dec 13 Python
Python学习笔记之列表推导式实例分析
Aug 13 Python
python jenkins 打包构建代码的示例代码
Nov 29 Python
python GUI库图形界面开发之PyQt5中QWebEngineView内嵌网页与Python的数据交互传参详细方法实例
Feb 26 Python
tensorflow使用freeze_graph.py将ckpt转为pb文件的方法
Apr 22 Python
Python OpenCV去除字母后面的杂线操作
Jul 05 Python
python 模拟登陆163邮箱
Dec 15 Python
树莓派+摄像头实现对移动物体的检测
Jun 22 #Python
Python数据结构与算法(几种排序)小结
Jun 22 #Python
python+opencv实现摄像头调用的方法
Jun 22 #Python
python算法与数据结构之冒泡排序实例详解
Jun 22 #Python
分析运行中的 Python 进程详细解析
Jun 22 #Python
机器学习实战之knn算法pandas
Jun 22 #Python
解决py2exe打包后,总是多显示一个DOS黑色窗口的问题
Jun 21 #Python
You might like
apache+codeigniter 通过.htcaccess做动态二级域名解析
2012/07/01 PHP
PHP实现下载功能的代码
2012/09/29 PHP
简单理解PHP的面向对象编程方式
2016/05/17 PHP
php使用Jpgraph创建3D饼形图效果示例
2017/02/15 PHP
tp5框架使用composer实现日志记录功能示例
2019/01/10 PHP
关于捕获用户何时点击window.onbeforeunload的取消事件
2011/03/06 Javascript
JavaScript学习笔记(二) js对象
2011/10/25 Javascript
网页加载时页面显示进度条加载完成之后显示网页内容
2012/12/23 Javascript
原生js实现日期联动
2015/01/12 Javascript
jQuery获取当前点击的对象元素(实现代码)
2016/05/19 Javascript
JS实现中英文混合文字溢出友好截取功能
2018/08/06 Javascript
JavaScript中set与get方法用法示例
2018/08/15 Javascript
详解Node.js中path模块的resolve()和join()方法的区别
2018/10/29 Javascript
vue通信方式EventBus的实现代码详解
2019/06/10 Javascript
一步一步实现Vue的响应式(对象观测)
2019/09/02 Javascript
Javascript模块化机制实现原理详解
2020/04/02 Javascript
js实现前端界面导航栏下拉列表
2020/08/27 Javascript
python实现文件名批量替换和内容替换
2014/03/20 Python
Python进阶之递归函数的用法及其示例
2018/01/31 Python
python字符串循环左移
2019/03/08 Python
详解django使用include无法跳转的解决方法
2020/03/19 Python
python中time、datetime模块的使用
2020/12/14 Python
python 使用openpyxl读取excel数据
2021/02/18 Python
html5 分层屏幕适配的方法
2018/03/16 HTML / CSS
详解Html5 Canvas画线有毛边解决方法
2018/03/01 HTML / CSS
阿根廷网上配眼镜:SmartBuyGlasses阿根廷
2016/08/19 全球购物
中国宠物用品商城:E宠商城
2016/08/27 全球购物
企事业单位求职者的自我评价
2013/12/28 职场文书
大四本科生的自我评价
2013/12/30 职场文书
公司司机岗位职责
2014/02/07 职场文书
关爱留守儿童倡议书
2014/04/15 职场文书
亲子运动会的活动方案
2014/08/17 职场文书
元旦联欢晚会主持词
2015/07/01 职场文书
重阳节主题班会
2015/08/17 职场文书
分享15个Webpack实用的插件!!!
2021/03/31 Javascript
html+css实现环绕倒影加载特效
2021/07/07 HTML / CSS