0

“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



Join 5,000+ makers on Adafruit’s Discord channels and be part of the community! http://adafru.it/discord

CircuitPython in 2018 – Python on Microcontrollers is here!

Have an amazing project to share? Join the SHOW-AND-TELL every Wednesday night at 7:30pm ET on Google+ Hangouts.

Join us every Wednesday night at 8pm ET for Ask an Engineer!

Follow Adafruit on Instagram for top secret new products, behinds the scenes and more https://www.instagram.com/adafruit/


Maker Business — A journey through Shenzhen, the electronics manufacturing hub of the world

Wearables — Ice, ice baby

Electronics — Current limiting!

Biohacking — Grindfest 2018

Python for Microcontrollers — CRICKITs are coming!

Get the only spam-free daily newsletter about wearables, running a "maker business", electronic tips and more! Subscribe at AdafruitDaily.com !



No Comments

No comments yet.

Sorry, the comment form is closed at this time.