Archive for the ‘Students’ tag
After months of work, the ROBOTC Development Team is excited to announce the availability of the first preview release of ROBOTC Graphical Language for the VEX IQ platform. This new interface will allow you to program robots from inside ROBOTC with easy-to-use graphical blocks that can be drag-and-dropped to form a program. Each block represents an individual command from the “text-based” ROBOTC and Natural Language. The new click and drag interface along with the simplified commands of Natural Language will allow any robotics user to get up and running with programming their robots as soon as possible.
The first release of ROBOTC Graphical Language is available for the VEX IQ platform for use with the standard VEX IQ Clawbot and Autopilot Robots. All ROBOTC 4.0 users will receive access to the new Graphical Language interface at no additional cost! Our plans over the next few months are to extend the Graphical Language interface to all of ROBOTC’s support platforms, including the Robot Virtual Worlds technology. You can download the preview version today at http://www.robotc.net/graphical/.
The new ROBOTC Graphical programming environment adds a number of new features we’d like to highlight:
Graphical Language Command List (Drag and Drop)
With the new ROBOTC Graphical Mode, we’ve updated our “Functions Library” to match the style of the Graphical interface. This new mode will allow you to drag and drop blocks of code from the “Graphical Functions” menu into your program to get your program created even faster!
New Language Commands for Easier Programs
We also added some new language extensions to both ROBOTC and Natural Language; such as the simplistic “Repeat” command. Prior to the Repeat command, users would need to copy and paste large sections of code or use a looping structure (like a ‘for’ or ‘while’ loop) in order to have a set of actions repeat a number of times. With the new “Repeat” command, however, users can simply specify how many times they would like the code to run, with no complex coding required. And users who wish to make an “infinite loop” can use the “repeat forever” command to accomplish this task quickly!
Commenting Blocks of Code!
Another awesome tool that we’ve implemented in ROBOTC Graphical is the “comment out” feature. You can now comment out an entire line of code just by clicking on the block’s line number. The robot ignores lines of code that are “commented out” when the program runs, which makes this feature very useful when testing or debugging code. This new tool is unique to ROBOTC’s Graphical interface.
Updated and Simplified Toolbar
Sometimes navigating menus as a new user can be a little overwhelming – so many options to choose from and lots of questions about what each option is used for. To help with this, we’ve redesigned ROBOTC’s toolbar to make getting up and running easier. We put the most used commands on a larger toolbar so new users have an area to easily click to download firmware, send their code to their robot, and run their programs without having to use the standard menu interface.
Convert to Text-Based Natural Language
Because each Graphical Natural Language block corresponds to a real ROBOTC or Natural Language function, users will be able to graduate from Graphical Programming to full text-based programming with the press of a single button. This allows users to naturally transition from Graphical Natural Language to the text based Natural Language (or ROBOTC), without having to worry about manually converting the code line-by-line!
Teacher’s Guide and Sample Programs
The new graphical interface includes over 50 new sample programs to help you get up and running with working examples and demo code. In addition, we’ve also developed a 30+page guide to walk new (and existing) users through the new Graphical Programming interface and getting started with the VEX IQ platform. You can find a link to the programming guide here and also on the ROBOTC Graphical page.
This initial release is only the beginning and we’re planning on improving the software with more features and flexibility over the coming months.
- Copy and Paste
- Undo/Redo Support
- Support for custom robots/configurations via an updated “Motors and Sensor Setup” interface.
- Dynamic Loop and Command Parameters (based on Motors and Sensor Setup / Robot Configuration)
- Tooltips, Contextual Help, and more!
Let us know what you think! If you have any feedback or questions, please send them along via the ROBOTC’s VEX IQ forums.
Whether they are in elementary school, middle school, or high school, students really enjoy programming their robots with remote controls. Luckily, the VEX IQ wireless controller allows you to do just that. ROBOTC allows you to create your own remote control programs to customize each joystick axis and button controls. Moreover, you can use both Natural Language and full ROBOTC with the remote controls.
Both the VEX IQ brain and the remote control require a radio controller for communication. The radio controller has to be in each in order to use the remote control. Additionally, a battery needs to be placed into the remote control for the wireless communication. Just like the battery for the VEX IQ brain, the battery for the remote control is rechargeable.
In order for the VEX IQ brain and the controller to communicate, they must be paired together. With both devices turned off, connect the two devices together with the tether cable that is included with the VEX IQ Starter Kit with Controller. The tether cable is just a standard Ethernet cable. Turn on the VEX IQ brain by pressing the check button. The controller will automatically link and pair with the VEX IQ brain.
Once your connection has been established, the green light will blink on both the remote control and the VEX IQ brain. You will not have to link the tether cable with the remote control the next time you turn on the VEX IQ brain or the remote control. In the classroom, you can assign each robot to a remote control by giving each a number. That way, you never have to link the remote control with the VEX IQ brain. Or, you can just have the students do a quick set up at the beginning of class. Either way will work.
ROBOTC can access all of the data from the VEX IQ remote control by referencing the button and axes by their described names. Joystick buttons return values of..
• 1 – Pressed
• 0 – Not Pressed/Released
Joystick Axis return values of…
• -100 to +100 (0 when centered)
When using the VEX IQ remote control, make sure you switch to your “Controller Mode” to Tele-Op.
Alright, now you can begin programming (either in Natural Language or full ROBOTC) and have some fun.
As teachers, we all know to expect the unexpected. I recently had the students on a Friday, with a long weekend in front of them. Therefore, I did not want to start a new concept, for I would have to re-teach it after the long weekend. So, I decided to set up a quick in-class competition with the VEX IQ Challenge Field and some Bucky Balls and rings.
I allowed the students to make up the parameters for the game, gave them some time to devise some strategy, downloaded some sample programs to run the remote controls, and let the fun begin. The students had a great time and the activity will serve as a springboard for future investigation into how to customize the remote control programs.
- Jason McKenna
We’re happy to announce a big update to the Expedition Atlantis game. Thank you to everyone who provided feedback for the previous versions – keep it coming!
One new feature that we think you’ll appreciate is the ability to create a certificate of the badges that you’ve earned, if you’ve been playing with a CS2N or Local account. It’s a great way to share the progress you’ve made in the game!
Here are some of the other major features and fixes we’ve made based on your feedback:
- Fixed a bug where sometimes the game would freeze after upgrading to Helios II in Poseidon’s Courtyard
- Improved the visibility of the distance and angle values throughout the game, especially in the Heart of Atlantis
- Fixed a bug where the game could crash in VR Training Mode
- Fixed a bug that could cause the game to freeze in the Underwater Base when playing in Custom Difficulty
- Addressed possible issues when switching between difficulty levels while playing the Heart of Atlantis
To catch up on all of the latest Expedition Atlantis information, including the game unveiling and a Google Hangout with the development team, check out our Expedition Atlantis page.
The ROBOTC Curriculum contains quizzes to help assess what students have learned, or for that matter, what they haven’t learned. However, as we discussed in a previous blog post, one of the great things about teaching ROBOTC is the ability to differentiate instruction to your students. This can present some issues when it comes to assessment. If a student is progressing quickly through the curriculum, he/she cannot have more assessments than another student. Students all have to be assessed equally. This then begs the question of how you can have the students move through the curriculum at different rates while still assessing them equally.
One of the ways I’ve been able to address this is through the use of rubrics, like the one below:
The programmer uses Pseudocode within the comments to display a logical plan to solve the Mission.
Unsatisfactory - No Pseudocode included.
Satisfactory - Pseudocode is included but it does not display a logical plan to solve the mission.
Good - Pseudocode is included and it displays some logical thinking and something of a plan to solve the mission.
Exemplary – Pseudocode displays a logical plan to solve the mission. The plan is well thought out and clear.
The programmer is able to solve the Mission efficiently and repeatedly.
Unsatisfactory - Less than 70% of the mission is completed.
Satisfactory - Between 70 and 80% of the mission is completed.
Good - Between 80-90% of the mission is completed.
Exemplary - All of the mission is completed, and is able to be completed repeatedly.
Unsatisfactory - Code is hard to read and understand.
Satisfactory - Code is readable but is difficult to understand completely.
Good - Code is readable and understandable, but unclear is certain places.
Exemplary - The code is tabbed well and takes good advantage of white space in order to make it very easy to read.
Unsatisfactory - No Comments included.
Satisfactory - Basic Comments are included but some important parts of the code are not explained.
Good - All of the code is commented but explanations could be more complete.
Exemplary - All of the code is commented and the comments are thorough and comprehensive.
The nice thing about this rubric is that the student does not have to complete the programming challenge in order to be assessed. Just like in any other class, students might not learn a concept to mastery on its initial presentation. You never want a student to reach their frustration level, so this gives the teacher an opportunity to clear up misconceptions while still assessing the student.
Another thing that a teacher can do is utilize Exit Slips. Once again, if students are working at different instructional paces, then the Exit Slips can general. You can ask questions like, “What part(s) of the programming challenge were you able to finish today?” This type of metacognition is valuable for students as they complete projects that last several days. Or, the exit slip can be a review of previously learned concepts. Either way, Exit Slips can play an important role in both teaching and assessing.
Fortunately for teachers, robotc.net contains a wealth of information for extension activities. The ROBOTC blog contains a section entitled “Cool ROBOTC Projects.” Here, there is a wealth of ideas that teachers can look at in order to create an interesting activity.
Moreover, the ROBOTC forum contains a section dedicated to projects. This can also be researched in order to find ideas or interesting projects for your class. Also, the forum can be used to ask questions as you begin to plan and implement a project. Here, you really get the best of both worlds: A wealth of ideas and choose from and a dedicated community willing to help you with those ideas.
Have a great school year!
The challenge for teachers in today’s educational environment is to teach student at their instructional level. Instead of creating an artificial level to instruct the entire class, teachers have to assess each student’s current level and create a plan to ensure that the student has academic growth from that beginning baseline. It’s best to think about this with an example. A sixth grade student has a reading comprehension at a 9th grade level at the beginning of the school year. The student takes assessments during the spring of that school year. When those assessments are scored, it shows that the student is reading at a 9th grade comprehension level. In the past, teachers and parents would be happy with that information, but the recent push towards differentiated instruction has forced educators to look at this information in a new light. What implications does this have for a robotics teacher?
Luckily, teaching robotics seamlessly fits into the demands of differentiated instruction. First, students are encouraged to come up with different solutions to problems. Whether it is a building challenge or a programming exercise, different students are going to come up with different solutions. Students are encouraged to do this in other disciplines also, but robotics is unique because it is so open-ended. There are only so many ways you can solve a math problem, but there is a myriad of different ways to program your robot to accomplish a task.
Secondly, students who are learning robotics are not forced to conform to an artificial ceiling. In another classroom, a teacher has to keep a student’s learning somewhat in line with the rest of the class. When teachers try to differentiate instruction, they create projects or assignments that are open-ended so students can explore those items as much as they can. However, when that assignment/project is completed, students are all brought back to the same point within the curriculum. Teaching robotics revolves around problem-based learning. Therefore, as the students learn how to solve a programming challenge with more sophisticated ROBOTC code, they are accelerating their knowledge both within that project and within the larger curriculum. While some students are mastering the fundamentals of programming their robot to move, other students can be incorporating more complex programming tools, like functions, into their programs. Robotics teachers can point students in the right direction so they can explore different and more intriguing programming concepts to apply to their challenges. It is not necessary that students memorize all of the different programming/building techniques, but that they know how to access the information when they need it. In this way, students are given the tools to create some ownership with their learning. That ownership, combined with the engagement of robotics helps to provide the true key to differentiation: high student interest.
Simply, if students are not interested in what they are doing, they will never develop the intrinsic motivation needed to push their learning. Students will work towards the minimum unless they are engaged and challenged. Teaching robotics provides the perfect platform to accomplish this goal and create a learning environment in which students are receiving individual acceleration and enrichment. Robotics is the perfect means to achieve the end of differentiated instruction.
- Jason McKenna
There is a bevy of materials to help a teacher get started teaching the ROBOTC Curriculum. But what about the teacher that has made it through the curriculum and has a robotics class returning at the beginning of the school year? Whether that teacher is preparing to enter a robotics competition or is planning on creating a cool ROBOTC project, the teacher will still need to determine what the students have retained from the previous year.
Students that have made it through the ROBOTC curriculum should be able to use variables and functions in their programs. A great way to assess this would be to utilize the Robot Virtual Worlds. Students can spend the first week of school trying complete all of the missions within Operation Reset. Working with Operation Reset affords teachers the opportunity to differentiate this beginning diagnostic. Students that have retained more information can work independently, while those students that need more assistance can get the help they need. This is just another great application of Robot Virtual Worlds in the robotics classroom.
If Robot Virtual Worlds is not an option, you can apply the same concept with a physical robot. For students that are already proficient with ROBOTC, a good challenge to begin the year with would be the Chasm Detection.
Another great tool that a teacher can utilize is the debugging of code. This can serve as a good one or two day review of ROBOTC syntax and logic. If a teacher is anxious to get started with a project and wants a quick review, this may be the way to go. One of the nice things about using code is the teacher can get some quick and individual feedback from the students. If time allows, a teacher may use one or two examples of code, see where the students are, and then design a challenge for them. Here is an example of code that the students could troubleshoot.
Hopefully this gives you some ideas of how you can reintroduce ROBOTC to your students. A seamless beginning to the school year will help with all of the projects and activities that you may have planned for the rest of the school year.
- Jason McKenna
Getting your classroom organized for the beginning of the school year is an arduous task for even the most experienced teacher. It can be even more demanding for those that teach robotics. You’ve got the robot kits, you’ve been trained in ROBOTC, but how do you set up your class for the first day of school? The goal of this article is to help answer the question for both new robotic teachers and teachers that have been teaching robotics for years.
As we all know, a robotics kit is more expensive than a textbook. Moreover, because robotics kits contain so many small pieces, they can be much more difficult to take care of than a textbook. As a result, keeping your kits organized is crucial. If using a Lego Mindstorms or Tetrix robot, one way that I have found that can be very helpful is to name the NXT brick. Then, give the same name to the kit. Now, assign the kit to the group of students in your class. If the students know that they are responsible for that kit, it goes a long way towards them acting more responsibly with the kit. If using a VEX robot, you won’t have the same ability to name your brick, but you can still able to label your robotics kit.
Which students are assigned to work together is also something that the teacher must put some thought into. Once again, maintaining the kits is of the utmost importance. Therefore, I am not going to allow students to work together if I feel that will not take care of the kit. Some students are more organized and careful with the kits than others. I always try to have one of those students in a group. I try to have the kits named and assigned before the first day of school. If I don’t know the students, then I may have to adjust the groups as we progress throughout the beginning of the school year.
Once the kits are organized, the teacher can then start to think about how their curriculum items are going to be accessed and utilized. A math teacher has a plan for when their students have a question about a topic, or when a student is confused about a particular concept. A robotics teacher has to have the same type of plan in mind. The beauty of teaching robotics lies in the fact that students are intrinsically motivated to find answers to their problems because they are highly engaged. Some students will still be conditioned, however, to try to elicit the answer from the teacher instead of reasoning through a problem on their own. Robotics teachers need to create a plan so the students can work towards being independent and productive problem solvers.
To that end, a good approach to a complex challenge is to examine what needs to be done before the challenge, during the challenge, and after the challenge is complete. Before the challenge, students should be focusing on create flowcharts to organize their program and writing pseudocode to reflect those flowcharts. During the challenge, students should focus on commenting their code and debugging techniques. Afterwards, students should be afforded the opportunity to reflect and respond to what went well, what went not so well, and what they learned throughout the process.
Giving students a little bit of structure while they engage a challenging task will go a long way towards ensuring that the students’ high level of engagement does not turn into a high level of frustration. Engagement works both ways in that sense: High engagement leads to students that are focused on their task, but can also lead to high levels of frustration because the students desperately want to finish that task. To avoid the frustration,teachers should provide a structure that the students can rely on when needed. Before the school year begins, teachers should spend some time planning students’ work, and then the students can spend time during school working their plan.
The beginning of the school year is always a challenge. As teachers, we understand that unforeseen difficulties will always arise. However, going into the school year with as much planned and organized as possible helps us to focus on those unpredictable events that will undoubtedly occur.
Check out how we organize robot parts at the Carnegie Mellon Robotics Academy:
Starting Monday, June 17th, our free online classes will begin for the Robotics Summer of Learning. The ROBOTC team will show you the best ways to get started using ROBOTC and answer your questions LIVE! The goals for these classes is to support you, our users, and help you earn a ROBOTC certification!
The classes and Q&A sessions will take place throughout the summer on WebEx at the times listed below. The length of the class will be based on how many questions we need to answer.
Tuesdays, Wednesdays, Fridays at 11:00am EDT
Mondays, Wednesdays, Fridays at 12:00pm EDT
**Classes will be recorded and posted online after each session.**
How to Sign Up:
1. Register for Summer of Learning - Choose one of the following Robotics Summer of Learning Courses and sign up!
2. Choose a WebEx Course - Join your choice of WebEx courses 30 minutes before scheduled course begins:
If you would like to ask questions during the live class, make sure to have a USB headset. You can also submit your questions before and during each class through the ROBOTC forum or our social media sites.
This summer students have the opportunity to learn how to program robots, design games, animate stories, and earn a chance to win over $10,000 in prizes and scholarships! The Robotics Summer of Learning program hopes to effectively increase students’ interest in STEM (science, technology, engineering, mathematics) related fields. The program is hosted online at the Computer Science Student Network.
The Summer of Learning initiative is sponsored by Carnegie Mellon’s Robotics Academy - an educational outreach of Carnegie Mellon University and a part of the university’s world-renowned Robotics Institute. The Robotics Academy mission is to develop educational tools and resources to use the motivational effects of robotics to excite students and teachers about science and technology.
The Computer Science Student Network (CS2N) is a collaborative research project between Carnegie Mellon University (including the Robotics Academy) and the Defense Advanced Research Projects Agency (DARPA) designed to increase the number of students pursuing advanced Computer Science and STEM degrees. CS2N is an online network for students and teachers to connect together and use engaging activities designed to teach how to program robots, animations, web pages, and games.
CS2N also includes tools for teachers/educators to create their own individual groups for students to join. Using the “groups” feature, teachers can track their students’ progress through every activity offered on the site. All of CS2N’s learning activities are designed to align with national educational standards.
Check out all the great features and challenges that will be offered through the Robotics Summer of Learning…
The Robotics Summer of Learning will offer students the opportunity to program a variety of robots in deep space, on a tropical island, and a VEX or FTC game board. The robots are programmed in ROBOTC, a programming language for LEGO, VEX and Arduino robots. Beginning ROBOTC users are able to utilize simple Natural Language commands like forward, reverse, and pointTurn at the introductory level and then migrate to full C-Programming to learn advanced computer science concepts like recursion, pointers, multitasking/threading, and multi-agent communications.
Students will program the virtual robots using the ROBOTC language and ROBOTC’s Robot Virtual Worlds (RVW) software, an interactive educational video game software that allows every student to experience the same benefits of learning robotics and programming. RVW tracks and stores student’s progress, through CS2N, as they solve different levels in each World. After successfully completing a World, students earn a badge that documents their achievements. At the end of the summer, students will have the opportunity to take an exam that will earn them a Carnegie Mellon Robotics Academy programming certification, which can be included in the student’s academic portfolio.
Introductory programming lessons are taught in the tropical themed Palm Island, one of three virtual environments in Robot Virtual Worlds. Once students learn the basics in their first mission, they are then challenged to complete missions on Planet H99 in deep space, and underwater in the Ruins of Atlantis. The final challenge is a national robot programming competition that will include over ten thousand dollars in scholarships and prizes. Two new “programming only” robotics game have been developed specifically for the Robotics Summer of Learning programming competition, which take advantage of current VEX and FTC games in Robot Virtual Worlds. The games are played by autonomously programming your robot to place objects into scoring positions as quickly as possible.
Animation programming languages, such as Scratch and Alice, make it easy for students to create video stories, animations, games, music, and art. By using storytelling and animation as a motivator, students learn the importance of the design process while using and learning interactive programming software.
Our Robotics Summer of Learning Animation Challenge is called Nature Doc-u-mentary. This challenge asks students to write a creative narrative and make an animated documentary using either Scratch, SAM Animation, or Alice 2.0.
Designing a digital game allows students the opportunity to creatively brainstorm ideas, create 3D objects to import into the game board, learn how to program in order to test the success of the game, and challenge them to think of ways to advance and optimize the gameplay. Robot Virtual Worlds comes with two great tools, the Level Builder and the Model Importer. The Level Builder uses a 12-inch by 12-inch board and our “desktop” models to create their very own Robot Virtual World. The Model Importer allows students to import their own 3D models into Level Builder to take their game to the next level. Students can use both tools while designing their own game board for a virtual robot to successfully complete!
Our Robotics Summer of Learning Animation Challenge is called Beacons and Barriers. This challenge will have users focus on creating levels for a virtual robot to navigate through. They will use the Model Importer, included in Robot Virtual Worlds, to create objects to serve as checkpoints and obstacles.
The Robotics Summer of Learning Program is excited for the opportunity to advance students’ interests in STEM and advanced their programming skillsets! Software and training will be provided for free throughout the summer. Students will have 24/7 access to the online course materials, as well as professional support from developers of the software and curriculum. There will be over $10,000 in prizes available to participants in the challenges, including free software, robot kits, and college scholarships. The Robotics Summer of Learning kicks off on June 1 and runs to September 1, 2013.
Also offered during the summer are our Professional Development courses. These courses provide teachers and coaches with a solid foundation for robot programming in the respective languages, and experience in troubleshooting common student mistakes. It also focuses on identifying and extracting academic value from the naturally occurring STEM situations encountered in robotics explorations. Classes are available on-site or online.