Sunday, December 23, 2012

RasPi Laptops

Josh has linked me to Hackaday, where someone connected a Lapdock to a RasPi. With the proper OS, this apparently makes a decent laptop. It's certainly low in price, but too bad the Lapdocks have been discontinued..

This was just after I saw a RasPi driving the core of a much different form-factor laptop. This one costs a bit more, too.

Friday, December 21, 2012

Sensors

One of my first proofs of this robotics concept was having a remote control car almost stop before it hit a wall. To do this, I used a Parallax ping ultrasonic sensor. I got mine from Radio Shack for around $30. The Arduino IDE comes with sample code -- it has the sensor send an ultrasonic pulse, counts the microseconds until the pulse returns, then outputs that to the serial monitor in the IDE. The code also does some math to divide out the speed of sound, returning the distance in inches and cm. I wrote a loop that reduced the output to the car's motor as the sensor's distance decreased.

The ultrasonic sensor is relatively durable and hard to damage, it's reliable, and uses just the one pin for both input and output. But sometimes I think I can almost hear the sound, and it makes me feel weird. Also, $30/sensor is expensive for the number of sensors I'm planning on needing.

Enter the phototransistor

An alternative I'm investigating is infrared LEDs and infrared phototransistors. A phototransistor is a transistor, a switch with no moving parts. Most transistors have 3 legs, and if legs A and B have electricity going through them, then electricity can also travel from A to C. Phototransistors, however, basically use a "reverse-LED" to allow electricity to travel. They look like LEDs too, and operate much the same. Here's more info on phototransistors.

A problem I have in my initial testing is that my tests are unreliable. I can set up an infrared LED facing an infrared phototransistor, and can separate them to turn on and off an LED. But tomorrow, it will not function. I believe this is because I'm overloading the LED. So far I've "bricked" 3 of them, and I saw a faint red glow from the last one. Radio Shack's website is light on details, and I don't honestly know enough about electricity to know what's causing the problem.

But apparently easy to use EE calculators exist. This one says I need a 39 ohm 0.5 watt resistor, and conveniently tells me the color code: Orange, White, Black, Gold. I don't have any of these in supply, which reminds me I need to stock up on commodity components such as these.

Bird Buggy

What's that driving the car? It's a bird! It's a guy! No, it really is a bird! This project is designed to be steered by a bird moving a joystick. But what happens if the bird drives into something? Well, this is a car which won't run into things. And it can drive itself back to its charging station.

This project parallels my own in many ways. I may be redoing much of this guy's work with my self-driving trash can. 

Thursday, December 20, 2012

Robot Operating System project

Robot Operating System has been mentioned to me. I still need to dig into their project and see how much of it parallels my own. I'm particularly interested at what they put in the hardware abstraction layer, and at which levels different parts communicate.

Turning frustration into a plan.

Right now progress is halted It's frustrating. I'm having issues getting reliable input and output from my Arduino Uno. Some pins are working, but most aren't. And I'm getting avrdude: stk500_getsync(): not in sync: resp=0x00 error message, which I think is not good. Just 2 weeks ago I fried the 2-row LCD display,  which means I'll have to get another one of those too.

I need to change my perspective on this operation. Instead of seeing these robots as something I'll build with just 1 microcontroller, I need to see microcontrollers as something of which I have several in storage. Before I do that, I want to plan, but I have no time. I'm spending all of my time working, and none of it thinking. Part of the reason I'm writing here is to help organize my thoughts.

My work contract has been extended, and I will save as much runway during that time as I can. Along with that, I have to purchase components. I need more microcontrollers. I need more phototransistors and infrared LEDs. And more resistors and wires etc. But these are cheap -- $1000 would cover 20 microcontrollers and 100 of each component.

I haven't been able to wrap my head around that before. It seems a lot more attainable now. Writing part of that, getting it out of my head, made space for the rest of the idea, which I then also wrote.

So my next step is: from where to procure components? Adafruit? Sparkfun? Radio Shack? (The local Radio Shack has been out of phototransistors for over 2 weeks lol )

Sunday, December 16, 2012

Beginnings

I like robots.

But I haven't always.

Robots are formed plastics and metals, which move because of motors, which are switched by electronics, all of which uses battery or main power to operate. They're just physical objects too. And they run code.

That's what I like.

Some people feel great joy at seeing their code run on servers. Others enjoy seeing their code be useful. I enjoy seeing my code driving across the room, steering around turns and avoiding other objects.

Roomba makes robots...well, they stopped at vacuum cleaners. Nobody else is doing this. But massively powerful, programmable modular home robots could exist today if someone were to just assemble the pieces. Nobody is assembling the pieces. This makes me angry.

So I wish to change the world with robots. I have to assemble the pieces to build the future.