树莓派论坛

 找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
12
返回列表 发新帖
楼主: topzdx
收起左侧

舵机入门

[复制链接]
发表于 2012-10-24 12:10:04 | 显示全部楼层
T兄是好人啊,绝世好体。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2012-10-24 14:39:29 | 显示全部楼层

回 ukonline2000 的帖子

ukonline2000:3.3V想要驱动5V的舵机,电流需求更大,据我了解一般5V以上的舵机的电流都在100mA以上,树莓派的GPIO最大能提供40mA电流,对于树莓派来说,这是这将是不可承受的,所以,想驱动最好还是用驱动板,或者外接驱动芯片 (2012-10-24 11:35) 
据偶的理解,舵机的动力电是5V红线所供,控制线只要电平对于内部电路板正确,只传递PWM信号。
(不传递动力|功率),GPIO只要电平正确就能驱动,和单片机控制8050,8550,ULN2007等驱动130电机不同。

不知对否。(相当于驱动板内嵌在舵机内部了)
回复 支持 反对

使用道具 举报

发表于 2012-10-24 14:53:59 | 显示全部楼层

回 topzdx 的帖子

topzdx:据偶的理解,舵机的动力电是5V红线所供,控制线只要电平对于内部电路板正确,只传递PWM信号。
(不传递动力|功率),GPIO只要电平正确就能驱动,和单片机控制8050,8550,ULN2007等驱动130电机不同。

不知对否。(相当于驱动板内嵌在舵机内部了) (2012-10-24 14:39) 
是的,可以的
回复 支持 反对

使用道具 举报

发表于 2012-10-24 20:08:39 | 显示全部楼层
MARK一下,或许以后用的着
回复 支持 反对

使用道具 举报

 楼主| 发表于 2012-10-26 16:06:07 | 显示全部楼层
贴点资料。
    舵机的齿轮有塑胶及金属之区分,金属齿轮的舵机一般皆为大扭力及高速型,不会因负载过大而崩牙。
    较高级的舵机会装置滚珠轴承,使得转动时能更轻快精准。滚珠轴承有一个及二个的区别,当然是二个的比较好。
    目前新推出的 FET 舵机,主要是采用 FET(Field Effect Transistor)场效电晶体。FET 内阻低,因此电流效率较高,发热小。

 厂商所提供的舵机规格,包含外形尺寸(mm)、扭力(kg-cm)、速度(秒/60°)、测试电压(V)及重量(g)等。
扭力的单位是 kg-cm,意思是在摆臂长度 1 公分处,能吊起几公斤重的物体。这就是力臂的观念,因此摆臂长度愈长,则扭力愈小。
速度的单位是 sec/60°,意思是舵机转动 60°所需要的时间。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2012-10-26 16:08:46 | 显示全部楼层
  电压会直接影响舵机的性能,例如 Futaba S-9001 在 4.8V 时扭力为 3.9kg、速度为 0.22 秒,在 6.0V 时扭力为 5.2kg、速度为 0.18 秒。
    (若无特别注明,JR 的舵机都是以 4.8V 为测试电压,Futaba则是以 6.0V 作为测试电压。)

    速度快、扭力大的舵机,除了价格贵,还会伴随著高耗电的特点。因此使用高级的舵机时,务必搭配高品质、容量的电池,提供稳定充裕的电流,才可发挥舵机应有的性能。

------------
  Futaba 是模界很有名的东东,可惜价格......
  国产的不少牌子应该是仿 Futaba 的。
回复 支持 反对

使用道具 举报

发表于 2012-11-15 23:23:55 | 显示全部楼层
知识贴很不错
回复 支持 反对

使用道具 举报

发表于 2015-9-13 17:33:17 | 显示全部楼层
  1. #!/usr/bin/env python


  2. import time
  3. import RPi.GPIO as GPIO
  4. GPIO.setmode(GPIO.BCM)
  5. GPIO.setup(26, GPIO.OUT)

  6. p = GPIO.PWM(26, 50)
  7. p.start(0)
  8. try:
  9.     while 1:
  10.         for dc in range(0, 181, 10):
  11.             p.ChangeDutyCycle(2.5 + 10 * dc / 180)
  12.             time.sleep(0.02)
  13.             p.ChangeDutyCycle(0)
  14.             time.sleep(0.2)
  15.         for dc in range(180, -1, -10):
  16.             p.ChangeDutyCycle(2.5 + 10 * dc / 180)
  17.             time.sleep(0.02)
  18.             p.ChangeDutyCycle(0)
  19.             time.sleep(0.2)
  20. except KeyboardInterrupt:
  21.     pass
  22. p.stop()
  23. GPIO.cleanup()
复制代码


这是本人在网上找并整理的2b可用的代码,pin37连接sg90的控制,pin39连接驱动板的GND。
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|树莓派论坛 ( 粤ICP备15075382号-1  

GMT+8, 2024-11-25 17:29 , Processed in 1.125000 second(s), 20 queries , Gzip On.

Powered by Shumeipai.net! X3.2

© 2001-2015 树莓派论坛安全联盟

快速回复 返回顶部 返回列表