Saturday 21 December 2013

Ready to go with the Pridopia 2803 2 Relay and Step Motor Board

I've received the Pridopia 2803 board (see photo). I didn't realize that it has LEDs on board. That's a nice bonus - I can flash the LEDs by way of proving the board.

Getting the LEDs to flash could be interesting, as the documentation I've received for the board is somewhat... limited.



Plugged into the Raspberry Pi, it looks like this:
From above

HDMI connector side of Pi

SD Card side of Pi

Although it looks like it has a nice electrical connection via the 26 pin connector, mechanically speaking it doesn't look too clever - there's nothing supporting the board on the side that is opposite the 26 pin connector, so it wobbles a little.


Tuesday 10 December 2013

Python or C?

For the software side of our plotbot, we needed to decide which programming language to use. My first instinct was to use C, for a few reasons:

  1. It's probably the programming language that I'm most familiar with.
  2. I want to try out the ARM DS-5 development environment for the Raspberry Pi from Hitex (www.hitex.co.uk/RPi/DS-5 Workspace Export.zip) - this makes the project much more embedded-y
  3. If we can program to the "bare metal" (i.e. not bother with an operating system), the application should have incredible performance.
On the other hand, Elliot pointed out that he's learning Python, and he wants to do some of the programming. Other factors in favour of Python are:
  1. The development environment. It's really easy to prototype, test and debug in Python
  2. Lots of libraries mean that we can put together lots of complex functionality really quickly
  3. (not exactly Python-specific, but relevant here) We won't be programming to the bare metal, so we get all of the rich features that the OS provides (a full TCP/IP stack, for example).
The performance of C vs Python probably isn't likely to be relevant here, as my suspicion is that the plotbot hardware will be much slower than a Python app.

So Python it is then.

Monday 9 December 2013

How do I drive stepper motors from the Raspberry Pi?

One thing that has taken a little bit of research has been to work out how I can drive two stepper motors from the Raspberry Pi. The picoborg looked promising initially, although it only drives a single motor.

The option that I've gone for is the Pridopia 2803 2 Relay and Step Motor Board with two 28BYJ-48 stepper motors. I've ordered them and are now expecting delivery on them. The board should arrive this week, as for the motors... they're coming from China - arrival dates are sometime between next week and the 9th January. Still £2.22 (each) from China is astonishingly cheap.

Sunday 8 December 2013

PlotBot - more details

So, the original inspiration for doing the plotterbot came from a blog post a while ago on (I think) embedded.com. Since then, I've been looking at plotterbot.com, and thinking about how we could base a plotterbot on the Raspberry Pi.

Just in case it's not clear, I'll expand on Elliot's description with a picture:



So we have two stepper motors which pull strings that are attached to a "gondola". The gondola holds the pen against the drawing surface. Because the drawing surface is vertical, the strings connecting the gondola are kept tight by means of a counterweight.

All very simple in theory. We'll see how it works in practice.

Plot Bot



If any one is interested me and my dad are making a Plot Bot and we will be posting up are progress as we make it. Most people won't know what a plot bot is, it is basically a big piece of paper stuck to the wall with a motor at both of the top corners. Each motor has string coming down attached to a pen. you can then program it so the pen will move according to your commands