Skip to content

Commit 2b0f7bc

Browse files
author
ladyada
committed
update
1 parent 1cfce7b commit 2b0f7bc

File tree

1 file changed

+17
-21
lines changed

1 file changed

+17
-21
lines changed

CLUE_plenbit_demo/code.py

Lines changed: 17 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -1,42 +1,35 @@
1-
# Simple demo for controlling the plen:bit robot
2-
# NOTE: MUST CUT MIDDLE TRACE ON PCA9685 ADDRESS JUMPER!
3-
4-
import time
51
import busio
62
import board
73
from digitalio import DigitalInOut, Direction
84
from adafruit_pca9685 import PCA9685
95
from adafruit_motor import servo
106

11-
i2c = busio.I2C(board.SCL, board.SDA)
12-
pca = PCA9685(i2c, address=0x68)
13-
pca.frequency = 50
147
led = DigitalInOut(board.P16)
158
led.direction = Direction.OUTPUT
16-
led.value = True
179

18-
while True:
19-
pass
10+
i2c = busio.I2C(board.SCL, board.SDA)
11+
pca = PCA9685(i2c, address=0x68)
12+
pca.frequency = 50
2013
servoSetInit = (1000, 630, 500, 600, 240, 600, 1000, 720)
2114
servoAngle = [1000, 630, 500, 600, 240, 600, 1000, 720]
2215
motionSpeed = 15
2316
servos = []
24-
for s in range(8):
25-
servos.append(servo.Servo(pca.channels[s], min_pulse=800, max_pulse=2200))
17+
for c in range(8):
18+
servos.append(servo.Servo(pca.channels[c], min_pulse=800, max_pulse=2200))
2619

2720
def servoInitialSet():
2821
print("Initialize servos")
29-
for n in range(8):
30-
servos[n].angle = servoSetInit[n] / 10
22+
for i in range(8):
23+
servos[i].angle = servoSetInit[i] / 10
3124

32-
def servoFree(serv = None):
33-
if serv:
34-
print("Release servo #", serv)
35-
servos[serv].angle = None
25+
def servoFree(n = None):
26+
if n:
27+
print("Release servo #", n)
28+
servos[n].angle = None
3629
else:
3730
print("Release all servos")
38-
for ser in servos:
39-
ser.angle = None
31+
for s in servos:
32+
s.angle = None
4033

4134
def servoWrite(num, degrees):
4235
degrees = min(max(degrees, 0), 180)
@@ -61,12 +54,15 @@ def setAngle(angle, msec):
6154
print(servoAngle)
6255

6356
servoInitialSet()
64-
time.sleep(1)
57+
58+
led.value = False
6559
setAngle([0, 0, -200, 0, 0, 0, 0, 0], 500)
6660
setAngle([0, 0, -1800, 0, 0, 0, 1800, 0], 500)
6761
setAngle([900, 0, -1800, 0, -900, 0, 1800, 0], 500)
6862
setAngle([900, 0, -200, 0, -900, 0, 0, 0], 500)
6963
setAngle([900, 0, -1800, 0, -900, 0, 1800, 0], 500)
7064
setAngle([900, 0, -200, 0, -900, 0, 0, 0], 500)
7165
setAngle([0, 0, -200, 0, 0, 0, 0, 0], 500)
66+
led.value = True
67+
7268
servoFree()

0 commit comments

Comments
 (0)