вторник, 15 мая 2018 г.

“Robot” Xylophone with CRICKIT @adafruit #adafruit @circuitpython #MakeRobotFriend the musical


“Robot” Xylophone with CRICKIT (video). Code is here.


# CircuitPython 3.0 CRICKIT demo

from digitalio import DigitalInOut, Direction, Pull

from adafruit_seesaw.seesaw import Seesaw

from adafruit_seesaw.pwmout import PWMOut

from adafruit_motor import servo, motor

from busio import I2C

import board

import time

import gc



i2c = I2C(board.SCL, board.SDA)

ss = Seesaw(i2c)



print("Crickit demo!")



# use the CPX onboard switch to turn on/off (helps calibrate)

switch = DigitalInOut(board.SLIDE_SWITCH)

switch.direction = Direction.INPUT

switch.pull = Pull.UP



#################### 4 Servos

servos = []

for ss_pin in (17, 16, 15, 14):

    pwm = PWMOut(ss, ss_pin)

    pwm.frequency = 50

    _servo = servo.Servo(pwm)

    _servo.angle = 90   # starting angle, middle

    servos.append(_servo)



#################### 2 DC motors

motors = []

for ss_pin in ((22, 23), (18, 19)):

    pwm0 = PWMOut(ss, ss_pin[0])

    pwm1 = PWMOut(ss, ss_pin[1])

    _motor = motor.DCMotor(pwm0, pwm1)

    motors.append(_motor)



servos[0].angle = 180



while True:

    if switch.value:

        # Switch is on, activate MUSIC POWER!



        # motor forward slowly

        motors[0].throttle = 0.2

        # mote the head forward slowly, over 0.9 seconds

        for a in range(180, 90, -1):

            servos[0].angle = a

            time.sleep(0.01)



        # motor stop

        motors[0].throttle = 0

        time.sleep(1)



        # motor backwards slowly

        motors[0].throttle = -0.2

        # move the head back slowly too, over 0.9 seconds

        for a in range(90, 180):

            servos[0].angle = a

            time.sleep(0.01)

        # calibration! its a *tiny* bit slower going back so give it a few ms

        time.sleep(0.007)



        # motor stop

        motors[0].throttle = 0

        time.sleep(1)

    else:

        # switch is 'off' so dont do anything!

        pass




from Adafruit Industries – Makers, hackers, artists, designers and engineers! https://ift.tt/2GgXfn2
via IFTTT

Комментариев нет:

Отправить комментарий

Know us

Our Team

Tags

Video of the Day

Contact us

Имя

Электронная почта *

Сообщение *