pxt-calliope/docs/device/servo.md
Peli de Halleux 1d47b4de0d Lightmonster (#346)
* fixed boardname issues

* refactored servo info

* coffee cup monster lesson skeleton

* display event source id / value in advanced section

* normalized project structure

* updated project name

* Update projects.md
2017-01-31 08:29:25 -08:00

3.3 KiB

Equipping a microservo with Crocodile clips

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 https://www.kitronik.co.uk/blog/using-bbc-microbit-control-servo/ .

~

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 solder 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@
basic.forever(() => {
    pins.servoWritePin(AnalogPin.P0, pins.map(
        input.acceleration(Dimension.X),
        -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.

Troubleshooting

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.