Archive for December, 2009
Check out the VEX Curriculum 2.0 review, featured in ROBOT Magazine! Here’s an excerpt from the article:
“When I began clicking around the VEX Curriculum I was immediately impressed by both the scope and the quality of the materials. Whether you are a student, teacher, or a hobbyist eager to learn more about robotics you will find something there for you. At www.vexcurriculum.com I found a cornucopia of practical robotics exercises and presentations that are shown in user-friendly, inviting multi-media formats. The Curriculum is designed to meet academic standards for high school classes, but any curious person interested in robotics will enjoy perusing the site. Although the package is intended to sustain two semesters of study, it is voluminous. The teachers that I spoke to also use segments of the curriculum for multi-year robotics programs, to guide students through independent study robotics projects, and as a robotics library for students building robot projects.
Teachers that use the Carnegie Mellon Curriculum report that the lessons tend to build confidence and they make the users feel associated with Carnegie Mellon. In researching this article, I found that both educators and students express a sense of pride as they work through the materials, and in the process, succeed in learning to solve robotics problems and meet multidisciplinary intellectual challenges.”
Read the entire article here: http://www.botmag.com/articles/vexcurriculum.shtml
Preview the VEX Curriclum 2.0 here: http://www.education.rec.ri.cmu.edu/roboticscurriculum/vex_online/main_start.htm
[Correction: updated description]
Here’s another neat video that Tim found. It features a joystick that you can use to point its “missile shooter” towards a target. Here’s the description:
NXTShot 2.0 is lego NXT model cannon. Its targeting is driven in realtime by a Mindsensors Acceleration Sensor mounted on a remote. Its firing mechanism is powered by springs from old BIC pens. It has an innovative homing system that sets the limits for turning and inclining using a single light sensor. It has an onscreen menu system that uses a voice to give feedback on selections. It is programmed in ROBOTCC.
I have made plans of NXTShot using Google SketchUp and the fantastic NXT components provided by Payton White (see tinyurl.com/yw7tnw). More pictures of NxtShot can be found at tinyurl.com/2l7m2m.
In case anyone really wanted to download the previous versions of ROBOTC, they are at the bottom of the downloads page for NXT and VEX. Please keep in mind that they could contain bugs that are fixed in the newer versions.
You guys really have to watch this one. It’s made by one of our very talented users on the forums, nicknamed “shep”. It’s an arm that’s based off of the flexpicker industrial arms that you see on assembly lines. Here’s the video:
Here’s shep’s description:
This robot is based on the ABB Flexpicker industrial pick and place robot. It uses four NXT microcontrollers with various Lego sensors and motors. It is very easy to program, each position uses an array element containing 3 motor positions, 3 motor speeds and an action such as grip, release or pause. I can easily teach it to pick anything up as long as it can reach it and it will fit into the end effecter. The robot is programmed using RobotC 1.45.
Good job Shep!
Albert W. Schueller works for the Department of Mathematics at Whitman College in Walla Walla, Washington. In his impressive 78-page text, “Programming with Robots” he uses ROBOTC with the LEGO Mindstorms NXT to teach programming. Here’s an except from the introduction of “Programming with Robots”:
Why learn the basics of programming using robots instead of more traditional method? For the last 50 years mainstream computer science has centered on the manipulation of abstract digital information. Programming for devices that interact with the physical world has always been an area of specialization for individuals that have already run the gauntlet of abstract information-based computer science.
In recent years, we have seen a proliferation of processing devices that collect and manage information from their real-time environments via some physical interface component-among them, anti-lock brakes, Mars rovers, tele-surgery, articial limbs, and even iPods. As these devices become ubiquitous, a liberally educated person should have some familiarity with the ways in which such devices work-their capabilities and limitations.”
“Programming with Robots” is broken down into 10 sections:
- Hardware and Software
- The Display
- Sensors and Functions
- Loops and Arrays
- Motors and Motion
- Tasks and Sounds
- Inter-Robot Communication
Each section contains background information, thorough explanations, sample code, and practice exercises, making it a comprehensive and valuable tool for educators. The full text is available here: http://carrot.whitman.edu/Robots/notes.pdf
- Mindstorms NXT controller
- Two prototype integrating gyros from HiTechnic. These are not the rate gyros already available. Rate gyros output degrees/sec, which requires a pretty gnarly math process to measure and integrate the results over time to get absolute degrees. The prototype iGyros from HiTechnic do that in hardware, and output absolute degrees, which is very easy for the NXT to deal with with.
- A 3-axis accelerometer to calibrate the gyros using a modified Kalman filter. Basically gyros are right in the short term (seconds) but wrong in the long term (minutes; they drift over time). Meanwhile accelerometers are wrong in short term (they’re noisy) but right in the long term (they don’t drift). So we averge the accelerometer readings over time to correct drift in the gyros.A prototype servo multiplexer from HiTechnic. This is similar to the servo driver accessory that they’re selling as part of the FTC competition kit, but is designed for RC use. It takes I2C output from the NXT and converts it into PWM for the servos. It also has a channel 6 input from the RC receiver that switches it from RC to NXT control (this is our hardware failsafe switch).
- A GPS sensor/datalogger (iBlue 747) that communicates with the NXT via bluetooth.
Video of the UAV in action:
In his Wired.com article: “The Best Programming Language for Lego Mindstorms, Hands Down“, Chris Anderson writes,
“Play around with Lego Mindstorms NXT enough and at some point you’ll inevitably get frustrated with NXT-G, its graphical programming language of “blocks” that you drag around and connect with “wires”. It’s great for teaching kids the basics, but once they embark on anything remotely ambitious they’re bound to run into trouble. Whether it’s the crazy sprawl of blocks over the work area (even a simple loop can require screens of slow horizontal scrolling), the lack of floating point math or, perhaps worst of all, the total absence of debugging tools, sooner or later you’re going to start longing for a proper programming language that uses, you know, text and stuff.
“if…then…else”, “while”, even “for…next” – you won’t know how much you actually like those constructs until you don’t have them. For anyone who’s ever programmed, there’s nothing better for understanding programming logic than properly tabbed and commented code, all in a column of text as God intended. And for your kids, there’s no time like the present to introduce real programming, using coding conventions that will be as relevant in the decades to come as they were in decades past.
The good news is that there are lots of replacement text-based languages for Mindstorms NXT, from Java to Lua (or, if you want to stick with visual programming, you can also use LabView, the professional-grade language that NXT-G is based on).
Even better news: I’m here to tell you that one stands out from all the rest.
It’s RobotC and it’s simply fantastic. If you’re not a C programmer, don’t worry–aside from a few grammatical conventions, it could be BASIC. But where it really stands out is in the programming environment. RobotC’s integrated development environment (IDE) includes real-time syntax checking, compiling and contextual help and auto-complete of functions and variables. It has an awesome debugger, allowing you to step through your program, set break points and watch variables, or just watch the code executing on the NXT brick. And its collection of instructional and sample programs is unmatched in the Mindstorms world.”