Anyone who’s ever tried to build a bipedal robot will quickly start pulling their own hair out. There are usually a lot of servos involved, and controlling them all in a cohesive way is frustrating to say the least. [Mark] had this problem while trying to get his robot to dance, and to solve it he built a control system for a simple bipedal robot that helps solve this problem.
[Mark]’s robot has six servo motors per leg, for a total of 12 degrees of freedom. Commands are sent to the robot with an RC radio, and the control board that he built, called the Smart Servo Controller, receives the signals and controls the servos appropriately. There are 14 outputs for servos, operating at 12 bits and 50 Hz each, as well as 8 input channels. The servo controller can be programmed on a computer with user-selectable curves for various behaviors for each of the servos on the project. This eliminates the need to write cumbersome programs for simple robot movements, and it looks like it does a pretty good job!
Full disclosure: [Mark] currently has this project up on Kickstarter, but it is a unique take on complex robot control that could help out in a lot of different ways. Since you don’t need to code anything, it could lower the entry barrier for this type of project, possibly opening it up to kids or school projects. Beyond that, even veterans of these types of projects could benefit by not having to do as much brute-force work to get their creations up and moving around!
Continue reading “Walk Your Pet Robot”
Every now and then a remote control acts up. Maybe you are trying to change the channel on your television and it’s just not working. A quick way to determine if the remote control is still working is by using a cell phone camera to try to see if the IR LED is still lighting up. That can work sometimes but not always. [Rui] had this problem and he decided to build his own circuit to make it easier to tell if a remote control was having problems.
The circuit uses a Vishay V34836 infrared receiver to pick up the invisible signals that are sent from a remote control. A Microchip 12F683 processes the data and has two main output modes. If the remote control is receiving data continuously, then a green LED lights up to indicate that the remote is functioning properly. If some data is received but not in a continuous stream, then a yellow LED lights up instead. This indicates that the batteries on the remote need to be replaced.
The circuit also includes a red LED as a power indicator as well as RS232 output of the actual received data. The PCB was cut using a milling machine. It’s glued to the top of a dual AAA battery holder, which provides plenty of current to run the circuit.
[Warrior_Rocker’s] family bought a fancy new sign for their beach house. The sign has the word “BEACH” spelled vertically. It originally came with blue LEDs to light up each letter. The problem was that the LEDs had a narrow beam that would blind people on the other side of the room. Also, there was no way to change the color of the LEDs, which would increase the fun factor. That’s why [Warrior] decided to upgrade the sign with multi-colored LEDs.
After removing the cardboard backing of the sign, [Warrior] removed the original LEDs by gently tapping on a stick with a hammer. He decided to use WS2811 LED pixels to replace the original LEDs. These pixel modules support multiple colors and are individually addressable. This would allow for a wide variety of colors and animations. The pixels came covered in a weatherproof resin material. [Warrior] baked the resin with a heat gun until it became brittle. He was then able to remove it entirely using some pliers and a utility knife. Finally, the pixels were held in place with some hot glue.
Rather then build a remote control from scratch, [Warrior] found a compatible RF remote under ten dollars. The LED controller was removed from its housing and soldered to the string of LEDs. It was then hot glued to a piece of cardboard and placed into the sign’s original battery compartment. Check out the video below for a demonstration. Continue reading “LED Sign Brightens Up The Beach After Dark”
Go to any control systems class, and you’ll see a final project that demonstrates loops, integration, and everything else that can be learned in a semester or two of control theory. This project is not from one of those classes. It is, however, very cool: it balances a 40mm steel ball on the rim of a lasercut wood wheel using nothing more than a solar cell as a sensor.
[Manuel] was inspired to build this ball-balancing device after seeing a similar project at CCC about six years ago. He doesn’t remember who made it, and eschewed the PC/Matlab architecture of the original, but this build retains one interesting feature of its muse. The input to the control system is just a high intensity light bulb and a solar cell. The 40mm steel ball blocks the light reaching the solar cell most of the time. Slight variations in voltage go through the control system to keep this ball balanced on top of the wheel.
The only hardware for this build is a motor, a motor driver, and an ATMega644P. The first revision of the hardware was just a few breakout boards stuffed into a rat’s nest of wiring in the base of the build, but this has been fixed in version two with a new PCB. Video below.
Continue reading “Balancing A Ball With A Solar Cell”
[AlxDroidDev] built himself a nice remote control box for CHDK-enabled cameras. If you haven’t heard of CHDK, it’s a pretty cool software modification for some Canon cameras. CHDK adds many new features to inexpensive cameras. In this case, [AlxDroidDev] is using a feature that allows the camera shutter to be activated via USB. CHDK can be run from the SD card, so no permanent modifications need to be made to the camera.
[AlxDroidDev’s] device runs off of an ATMega328p with Arduino. It operates from a 9V battery. The circuit contains an infrared receiver and also a Bluetooth module. This allows [AlxDroidDev] to control his camera using either method. The device interfaces to the camera using a standard USB connector and cable. It contains three LEDs, red, green, and blue. Each one indicates the status of a different function.
The Arduino uses Ken Shirrif’s IR Remote library to handle the infrared remote control functions. SoftwareSerial is used to connect to the Bluetooth module. The Arduino code has built-in functionality for both Canon and Nikon infrared remote controls. To control the camera via Bluetooth, [AlxDroidDev] built a custom Android application. The app can not only control the camera’s shutter, but it can also control the level of zoom.
We’ve said it before: in the future simple interfaces will use nothing but your body. At least at first glance that’s the case with this WiFi-based gesture control system. If you have Internet at home you probably have a WiFi access point. That’s the first portion of the equation. The remainder is a way of measuring how the radio waves bounce off of your body. So far this is being done with Software-Define Radio (SDR) but researchers at University of Washington think it may be possible to build the technique into future WiFi devices.
The demo video shows this man waving his arm to adjust the volume of his home entertainment system. Intuition tells us that this would be impossible if your arm wasn’t the only thing in motion at the time. But that issue is quickly addressed. Multiple antennas can track multiple people at the same time. There is also consideration for false-positives. The system requires a moderately complex wake-up gesture sequence to prevent you from, say, accidentally turning on the stereo when you roll over in bed.
If you’re having trouble wraping your mind around this, consider this ultrasonic music player. The WiFi version does the same thing, but processing changes in the returning radio waves is much more complex.
Continue reading “Gesture control uses WiFi doppler shift”
[Buddhra] wanted to use a set of ear buds that also had a controller built into the wire. The headset he chose to go with is meant for use with iPod, but he figured it should be possible to make it work with Android too. He was right, and managed to alter the controller for Android use and still fit it into the original case.
He had already made a custom control module that has fast forward and rewind features and play/pause events. The signals used for the controls are based on resistive dividers. The play/pause button on the iLuv headset already worked, so he cracked the controller open to see why the forward and back buttons didn’t work. It turns out all he needed to do was add the right resistors to those buttons. Here you can almost see the 0603 surface mount packages he used to add a 220 Ohm resistor to the back button, and a 600 Ohm resistor to the forward switch.