pxt-calliope/docs/projects/inchworm/servo.md
Peli de Halleux 27d6a8281a Inchworm (#331)
* images for inchworm project

* binding pictures

* updated inchworm lesson
2017-01-05 10:00:36 -08:00

3.4 KiB

Preparing the servo

@description Connecting the servo to crocodile clips

~avatar avatar

Equip the microservo with crocodile clips.

~

Duration: ~30 minutes

Materials

  • Cutting pliers or wire cutter
  • Tape (masking, duct tape, and/or packing tape)
  • 3 crocodile clips, yellow, red and black.
  • 1 micro servo 9g (SG90)

Using a microservo with the @boardname@

The @boardname@ provides just enough current to operate the SG90 microservo. The servo requires 3 connections: GND, 3V and a logic pin. In this tutorial, we will equip the servo with crocodile clips to make it easier to use. However, you could also use a shield or female to crocodile clips to acheive the same effect.

If you are running a class or activity, you should consider preparing all servos before hand.

~ hint

Kitronik wrote an excellent in-depth guide about using servos with the @boardname@. Check it out at

~

Step 1: cutout the connector

Using the cutting pliers, cut out the dark plastic connector.

Step 2: strip out cables

Using the plier or a wire stripper, strip the plastic from the cables.

Step 3: threading the servo cablers

Thread the servo cables.

Step 4: crocobile clip claps

Cut a crocodile cable in two and strip out the casing. If possible try to use the same cable colors as the servo!

Step 5: thread cables together

Place the cables next to each other

... and thread them together.

~ hint

It is very important to ensure that there is a good connection between the 2 cables. If the connection is weak, the microservo will not receive enough current and it will not work. If you have access to a soldering iron, we strongly recommend to solver this connection.

~

Step 4: protect the connection

Protect the connection with electrical or duct tape.

Step 5: repeat for all cables

Repeat the same process until all cables are connected.

Step 6: testing!

It's time to test that your connection are all proper and that the servo will function when the @boardname@ is powered by battery.

  • Connect the microservo to the @boardname@. Black cable on GND, red cable on 3V and remaining cable on P0.

~ hint

When attaching the crocodile clips to the pins, don't hesitate to grab the side of the board with the jaws.

~

  • Download the following code to your @boardname@
let a = 0
basic.forever(() => {
    a = input.acceleration(Dimension.X)
    pins.servoWritePin(AnalogPin.P0, pins.map(
        a,
        -512,
        512,
        0,
        180
    ))
})
  • When powered by USB, make sure that the servo moves when you tilt the board.
  • When powered by batteries only, make sure that the servo moves when you tilt the board.

If your servo seems to sutter and stay stuck at a particular position, it means that it is not receiving enough power. This is probably due to a weak connection or low battery level. Check each connection and check your batteries.

~button /projects/inchworm/chassis

NEXT: Chassis

~