使用树莓派控制数字舵机
舵机的线一般是
棕 : GND
红 : VCC
黄: 控制线
我们把GND和VCC接好,然后控制线接到GPIO 16上。
此舵机的介绍说明上活动角度是180度,脉宽范围是500us-2500us,中立区1500us,死区2us,意思0度到180度对应500us到2500us,90度对应1500us。
脉宽就是矩形波中高电平那部分的时间长度,给一个高电平时长为500us的波,舵机就转动到0度的位置,给一个高电平是2500us的波,舵机就转到180度的位置,以此类推。
那我们就通过python造一个指定时长的高电平即可控制舵机,将下面代码保存为duoji,py
# -*- coding: utf-8 -*-
import sys
import RPi.GPIO as GPIO
import time
GPIO.setmode(GPIO.BCM)
GPIO.setup(16, GPIO.OUT)
GPIO.output(16, GPIO.HIGH)
time.sleep(0.0001*float(sys.argv[1]))
GPIO.output(16, GPIO.LOW)
GPIO.cleanup()
调用命令 python duoji,py 5
然后舵机就转到0度位置了。
如果要控制转动速度的话,就只能自己每隔一段时间设一个角度来模仿缓慢转动。