| P1 | P2 | P3 | P4 |RoboBASIC Help
LOW VOLTAGE WARNING
for the MR-C3024 Micro-controller
This is becoming a common frustration of fellow Robonova users. Soon after putting our little RN-1 together, loading the Overall Template Program, and executing a routine via the IR remote - you may have noticed the blue LED in the head constantly flashing. Not only that, but the remote works only in the "sweet spot" between flashes. This is because the "robot_voltage" subroutine is enabled in the code you downloaded onto the microcontroller without the proper circuitry added.
A quick fix is to simply disable the code and
recompile. Under MAIN in the Overall Template
Program, change robot_voltage to
'robot_voltage. Notice the apostrophe (')? That is referred to as a "delete notation command". It
simply means that anything that follows that symbol on the same line is ignored
by the program. It's mainly used for commenting by the programmer.
NOTE: Be warned that the above fix is not a good idea to solve the problem. Without protection, you run the risk of over-discharging your battery. This can permanently damage the cells! I would suggest only doing it if you have to.
NOTE: By viewing this page, you (the viewer) agree to, not in any way hold me (Matt Bauer) accountable for any discrepancies you may have encountered as a result of following this tutorial. Thanks. ===============================================
Pictured (below) is the circuit I rigged up using the schematic from page 95 in the Robonova-1 Instruction Manual (last page).
Start by finding yourself two resistors. I used 51k 1/4 watt. The color coding would be green, brown, orange, then gold - in that order. They are omni-directional so it doesn't matter which way current passes through them. I combined one end of each resistor to the orange wire. With the remaining two ends - one went to brown, the other to red.
To secure the resistors to the leads you can do it one of two ways - by soldering, or using small non-insulated parallel crimps (not the cheep-o plastic things). Solder makes the wire more brittle, but isn't bad as long as the wires aren't going to be moving around much. A parallel crimp uses two wires placed side-by-side in a conductive metallic tube (usually coated copper) which is then crimped to pinch the wires together. I personally prefer the crimp in most cases, but either way is fine.
I used a small diameter, adhesive-lined, heat shrink tubing, and placed it around the three exposed bonds. Then used a piece slightly larger in diameter to encase the entire thing including the "turned around" brown wire. Now the brown wire is going to a common ground which can be pulled from any designated ground pin on the MR-C3024. I just chose to run it back to the pin on the AD6 port. NOTE: be careful when heat shrinking the tubing. Try to refrain from using a lighter. It's too easy to melt the insulation around the wires. If you have a heat gun, use that. Otherwise, ask your wife nicely to borrow her hair dryer.
I purchased a male connector set and a nifty little crimping tool at he local RC hobby shop. I crimped the little connectors on the three wire ends. Take note of the placement of each wire. (Refer to page 42 in the Robonova-1 Instruction Manual for port labels) If your robot is standing up, the ground is the top pin on the AD ports. Signal is on the bottom, and that leaves the positive in the center (though we won't be using the positive off an AD port because it is a regulated power source and won't do much good to take a reading off that. Insert your newly crimped leads into the corresponding slots of the black plastic connector.
In the picture (above) I used AD number 6 since the code in the Overall Template Program uses the same port. As mentioned before, we need an unregulated power source coming directly from the battery. Any free servo port will work. S11 is free on my board, so I'll use it as the example. Make sure the red lead goes to the center pin - the positive (+).
In the Overall Template Program, under MAIN be sure to remove the apostrophe (') in 'robot_voltage (so that it looks like robot_voltage) if it has not already been done. Recompile the code and upload it to your RN-1.
The default setting is a value of 148 (5.8v) in the low voltage code. Any value below 148 will trigger the LED blink routine. Depending on how safe you want to be, you may want to experiment a little in order to find the perfect value for your robot.