Building a Robotic Arm for Cheap: Part 3

This post covers the base of the arm, and putting it together. I have built the base with my partner, along with a rudimentary claw. We are almost done, we just need to attach the two. It has been lots of fun, and I hope that we will do well in regionals for Science Olympiad.

So, to start off I will go over the parts. We ended up buying 4 servos: one for the base to rotate left and right, one for base up/down, on for up/down, and one for the claw opening and closing. We bought one servo driver board, and one Arduino. We were able to make the body out of duct tape, paint stirring sticks, and a some screws. It is surprisingly stable for the price of all of those items put together.

The total cost of the arm so far is pretty low. I’ll post some numbers once the competition is over.

TO build the base, you need a box of some sort. We went to hobby lobby and bought a generic wooden crate, but you can experiment with any box. Next, we drilled a hole in the top of the box, to allow the servo to rotate side to side. We have one servo under the box, for side to side, and one over, for up and down. Currently, the one on the top is unstable, but it is working.

If you were to build the arm, and put it on top of that base, you would notice that there isn’t anything to stop it fro tipping over. I recommend trying to use your power supply as you counter weight, but if it is too light, you can use 2 pound dumbbells like we did. They are heavy enough to cover the weight of the arm flailing around and stop the entire contraption from tipping over.

That is the base. Here is a quick photo of the arm itself, shaking hands. Pretty cool, eh?

Now, on to the code and technology. We are using Arduino code to drive the servos, but all of the values that change come from the computer. The computer is connected to joysticks. The joysticks are able to move the arm, and rather smoothly. There is some code to stop it from jerking around.

The data that is being sent is formatted like this:
You get the idea. For each one of those, we are sending forward, neutral, or backward. All of these are being sent over the Serial protocol, which is hooked up over USB.

The code to do all of this is located on the computer and written in Javascript. It is using a Javascript run-time called Nodejs, and I have mentioned Node before on this blog. The code check the joysticks, and spams the Arduino with the values every 20 milliseconds. This way, there is no easily identifiable delay between the two.

Finally, here is some video of the entire thing in action.

See you all next post! In part four, I’ll include how we did, what I learned, and what I would change.

Spell Dev Log: 0.1.3

Here is another… SPELL UPDATE!
The reason Spell development has slowed was due to finals week at my school. Finally (sorry, that was bad) I can go back to working on Spell.


However, several things have changed since the last update. The largest change is that a new person has joined our team. AlphaBetaR is the new official graphics designer of Spell. He has created artwork for the character sprite (no more rectangles!) and he has created art for each of the elements of the game. He plans on creating the graphics for each spell as well.


Another, huge update is that the hardware for the server has arrived! It only cost $9, and should allow up to 10 players on at a time, maybe more. I would need testers to test that. Also, there is experimental server code that has been written by me. It will be running on the new server sometime on Thursday. Right now, it is somewhat glitched as people don't ever disconnect, so a 'ghost' version of them is left on the screen which requires a server restart to fix. I will hopefully fix this by Friday.

So far, the server support the joining of players, and the movement. Spells cannot be implemented until we have an image file to render. Still, it is pretty good progress, considering how much time making games usually takes.

Spells and spell bias also were implemented by EpicMittMitt. He had been pushing lots of code recently, since I haven't had much time. Spell bias shows which element the player prefers more. If you use mostly fire based moves, your fire bar goes up and other bars go down. This is a good step towards completion of the game, and now very few aspects need to be worked on!


When I say spells were implemented, I mean they were implemented except for actually seeing them. As in, in the code they are rendering, but we have no image to render it to. This means that nothing appears on screen, but stuff is happening behind the scenes. You can see your input on screen.

Our plans for now include:

  1. Adding better graphics
    For this, all we need are 4 backgrounds for each of the maps we plan on releasing in March. After that, we need one for each Spell, which is a lot of art.
  2. Adding XP Orbs
    These XP orbs are so that if there is nobody else on to fight, you can still level up and grind your character for levels.
  3. Working up the multiplayer.
    We need spell support, and player deaths. This one will take a bit of time, but it should be completed by the due date.
  4. Gamepad Support
    Gamepad support would be cool for all of the people who play super smash bros. After all, this game borrows some of the 2d platformer aspect from it, and some people prefer a gamepad to a mouse.

All of these need to be finished by version 0.2 Alpha. After that, we will have an official release. However, we need your help! If you have any suggestions, email them to me, or make a Github Account. Then, on our repository, create an issue.
Here is a link: Click Here

I have one question for anyone who is reading this: What platforms would you like Spell to be supported?
That's about it for this Spell Update! The game will be out soon!