Please provide me feedback so I can more accurately cater the Engineering Central program after your interests.
Now that you've had a chance to play with your robots and experience the limitations of the default code, you are ready to begin programming your own. We will be using RobotC, which is the world's most common educational robotics platform.
You will need to use Windows for this. RobotC is not supported on Mac OSX. Hopefully at least one person in every partnership has a Windows device. If not, please sign out one of the classroom Windows laptops (the clipboard is under my desk).
Here are the steps to getting started:
Our essential question for this unit is "how can robots help me gain power over my environment and my future?" I think this is a reasonable question for you to ask, since robotic systems are becoming so common. We are seeing them pop up in so many industries. In fact, people far smarter than me are saying that there is an excellent chance that students today will need to interact with robots as co-workers, regardless of the industry they choose. We have spoken in class about the likelihood that you will need to communicate with a computer system far more often than you will with a human. Many of those computer systems will be robots.
Thus, knowing how they function gives you power to control them and confidence to interact with them. Furthermore, programming systems may very well be the most important language you will need to know in your careers.
For this unit we are using the awesome VEX EDR robot systems. You could study these robots for 2 or 3 years and not run out of things to build and program. You can build entire clutch and transmission systems with these. In grade 11, you will learn how to use these for competition, so that you can actually enter the VEX International robot competitions in grade 12.
This is going to be amazing.
Here are your learning goals for this part of the course:
Conceptual (what do you need to learn?):
Looking for an industry with 0% unemployment? CyberSecurity! Learn a bit about Stuxnet to see why this is an industry that is growing so rapidly. If nuclear facilities can be targeted, imagine the potential security threat when everything goes online with the Internet of Things. This Internet thing doesn't seem to be going away.
So, what do you need to get started in an industry like this? An expert knowledge of Networking, hardware and electronics.
Throughout the engineeringCentral program, you get exposure to all these topics. So now we look at networking. We need to know how to set them up, connect to them, and secure them. That will give us the expertise to configure reliable networks at home. But in order to become a pro, you need to get deep into networking. For those of you who are interested, you can go deeper into the Cisco Networking Academy than we have time to get in class. This will give you a solid foundation for industries like Network Administrators, Network Analysts, Cyber Security professionals, Pen-Testers (White-hat Hackers), and other high-demand occupations.
Our major learning goals for this unit include:
Many very smart people are saying that Additive Manufacturing, or 3D printing, will be more revolutionary than the Internet. Whether or not that's true, 3D printing is already changing established industries such as medicine, food, fashion, and aerospace. Essentially, these are industries where mass production isn't the best fit. These are specialized industries where unique parts are often required.
Beyond these types of industries, 3D printing offers a different type of future. You want something, you press a button and a machine in your home starts producing it. A machine that could make things appear out of nothing!. Printing in 3D gives you the power to create. No longer do you merely need to be a passive consumer. Learning how to design and print in 3D means you can be a creator. Just think of the story of Derby the dog.
Furthermore, being able to design and create in 3D is a critical engineering skill. It's one thing to be able to conceive of an idea and sketch it out in 2D. But to really determine its value, you need to conceptualize it in 3D.
Our Essential Question for this unit is: How can the ability to design in 3D and create using additive manufacturing give me the power to create personalized objects on demand?
The major learning goals are:
Conceptual (what do you need to learn?):
To get you started, visit Autodesk's excellent Fusion 360 Academy for all sorts of training videos.
Pulse Width Modulation (PWM) is a common technique that essentially makes a digital circuit behave similarly to an analog circuit. It is used in common electronics circuits to do things like dim lights and control servo motors, to sophisticated controls of high-end systems. As you know, a digital signal can only be high (power) or low (ground). But, by varying the duty cycle, we can change the proportion of time that signal is high as compared to low, over a consistent period of time.
In this lab, you will learn how to use PWM with Arduino, which will be very useful to do fancy things with LEDs and motors.
For those of you who would like to walk through functional stopwatch code, here are some samples, chosen for their different strategies to address the challenge. Included are a 2-button stopwatch, a 1-button stopwatch with counter, a 1-button stopwatch with Boolean variable, and a 1-button stopwatch that doesn't use delay().
I would like you to embrace the pain of figuring out how to create an Arduino-controlled stopwatch. To assist, I am giving you an example of pseudocode for this problem. Pseudocode is a way of thinking like a computer in order to make a plan of attack to solve a programming challenge. Check it out:
Arduino microcontrollers are showing up everywhere, because they are inexpensive and very, very useful in many electronics and robotic builds. Plus, they are open-source, which means you can take other people's ideas, modify them, and make them your own.
For us, these little boards are great. You can build cool electronics projects like those we saw in class, plus you can use them as the "brains" in robots. And they serve as a great introduction to physical programming. You will program them to listen to sensors and, based on that feedback from the environment, they will do something by controlling actuators.
These are used often at the university level, so getting used to them now not only gives you creative geniuses the ability to invent now, but it also gives you an advantage over others when you start your post-secondary careers.
To help you remember what you learned last year, reference my cheat sheets, try tracing through these Arduino sketches, and follow this lab. You can also watch my video introduction to programming Arduino.
Our major learning goals for this unit are: