Legacy Forum: Preserving Nearly 20 Years of Community History - A Time Capsule of Discussions, Memories, and Shared Experiences.

Introducing Big Foot

Hitec robotics including ROBONOVA humanoid, HSR-8498HB servos, MR C-3024 Controllers and RoboBasic
17 postsPage 1 of 21, 2
17 postsPage 1 of 21, 2

Introducing Big Foot

Post by kemsulli » Wed Apr 18, 2007 7:11 pm

Post by kemsulli
Wed Apr 18, 2007 7:11 pm

Hi all,

I've been lurking on the list for several months while I have gotten my RN up and working. The first goal I had for my RN, dubbed Big Foot, was to compete in the walking division of the Trinity College Home Robot Firefighting Contest: in this contest, the robots know the layout of a small "house", and have to autonmously find a candle and extinguish it. To get my RN ready, I made serval hardware mods. The first was to add a 400 Mhz Gumstix computer running microLinux and a Robostix microcontroller to the front, under the chest plate. Next, I added four Sharp IR range sensor, pointing left, right, front and back. Some aluminum brackets hold the left, right and front sensors, while some hot melt glue and two slots in the backback hold the rear sensor. I also added a 3-axis accelerameter, and 2-axis gyros in the shoulders. Next, I added an analog servo for a neck, and mounted a CMUCam3 for a head. Finally, I added the grippers from Matt Bauer. I am currently using the stock battery. See http://cs.gmu.edu/~ksulliv/robonova from some pics and more hardware details.

The Gumstix is the brains of the operation, performing high-level reasoning and controlling the entire robot. The Gumstix sends individual bytes over serial to the MR-C3024, which then executes the default moves from Hitec (well, not quite default, I tweaked them to compesate for the changed center of gravity, and slowed some down to improve balance). After issuing a command, the Gumstix blocks until the move is completed. The Gumstix also communicates with the CMUCam3 via serial. Communication with the Robostix is via I2C. Code on the MR-C3024 is in RoboBasic, while the Gumstix, Robostix, and CMUCam3 are all programmed in C.

In the Trinity contest, I found that carthwheels were the most effective method of locomotion, both in terms of speed and stability. Big Foot drew large crowds and lots of interest due to its ability to recover from falls and the cartwheels. Of the seven robots in the walking division, Big Foot finished first.

Future work will focus on software, particularly added localization ability (maybe using occupancy grids and a Monte Carlo approach). Also, I want to add path planning and partial order planning for determining move sequences to achieve a given pose.

Keith
Hi all,

I've been lurking on the list for several months while I have gotten my RN up and working. The first goal I had for my RN, dubbed Big Foot, was to compete in the walking division of the Trinity College Home Robot Firefighting Contest: in this contest, the robots know the layout of a small "house", and have to autonmously find a candle and extinguish it. To get my RN ready, I made serval hardware mods. The first was to add a 400 Mhz Gumstix computer running microLinux and a Robostix microcontroller to the front, under the chest plate. Next, I added four Sharp IR range sensor, pointing left, right, front and back. Some aluminum brackets hold the left, right and front sensors, while some hot melt glue and two slots in the backback hold the rear sensor. I also added a 3-axis accelerameter, and 2-axis gyros in the shoulders. Next, I added an analog servo for a neck, and mounted a CMUCam3 for a head. Finally, I added the grippers from Matt Bauer. I am currently using the stock battery. See http://cs.gmu.edu/~ksulliv/robonova from some pics and more hardware details.

The Gumstix is the brains of the operation, performing high-level reasoning and controlling the entire robot. The Gumstix sends individual bytes over serial to the MR-C3024, which then executes the default moves from Hitec (well, not quite default, I tweaked them to compesate for the changed center of gravity, and slowed some down to improve balance). After issuing a command, the Gumstix blocks until the move is completed. The Gumstix also communicates with the CMUCam3 via serial. Communication with the Robostix is via I2C. Code on the MR-C3024 is in RoboBasic, while the Gumstix, Robostix, and CMUCam3 are all programmed in C.

In the Trinity contest, I found that carthwheels were the most effective method of locomotion, both in terms of speed and stability. Big Foot drew large crowds and lots of interest due to its ability to recover from falls and the cartwheels. Of the seven robots in the walking division, Big Foot finished first.

Future work will focus on software, particularly added localization ability (maybe using occupancy grids and a Monte Carlo approach). Also, I want to add path planning and partial order planning for determining move sequences to achieve a given pose.

Keith
kemsulli
Robot Builder
Robot Builder
Posts: 9
Joined: Wed Apr 18, 2007 6:53 pm

Post by i-Bot » Wed Apr 18, 2007 9:19 pm

Post by i-Bot
Wed Apr 18, 2007 9:19 pm

mmh tell us more !

remote control of the C-3024 has challenged us all at reasonable speed. Are you using ETX/ERX or making Robobasic code for direct execution ?
mmh tell us more !

remote control of the C-3024 has challenged us all at reasonable speed. Are you using ETX/ERX or making Robobasic code for direct execution ?
i-Bot
Savvy Roboteer
Savvy Roboteer
User avatar
Posts: 1142
Joined: Wed May 17, 2006 1:00 am

Post by limor » Wed Apr 18, 2007 10:46 pm

Post by limor
Wed Apr 18, 2007 10:46 pm

locomotion through cartwheels sounds radical and must have been fun to watch. Did you make any particular use of the gyro and accelerometer for the cartwheel locomotion?
locomotion through cartwheels sounds radical and must have been fun to watch. Did you make any particular use of the gyro and accelerometer for the cartwheel locomotion?
limor
Savvy Roboteer
Savvy Roboteer
User avatar
Posts: 1845
Joined: Mon Oct 11, 2004 1:00 am
Location: London, UK

Post by kemsulli » Wed Apr 18, 2007 11:45 pm

Post by kemsulli
Wed Apr 18, 2007 11:45 pm

i-Bot wrote:mmh tell us more !

remote control of the C-3024 has challenged us all at reasonable speed. Are you using ETX/ERX or making Robobasic code for direct execution ?


What do you want to know? As for remote control, the bot doesn't use any, its fully autonomous.

Keith
i-Bot wrote:mmh tell us more !

remote control of the C-3024 has challenged us all at reasonable speed. Are you using ETX/ERX or making Robobasic code for direct execution ?


What do you want to know? As for remote control, the bot doesn't use any, its fully autonomous.

Keith
kemsulli
Robot Builder
Robot Builder
Posts: 9
Joined: Wed Apr 18, 2007 6:53 pm

Post by kemsulli » Wed Apr 18, 2007 11:47 pm

Post by kemsulli
Wed Apr 18, 2007 11:47 pm

limor wrote:locomotion through cartwheels sounds radical and must have been fun to watch. Did you make any particular use of the gyro and accelerometer for the cartwheel locomotion?


Not during the cartwheel; that was simply the default carthwheel from Hitec. After each move completes, the accelerometer is continually checked to determine if Big Foot fell over or not. I'd like to get the gyro working during individual moves to make the more stable. Maybe a summer project.

Keith
limor wrote:locomotion through cartwheels sounds radical and must have been fun to watch. Did you make any particular use of the gyro and accelerometer for the cartwheel locomotion?


Not during the cartwheel; that was simply the default carthwheel from Hitec. After each move completes, the accelerometer is continually checked to determine if Big Foot fell over or not. I'd like to get the gyro working during individual moves to make the more stable. Maybe a summer project.

Keith
kemsulli
Robot Builder
Robot Builder
Posts: 9
Joined: Wed Apr 18, 2007 6:53 pm

bigfoot

Post by engineer » Thu Apr 19, 2007 5:46 am

Post by engineer
Thu Apr 19, 2007 5:46 am

8) 8) 8) wow, I don't think you'll be a newbie for long. It seems like you gotten your RN-1 to do an awful lot in a short amount of time. I'm still working on using the grippers in a routine. great to hear from you.keep it up!!!
8) 8) 8) wow, I don't think you'll be a newbie for long. It seems like you gotten your RN-1 to do an awful lot in a short amount of time. I'm still working on using the grippers in a routine. great to hear from you.keep it up!!!
engineer
Savvy Roboteer
Savvy Roboteer
User avatar
Posts: 129
Joined: Wed Aug 09, 2006 1:00 am
Location: northern california

Post by Bullit » Thu Apr 19, 2007 12:30 pm

Post by Bullit
Thu Apr 19, 2007 12:30 pm

Wow!, I think this is the most impressive RN-1 I've seen.
Any chance to see some videos?
Wow!, I think this is the most impressive RN-1 I've seen.
Any chance to see some videos?
Image
Bullit
Savvy Roboteer
Savvy Roboteer
User avatar
Posts: 291
Joined: Wed May 31, 2006 1:00 am
Location: Near robot

Post by Humanoido » Thu Apr 19, 2007 12:56 pm

Post by Humanoido
Thu Apr 19, 2007 12:56 pm

Really impressive all the innovative work you did. How can it do cartwheels with that delicate CMUcam board on the top of the head? Also, how did you write routines to communicate back and forth between microcontrollers?

humanoido
Really impressive all the innovative work you did. How can it do cartwheels with that delicate CMUcam board on the top of the head? Also, how did you write routines to communicate back and forth between microcontrollers?

humanoido
Humanoido
Savvy Roboteer
Savvy Roboteer
User avatar
Posts: 574
Joined: Tue Dec 05, 2006 1:00 am
Location: Deep in the Heart of Asia

Post by kemsulli » Thu Apr 19, 2007 3:11 pm

Post by kemsulli
Thu Apr 19, 2007 3:11 pm

Bullit wrote:Wow!, I think this is the most impressive RN-1 I've seen.
Any chance to see some videos?


I'll try to get some videos up in the next few days.

Keith
Bullit wrote:Wow!, I think this is the most impressive RN-1 I've seen.
Any chance to see some videos?


I'll try to get some videos up in the next few days.

Keith
kemsulli
Robot Builder
Robot Builder
Posts: 9
Joined: Wed Apr 18, 2007 6:53 pm

Post by DirtyRoboto » Thu Apr 19, 2007 6:41 pm

Post by DirtyRoboto
Thu Apr 19, 2007 6:41 pm

Are all of the sensors connected to the MR-C3024 or the Robostix ?

Marcus.
Are all of the sensors connected to the MR-C3024 or the Robostix ?

Marcus.
In servo's we trust!
DirtyRoboto
Savvy Roboteer
Savvy Roboteer
User avatar
Posts: 412
Joined: Tue Sep 19, 2006 1:00 am
Location: London

Post by kemsulli » Thu Apr 19, 2007 9:45 pm

Post by kemsulli
Thu Apr 19, 2007 9:45 pm

DirtyRoboto wrote:Are all of the sensors connected to the MR-C3024 or the Robostix ?

Marcus.



The accelerometer is connected to the MR-C3024. The Sharp IRs and the camera are connected to the Robostix.

Keith
DirtyRoboto wrote:Are all of the sensors connected to the MR-C3024 or the Robostix ?

Marcus.



The accelerometer is connected to the MR-C3024. The Sharp IRs and the camera are connected to the Robostix.

Keith
kemsulli
Robot Builder
Robot Builder
Posts: 9
Joined: Wed Apr 18, 2007 6:53 pm

Post by kemsulli » Thu Apr 19, 2007 9:51 pm

Post by kemsulli
Thu Apr 19, 2007 9:51 pm

Humanoido wrote:Really impressive all the innovative work you did. How can it do cartwheels with that delicate CMUcam board on the top of the head? Also, how did you write routines to communicate back and forth between microcontrollers?

humanoido


I changed the default cartwheel arm position to allow room for the camera. I'll admit, I held my breath the first time! There is enough room for the camera, but I'm having trouble getting right cartwheels to work, although left works fine.

As for communication, a friend and I wrote a Linux driver to handle I2C communication between the Gumstix and Robostix, so now the code can operate on file handles (pointing to say, /dev/robostix). All the gory details of master/slave and send/receive are in the kernel driver. Communication with the MR-C3024 is via standard serial. On the Gumstix, I use standard file I/O, and use ERX and ETX on the MR-C3024. I send a single byte which is then mapped to the appropriate action; a single byte was chosen to reduce latency. Communication between the Gumstix and CMUCam was slightly more difficult since the Robostix only exposes one serial port from the Gumstix. So, I wrote some bridge code for the Robobstix that performs file I/O on the Robstix serial port, and then transfers information on the I2C bus to the Gumstix.

Keith
Humanoido wrote:Really impressive all the innovative work you did. How can it do cartwheels with that delicate CMUcam board on the top of the head? Also, how did you write routines to communicate back and forth between microcontrollers?

humanoido


I changed the default cartwheel arm position to allow room for the camera. I'll admit, I held my breath the first time! There is enough room for the camera, but I'm having trouble getting right cartwheels to work, although left works fine.

As for communication, a friend and I wrote a Linux driver to handle I2C communication between the Gumstix and Robostix, so now the code can operate on file handles (pointing to say, /dev/robostix). All the gory details of master/slave and send/receive are in the kernel driver. Communication with the MR-C3024 is via standard serial. On the Gumstix, I use standard file I/O, and use ERX and ETX on the MR-C3024. I send a single byte which is then mapped to the appropriate action; a single byte was chosen to reduce latency. Communication between the Gumstix and CMUCam was slightly more difficult since the Robostix only exposes one serial port from the Gumstix. So, I wrote some bridge code for the Robobstix that performs file I/O on the Robstix serial port, and then transfers information on the I2C bus to the Gumstix.

Keith
kemsulli
Robot Builder
Robot Builder
Posts: 9
Joined: Wed Apr 18, 2007 6:53 pm

Post by Humanoido » Thu Apr 19, 2007 11:24 pm

Post by Humanoido
Thu Apr 19, 2007 11:24 pm

Thanks for the reply.
Pure genius!

humanoido
Thanks for the reply.
Pure genius!

humanoido
Humanoido
Savvy Roboteer
Savvy Roboteer
User avatar
Posts: 574
Joined: Tue Dec 05, 2006 1:00 am
Location: Deep in the Heart of Asia

Post by kemsulli » Fri Apr 20, 2007 5:23 am

Post by kemsulli
Fri Apr 20, 2007 5:23 am

I posted a video to youtube: http://www.youtube.com/watch?v=dKbBnltDHm4. Sorry about the poor quality. It's sort of long since the robot doesn't move overly fast.

Keith
I posted a video to youtube: http://www.youtube.com/watch?v=dKbBnltDHm4. Sorry about the poor quality. It's sort of long since the robot doesn't move overly fast.

Keith
kemsulli
Robot Builder
Robot Builder
Posts: 9
Joined: Wed Apr 18, 2007 6:53 pm

Post by Robo1 » Fri Apr 20, 2007 11:44 am

Post by Robo1
Fri Apr 20, 2007 11:44 am

This seams like a stupid question but why does it cart wheel every where. Why doesn't it just walk it would surely be faster and easier to program?

I have to say it does look call rolling all over the place.

Have you tried any control methods for it like ZMP or COG.

Bren
This seams like a stupid question but why does it cart wheel every where. Why doesn't it just walk it would surely be faster and easier to program?

I have to say it does look call rolling all over the place.

Have you tried any control methods for it like ZMP or COG.

Bren
Robo1
Savvy Roboteer
Savvy Roboteer
Posts: 501
Joined: Fri Jun 30, 2006 1:00 am
Location: UK - Bristol

Next
17 postsPage 1 of 21, 2
17 postsPage 1 of 21, 2