Archive for the ‘General News’ Category
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!
So your class has gone through the ROBOTC Video Trainer Curriculum (VEX or LEGO), are comfortable programming in ROBOTC, and the robots are starting to zip across the room: however, some students are absorbing the programming knowledge quickly, while others are taking a little longer to grasp the core concepts. Where should a teacher look to if a student (or classroom) advances beyond the pace of the class? In this post, we will take a look at some of the many advanced programming resources available for ROBOTC.
Because ROBOTC is a C-based programming language, there are many C programming features that students can lean about and implement in their code. The first resource to investigate is the ‘Programming Tips and Tricks’ section of the ROBOTC wiki. This special subsection contains samples of some of the more advanced C-based operations that can be executed using ROBOTC and are pulled from a variety of sources. Topics include structs, switch statements, tertiary operators, and more. Because all of the information is available for free online, students can research and test the topics at their own pace and gain a deeper understanding of the subjects.
Next, you may want to take a look at tutorials on the ROBOTC wiki for implementing advanced programming concepts with different sensors. Also be sure to check out ROBOTC’s Sample Programs (via the ‘File -> Open Sample Programs’) as many of the programming concepts have pieces of advanced code that can help the students understand exactly how they are applied in real-world scenarios. There are also several multi-robot projects (for the NXT) that can be found on ROBOTC’s Multi-Robot wiki and a thread dedicated to advanced ROBOTC programming with VEX which will both offer unique challenges for students to conquer, as well as a wealth of community created projects showcased on the ‘Projects Discussion‘ section of the ROBOTC forums.
Once the students have sufficiently expanded their knowledge of advanced ROBOTC programming, they will be ready to tackle more complex robotics projects. This is a perfect opportunity to encourage creativity and inventiveness with preexisting challenges (and is a perfect example of where differentiated instructions can positively impact a classroom). By utilizing differentiated instruction in the classroom, you will be able to not only challenge the newer programmers with the basic programming examples, but will also be able to engage the more advanced students with complex programming options, such as making their robots perform a challenge quicker, more efficiently, or more accurately (or a mix of all three).
- Week 1 – Introduction & VEX IQ Motors
- Week 2 – Natural Language & VEX IQ Remote Control
- Week 3 – Sensors: VEX IQ Bumper, Color and Touch LED
- Week 4 – Sensors: VEX IQ Gyro and Distance
- Week 5 – VEX IQ Brain: LCD Screen and Sound
- Week 6 – TBD: Your choice! Your feedback and questions will help guide what’s covered in the last session
To sign up for the live courses, visit the following:
VEX IQ Online Webinar Series Sign Up
To access the course materials and recording, follow these instructions:
If you do not have a CS2N account, go here and create a username and password - http://www.cs2n.org/signup
Make sure to CHECK YOUR EMAIL for the activation link!
Join the CS2N group for the Class:
- Make sure you are logged into http://www.cs2n.org
- Click on “My Home” if you are not already there
- Choose the “Groups” tab
- Enter the following Group Code: 99e1b94c
- You are now added to the group
To view the Course Materials:
- You can access the course page directly - http://learn.cs2n.org/course/view.php?id=111
- Or, you can find the course under your Groups:
- Go to the CS2N Groups tab
- Select “Introductory Webinars for VEX IQ 2013″
- Select “View” on the left, under “Introductory Webinars for VEX IQ 2013″
I’ve always been of the opinion that teaching is an art, not a science. Therefore, it’s impossible to devise a scenario that will handle every issue. But, there are some common issues that arise for teachers as they teach robotics and ROBOTC.
Many students come into class familiar with different aspects of technology, but many students will be unfamiliar with some basic things. For example, never assume that students will know how to save a program while using ROBOTC. Secondly, never assume that the students will know where to save their programs. As a teacher, you need to have a plan to cover these things for students. Also, it would be helpful to have a reference for these things for the students. When students return from Christmas Break or a long weekend, sometimes these details escape them.
One things that is very important for teachers who work in classes in which the students are working cooperatively, is for the teachers to identify what is most important and to assess those things. Simply, students get better at things which are measured and assessed. For example, if you want students to use math vocabulary while solving a particular problem involving different wheel sizes, then you need to assess that. If students are working as a group to solve a problem, then each student’s role in that group needs to be defined and assessed.
Additionally, students working cooperatively in groups are always going to be an issue for teachers. The clearer the roles (and how those roles will be assessed) are defined for the students, the better chance you have for success. Still, teachers need to have a plan for those students who just don’t work well in groups. This plan needs to be articulated to the parents and to your administrators at the beginning of the school year.
One of the great things about teaching robotics and ROBOTC is that the first answer is hardly ever correct. This is great because the students are immersed in the problem-solving process. However, some students will become frustrated by this and immediately look to you for the answer. Teachers need to have a plan for these students. How can students work cooperatively to handle these issues? What has been done to prepare for the challenge? Is there a flow chart that the students can review for some ideas? Is there a sample program the students could examine? As teachers gain more experience working through the ROBOTC curriculum, they’ll be able to anticipate these situations more and have an answer for them.
The beginning of class and the end of class oftentimes determine the success, or failure, of a lesson. Teachers should always have a plan for the beginning of class to get the students settled and focused. The more structured this opening activity is, the better. If a routine is developed, the students will respond accordingly. If the students are coming to your class after gym class or lunch, for example, this opening structure will be very important. Examples of class openers could be having the students find errors in code, a review of particular concepts (what is the difference between = and ==), or an Abstraction Bridge.
In much the same way, the closure of the lesson should be used to judge the effectiveness of that day’s lesson. The most popular way to do this is with the use of an exit slip as the students leave the room.
Having a plan allows teachers to work that plan instead of getting frustrated with individual students. Planning your work, and then working your plan will help to allege some of the daily stressors that teachers face.
Eventually your classroom may run into issues with either the ROBOTC software, the robots, or both. The most important question that arises when this happens is ‘Where do I go for help?’ Fortunately, ROBOTC has you covered with an expansive support system designed to help all ROBOTC users get back on their programming feet as quickly and easily as possible. This blog post will take a look at some of the more common issues that you may run into and how to quickly resolve them.
“I am having trouble installing ROBOTC, and do not know why it will not install properly.”
ROBOTC installs like most other programs, but even so you may run into installation issues (depending on your classroom computers’ specific setup). If you run into installation troubles, take a look through our ‘Getting Started’ guide on the ROBOTC wiki as it covers many of the common installation issues that classrooms in particular run into.
“I have installed ROBOTC but am running into issues activating my license.”
First, make sure your license has activations remaining by logging into the ROBOTC customer service page using your license ID and password. Next, check to see if your school’s IT department has recently reimaged the computers; if they have, the license information may have been deployed incorrectly and they will have to contact ROBOTC technical support (below).
“ROBOTC is installed and activated, but my computer will not connect to my robot/won’t load Virtual Worlds!”
There are a variety of reasons this could be occurring (depending on the computer’s set up and the specific robot platform being used), but normally these issue is solved by following the appropriate setup guide on the ROBOTC wiki (LEGO MINDSTORMS NXT, VEX IQ, and VEX Cortex). For the Robot Virtual Worlds software, double check to make sure the computer’s hardware meets or exceeds the minimum requirements as well.
“I have a different question or would like more information on these particular issues.”
There are several resources that can be used when troubleshooting a ROBOTC installation or physical robot issue.
- Coding Problems and Questions – All coding questions should be forwarded to the ROBOTC forums, where the entire support staff may see and answer them.
- Specific Commands, Functions, etc – The ROBOTC wiki is full of useful information including setup guides, programming tips, breakdowns of commands and functions, and more.
- Technical Issues and Bug Reports – For any and all bugs and glitches you may run into, the ROBOTC support line (firstname.lastname@example.org) will be the best mode to contact the ROBOTC support team directly.
Two weeks ago we released ROBOTC for VEX Robotics 4.0 exclusively for VEX IQ and today, we are happy to release the second version of ROBOTC for VEX Robotics – VEX IQ Preview! Thanks to all the feedback we received from our wonderful users, we were able to implement these updates and new features to make it easier for everyone to use!
Download the new Preview Version today from the ROBOTC Preview Website.
Here’s a few notes before you get started with the new build:
- Make sure you use the VEX IQ Firmware Update utility to update your VEX IQ Brain to version 1.03 – This is important for using the new Preview Version of ROBOTC.
- If you are using the VEX IQ Color Sensor, there is a new firmware version available for it as well. Download the 1.03 version into your Brain, then connect your VEX IQ Color Sensor and use the “Update”
- Inside of ROBOTC, you’ll want to download the latest ROBOTC firmware (version 10.02) to your VEX IQ. Use the “Robot -> Download Firmware” option to do this.
After that, you should be good to go! Take a look below for the official change log and let us know if you have any questions/concerns or run into any issues.
- Added Distance Sensor Driver and Test Program – Sensor Implementation is not 100% complete.
- Added VEX IQ Device Drivers to ROBOTC installation.
- New Hardware Verification screen to identify possible hardware configuration errors with VEX IQ
- Fixed various bugs with Tele Op/Autonomous menu system
- Improved Sound sample programs and internal functionality.
- Added “Functions Library” option for VEX IQ Bumper Sensor – function was previously available but not listed.
- Support for “Remote Buttons” on the VEX IQ Remote Screen debugger window.
- Added “Software Inspection” for VEX IQ – gives a quick diagnostics on firmware versions, battery voltages and overall state of the VEX IQ hardware.
- Fixed bug where VEX IQ Bumper Switch would disable other sensors and motors on adjacent ports.
Check out what you can do with ROBOTC for VEX Robotics 4.0 already …
What do you think of the new release?
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.
Now that the physical robot kits are in the classroom and ROBOTC is installed and activated, you should be ready to build the physical robots for your classroom. One of the best features of a LEGO Mindstorms educational robotics kit is that they allow students to create a nearly limitless range of robots; the downside of this, however, is maintaining student-created robots in a classroom. To help with this, ROBOTC and their related Video Trainer Curriculum support several standard models to help keep a baseline in the classroom.
The first of such robots we will look at is the NXT REMbot (which stands for ‘Robotics Education Model), the standard NXT that is used in the ROBOTC Curriculum for TETRIX and LEGO MINDSTORMS. The REMbot utilizes three NXT motors (two for driving, one for the (optional) arm), a Light Sensor mounted below the robot, a Touch Sensor mounted in the front, a Sonar Sensor positioned above the robot, and a Sound Sensor on the side of the REMBot. This model allows for a variety of tasks to be completed and is designed to work with all of the challenges in the ROBOTC Curriculum.
If your classroom will be utilizing the TETRIX kit, the Mantis Robot standard model would be the build of choice. The Mantis Robot utilizes the TETRIX kit to add two TETRIX DC motors (for driving) and a TETRIX Servo (for the arm), as well as the respective motor and servo controllers; all of which are fully programmable in ROBOTC. Sensors can be added using any of the remaining sensor ports (one of which is used by the HiTechnic Motor/Servo controller chain).
Users of the MATRIX kits are not left in the dark however! MATRIX also has several options to use in the classroom, but the Quick Start Rover stands out from the pack. Combined with The Little Gripper, the MATRIX kits can be quickly and effectively set up for a standard robotics classroom. Like the TETRIX bots, the Quick Start Rover can be outfitted with NXT sensors on any of the remaining sensor ports for added versatility. It uses two MATRIX motors for movement and a MATRIX servo for The Little Gripper (all controlled through one MATRIX controller), all of which is fully programmable in ROBOTC.
Visit CMU’s Robotics Academy LEGO site for more information on the different kits available and to find build instructions.
Now that the physical robot kits are in the classroom and ROBOTC is installed and activated, you should be ready to build the physical robots for your classroom. One of the best features of a VEX Robotics kit is that they allow students to create a nearly limitless range of robots; the downside of this, however, is maintaining student-created robots in a classroom. To help with this, ROBOTC and the Video Trainer Curriculum support several standard models to help keep a baseline in the classroom.
The first of such robots we will look at is the VEX Squarebot (using the VEX Cortex), one of the standard Cortex models that are used in the VEX Cortex Video Trainer for ROBOTC. The Squarebot utilizes three VEX motors (two for driving, one for the arm), and a wide variety of sensors. These sensors include Quadrature Shaft Encoders, a Sonar Sensor, and a Potentiometer (among others; in total, there are 8 separate sensors on the Squarebot). This model allows for a variety of tasks to be completed and is designed to work with all of the challenges in the ROBOTC Curriculum.
A smaller, different alternative Cortex standard robot is the Swervebot. Like the Squarebot, the Swervebot utilizes the VEX Cortex as its main processor and uses two VEX motors for driving. However, the Swervebot’s small chassis does not utilize an arm. Instead, the Swervebot makes clever use of an Omniwheel in the rear for turning and boasts three Line Follower sensors and a Gyroscope (as well as 6 other sensors, for a total of 10) and is perfect for smaller classroom environments.
Finally, the new VEX IQ platform can be quickly assembled and ready to use in a classroom thanks to the IQ Clawbot standard model. Using 4 motors total (two for driving, one for the arm movement, and one for gripper control), the VEX IQ Clawbot can be controlled either autonomously using the VEX IQ sensors (such as the Bumper Switch and Color Sensors), remotely using the IQ Controller, or a pleasant mix of both, depending on which kit is being used.
Visit CMU’s Robotics Academy VEX site for more information on the different kits available and to find build instructions.
FIRST has announced the latest game for their FTC division, Block Party! We’re happy to announce that we’ve implemented it as a virtual world to help teams practice their programming this season. Check out this video to see the game in action, along with some scoring highlights:
Like previous years, game scoring and timing are fully implemented in the virtual world. This year, we’ve also included three different robot models, each with their own unique characteristics. Each robot can be equipped with an IR Seeker or a Gyroscope to allow for different autonomous strategies.
Scissorbot has been updated to include hooks that allow it to suspend from this year’s hanging bar. It’s gripper has also been modified to pick up the Block game objects.
Brand New! Conveyorbot was created specifically for Block Party! It can carry up to four Blocks (the maximum allowed), and also drop them off one at a time, allowing you to keep the Pendulum Goal balanced.
Gripperbot has been modified to allow it to pick up the Blocks. A new spinner motor has also been added, which will allow you to raise your alliance Flag.
You can always find the latest version of the FTC Block Party virtual world here, at RobotVirtualWorlds.com. You will also find additional information to help you get started.
We appreciate your feedback! If you have any questions or need any help getting started, feel free to post at the ROBOTC.net forums.