I put my Robonova together last week, and it is very cool! I loaded up the Overall Template program, and found that the IR controller wasn’t working well at all. Turned out the issue was that the default code that comes with the unit expects to have the battery power level assigned to the #6 A/D port, and without that (which isn’t part of the kit), the program spends most of its time in the low battery power flash the LED program instead of listening to the IR controller. Commenting out the call to that routine got things working well. Also, that routine doesn’t have an ELSE for when the batteries are ok, so I’m not sure what they were trying to do there.
Anyone know what is required to get the battery power wired up to the #6 A/D port? Just a jumper?
Also, the overall template program has some code to help the robot automatically get up when it falls down, based on an accelerometer attached to another A/D port (I think #5, but I don’t have the code with me now). Any idea what accelerometer to use, and how to hook that up?
Just got mine put together. I have big plans for upgrades. Just ordered a Bluetooth module and accelerometer board from www.sparkfun.com. I have a ton of other sensors from other robotics projects (IR, Compass etc) and I’m rolling those in.
I’ll post results as I get it going.
I just received my 2-axis accelerometer module from Parallax. Can’t wait to enable auto-standup!
Did the voltage routine work correctly on your robot? I had to drop the comparison value down to 70 on mine (instead of the recommended 148) to get it to do anything reasonable. Also, it seems that writing to the port to turn on and off the LED has a very negative impact on the reception of signals from the IR remote, so I ended up using a variable to block resetting the LED state. Are you seeing this too? Here’s my updated robot_voltage routine:
robot_voltage: ’ 10 x Value / 256 = Voltage]
DIM v AS BYTE
A = AD(6)
IF A < 70 THEN ' 148 == 5.8v
FOR v = 0 TO 2
OUT 52,1 ' Visor LED off
DELAY 100
OUT 52,0 ' Visor LED on
DELAY 50
NEXT v
ELSEIF LED = 0 THEN
OUT 52,0 ' Visor LED on
LED = 1
ENDIF
http://robosavvy.com/Builders/bauermech/LowVoltCircuit.jpg
I used 51k resistors (color coded as green, brown, orange, then gold).
S11 (red wire) refers to the servo port 11 on the MR-C3024, but any free servo port’s center pin will work. The brown wire is common ground and the same thing applies to it… any ground pin will work. The orange wire goes to the signal pin on any of the AD ports on the MR-C3024. I chose to use AD6 so I wouldn’t have to change the code in the Overall Template Program. The resistors are encased in adhesive-lined heat-shrink tubing, but hopefully you can make out the route I drew.
This circuit will ensure your battery is better protected from over-discharge and cure the IR remote delay problems.
I believe subpilot also uses the BlueSMiRF from sparkfun.com.