Troubleshooting NXT-G programs can be a little challenging. There aren’t any traditional debugging tools built into the environment. Here are three ways you can emulate common troubleshooting techniques when your program isn’t working the way you expected.
Watch variables – You probably know you can monitor a sensor in the bottom left corner of the screen. If you keep the NXT connected to the computer, you’ll see the value of the highlighted sensor block in real time. But what if you can’t keep the robot tethered or you’re trying to monitor another value? Put it on screen! Use the Number To Text Block to send data to input B of the Text Block. Use A to name the variable and C to pad the output with blank spaces. Send each value to a different line using the Display Block. If you drop this all into a MyBlock, you’ll have a simple routine to watch a variable without cluttering up your program.
Set breakpoints – Breakpoints are really useful because they halt the program at a certain spot so you can inspect the state of your robot. When I’m trying to isolate a program bug, I use the Stop Block and just move it down the line to test each step of the program. This works great when you’re trying to navigate and aren’t sure why your robot is going off course.
Set alerts – If I’m not sure which branch my program is using in a switch, I’ll add audio cues to my program for each branch. For instance, I wrote a program to read color codes and perform different actions depending on which color it identified using the color sensor. To confirm the color sensor was seeing the colors accurately, I made each value in my switch say the color name out loud.
Use these methods alone or together to quickly get to the root when your programs are misbehaving. You’ll save a lot of guesswork by using these three simple techniques to pinpoint problems and isolate failures.
I know this project is two years old, but I couldn’t restrain myself when I saw that the UAV was using an Arduino as a flight computer to return from 100,000 feet. Awesomeness!
On Monday, April 8th, I will be at the PDQ in Carrollwood for one of their Family Fun Night fundraisers. When you place your dinner order, mention the FunWithBots Robotics Camp and they will donate 10% of your bill to help fund a scholarship for underprivileged children to attend camp.
In addition, if you sign up for any of our camps during the Family Fun Night, I will add another $10 into the fund per child. To make it easier on your own budgets, I’m also extending the early bird discount one more day so that all registrations on the 8th can take advantage of our reduced camp pricing.
The scholarships will go towards children selected by either Bayshore Baptist Church or Messiah Lutheran Church. I’ll have a little voting booth setup at PDQ so everyone can vote for which church to support. Whichever church has the most support will receive the first scholarship. If enough money is raised for more than one scholarship, I will divide them evenly between the two.
Here is our camp schedule for the summer:
Jun 10-14 North Tampa (Messiah Lutheran Church)
Jun 17-21 South Tampa (Bayshore Baptist Church)
Jun 24-28 Lutz (Lutz Prep)
Jul 15-19 Trinity/NPR (Longleaf)
Jul 22-26 Lutz (Lutz Prep)
Jul 29-Aug 2 Brandon (Location TBA)
Aug 5-9 South Tampa (Bayshore Baptist Church)
Aug 12-16 North Tampa (Messiah Lutheran Church)
This is great chance to have a fun night out with your family and help others. I will be there from 5:30 to 7:30 and PDQ will continue to accept the mentions for the 10% contribution until 9:00 PM. PDQ is at 12650 N. Dale Mabry Hwy one block south of Fletcher Ave.
I hope to see you all there!
Forget about STEM! We’ve been all about STEAM (Science, Technology, Engineering, Arts, and Math) with our robotic zoo! Over the past six weeks, the kids at the North Tampa Robotics Club, South Tampa Robotics Club, and Learning Gate Community School have been hard at working building a robotic zoo to exhibit at the Tampa Bay Mini Maker Faire. This past week, 26 of us from these programs exhibited six different habitats featuring ten different student built robots. The effort took over 200 hours of effort to build the robots, program their behaviors, decorate them and build their habitats.
In this tropical grassland, massive herds of zebras and giraffes roam freely. Here, a couple of individuals pause briefly for our enjoyment.
The giraffe uses its long neck and towering body to reach the succulent leaves high up in the tree while the zebra, an animal rarely domesticated pauses momentarily and responds to being petted.
The habitat is constructed of paper mâché, painted and decorated with an assortment of craft and hobby materials. The animals use LEGO NXT Mindstorms for motion and sensing. The zebra’s coat was knitted by Mrs. Edwards.
Deep in the jungles of Central America, the plants attack and the animals do their best avoid predators by blending in with the background.
The Venus Fly Trap attracts insects and can sense the presence of a meal within its grasp. It feeds by closing on the helpless morsel trapping it and digesting it. Meanwhile, the chameleon’s unique ability to camouflage itself by changing colors to match its environment is simulated here by detecting colors in front of its sensor and then relaying the color data via XBee to an Arduino which has been programmed to gradually transition the skin to the newly detected color. An array of 15 RGB LEDs provide the lighting for the chameleon’s skin.
The habitat is constructed primarily of natural materials. The motion and sensors for both animals are LEGO NXT Robotics. In addition, the chameleon uses a third party NXTBee communications device and interfaces in real time with an Arduino using an Xbee shield. The LED array was built directly onto a plastic needlepoint canvas and wrapped around the torso. The head and tail are modeling dough.
Witness the ferocious struggle for supremacy between these giant beasts as the T-Rex, stegosaurus, and crocodilian engage in a three way battle to dominate the Jurassic Period! Which will reign supreme? Each animal has its own special mode of attack.
The habitat is cloth over cardboard. Each animal is powered by a LEGO NXT robot with attacks programmed to occur at random intervals.
Prepare yourself to enter the realm of fantasy. Perched high atop a mist shrouded mountain, the dragon lays in wait for intruders. Venture to close and risk the wrath of this magnificent creature!
The mountain habitat was built using a five gallon paint can, crumpled newspaper and an old sheet to obtain the shape. The surface was then covered in paper mâché and painted with a black primer layer followed by a stone textured spray paint. Finally, the stone texture was dusted with more black to give the finish a bit of variety.
The dragon’s skeleton is constructed from LEGO TECHNIC elements and powered by LEGO NXT. The wings beat using synchronized cams that translate the motor rotation into an up and down motion. The dragon was originally finished with a hologram gift bag cut to size and LEGO Bionicle parts. The fire is simulated using a 12V fan connected directly to the NXT brain with a custom cable harness. The fan blows metallic streamers to represent flame.
This minifig scale garden features a Hexbug maze. Can you see the word LEGO on the maze? Traversing this maze is a small collection of Hexbug Nanos. As they reach the end, a gantry robot detects the presence of the winner and transports it back to the start.
The audience was invited to add decorations to the garden from the available materials.
The entire garden is made of classic LEGO town elements with a smattering of castle and pirate bits for drama and interest.
The gantry robot is controlled by a LEGO NXT robot. Using the color sensor, it watches the capture tube for anything non-yellow to cross the sensor’s view. Once it sees the Hexbug, the capture tube is lifted and the robot traverses the gantry to deposit the bug back at the start of the maze. Three layers of specialized LEGO bricks provide a rigid track to span the 48 inch distance between the support columns and support the weight of the robot.
This clever automaton is powered by a single LEGO NXT to drive both the hawk and the prairie dogs. The prairie dogs carefully scan their surroundings alert for predators who might threaten their colony. If a predator is sighted, they go into high alert to make the neighboring families aware of the looming threat.
Materials and construction techniques
The prairie is paper mâché over cardboard. The hawk’s perch is a five gallon paint can for a tree trunk covered with material and finished with a canopy of faux leaves.
The hawk’s skeleton is made from LEGO TECHNIC elements and its surface is finished with feathers. The wings are controlled by a single motor and synchronized using a pair of cams to beat in unison.
The prairie dogs are clay and sit upon a clever arrangement of cams and gears to achieve the complex motion. The cams are driven by a single NXT motor and are arranged to vary the speed and amount of movement for each prairie dog. You’ll notice that several of the dogs rotate as they emerge from their burrows. The rotation is accomplished using a combination of rack and bevel gears to create a complex motion from the motor’s rotation. The alert is triggered by an ultrasonic sensor mounted in the hawk (they look like eyes).
Ride our electric tram as it winds its way through the zoo. This motorized train is in its third iteration in just two short months! At each end of the track, a switch reverses the current and sends the train back towards the far side of the exhibit.
The tramway is constructed exclusively with LEGO using vintage 9V battery boxes and motors.
Well, our website is. Our hosting provider who I’ve used for almost 10 years now has decided to lock down their servers with additional security. The net result is that they broke my captcha service, outgoing email, and who knows what else. It took almost four hours on the phone to convince them I didn’t write syntactically incorrect php code and to actually look at the error I was receiving. If you are technically curious, they are blocking fsockopen() in php. They are also blocking wget from the secure shell and don’t have a telnet utility available from the server so troubleshooting was not as simple as it should have been.
If you have been trying to reach me through the website or complete the online registration for camps or for our community clubs, I apologize now for the errors and frustration. The change was made with no notice or warning. Until I have the site relocated to another hosting provider, please email me at firstname.lastname@example.org or call me at 813-249-5522.
I will be extending our early bird special on the summer camp pricing by a week so that no one misses out.
NEWS RELEASE – January 7, 2013 – Today, LEGO® Education announced the LEGO MINDSTORMS® Education EV3 platform, the next generation of robotics for the classroom, continuing 15 years of MINDSTORMS robotics technology for education. The EV3 platform was created based on feedback from more than 800 educators worldwide and provides relevant robotics curriculum and technology for teaching computer science, science, technology, engineering, and math through a hands-on experience with sensors, motors, programming, and the programmable EV3 Brick. Students can now build and program a fully functioning robot in a single 45-minute class period.
The platform includes customizable curriculum that is digitally delivered and installs directly into the LEGO Education MINDSTORMS programming software lobby. The built-in digital workbook can be used by students to capture their work as they progress through the lessons, making it easy for the teacher to follow students’ progress and assess their work.
The EV3 platform includes Design Engineering Projects, a curriculum package with 30 hours of classroom instruction. The structure of the activities in the Design Engineering Projects curriculum follows the engineering design process used by scientists and engineers in many industries. Using videos of real-world robots as inspiration, the students are given a design brief that challenges them to develop, design, and share their solution. Throughout the process, students learn through combining and applying science, technology, and math disciplinary skills as they engineer their design solution. This structure is designed to help students develop the creative-thinking, problem-solving, teamwork, and communication skills required for success in school and beyond.
The LEGO MINDSTORMS Education EV3 Core Set comes with the EV3 Brick, rechargeable battery, sensors, motors, large brick selection, a new ball wheel, and building instructions. The intuitive software platform for EV3 is based on National Instruments LabVIEW™ graphical programming software, the same technology that powers some of the greatest innovations on the planet, and includes new data-logging capabilities that allow students to collect, graph, and calculate their data. Also available is the LEGO MINDSTORMS Education EV3 Expansion Set, which enables students to build larger-scale, more complex robots. For easy classroom management, both the base education set and the expansion set have storage bins and sorting trays.
LEGO MINDSTORMS Education EV3 is now available for preorder and will ship in the fall semester of 2013.
NASA, ESA Use Experimental Interplanetary Internet to Test Robot From International Space Station.
Yes, it’s a LEGO MINDSTORMS NXT!
November 8, 2012
WASHINGTON — NASA and the European Space Agency (ESA) successfully have used an experimental version of interplanetary Internet to control an educational rover from the International Space Station. The experiment used NASA’s Disruption Tolerant Networking (DTN) protocol to transmit messages and demonstrate technology that one day may enable Internet-like communications with space vehicles and support habitats or infrastructure on another planet.
Space station Expedition 33 commander Sunita Williams in late October used a NASA-developed laptop to remotely drive a small LEGO robot at the European Space Operations Centre in Darmstadt, Germany. The European-led experiment used NASA’s DTN to simulate a scenario in which an astronaut in a vehicle orbiting a planetary body controls a robotic rover on the planet’s surface.
Full story at nasa.gov
Our North Tampa Robotics club just finished our SUMO competition last night. Eight teams competed for glory in a heated competition. I want to recognize all of the teams who participated – they all worked really hard building and refining their robots!
Armored Panzer Division – Bennett and Kevin
Tank Masters – Amilio and Alex
The Twisting Tornadoes – Trevor and Manat
Mbotm Bots – Will and Lleyton
Hulkbots – Logan
Congratulations to our tournament champions!
Gold – Mbotm bots (Will and Lleyton)
Silver – Armored Panzer Division (Bennett and Kevin)
Bronze – Mad Marcy
Bronze – Tank Masters (Amelio and Alex)
I would like to recognize Greg Call who hosted a SUMO competition earlier this year in Stuart, FL. I wrote my own rule book using his rules as a starting point.
Robots were limited in weight to 1 KG and by size to 9 inches square with no height restriction. All robots were constructed using only LEGO parts with one intelligent brick per robot.
The basic format of the tournament is patterned after fencing tournaments with an initial pool round followed by a single elimination bracket. For the pools, competitors compete against every member of their pool. Each round is comprised of three encounters with two points possible per encounter (2 for an outright win and 1 each in the case of a tie). This gives six possible points per round.
Once the pool results are tallied, the bracket is seeded based on three criteria.
Once the competitors were seeded into the elimination bracket, we had a quick elimination round with the final four competitors all receiving awards.
I was so busy officiating, I never go to take any pictures. Please comment with your pics and I’ll get them online!
I did capture some photos of the work in progress over the last few weeks. Enjoy!