ROBOTC.net Blog  

ROBOTC News

Archive for November, 2009

NXT Maze robot

with 2 comments

Here’s another maze robot that we found on Vimeo. The description reads “Rex and Adrian spent the weekend making a robot that explore a maze.” Great work guys!

NXT Maze robot

Written by Vu Nguyen

November 30th, 2009 at 10:07 am

Posted in Cool projects,NXT

Tagged with , ,

VEX Maze solver robot

without comments

Here’s a video that Dick Swan – the creator of ROBOTC – made with a VEX. I just thought all of you might enjoy this one:

Read the rest of this entry »

Written by Vu Nguyen

November 30th, 2009 at 9:20 am

Posted in Cool projects,NXT

Tagged with , , , ,

VEXnet Upgrade Support

without comments

VEXnet Upgrades

VEXnet is an 802.11 WiFi replacement for the crystal-based communication system between the VEX Microcontroller and Radio Control Transmitter. The VEXnet Upgrade enables users to convert existing Microcontrollers and Transmitters to the VEXnet communication system.

Additional VEXnet features include:

  • Easy to connect (No IP addresses, MAC addresses, or passwords)
  • Multiple layers of security built-in and always on
  • No wireless access point needed; each VEXnet pair makes its own private network
  • Hundreds of robots can operate at once; every VEXnet robot has a hidden unique ID
  • Optional tether for wired communication
  • Two user selectable channels and one private channel for competitions
  • Optional 9V battery backup to maintain wireless link during a main 7.2V power loss
  • LED scheme displays the status of the Robot, VEXnet link, and Game (Competition Mode)

Read the rest of this entry »

Written by Jesse Flot

November 25th, 2009 at 12:37 pm

Posted in General News,VEX

Tagged with , , ,

ROBOTC with the Mindsensors NXTCam

with 4 comments

The Mindsensors NXTCam can be configured to track up to 8 colored objects.  It connects to an NXT sensor port, and reports the coordinates of each object to the NXT, enabling fast line tracking, color recognition, and object tracking. Watch this cool video showing ROBOTC and the NXTCam: http://www.education.rec.ri.cmu.edu/downloads/lego/resources/NXTCam/NXTCam.html

Sample code for Color Recognition:

#pragma config(Sensor, S1,     camera1,             sensorI2CCustomFast)
//*!!Code automatically generated by 'ROBOTC' configuration wizard               !!*//
 
/*
Color Recognition - ROBOTC for the NXT
 
Description: The NXT displays the name of the color returned by the Mindsensors NXTCam v2
 
NXT Configuration:
- Mindsensors NXTCam v2 plugged into NXT Sensor Port 1
 
Camera Configuration:
- Color Index 0: Red
- Color Index 1: Orange
- Color Index 2: Yellow
- Color Index 3: Green
- Color Index 4: Blue
- Color Index 5: Purple
- Color Index 6: Black
- Color Index 7: Brown
 
Notes:
- As of October 2008, NXTCam color index must be configured through
NXTCamView, found at: http://nxtcamview.sourceforge.net/
- More information can be found at: http://mindsensors.com/index.php?module=pagemaster&PAGE_user_op=view_page&PAGE_id=78
*/
 
//Include NXTCam Library
#include "RAnxtCamLib.c"
 
//Define global variables
string colorName;
int numBlobs;
int_array blobColor;
int_array blobX1;
int_array blobTop;
int_array blobX2;
int_array blobBottom;
 
void printColorName();
 
task main ()
{
  //Initialize the NXTCam
  enableTracking(camera1);
  wait1Msec(500);
  sortBySize(camera1);
  wait1Msec(500);
  useObjectTracking(camera1);
  wait1Msec(500);
 
  //Recognize Colors Forever
  while(true)
  {
    printColorName();
    wait1Msec(100);
  }
}
 
//void printColorName() - Writes the color returned from the camera to the NXT screen
void printColorName()
{
  nxtDisplayString(1, "The color is:");
  //Retrieves Camera Data
  getCameraData(camera1, numBlobs, blobColor, blobX1, blobTop, blobX2, blobBottom);
 
  if(numBlobs > 0)  //If at least 1 "blob" or color is seen...
  {
    switch(blobColor) //...check the blobColor index.
    {
    case 0:
      colorName = "RED     ";
      break;
    case 1:
      colorName = "ORANGE  ";
      break;
    case 2:
      colorName = "YELLOW  ";
      break;
    case 3:
      colorName = "GREEN   ";
      break;
    case 4:
      colorName = "BLUE    ";
      break;
    case 5:
      colorName = "PURPLE  ";
      break;
    case 6:
      colorName = "BLACK   ";
      break;
    case 7:
      colorName = "BROWN   ";
      break;
    default:
      colorName = "UNKNONWN";
      break;
    }
  }
  nxtDisplayString(3, colorName);
}

Written by Jesse Flot

November 24th, 2009 at 12:32 pm

Abbeyjean’s Toddlerbot

without comments

Source: Abbeyjean’s Toddlerbot

This started out as a balancing robot similar to the Gyro version of NXTWay and using Ramin’s RobotC program.

This worked first time which caught me by surprise – I mean where’s the fun in that? So I started playing around with the design. First I made it taller and taller but it still balanced ok so then I decided to see if I could make it stand up again if it fell down.

The result is ToddlerBot. I called it ToddlerBot because it is like a toddler tying to walk for the first time. It starts out face down on the floor, then it stands up and tries to move forward, but just like a toddler it falls dowm. After a few tears it struggles up again and toddles forward until it falls down again. And so on.

Left

Back


Right


I used the HiTechnic Tilt sensor to detect when it had reached the upright position. I found I needed ‘arms’ at  the rear as well when it stood up, otherwise momentum tended to make it fall over backward before it could start balancing.

A single touch sensor serves the double purpose of detecting when it has fallen on its face and also when the ‘arms’ are fully retracted.

It still has the sonar sensor to detect obstacles but this is pretty much redundant as it never stays upright long enough to reach any obstacles. The extra motor and all the other bits increase the mass of the robot considerably, with the result that the balancing motors have trouble reacting fast enough to counter the extra momentum created as the robot tries to balance. But then that was the idea anyway.

If it falls over backwards, you’ll have to get ‘mummy’ to help it get up again.

Front view balancing with arms up

Written by Vu Nguyen

November 21st, 2009 at 11:19 am

Posted in Cool projects,NXT

Tagged with , , ,

Xander’s Omnipotent Omniwheel

without comments

Source: My Omnipotent Omniwheel

Xander posts:

For the Lego World 2009 in the Netherlands I built an omniwheeled robot.  It’s been done thousands of times before and the Internet is full of great (and not so great) examples.  I wondered why I hadn’t jumped on that bandwagon so I got cracking.

This was the first prototype I made back in August.  I was on a Lego expo together with Martijn and Daniel (and their respective better halves).  I wanted to see if it were possible to build an omniwheeled robot using just the NXT 2.0 kit pieces.  This is what I came up with.

CIMG9712CIMG9708CIMG9711

Yeah, a lot of wheels.It didn’t perform well at all, especially when it needed to do anything but spin around.  It got me thinking, though, how could I build an omniwheeled robot that would perform well.  Lucky for me, Martijn was more than happy to donate a couple of wheels to the cause.  It was a little more than a couple, I guess he was expecting me to build a 6 wheeled robot or something.  It came to about 200 wheels in all, 86 small ones and about 115 bigger ones.

I went through quite a number of wheel designs over the next couple of weeks.  Some were ridiculous cart wheels shaped monstrosities that measured more than 20cms in diameter.  Others simply defied explanation.  The design I eventually settled on is shown below.  It is loosely based on the omniwheel design that Steve Hassenplug made with some of my own modifications.

CIMG9865 CIMG9867 CIMG9875

The wheel is actually made up of two wheels next to each other.  They’re quite resilient.  During Lego World I demoed the robot quite a bit and only 2 of the small wheels fell off during that whole time (5 days).  Not bad.

Before I got my current design, the actual robot went through a number of prototypes over the course of about 2 months or so. I took pictures of some of them.

CIMG9719 CIMG9721 CIMG9740

The first one is quite simple but it had quite a bit of flex in the axles attaching the wheels to the motors, so the outer wheels never actually touched the ground.  The one in the middle had one half of the wheel on each side of a frame holding the motor.  This one actually had suspended arms holding the frame housing the motors.  It looked super cool but the whole thing flexed like crazy when you took a turn, it was terrible.  The 3rd model was one I build during our camping trip.  It was much improved, less flexing but I wasn’t happy with how little contact the outer wheels made with the ground.  This caused a huge amount of  bouncing around.  I think in all there were about 10 prototypes.  The final and current incarnation of the I present to you below.

CIMG9760 CIMG9864 CIMG9863

The first picture was taken before Lego World, the other two were taken after.  A couple of nice bumpers were added, a HiTechnic Touch MUX, a HiTechnic Compass and finally a HiTechnic IR Receiver to make the whole thing remote controlled.  Here’s a little video I put together of it in action.

So there you have it.  I’ll post some pictures of my remote controlled crane truck later this week.

Remote Controlled Omniwheel Robot

Written by Vu Nguyen

November 21st, 2009 at 11:10 am

Posted in Cool projects,NXT

Tagged with , , ,

ROBOTC for LEGO MINDSTORMS 2.0

with 4 comments

rc_icon_newThe Robotics Academy is proud to announce the arrival of ROBOTC for Mindstorms 2.0. This new version of ROBOTC is coming almost a year after the release of ROBOTC for Mindstorms 1.40. ROBOTC 2.0 adds a lot of new feature and functionality to the popular programming language for LEGO NXT robots.

ROBOTC for LEGO MINDSTORMS is a ANSI-C based programming language for the MINDSTORMS NXT and RCX robotic systems. ROBOTC offers users a common programming language across different popular robotic platforms; with a unique powerful run-time debugger that give a user complete feedback on all input, outputs, and variables in their programs.

Read the rest of this entry »

Written by Vu Nguyen

November 17th, 2009 at 5:58 pm

Posted in NXT,Releases

Tagged with , , ,

ROBOTC Blog is up

without comments

As I’m sure you’ve all noticed, we have updated the robotc.net site. It was only right for us to make a “big splash” to celebrate the release of ROBOTC 2.0 for LEGO MINDSTORMS with a brand new look to the site. We’ve kept many of the original content, but we’ve also added pages such as the new blog (of course!), and also an area for our loyal ROBOTC community to show off their cool projects. Please feel free to submit your projects to us by going onto the forums and posting in the specific thread on the forums: http://www.robotc.net/forums/viewtopic.php?f=15&t=1928. We will possibly be adding a “submission” form for this, but for now that suits us quite well!

Read the rest of this entry »

Written by Vu Nguyen

November 16th, 2009 at 6:24 pm

Posted in General News

Tagged with , ,