Older blog entries for robotvibes (starting at number 22)



I suppose I am due for an update.  I have been working on the Ultra series robots, Mega and Max.  I have been updating UltraMega, aka Mega, eventhough it has been retired.

There were some wiring issues where the ISP header wasn’t making good connections, and so updating the firmware was a problem.  Also, the IR Sensors were on the same connector, so this had to be fixed as well. So I made these changes to Mega.

Also, replacing the AT90S8515 with the ATMega8515 was done since AVR Studio 4 doesn’t support the older chip, and I’m using the AVR ISP MKII.  Now, Mega and Max have the same code, and are able to run more or less the same.

At this time, Mega has a 2 IR sensors, and is able to do some basic obstacle avoidance routines.  Another behavior that Mega has is the ability to get unstuck if it gets snagged somewhere. It seems to work pretty well. I’m fairly impressed, and it resembles seeing a child get out of some issue in its environment, and it seems as if they are learning.  However, Mega is not learning, but given certain states of it’s sensors, it triggers the behavior to get unstuck. I will do some more basic stuff with Mega, then have it running around again, for demonstrations, etc.

[Later I will probably have Mega and Max in some robot team tasks.]

The progress on Max is steady.  I added the XBee Interface, so now Max may be controlled remotely, via serial commands.  This is mainly for telemetry purposes, such as sensor and odometry debugging.  I have added some code to read the odometry encoders, and later will add the code for speed control.  It’s not getting the wheel rotation fast enough, so I’m still working on the ISR code.

I have also been working with the I2C Compass and Ultrasonic Sensors with the Arduino.  The Compass seems to work pretty well, as I have an actual analog compass (from my Orienteering days) to test the accuracy of the Digital Compass.  I have also installed the Digital Compass in a plastic case to mount away from any magnetic/metallic objects.

The Ultrasonic sensors are impressive, as the readings are coming in real-time.  I am thinking of getting a few more of these, since they work so well.  I am thinking of adding the Ultrasonic sensors and the analog GP2D12 IR Sensors to the front of Max’s chassis.  Experiments with the correct placement will be done, for best results.  On the left and right sides, I will also place some GP2D12 sensors as well, for wall following, and other behaviors.

I have also gotten the shell for Max’s body, and it is nice and slick looking. I’m doing some tinkering to see what mounting method works best, something that’s easy for the body to either remove, or open to work on the innards of Max’s base.  I also just picked up some threaded rods, to install on Max’s chassis, to add a couple of decks.

I’ll try and take some pictures and vids, so please stay tuned…lots to do…til next time.

Syndicated 2010-08-11 15:54:46 from Cyb3rnetx

UltraMax update

I made some changes to Max’s Controller board.  From the AVR, the External Interrupt pins are now connected to Channel A of both Wheels.  Later, once the Quadrature is fixed, the Port B0, B1 will be connected to Channel B of the Encoder signals for both wheels.

As the nature of quadrature signals goes, the combination of both Channels will indicate the direction of rotation of the wheels. But that’s later…for now…I’ll cheat a bit, or just a workaround.

I added some new pics of various components and views of Max as he is currently, in the UltraMax Gallery.

Now I’ll be looking at Channel A on the scope, and coding the ISRs to count.  I will give another update soon.

Syndicated 2010-06-18 16:33:44 from Cyb3rnetx

Odometry and Wheel issues


I’ve been working on fixing up the odometry encoders, since the signal on the scope are not optimal. There are several issues that I’m facing.

I’m experimenting with some other techniques of mounting the IR Sensors, to get the Quadrature signal.  We’ll see how that goes…

I’ve also redesigned the encoder wheel for 30 counts/rev, to make it easier on the Interrupt processing, as well as maybe getting a better signal from the sensors.

Another task I’m experimenting with is using the motor drive command to set a flag for the direction.  This is not as clean and pure, where the direction would be indicated by the quadrature encoder channel B on the wheel.  But this maybe a workaround until I can get the quadrature working properly, and move onto other things (code, sensors, etc.).

Would like to do a better mounting for the wheel onto the motor, quite possibly a machine cut hub, as on UltraMega.  I’ll experiment with this as well.

I’ve been adding some code from UltraMega, to Max, since they are similar.  So soon enough, Max will be more advanced, and moving onto better tasks.

Will give updates on the progress…maybe vids of some experiments…so stay tuned!

Syndicated 2010-05-20 20:33:51 from Cyb3rnetx

XBee/Uart/Robot Test

This is a demo of the XBee connected to the atmega8 micro sending data back to the Laptop.  The code is being flashed/programmed by the USB connected AVRISP MKII ISP Programmer, connected to the micro board.

All the code does is continuously send a counter value back from the micro to the Laptop.  This is an example of how I would be monitoring data back from the robot, such as Odometry, various Status messages, etc.

Another capability of the Xbee/Zigbee devices is that they have their own I/O pins which may toggled to add more I/O functionality to the robot.

There’s more exciting things to come…so please stay tuned for more…

BTW: This is Pakistani music in the background…Nusrat Fateh Ali Khan – yeh jo halka halka saroor ha.  Please Enjoy!

Syndicated 2010-03-30 07:24:34 from Cyb3rnetx

Parkour and Freerunning Robot

Gotta get training…

This is an ad, but it would be a cool robot.

Syndicated 2010-03-25 22:58:33 from Cyb3rnetx

Xbee with Arduino/AVR

I’ve been experimenting with the Xbee Modules, and the Arduino board, and have had good results, almost out of the box.  Other than setting up the Xbee’s with the same IDs, that is about it.  There is one Xbee connected to the laptop via a USB Interface Board (from Sparkfun), and the other Xbee is attached to the Arduino via the Regulator Board (also from Sparkfun).

I opened the Arduino IDE, loaded and compiled the SoftSerial code, then opened 2 serial terminals for 2 different com ports.  After uploading the code, then typing in the XBee attached to the Arduino, the data can be seen on the other terminal for the PC.

So, this is mainly to get telemetry data back from the robot, and maybe later do some controls as well.

I have also connected another XBee to the robot’s controller, and sending data out the UART, but for some reason, I am not receiving any data.  So I am working on this portion, troubleshooting, and checking different things.  I know it is working, as I have attached a Max233 board to the RX/TX pins of the micro, and I am getting data.

There really shouldn’t be much difference with using the Arduino board, and a stand-alone AVR board/robot controller.  So I will be working on this, and hopefully get it working soon. Stay tuned…

Here is a pic of the XBee boards (no arduino yet) I am using.

Just the XBee Boards

Just the XBee Boards

Syndicated 2010-03-16 19:31:25 from Cyb3rnetx

UltraMax: Motion Control Outside

This is UltraMax doing some motion control tasks, on the pavement, and on the sidewalk.

On the Pavement:

On the Sidewalk:

Syndicated 2010-03-06 07:48:43 from Cyb3rnetx

UltraMax – Motor Bench Testing

This is another vid of doing some bench testing of Max.

Syndicated 2010-03-06 06:22:17 from Cyb3rnetx

Hello world! I, Robot!

OK.  This is the first post on this blog.  However, I have been working on a few robots.  Some of this activity may be seen on South Florida Robotics Society site @ http://www.sunbots.org.

Anyways, I have been working on UltraMax for a bit now, off and on.  And it’s been fun.  There have been some changes, but also some good improvements.

Right now, Max is in a motion control phase, and the Odometry System is somewhat working.

Here’s the latest pic of him…in all it’s glory…for now. Also a demo video. I’ll add some more stuff soon, so stay tuned…


A Demo vid

Syndicated 2010-02-05 16:01:49 from Cyb3rnetx

Wow! Has it really been that long? Well, I have some updates. I am finished development on UltraMega, and began working on UltraMax, aka Max. UltraMega is a great platform still, but there are a number of limitations.

I learned a lot on Mega, and it was lots of fun. UltraMega now will be a bot for show and tell, and I have a few programs as demos (odometry/navigation, obstacle avoidance behaviors, etc.). The Ultra legacy continues...

I will give an update on Max real soon...

13 older entries...

Share this page