树莓派使用PCA9685舵机控制板控制舵机
首先在树莓派设置中打开IIC
sudo raspi-config
输入命令行
sudo apt-get install git build-essential python-devcd ~git clone https://github.com/adafruit/Adafruit_Python_PCA9685.gitcd Adafruit_Python_PCA9685sudo python3 setup.py install
安装之后在文件夹中输入命令行
ls
可以看到有个examples文件夹
打开文件夹,文件夹中有示例代码
#以下为python源程序#输入通道与角度。即可选通并使该通道的舵机转动到相应的角度
from __future__ import division #导入 __future__ 文件的 division 功能函数(模块、变量名....) #新的板库函数 //=
import time# Import the PCA9685 module.
import Adafruit_PCA9685 #导入Adafruit_PCA9685模块# Uncomment to enable debug output.
#import logging
#logging.basicConfig(level=logging.DEBUG) #调试打印日志输出# Initialise the PCA9685 using the default address (0x40).
pwm = Adafruit_PCA9685.PCA9685() #把Adafruit_PCA9685.PCA9685()引用地址赋给PWM标签# Alternatively specify a different address and/or bus:
#pwm = Adafruit_PCA9685.PCA9685(address=0x41, busnum=2)#2^12精度 角度转换成数值 #angle输入的角度值(0--180) #pulsewidth高电平占空时间(0.5ms--2.5ms) #/1000将us转换为ms #20ms时基脉冲(50HZ)
#pulse_width=((angle*11)+500)/1000; //将角度转化为500(0.5)<-->2480(2.5)的脉宽值(高电平时间) angle=180时 pulse_width=2480us(2.5ms)
#date/4096=pulse_width/20 ->有上pulse_width的计算结果得date=4096*( ((angle*11)+500)/1000 )/20 -->int date=4096((angle*11)+500)/20000;def set_servo_angle(channel, angle): #输入角度转换成12^精度的数值date=4096*((angle*11)+500)/20000 #进行四舍五入运算 date=int(4096*((angle*11)+500)/(20000)+0.5) pwm.set_pwm(channel, 0, date)# Set frequency to 50hz, good for servos.
pwm.set_pwm_freq(50)print('Moving servo on channel x, press Ctrl-C to quit...')
while True:# Move servo on channel O between extremes.channel=int(input('pleas input channel:'))angle=int(input('pleas input angle:'))set_servo_angle(channel, angle)#time.sleep(1)
python3运行
即可看见舵机旋转
树莓派使用PCA9685舵机控制板控制舵机相关推荐
- 树莓派C语言pca9685代码,树莓派,PCA9685 pwm控制
硬件: 1> 树莓派2/3 B板 2> PCA9685 16路驱动板: http://duinopeak.com/wiki/index.php?title=PCA9685_16%E8%B ...
- 学习 stm32(TTL)串口通信控制16路舵机控制板(维特智能)
学习STM32Core平台串口2连接维特智能串口Normal协议,然后通过串口1直接连接舵机控制板(TTL),接收进行通信:需要看产品文档的可以直接官网搜索文档. 16路舵机控制板官方产品网址 在查看 ...
- STM32控制舵机转动_从0到1
清单 STM32F103C8T6 1个,Jlink下载线 1根 MG90S舵机 1个 12V电源 1个,12V转5V降压模块(给舵机供电) 1个 杜邦线数根 MG90S舵机 如图所示,舵机有三根线,红 ...
- 树莓派使用PCA9685扩展(二)之驱动无刷电机(调)入坑指南
摘要 在上一篇<树莓派使用PCA9685扩展PWM驱动舵机入坑指南>中简单介绍了树莓派使用PCA9685驱动sg90的180°舵机的应用.本身因为想做无人机,所以就研究了下如何驱动无刷电机 ...
- 树莓派python控制舵机_使用树莓派控制16路舵机驱动板(pca9685)
使用树莓派控制16路舵机驱动板(pca9685) 在树莓派上,可以通过RPI.GPIO方便地输出PWM进行舵机控制. 使用RPI.GPIO 创建一个 PWM 实例: 1 p =GPIO.PWM(cha ...
- 树莓派4B通过16路PWM输出的PCA9685模块控制舵机(机械臂)附完整代码
树莓派4B通过16路PWM输出的PCA9685模块控制舵机(机械臂)附完整代码 文章目录 树莓派4B通过16路PWM输出的PCA9685模块控制舵机(机械臂)附完整代码 一. Servo Driver ...
- 《树莓派项目实战》第十二节 使用PCA9685驱动板控制多个舵机
目录 11.1 引脚介绍 11.2 打开I2C接口 11.3 连接到树莓派 11.4 编写代码获取温度 因为树莓派无法同时生成多个稳定的PWM信号,所以也就无法控制多个舵机,我们需要借助PCA9685 ...
- 树莓派4B使用PCA9685控制舵机
一.IIC通信 在raspi-config中的interface选项打开IIC通信 二.下载Adafruit_PCA9685包 pip3 install Adafruit_PCA9685 也可以去gi ...
- STM32控制16路舵机控制板PCA9685
介绍 PCA9685 是最新的快速模式 Plus(Fm+)系列中的一员. Fm+器件可以提供更高的频率 (高达 1MHz)和更频繁(densely populated) 的总线操作(高达 4000pF ...
最新文章
- [设计模式]外观模式
- linux重定向文件容加时间,linux – 如何在Bash中将stdout重定向到文件时添加时间戳?...
- Java Web学习总结(11)JDBC
- python学习笔记(七)——类基础
- 编写了html怎么测试,如何将测试结果写入HTMLTestRunner生成的报告标题中
- 测试人员该学习哪些Linux知识
- java一个和_你知道Java中和||放一个表达式中怎么执行吗-百度经验
- ajax 将整个表单提交到后台处理
- 万稞pw80线切割编程软件_现在模具设计,编程行业,还是很吃香的
- 全国电子设计大赛-电路模块准备
- PyTorch学习基础知识二
- c语言常见头文件大全,C语言头文件大全(free)
- 问题 J: LZY订单查询
- java imageio 保存_java-ImageIO保存回原始大小
- 计算机应用课程的体会,计算机课程心得体会
- 为了不手动命名驼峰变量名,我开发了一套油猴脚本...
- matlab如何形成exe,matlab生成exe独立运行包
- 转:ARM 与RealView
- 读书笔记_《统计陷阱》达莱尔.哈夫
- 微信服务号开发-获取用户位置信息
热门文章
- 开发Sony Ericsson XPERIA X1上的Windows Mobile 应用程序
- html5画板的使用方法,使用canvas实现画板
- 暗黑3显示无效的服务器,《暗黑3》为啥爆不出好装备?服务器IP决定你的人品...
- 系统架构领域的一些学习材料-林仕鼎
- python 视频转场_Python 带你高效创作短视频
- 机器人曲轴上下料_曲轴生产线自动上下料机器人的解决方案
- 互联网金融网贷平台技术架构介绍
- 武汉大学 杨必胜教授学术报告“点云三维信息提取与应用”心得体会与理解分析
- java float是_java中float是什么意思
- Fortran语言读取本地的in.txt文件