Introduction and Design
This course is a bit of an experiment. We have a lot of ground I would like to cover, but I also want to give you all the opportunity to “discover” solutions to the problems we face (instead of me lecturing “at” you).
One shortcut I’ve taken is to choose our task and platform (see Figure 1). Specifically, we will focus on wheeled mobile robots (WMRs) and the topics most relevant to computer science students. Even still, we will only cover a small fraction of the possible material. My hope is that you will also learn concepts you can apply outside of robotics. For example, control theory and linear systems are used in many fields, including chemistry, economics, and biology.
Robotics is a large field comprising material from electrical, mechanical, and computer engineering, as well as computer science, sociology, ethics, biology, law, and more. We’ll focus on the computer engineering view of robotics: a bit of electronics and a good amount of programming.
Each chapter in this book will roughly follow the outline below (learning goals, terminology, lecture, interactive, exercise, and a list of resources). The exercises will be completed in class, but you are can continue working on them outside of class when needed.
In this first chapter, we will discuss design and you’ll start designing and building your course robot.
What you will learn
- How to define requirements for a robot
- How to select mechanical and electrical parts for a robot
- Basic robot design using computer aided design (CAD) software
Terminology
- robot
- a machine capable of performing actions in response to its sensed environment
- requirements
- a set of expected characteristics and abilities for a system
- CAD (computer aided design)
- using software to design mechanical parts
- prototype
- a preliminary model of something from which other forms are developed
Lecture
Links
This first chapter is lighter than subsequent ones. The first class period will be fairly traditional: I’ll present the lecture during class.
Interactive
Here is a 3D model of our robot:
I created this model using Onshape for Education (free). You will not be required to design and fabricate your own chassis for this course, but I highly recommend doing so. Learning CAD, 3D printing, and laser cutting will open up many possibilities for you in the future.
Creating Parts for the Laser Cutter
Steps taken in the video:
- Create new document
- Import (copy and paste) dimensions from a spreadsheet
- Layout chassis
- base dimensions then extrude
- holes for various parts
- extrude for holes
- fillets
- Prepare sketch for output
- auto layout
- kerf compensation
- use/project then create drawing
- Export drawing
- right-click sketch and export to drawing
- view scale 1:1
- click to insert (outside the frame)
- delete all entities inside the frame
- show/hide -> hide sketch points
- right-click and save
Creating Parts for the 3D printing
Here are the steps taken in the video:
- Create new part studio
- Create wheel
- wheel rim then extrude
- wheel cross then extrude
- wheel hub then extrude
- motor shaft then extrude/remove
- (top view) hole for set pin
- plane at top of hub
- hole for head of set pin
- nut trap
- circular pattern
- fillets
- sketch for rubber band and revolve
- Right-click the part and export as STL
Here are links to the demo parts and the battery holder we use in class:
Accessing the HMC Makerspace
- Pass the HMC Makerspace quizzes
- Pass the General Safety Quiz to use any of the tools and spaces
- Pass the 3D Printer Quiz to use the 3D printers
- Pass the Laser Cutter Quiz to use the laser cutters
- Request keycard access
- to the building and
- to the 3D printer / laser cutter room
To request keycard access you must go in-person to the Mudd Facilities and Maintenance (F&M) office, which is in the basement of the Platt Campus Center (you can find an entrance to the basement on the west side of the building).
Exercise
We have two exercises for this class period:
- A short introduction quiz on gradescope (due by the end of the day).
- Building our simple robot. We’ll discuss this in class.
You will submit your responses on gradescope. Only one partner should submit. The submitter will add the other partner through the gradescope interface.
Additional details for using gradescope can be found here:
You should open the gradescope assignment now so that you know what to work complete.
Grading
I will grade all exercises using a scale of “Nailed It” / “Not Yet”. See the course grading policy for more information, and check gradescope for deadlines.
Overview
All exercises are (annoyingly) split up across two book chapters (web pages). I’ve made this decision to keep each web page short and focused at the expense of making the exercises split into two parts.
This exercise entails:
- (today) designing simple prototype robot (some chassis/platform to mount parts on and some wheels), and
- (Thursday) adding your initial electronics.
The main goal is to get the wheels moving by the end of the exercise.
You’ll be given only part of your kit this week, and you’ll receive additional parts throughout the semester.
Design Exercise
Before you receive your parts (likely not until Thursday) I want each group to design a cardboard robot prototype.
For this first week, you only need to design a platform for the following components:
- XIAO ESP32S3 microcontroller
- XIAO expansion board
- Breadboard
- DRV8835 motor driver
- Two gearmotors with encoders
- Caster ball and accessories
- Battery holder
- Switch
- Voltage tester
You will need to create a platform/chassis from cardboard. To do so, you should:
- Layout all of your parts on a piece of cardboard
- Make certain that holes do not overlap
- Make certain that you can access all needed ports
Full Parts List
For reference, here is the full parts list for the course:
Category | Part | Quantity |
---|---|---|
Microcontroller | XIAO ESP32S3 | 1 |
Peripheral | Expansion Board Base for XIAO | 1 |
Peripheral | Vision AI | 1 |
Sensor | MPU-6050 Inertial Measurement Unit | 1 |
Sensor | QMC5883L Triple Axis Compass | 1 |
Sensor | VL53L7CX Time-of-Flight ranging sensor | 1 |
Sensor | Camera | 1 |
Mechanical | Ball Caster | 1 |
Mechanical | Motor Mount | 2 |
Driver | DRV8835 Dual Motor Driver | 1 |
Locomotion | Gearmotor with encoder | 2 |
Power | Voltage Tester | 1 |
Power | Switch | 1 |
Power | 2600mAh 18650 battery | 1 |
Power | 3D Printed Battery Holder (with two Battery Contacts and wires) | 1 |
Wiring | Breadboard | 1 |
Wiring | Grover Conversion Cable | 1 |
Wiring | Grove Cable | 1 |
Wiring | Jumper Cables | 15 |
Storage | Plastic Container | 1 |
Materials shared by the class:
Part |
---|
Cardboard |
M2 Fasteners |
M3 Fasteners |
Velcro |
Rubber Bands |
Sticky Dots |
Battery Charger |
Hot Glue |
You can source additional parts at (and tools):
- The Hive and
- The Makerspace.
Wrap-Up
Welcome to Mobile Robotics! This first semester will have some rough edges, but I hope we all find it rewarding.