-
Notifications
You must be signed in to change notification settings - Fork 5
NSF Workshop on Unified Curriculum and Course Design for Mechatronics and Robotics Engineering
Welcome to the NSF Workshop on Unified Curriculum and Course Design for Mechatronics and Robotics Engineering!
Over the course of the workshop, you will complete several of the activities from WPI's Introduction to Robotics course, culminating in a highly successful final project that we developed in response to remote learning needs under the covid pandemic.
Videos from all three days can be found here.
Papers from the FOMRE Group can be found here.
Slide decks can be found here. (Work in-progress -- check back later if needed or send an email to [email protected] if you have a specific request.)
The Project Overview describes what your robot will have to do to complete the challenge. Each of the workshop activities is designed to add functionality to your robot until it can complete the challenge.
To complete the project, you will need to prepare a few things:
- Build your robot according to the Build Instructions (which also contain a Bill of Materials).
- Do the "Hello, World!" activities so that you know that your robot is alive and well.
- Construct an arena as laid out in the Project Overview. We typically use a 4'x8' white board with black tape, but you can make the arena significantly smaller, if needed. You can use any smooth, uniformly colored surface for the arena, though you will want to be sure you have good contrast between the surface and the tape used to make the course (see the preliminary activities for the second activity, Keeping on Track, for how to test the line sensors).
- You may also want to build a figure-8 out of tape. A large figure-8 (3' x 4' or so) is useful for testing, but not strictly necessary.
- You will need to construct two ``bags'' (see the project description) to be carried by the robot. Any small object with a bail will work -- anything from a soup can with a large paper clip to a 3d printed bucket will work.
- You will need two flat platforms. In our classes, we use platforms 10 cm on a side with heights of 4 cm and 8cm, but any small, flat surface will work.
Need help getting started? We have two help sessions on Monday, Jan. 3, and Tuesday, Jan. 4, from 1:00 - 3:00 EST. You can join a Zoom session at Meeting ID: 955 5769 0050. You can also send email to [email protected].
There are two github repositories that you will visit to complete the workshop:
- The repo you're visiting now, which contains the activity handouts and other resources, and
- A repository of sample codes, including codes or the preliminary activities and codes for the workshop (which are where you will end up if you do the preliminary activities).
- There is a repo of solution codes for the activities that we addressed in class. You will need to customize the solutions for your arena and you're encouraged to "finish up" the solutions -- not everything has been implemented!
There are also library repositories, but you do not need to download those -- they are linked from within the example codes.
Each of the activities includes a set of preparation activities and a set of workshop activities. Because time in the workshop is limited, you are highly encouraged to do the preparation activities on your own before the workshop. For each session of the workshop, however, we'll give you code that is ready to go for that session.
The workshop handouts also contain solutions, thing to watch out for, and pointers for what you could do in a class.
- The preliminary activities will help you get familiar with the commands that are used to control the robot as well as the style used for coding the project. You will explore how to read an IR remote control, command the wheels to move, and tune the control parameters.
- In the workshop, you will tune the robot's kinematic parameters so that it produces reliable motion.
- You can find the activity handout here or by navigating to the activities folder.
- In the preliminary activities, you will explore the line sensor and analog-to-digital conversion, along with the logic behind detecting events.
- In the workshop, you will tune the control parameters so that your robot can follow a line and stop when it detects an intersection.
- You can find the activity handout here or by navigating to the activities folder.
- In the preliminary activities, you will calculate the load on a motor and (re)design the lifter assembly for better performance. You will also explore the ultrasonic rangefinder, which you will use to align the robot with the bag.
- In the workshop, you will program the robot to approach and lift one of the objects (``bags'') for the final project.
- You can find the activity handout here or by navigating to the activities folder.
- In the preliminary activities, you will develop a strategy for navigating the arena.
- In the workshop, you will implement and test your navigation strategy.
- In the preliminary activities, you will generate ideas for how you can find and object that is not "where it is supposed to be."
- In the workshop, you will implement a common solution that we ofter see the students using.
- You can find the Advanced activity handout here or by navigating to the activities folder.
- In this activity, you will use random numbers to generate random movement on the robot to explore its environment.
- In this activity, participants will user sonar feedback to create a bang-bang controller to stop a robot before hitting an obstacle.
- In this activity, participants will integrate random wander and avoid obstacle behavior. It is an illustration of making a complete state machine or subsumption architecture on a mobile robot.
- In this activity, an optional advanced topic will be introduced. It is an examination of odometry error as a the robot attempts to reach a goal by navigating around an obstacle.
- If you have questions about your robot or getting set up, please email [email protected] or [email protected].
- For questions or comments about the introductory activities, please contact [email protected].
- For questions or comments about the advanced activities, please contact [email protected].