# HG changeset patch # User Radomir Dopieralski # Date 1494859391 -7200 # Node ID 48c36bed0f61a41b598d3a458885d189303601e4 Initial commit diff -r 000000000000 -r 48c36bed0f61 mu_code/bot.py --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/mu_code/bot.py Mon May 15 16:43:11 2017 +0200 @@ -0,0 +1,125 @@ +import microbit +import radio + +class Servo: + def __init__(self, pin, trim=0): + self.pin = pin + self.trim = trim + self.position = 90 + self.set_period() + + def set_period(self): + self.pin.set_analog_period(20) + self.write(self.position) + microbit.sleep(80) + self.pin.set_analog_period(20) + self.write(self.position) + microbit.sleep(80) + self.pin.write_analog(0) + + def write(self, degrees): + self.pin.write_analog(int(25 + 100 * degrees / 180 + self.trim)) + self.position = degrees + + def move(self, degrees, delay=8): + if degrees > self.position: + step = 1 + else: + step = -1 + for position in range(self.position, degrees, step): + self.write(position) + microbit.sleep(delay) + + +class Robot: + NORMAL_FACE = microbit.Image( + "42024\n" + "90009\n" + "00000\n" + "61016\n" + "27972\n" + ) + LEFT_FACE = microbit.Image( + "24024\n" + "09009\n" + "00000\n" + "81001\n" + "28952\n" + ) + RIGHT_FACE = microbit.Image( + "42042\n" + "90090\n" + "00000\n" + "10018\n" + "25983\n" + ) + + def __init__(self): + self.feet_servo = Servo(microbit.pin2, -2) + self.left_servo = Servo(microbit.pin1, 2) + self.right_servo = Servo(microbit.pin0, 2) + microbit.display.show(self.NORMAL_FACE) + + def right_step(self): + microbit.display.show(self.RIGHT_FACE) + self.feet_servo.move(130) + self.left_servo.move(70) + self.right_servo.move(70) + self.feet_servo.move(90) + + def left_step(self): + microbit.display.show(self.LEFT_FACE) + self.feet_servo.move(50) + self.right_servo.move(110) + self.left_servo.move(110) + self.feet_servo.move(90) + + def right_half_step(self): + microbit.display.show(self.NORMAL_FACE) + self.feet_servo.move(110) + self.left_servo.move(90) + self.right_servo.move(90) + self.feet_servo.move(90) + + def left_half_step(self): + microbit.display.show(self.NORMAL_FACE) + self.feet_servo.move(70) + self.right_servo.move(90) + self.left_servo.move(90) + self.feet_servo.move(90) + + + def walk(self, steps=1): + step = 0 + for step in range(steps - 1): + if step % 2: + self.left_step() + else: + self.right_step() + if step % 2: + self.right_half_step() + else: + self.left_half_step() + + +robot = Robot() +radio.on() +left_leg = True +command = None +while True: + received = None + while received is not None: + command = received + received = radio.receive() + if command == 'step': + if left_leg: + robot.right_step() + else: + robot.left_step() + left_leg = not left_leg + elif command == 'stop': + if left_leg: + robot.right_half_step() + else: + robot.left_half_step() + command = None \ No newline at end of file diff -r 000000000000 -r 48c36bed0f61 mu_code/remote.py --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/mu_code/remote.py Mon May 15 16:43:11 2017 +0200 @@ -0,0 +1,9 @@ +import microbit +import radio + +radio.on() +while True: + if microbit.button_a.was_pressed(): + radio.send('step') + elif microbit.button_b.was_pressed(): + radio.send('stop') \ No newline at end of file diff -r 000000000000 -r 48c36bed0f61 pcb.fz --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/pcb.fz Mon May 15 16:43:11 2017 +0200 @@ -0,0 +1,5043 @@ + + + + + + + + + + + + + Breadboard1 + + + + + + + + + + + + + + + + + + + + + PCB1 + + + + + + + + + Hole1 + + + + + + + + + + + + + + + Hole2 + + + + + + + + + + + + + + + Hole3 + + + + + + + + + + + + + + + Hole4 + + + + + + + + + + + + + + + 1 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + 2 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + 0 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + GND + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + 3V + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + left foot + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + left hip + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + right foot + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + right hip + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Wire10 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Wire13 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Wire16 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Wire17 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Wire18 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Wire21 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Wire24 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Wire27 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Wire30 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Wire33 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Wire64 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Wire69 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Wire79 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Wire84 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Wire89 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Wire94 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Wire99 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Wire104 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Wire119 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Wire125 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Wire345 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Wire359 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Wire366 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Wire380 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Wire397 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Wire404 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Wire411 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Wire417 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Wire423 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Wire436 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Wire441 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Wire481 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Wire492 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Wire503 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Wire518 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Wire527 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Wire536 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Wire545 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Wire554 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Hole5 + + + + + + + + + + + + + + Wire565 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Hole6 + + + + + + + + + + + + + + + Hole7 + + + + + + + + + + + + + + + Hole8 + + + + + + + + + + + + + + + Hole9 + + + + + + + + + + + + + + + Hole10 + + + + + + + + + + + + + + + Hole11 + + + + + + + + + + + + + + + Hole16 + + + + + + + + + + + + + + + Hole17 + + + + + + + + + + + + + + Wire580 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Hole18 + + + + + + + + + + + + + + + Hole19 + + + + + + + + + + + + + + + Hole20 + + + + + + + + + + + + + + + Hole21 + + + + + + + + + + + + + + Wire591 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Hole22 + + + + + + + + + + + + + + + + + + + + + Hole24 + + + + + + + + + + + + + + + Hole25 + + + + + + + + + + + + + + + Hole26 + + + + + + + + + + + + + + + + - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Wire676 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Wire679 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Wire682 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Wire736 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + on off + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Wire776 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Wire783 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Wire798 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Wire803 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Wire810 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Copper Fill1 + + + + + + + + + + + + + + + + Copper Fill2 + + + + + + + + + + + + + + + + Copper Fill3 + + + + + + + + + + + + + + + + Copper Fill4 + + + + + + + + + + + + + + + + Copper Fill5 + + + + + + + + + + + + + + + + Copper Fill6 + + + + + + + + + + + + + + + + Copper Fill7 + + + + + + + + + + + + + + + + Copper Fill8 + + + + + + + + + + + + + + + + Copper Fill9 + + + + + + + + + + + + + + + + Copper Fill10 + + + + + + + + + + + + + + + + Copper Fill11 + + + + + + + + + + + + + + + + Copper Fill12 + + + + + + + + + + + + + + + + Copper Fill13 + + + + + + + + + + + + + + + + Copper Fill14 + + + + + + + + + + + + + + + + + + + + + + + Wire830 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Wire839 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Wire848 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Wire857 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Wire866 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Wire875 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Copper Fill15 + + + + + + + + + + + + + + + + Copper Fill16 + + + + + + + + + + + + + + + + Copper Fill17 + + + + + + + + + + + + + + + + Copper Fill18 + + + + + + + + + + + + + + + + Copper Fill19 + + + + + + + + + + + + + + + + Copper Fill20 + + + + + + + + + + + + + + + + Copper Fill21 + + + + + + + + + + + + + + + + Copper Fill22 + + + + + + + + + + + + + + + + Copper Fill23 + + + + + + + + + + + + + + + + Copper Fill24 + + + + + + + + + + + + + + + + Copper Fill25 + + + + + + + + + + + + + + + + Copper Fill26 + + + + + + + + + + + + + + + + Copper Fill27 + + + + + + + + + + + + + + + + Copper Fill28 + + + + + + + + + + + + + + + + Copper Fill29 + + + + + + + + + + + + + + + + Copper Fill30 + + + + + + + + + + + + + + + + Copper Fill31 + + + + + + + + + + + + + + + + Copper Fill32 + + + + + + + + + + + + + + diff -r 000000000000 -r 48c36bed0f61 pcb.svg --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/pcb.svg Mon May 15 16:43:11 2017 +0200 @@ -0,0 +1,134 @@ + + + + + + + + + + + + + + + + + + + + + + + + image/svg+xml + + + + + + + + + + +