Archive for the ‘robotc’ tag
In our newest edition of Student POV, we have Sanjay and Arvind Seshan, who are members of the robotics team, Not the Droids You Are Looking For (Droids Robotics) from Pittsburgh, PA, USA. They are actively involved in robotics all year around, whether competing themselves or teaching others. They constantly share some great pictures on their Twitter page of their team and outreach programs, so we’ve asked them to share some of their experiences in robotics …
Our first exposure to robotics was in 2010 when we decided to visit a FIRST LEGO League tournament at the National Robotics Engineering Center (NREC). We were excited by what we saw and, the next summer, we purchased an NXT LEGO Mindstorms kit and learnt to program using Carnegie Mellon Robotics Academy’s NXT Video Trainer.
We haven’t stopped since! In 2011, we started our own neighborhood-based robotics team with eight other friends. We have participated in FIRST LEGO League as well as VEX IQ contests since then. You can read more about us on our team website (www.droidsrobotics.org).
Benefits of Robotics:
Participating in robotics has taught us several programming languages, as well as general computer science skills and presentation skills. We now code in NXT-G, EV3-G, ROBOTC, Python and HTML as a direct result of robotics. We are comfortable interviewing experts as well as being interviewed about our work.
We use these skills outside of robotics contests to create webpages, and make online tools and programming tutorials. We even developed a robot in Minecraft that uses Python code to complete tasks. One summer, we participated in a 24-hour coding contest called Code Extreme. For that event, we created a bicycle renting system using a Raspberry Pi and an RFID reader.
Robotics has taken us to some interesting places: the inside of a Smart House for seniors, under the hood of an airplane engine, and even to a sulfur dioxide sensor manufacturing plant. These field trips have shown us many different STEM careers we might choose from.
Spreading our love for robotics:
We do many robotics outreach activities all year round. We have been invited to teach other students at the Carnegie Science Center and four local libraries in the Pittsburgh area. At these events, we try to introduce students to LEGO Mindstorms, VEX IQ, EV3-G, and ROBOTC. Kids are naturally attracted to robots, and our hands-on workshops have been very popular. In September 2014, we expanded this outreach beyond Pittsburgh by teaching students around the world to program robots using our own lessons and website (EV3Lessons.com).
The biggest challenge in robotics is probably robot reliability – getting your robot to “behave” as you intend again and again. It takes both software and hardware solutions in combination to improve reliability. To add to this problem, contest environments are often very different from practice environments. Kids who don’t have access to good programming lessons like the ones provided by ROBOTC, CS2N, Carnegie Mellon Robotics Academy’s EV3 Trainer, and EV3Lessons.com often feel frustrated.
The challenges in robotics are not problems you cannot solve. They are part of what makes robotics interesting for us. They teach us to come up with different techniques as solutions. They also teach us patience and perseverance!
Overall, robotics has given us opportunities and skills that we might not have discovered otherwise. The greatest opportunity from robotics is finding out what all a robot can do! People some times think that a child’s robot “can only do so much”. We have found that it can lead to learning a lot of advanced programming techniques.
Robotics has opened up a world of possibilities for us. We especially like sharing these possibilities with other people we meet at our workshops and demos.
You can find more information about their team here: www.droidsrobotics.org and on their programming lessons here: www.ev3lessons.com.
Are you interested in learning how to program in ROBOTC Graphical for LEGO MINDSTORMS EV3 or EV3 Robot Virtual Worlds? If so, then this YouTube playlist is for you! This set of videos will help you to get started programming with ROBOTC.
These videos are part of the Introduction to Programming EV3 Curriculum. To continue further with our free online training, visit our curriculum page here! http://www.education.rec.ri.cmu.edu/previews/ev3_products/robotc_ev3_curriculum/
Are you interested in learning how to program in ROBOTC Graphical for VEX IQ or VEX IQ Robot Virtual Worlds? If so, then this YouTube playlist is for you! This set of videos will help you to get started programming with ROBOTC.
These videos are part of the Introduction to Programming VEX IQ Curriculum! To continue further with our free online training, visit our curriculum page here! http://www.education.rec.ri.cmu.edu/previews/robot_c_products/teaching_rc_vex_iq/
We are so excited to share the latest web design update for our VEX CORTEX Video Trainer! This includes all of our previous videos and materials, but in an easy to follow new format.
The VEX CORTEX Video Trainer is a multimedia curriculum that features lessons for the VEX CORTEX Microcontroller, which can also be applied to the older VEX PIC Microcontroller 0.5. It includes in-depth programming lessons for ROBOTC, multi-faceted engineering challenges, step-by-step videos, robotic support material, educational resources, and more! Check it out today and let us know what you think!
Two of China ROBOTC high school VEX teams (3288A and 3288B) earned their 2014-15 VEX World Championship tickets on Singapore South Programming Skill Challenge on Feb 27. With power ROBOTC programming software, team 3288B tied with Singapore Champion team and team 3288A advanced to VEX World Champion with Asia’s best programming score. China ROBOTC’s middle and elementary school teams earned spots to Louisville as well!
Two High School Teams:
3288A: #1 in Asia ; #14 in world ranking
3288B: #2 in Asia ; #24 in world ranking
Mid School Team:
10790: #1 in Asia ; #5 in world ranking
Elementary School Teams:
10579: #1 in Asia ; #4 in world ranking
10689: #2 in Asia ; #12 in world ranking
China ROBOTC, in cooperate with Shaanxi Science and Technology Department, is also jump starting a new robotic competition platform under the name of “iSTEMn”! iSTEMn provides opportunities for members worldwide to collaborate and innovate in the STEM arena. iSTEMnetwork promotes new levels of educational achievement and economic productivity. iSTEMn robotic competition is a K-14 event and students are divided into 4 different age groups: elementary; middle; high schools and colleges. iSTEMn robotic competition features all ROBOTC supported hardware platforms: VEX; LEGO and Makeblock as well as the RVW competition.
After this two days event, students are learning robotic at their schools and preparing for Shaanxi province tournament at the end of 2015. The winning teams will advance to China National Championship in Beijing early 2016. The winning teams with national title are going to California to compete with US teams for the iSTEM Robotic World Championship in late 2016.
We LOVE getting Twitter posts sent to us about ROBOTC. In the last few months, you have shared some great posts and pictures with us. We decided to make a second compilation of some of our favorites to share here…
— EdTech Baton (@EdTechBaton) February 25, 2015
— Chris Calver (@Chris_Calver) February 23, 2015
— Dr. Jim Barger (@drjbarger) February 23, 2015
— Ringo Dingrando (@ringodin) February 23, 2015
— NWMS Robotics (@NWMSRobotics) February 21, 2015
— Prairie Ridge INC (@IndustryCareers) February 19, 2015
— Paul McKnight (@Chewmacca1) February 11, 2015
— Triangle ES Robotics (@Triangle3615) February 6, 2015
Teaching our FLLers to use RobotC. pic.twitter.com/9QoPq3LNa7
— Higgs Bots (@ftc3085) February 5, 2015
Some awesome building today!! pic.twitter.com/bBFHCGEUQZ
— R Hartley (@MrRHartley) February 4, 2015
4th grade robotics class completes the Lego EV3 sonar sensor Maze Challenge using Graphical ROBOTC http://t.co/Eq8XeBAMLY
— Lancer Robotics (@LancerRobotics) January 29, 2015
— Droids Robotics (@droidsrobotics) January 28, 2015
— Regan White (@ReganWhite222) January 23, 2015
— Ringo Dingrando (@ringodin) January 22, 2015
— RSHS Robotics (@RSHSRobotics) January 10, 2015
— Michael Washington (@ADefWebserver) December 31, 2014
— Harli Quyn (@HarliQuyn) December 23, 2014
— Anna Lynn Martino (@annalynnmartino) December 19, 2014
easyC it's been nice working with you…. Hello RobotC !!! #switchinprogramming
— Volt Robotics 5194B (@VoltRobotics) December 18, 2014
— ScratchÖğren (@scratchogren) December 15, 2014
— Spring Valley (@SV_Vikings) December 12, 2014
— Clarke Hosp (@hospdesign) December 12, 2014
Do you have a ROBOTC picture/video/post you would like to share with us on Twitter? If so, include #ROBOTC or @ROBOTC in your message.
Jason McKenna, from the Hopewell Area School District outside of Pittsburgh, PA, writes about his experience in the classroom with the new Robot Virtual World game, VEX IQ Beltway. Check it out below …
The new VEX IQ virtual game Beltway is a great way to challenge your students to apply the basics of ROBOTC programming while also asking them to come up with unique strategies to try to score as many points in the 2 minute game as possible. My students just spent about 3 weeks working on the challenge and trying to score the highest score as possible. The students had an absolute blast and as a teacher, it was great seeing all the different ways the students tried to tackle this completely open-ended challenge.
The objective in Beltway is the same as VEX IQ Highrise: program your VEX IQ robot to autonomously score as many cubes as possible during a 2 minute period. With Beltway, a conveyor belt has been added around the perimeter of the game field in order to assist with game play. Additionally, the virtual environment utilizes “magic stacking” meaning that the cubes automatically jump onto the stack when they are placed onto of the stacking cube regardless of the apparent size of the robot. The conveyor belt reduces the accumulation of error, where, for example, a robot’s slight error in one turn becomes a larger error when the robot repeats that same turn 4 or 5 times. Any time students attempt a long program with many different elements they will at some point become frustrated with the accumulation of error that occurs. Magic stacking and the large margin of error that enables easy pickup of cubes eliminates any frustration that the students may encounter as try to pick up cubes and then stack them. These elements of gameplay in Beltway allow students to focus on their strategy, and it also allows them to try to experiment with many different scoring methods because they are not spending a lot of time programming perfect 90 degree turns and aligning their robots perfectly to pick up a cube. You can click here for a more extensive list of rules and information about gameplay!
Beltway comes with a variety of sample programs that students can use to help them get started or as a reference as they adjust their strategies. For example, if students decided that they wanted to control the conveyer belt manually, they could refer to a sample program to see how that is done. I did that many times while monitoring the students. After a few days, the students aren’t repeatedly raising their hands; instead, they just refer to the sample programs for guidance.
The game also served as a great tool to teach beginning programmers the utility of comments. Oftentimes, beginners don’t make programs quite as long as the ones they will make for Beltway. Students quickly saw the need to point out what was going on in their code with comments so they could go back to those sections and make whatever adjustments they wanted as they progressed with their gameplay.
As I stated earlier, my students had a lot of fun while playing Beltway. It is not easy to keep students’ interest level high in an activity that takes 3 weeks. The students maintained their level of interest and they consistently asked to stay after school to work on their programs some more. We had an in-class competition where the students ran their final programs. The winning team scored the winning points as the timer, literally, went to zero. It was pandemonium in my room. Kids were high-fiving each other, cheering, and remarking at how awesome the competition turned out. Students were also talking about the different strategies that the other teams used and how they could change their programs based upon what they had just seen.
So now, of course, the students want to play some more. This is great because now I can use that as an opportunity to show students how they can take some of the code that they used over and over again (for example, picking up cubes) and show them how they can use full ROBOTC to turn those behaviors into functions. Beltway has proven to be both a great teaching and learning tool in my classroom.
- Jason McKenna
We recently asked a group of engineering students from the University of Aalborg in Denmark to write about their experience using ROBOTC on a recent project. Check it out below!
Hi all! We are 6 software engineering students from the University of Aalborg in Denmark. As part of our Bachelor’s degree, we had to design and implement an embedded system, and we chose to design and implement a robot that would solve the Simultaneous Localization And Mapping (SLAM) problem. We called the robot ColumBot.
The hardware we were issued were LEGO NXT bricks and sensors as well as a few from MindSensors. MindSensors provided libraries for use with ROBOTC, which was one of the reasons why we ended up choosing ROBOTC as our IDE.
Work in Aalborg is group-based and many of the other groups spent the first weeks trying to get their NXT bricks set up for the firmwares they were using, but ROBOTC allowed us to have the part of the project kept to a minimum. ROBOTC provided us with a strong and versatile tool in solving our project, and was of great help.
Using ROBOTC, we were able to implement a mapping robot with a drive queue, with enough memory for 100m2, as well as a particle filter to correct the inaccuracies that arose from sensing when mapping. All this functionality was scheduled using a real time scheduling scheme. We do not believe this would have been possible with some of the IDEs used by the other groups.
ROBOTC has its quirks, namely much of the documentation is faulty. [Editor’s Note: ROBOTC recently went through a complete documentation overhaul to address issues like these – take a look at our help docs here.] As the focus of our project was to fit as much functionality as possible into the limited space, this problem mainly arose with the sizes of different types, where the documentation deviated from the reality. But the community is fantastic and many answers to difficult questions were found in the forums during the project period. The most useful features in our project were the Bluetooth Communication and the Debug Stream, which allowed us to monitor the robot remotely and communicate with it.
We would recommend ROBOTC to anyone attempting a build of the same size as ours, but advice you to be wary and test things for yourself, because this was sometimes a problem for us.
Check out one of our test runs here:
The Robot Virtual World team is happy to announce our latest updates are available for Ruins of Atlantis, Palm Island, and Operation Reset! We’ve included updated sample program to support all platform types (VEX CORTEX, VEX IQ, EV3, and NXT) within ROBOTC. You can also choose what type of sample program you would like to use from Graphical, Natural Language, or Standard.
Thanks again to everyone who has provided feedback! Please continue to do so at the ROBOTC.net Forums. Happy programming!
What we’re most excited about in this new release is the official version of the brand new “Natural Language 2.0″ libraries for the VEX Cortex, including support for the new ROBOTC Graphical interface with VEX Cortex.
VEX IQ Users:
- Run the “VEX IQ Firmware Update Utility” and update your VEX IQ Brain to firmware version 1.13 (may not be available at time of release, but will be available soon).
- Users will also have to update their VEX IQ Wireless Controller in addition to any other VEX IQ Devices (sensors, motors) that may need to be updated as well.
- After updating to the latest VEX IQ Brain firmware, users will also have to install the latest ROBOTC firmware from inside of ROBOTC.
VEX Cortex Users (with Black VEXnet 1.0 Keys):
- You will need to update your VEX Cortex and VEX Game Controllers with Master Firmware Version 4.23 from inside of ROBOTC.
- After updating the master firmware, users will also have to update the VEX Cortex with the latest ROBOTC firmware as well.
VEX Cortex Users (with White VEXnet 2.0 Keys):
- The new VEXnet 2.0 keys have a specific “radio firmware” that you will need to upgrade to enable “Download and Debugging” support. You can download the VEXnet Key 2.0 Firmware Upgrade Utility here.
- Download the “VEXnet Key 2.0 Firmware Upgrade Utility” and insert your VEXnet 2.0 key to any free USB port on your computer. Follow the instructions on the utility to update each key individually. All VEXnet 2.0 keys must be running the same version in order to function properly.
- After updating your VEXnet 2.0 keys, you will need to update your VEX Cortex and VEX Game Controllers with Master Firmware Version 4.23 from inside of ROBOTC.
- After updating the master firmware, users will also have to update the VEX Cortex with the latest ROBOTC firmware as well.
ROBOTC 4.28 BETA -> 4.29 Change Log:
- (CORTEX) Updated VEX Cortex Graphical Implementation to support competition (single run autonomous per toggle)
- (CORTEX) Modified “BuiltInVariables.txt” to properly show VEX Cortex commands.
- (IQ) Fix RVW Clawbot standard model to match Virtual Worlds configuration.
- (IQ) Add Armbot with Sensors “standard model”
- (IQ) New RVW Specific Motor and Sensor Models + VEX IQ Clawbot – No Sensors model.
- (IQ) Added “moveMotorTarget” to Graphical
- (ALL) “Test Communications Link” dialog was not properly storing/retrieving the registry value for the “Ping Type” variable.
- (ALL) Debug stream fixed so that “Clear Debug Stream” clears the IDE’s Window at the proper location; previously it was possibly erasing the screen at a spot well after the actual “clear” function was called.
- (ALL) Enhance Debug Stream handling to better support (1) Buffer overflow conditions and (2) proper visual appearance on IDE when “Clear Debug Stream” intrinsic is used.
- (ALL) Adjustments so maximum size of messages transferred between IDE and emulator increased to 10K from 1K.
- (ALL) Fix bug when maximum message size now exceeds maximum flash sector size.
- (ALL) Joystick buttons had different enums for real and virtual robots. This affected the joy1Btn() command.
- (ALL) Upissue Firmware Version to 10.29 / Upissue IDE Version to 4.29
- (ALL) Contents of DebugStream window can now be saved through the menu
- (ALL) Automatically select RVW package if one is not selected.
- (ALL) Increase number of RVW Packages available to 40 potential options – allows for future level packs.
- (ALL) DebugStream can now also be saved as a *.csv file
- (ALL) DebugStream Window contents can now be saved to a file.
- (ALL) User models (from Motors and Sensors setup) can now use relative filenames for user models.
- (ALL) Fix crashing issue when CheckForUpdates get a malformed XML file (typically hotel login pages)
- (ALL) Fix crash issue when Version XML file download is corrupted by school/hotel/conference “login” screens.
- (ALL) Fix crash issue when licensing libraries return an unexpected return value – error message string formatting command was invalid causing a crash.
- (ALL) Added pipe symbol to the LCD Printing Libraries fonts.
- (ALL) Fixed backslash character in small font.
- (ALL) Better parsing of “If” and dangling “else” clauses. Prevents a compiler crash when bad syntax in the “if” condition clause.
- (ALL) Support in GUI for use of user-defined “motors and sensor configuration data files”.
- (ALL) New “registry flag” to indicate whether user defined “configuration model” files are allowed.
- (ALL) Previously breakpoints could not be defined in header files. This is now fixed.
- (ALL) Benign. Enhance output in message trace window for “set breakpoint” message.
- (ALL) Command line based activation / deactivation commands. Implemented but not fully tested yet – documentation to follow.
ROBOTC 4.27 -> 4.28 BETA Change Log:
- (ALL) Updated Help System Documentation for new commands and features.
- (ALL) Updated Firmware for 10.28 / 4.28 compatibility.
- (ALL) Added a compiler error when ‘switch’ expression was illegal.
- (ALL) Support for optional “int” keyword as in the declaration “short int” or “int short” in addition to “short”.
- (ALL) Add USB Joystick control to Graphical (in loop blocks)
- (CORTEX) Fixed issue where performing a new motor PID movement when an existing PID movement is in progress didn’t work properly.
- (CORTEX) Allow users to select “Xmtr2″ for VEX Cortex Graphical (Expert and higher menu level)
- (CORTEX) Added competition control and competition template for Cortex Graphical
- (CORTEX) Added Virtual Worlds Natural Language 2.0 Library for VEX Cortex
- (CORTEX) Renamed old-style Natural Language mode to “Natural Language PLTW”
- (CORTEX) Fixed issue where software inspection would fail without a radio link on VEX Cortex
- (CORTEX) Added dialog message to Cortex “Download Firmware” button on large icon toolbar.
- (CORTEX) Multiple incomplete consecutive PID moves. Fix issue when current move is in “ramp down” and new PID movement is initiated.
- (IQ) Added additional standard models for VEX IQ.
- (IQ) Fix issue where mode wasn’t being set for Graphical for VEX IQ Color Sensor.