Archive for the ‘Computer Science’ tag
The ROBOTC Development Team is happy to announce an update to ROBOTC for VEX Robotics – Version 4.05! This new version fixes a number of user reported issues and also adds a few new features and enhancements. We recommend that all ROBOTC 4.X users upgrade to the latest version of ROBOTC for VEX Robotics. Download ROBOTC for VEX Robotics 4.05 today!
Also available today, users are able to purchase and upgrade to the new ROBOTC for VEX Robotics 4.x. To see pricing details and purchase/upgrade your license, visit http://www.robotc.net/purchase/vexrobotics/ (for Real Robots) or http://www.robotc.net/purchase/rvw/rvw-vex-4.php (for Virtual Worlds).
ROBOTC 3.x to 4.X upgrade details:
ROBOTC for VEX Cortex and PIC 3.X Upgrade
Perpetual Users (who purchased in 2013): No upgrade fee! Full purchase price will be applied towards same type of license for 4.0.
Perpetual Users (who purchase before 2013): 50% discount on equivalent 4.0 License
Annual Users (who purchased in 2013): 50% discount on equivalent 4.0 License
ROBOTC Virtual Worlds for VEX Robotics 3.x Upgrade
FREE VIRTUAL WORLDS UPGRADE FOR ALL EXISTING USERS!
In order to upgrade, you will need your existing LicenseID and Password information to complete the upgrade checkout process. A new licenseID will be generated for your upgrade license. For a walkthrough on the “upgrade” process, visit our ROBOTC.net Wiki page on upgrading your license.
The upgrade period for ROBOTC for VEX Robotics 4.x is only 6 months long and will expire on June 1st, 2014 – so upgrade today before it’s too late!
4.04 -> 4.05 Change Log:
- Moved Virtual Worlds folder to C:/Program Files/Robot Virtual Worlds (may be /Program Files (x86/) to support future products.
- Resolved an issue where ROBOTC would crash whenever a USB device was plugged into the computer on 32-bit (x86) machines.
- Fixed an issue where the “reverse” flag for Virtual Worlds was being applied twice (effectively ignoring the reverse flag)
- Fixed an issue where the “Check for Updates” was not triggering properly at the start of the ROBOTC application.
- Enabled the “Joystick Configuration” menu option – was previously hidden from end users.
- Updated Virtual Worlds Curriculum Companion to 3.3.1
Here’s a few notes before you get started with the new build with VEX IQ:
* Make sure you use the VEX IQ Firmware Update Utility and update your VEX IQ Brain to version 1.07 or later – this is required to use the new 4.03 Beta Version of ROBOTC for VEX Robotics
* If you are using the VEX IQ Color Sensor, there is a new firmware version available for it as well. Upgrade the IQ Brain to version 1.07, then connect your VEX IQ Color Sensor and use the “Update” button.
* Inside of ROBOTC, you’ll want to download the latest ROBOTC firmware (version 10.03) to your VEX IQ. Use the “Robot -> Download Firmware” option to download this new firmware onto the VEX IQ Brain.
* If this is your first time using your VEX IQ kit with ROBOTC, make sure to take at the ‘Getting Started with VEX IQ Guide‘ on the ROBOTC wiki for instructions on setting up the VEX IQ system.
ROBOTC for VEX Robotics 4.X includes the new ‘Natural Language 2.0′ for the VEX IQ platform. Programming robots has never been easier than the new and improved Natural Language 2.0. Learn more about Natural Language and download our new documentation at http://www.vexteacher.com (Note: the VEX Cortex will continue using Natural Language 1.0 to maintain backwards compatibility.)
Here’s a few notes before you get started with the new build with VEX Cortex:
* There is new ROBOTC firmware for the VEX Cortex system. Use the “Robot -> Download Firmware” option to download this new firmware onto the VEX Cortex microcontroller.
* The default platform when starting ROBOTC for VEX Robotics for the first time is now VEX IQ. Cortex users can switch the platform back to Cortex mode by using “Robot Menu -> Platform Type”
* The VEX Cortex Master Firmware and VEX Cortex Joystick Firmware are still the same from ROBOTC 3.62.
After the firmware(s) has been updated, your VEX Robotics systems should be good to go! Take a look below for the basic change log and let us know if you have any questions/concerns, or if you run into any issues.
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).
We are happy to announce a new course on CS2N, Create Your Own Level with RVW Level Builder. In this new course, you will go through the steps of making your own custom level in Robot Virtual Worlds‘ Level Builder!
The class is structured on a 5-phase version of the engineering process (Concept, Design, Production, Testing, Release). In each phase, you will take a further step towards completing your level, either through planning, creating, or testing your level.
Level Builder enables users to easily create levels and challenges for others to solve. Teachers can create custom challenges for their classrooms or generate unique challenges for each student. Multiple real and fantasy themed robots and objects are available for use. You can also import your own objects with the 3D Model Importer. Your level plays like any other virtual world. You can access all of the motors and sensors on the virtual robot to solve the challenge using ROBOTC code.
Sign up for CS2N and this FREE course today - Create Your Own Level with RVW Level Builder. And don’t forget we have a Level Builder competition going on until August 31, 2013, Beacons and Barriers, with a chance to win some great prizes!!
We are happy to announce that the leaderboards for the Robotics Summer of Learning competitions are live! Each leaderboard shows the overall scores as well as the leaders in each division. The results are real-time, so check back often to see where you stand. The competitions run until August 31, 2013.
- Middle School Division - 6th to 8th Grade (for the 2013-2014 School Year)
- High School Division - 9th to 12th Grade (for the 2013-2014 School Year)
- Open Division - Teachers, Mentors, Coaches, Educators, Hobbyists, Everyone!
The official rules are listed on the official Robotics Summer of Learning page.
I’d like to welcome a new section to our blog called Teacher’s POV (Point of View) that will allow guest bloggers who are teachers, mentors, and coaches to share some of the lessons they have learned while teaching robotics. Our first guest blogger is a good friend to the ROBOTC family, Jason McKenna, a K-8 Gifted Support Teacher in the Hopewell Area School District outside of Pittsburgh, PA. He has been kind enough to put together some blogs about his experiences teaching robotics.
As teachers, we are constantly looking for ways to make the subjects that we are teaching relevant. Students are always asking when they will ever use a particular concept, or how what they are learning applies to a real life scenario. Admittedly, teachers sometimes have a hard time answering those questions.
Thankfully, teaching Robotics and computer programming puts those questions to rest. Because technology is so ubiquitous in students’ lives, students will immediately see the benefits of learning how to program. Moreover, Robotics is the perfect platform to show the application of math and science concepts to everyday scenarios.
In addition to all of that stuff that we educators like to talk about, students just have fun programming a robot to do something. Add in the allure of some competition, and you have yourself a pretty engaged classroom.
With that in mind, I decided to have my 8th grade students participate in a line following car race. Students were to program their robots to follow a line as fast as possible. Of course, the trick is the robot has to stay on the line. While following a black line, the robot has to decide (using a light sensor) if it is on the black line or on the white part of the mat. For the competition, the students added some PID concepts to their line following. As many of you already know, PID is used in many control systems, from your car, to your homes, to large scale factories. The students and I discussed how PID is basically a control system that tries to calculate an error and make adjustments to a control system based upon that error. The robot calculates an error (how far it is off the black line) and then makes adjustments to the motor speed based upon the error. That is what makes it proportional: the movement is based upon the error. Large error equals a large correction whereas a smaller error creates a smaller correction.
The students were able to apply some of the concepts they are currently learning in Algebra to their program. For example, they are utilizing the slope intercept formula (y=mx+b) to find their turn. Y is the turn distance, x is the light sensor reading (the error), and m is the change in y (maximum and minimum turning power) divided by the change in x (maximum and minimum light sensor reading). Students get to apply an important math concept to a fun and engaging scenario that has real-world applications.
The students then decided that they wanted to see what would happen with two light sensors. The students adjusted their code, conducted some iterative testing, and surveyed their results.
In conclusion, one really sees how Robotics and ROBOTC meld perfectly with the goals of a STEM classroom. Really, the only limitation is a teacher’s (and students’) imagination.
- Jason McKenna
Thank you Jason! If you are a teacher who would like to share your experiences on our blog, send us an email to email@example.com.
Top Images - Code designed by Brennan Novak, Teacher designed by Juan Pablo Bravo, and Robot designed by Simon Child all from The Noun Project.
We will be hosting our final April Robot Virtual Worlds Google hangout tonight at 6pm EST! We will be discussing the competition environments in RVW. This will be your last chance to enter the ROBOTC annual license drawing and get your 15% off discount code for Robot Virtual Worlds! Join us at http://www.robotc.net/hangouts
If you missed any of that past hangouts, check them out here …
Week 1 – What is RVW?
Week 2 – Curriculum Companion
Week 3 – Level Builder with Model Importer
Week 4 – Gaming Environments
Week 5 – Competition Environments
While scouring Vimeo a couple weeks ago, I came across a “Vimeo Staff Pick” time-lapse video featuring beautiful landscapes, lakes, mountains, and skies called “Hdr Skies.” When looking in the description for more details, I noticed that ROBOTC was listed! I sent the creator, Tanguy Louvigny, an email to learn more about his process with ROBOTC and time-lapse photography. He was nice enough to answer some questions for us …
- When did you start using ROBOTC?
I started using ROBOTC some 3 years ago, when I started my TETRIX based time-lapse rig project.
- What made you decide to program your time lapse rig with ROBOTC?
Version 2 of my rig used three motors to move the camera on three different axis, and was thus more complex to program. That’s when I decided I needed something more convenient and powerful to be able to control the TETRIX encoders and synchronize the motors with the camera shots. ROBOTC was the solution to my problems and worked like a charm.
- What did you use to build your rig?
My goal with this project was to construct a motorized base for my camera to add movement in my time lapse clips. The first, one axis version of the rig simply used a LEGO MINDSTORMS NXT 2.0 kit to support the camera. For version 2, I needed more robust parts and powerful motors to be abled to sustain the weight of new and bigger cameras, so I went for a TETRIX kit that I would couple with the MINDSTORMS brick to control the motors.
- How long was this video in production?
The ”Hdr skies” video was a compilation of one year of time lapse shots. Since then, as I shoot more, I try to achieve a new video every six months or so.
- How has your experience been with ROBOTC?
I had a great time programming with it, I already knew a bit of C, so I found it very easy and natural to use, in fact so simple I was rapidly able to code all my ideas with ease!
- Do you have any other projects coming up that you are using ROBOTC with?
My next project is a new TETRIX based five axis rig using a motorized jib. I’ll use ROBOTC to control the motors and build a new MINDSTORMS interface to program the moves. I’m also exploring new possibilities to use ROBOTC to fire the camera directly, thus simplifying the robot/camera synchronizing part.
Tanguy also mentioned that all his time lapse videos are made with the rig.
Thank you so much Tanguy for sharing your awesome project! Do you have a cool projects that you created using ROBOTC? If so, let us know! We’d love to feature it here.