Beispiel #1
0
import time
from adafruit_servokit import ServoKit
import adafruit_pca9685
import board
import busio
import numpy as np
import imutils
kit = ServoKit(channels=16)
i2c = busio.I2C(board.SCL, board.SDA)
hat = adafruit_pca9685.PCA9685(i2c)
hat.frequency = 60
# Set channels to the number of servo channels on your kit.
# 8 for FeatherWing, 16 for Shield/HAT/Bonnet.
kit = ServoKit(channels=16)
Step = .1
Pos = 90
Start = 0
while (1):
    if Pos >= 170:
        Step *= -1

    elif Pos <= 10:
        Step *= -1
    Pos += Step
    #time.sleep(.1)
    kit.servo[3].angle = Pos
Beispiel #2
0
def setupPCA(self):
    self.i2c = busio.I2C(board.SCL, board.SDA)
    self.pca = adafruit_pca9685.PCA9685(self.i2c)
    self.pca.frequency = FREQUENCY
Beispiel #3
0
import board
import busio
from adafruit_servokit import ServoKit
import adafruit_pca9685
import time as time

i2c = busio.I2C(board.SCL, board.SDA)
servo = adafruit_pca9685.PCA9685(i2c)
kit = ServoKit(channels=16)

kit.servo[13].actuation_range = 360  #360
kit.servo[13].set_pulse_width_range(500, 3250)  #100,4000

while True:
    angle = int(input("Angle? between -135 and 135"))
    angle += 135
    kit.servo[13].angle = int(angle)
    time.sleep(1)

#kit.servo[11].angle = 180
#kit.servo[11].angle = 0

#kit.servo[13].angle= 50
#time.sleep(1)
#kit.servo[12].angle = 0
#kit.servo[13].angle = 0
#time.sleep(1)
Beispiel #4
0
from adafruit_servokit import ServoKit
import board
import busio
import adafruit_pca9685
import time
from adafruit_motor import servo, motor
from adafruit_motorkit import MotorKit

i2c = busio.I2C(board.SCL, board.SDA)
pca = adafruit_pca9685.PCA9685(i2c, address=0x40)
pca.frequency = 100

motor4 = motor.DCMotor(pca.channels[6], pca.channels[7])
motor4.decay_mode = (motor.SLOW_DECAY)

motor4.throttle = 1
time.sleep(3)
motor4.throttle = 0
time.sleep(3)
motor4.throttle = -1
time.sleep(3)
motor4.throttle = 0
"""i2c = busio.I2C(board.SCL, board.SDA)

pca = adafruit_pca9685.PCA9685(i2c)

pca.frequency = 50

servo0 = servo.Servo(pca.channels[8])
servo1 = servo.Servo(pca.channels[9])
#servo0.angle=90
Beispiel #5
0
#------------------------------------i2c - shield-trial 1-----------------------------------------------
import board
import busio
import adafruit_pca9685
import time
import adafruit_motor.servo
import Motor_angles
from analogio import AnalogIn
#i2c communication
i2c = busio.I2C(board.SCL, board.SDA)
#when motor shaft is connected to Potentiometer, the value is read using analog pin A4 on Trinket
analoginp = AnalogIn(board.A4)  #comment if not required
pcaobj = adafruit_pca9685.PCA9685(i2c)  # creating object for pca9685 library
pcaobj.frequency = 50  # set frequency
servo_channel = pcaobj.channels[
    0]  #select channel on pca9685 over which PWM must be generated
servo = adafruit_motor.servo.Servo(
    servo_channel)  #createing object for servo library
start_angle = 0.0  #start position of motor
stop_angle = 40.0  # stop position of motor
motobj = Motor_angles.Speed(start_angle,
                            stop_angle)  #creating object for motor_angles
li1 = motobj.incrDecr(
)  #returns a list of angles with the difference varying in fibonacci series manner
# print ('list is--',li1)
for each in li1:
    servo.angle = each
    #display Pot value. comment if Pot is not used
    print('Analog value from Pot is--',
          (analoginp.value * 3.3) / 65536)  #3.3V of Trinket in connect to Pot
    time.sleep(0.25)
#logging.basicConfig(level=logging.DEBUG)

adjustSize = 1
doneList = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11]

with open('calibrationProfile.txt') as calibration_profile:
    saves = json.load(calibration_profile)

dataSets = [saves["min"], saves["mid"], saves["max"]]
dataSetNames = ["min", "mid", "max"]
messages = [
    'Calibrating 0 degrees Servo ', 'Calibrating 90 degrees Sevo ',
    'Calibrating 180 degrees Servo '
]

pwm = adafruit_pca9685.PCA9685()
pwm.set_pwm_freq(60)


def dealJson():
    data = {}
    for i in range(3):
        data[dataSetNames[i]] = dataSets[i]
    with open('calibrationProfile.txt', 'w') as outfile:
        json.dump(data, outfile)


possibleKeys = [' ', 'w', 's', 'set']


def checkKeyPress():