June 7, 2021
This is the schedule of the presentations next Monday:
Google sheet.
June 1, 2021
These are the deadlines around the final exam week:
(1) Programming Assignment 1: June 12.
(2) Survey Paper Presentation: June 14.
(3) Survey Paper: June 15.
(4) Course Project Evaluation: June 21-22.
June 1, 2021
Our TA and I have prepared some notes to teach you how to train a YOLO model:
training-yolo-v3.txt.
However, we found that it is difficult to train a good model for the project in a short time.
Hence, we have modified the course project such that you do not have to train a new model---you
can simply use the default YOLO v3 tiny model to accomplish all the tasks.
Hence, this note is just for your reference.
May 27, 2021
Our TA wants you to edit this Google sheet directly to reserve timeslots for using the room to do the course project.
May 27, 2021
A draft of
Programming Assignment 1's handout is ready now. If you are taking the undergraduate class in this course, please start working on the programming assignment asap. If you are taking the graduate class in this course, the programming assignment is optional, and you can choose not to do it. The deadline of the assignment is June 12, 2021.
May 27, 2021
A draft of Course Project's handout is ready now. Please take a look and start reserving the room to work on the course project.
May 12, 2021
Milestone 5 is ready now. In Milestone 5, you will learn how to use YOLO in ROS on Nvidia Jetson Xavier NX. Our TA and I have prepared some notes to guide you:
Milestone5-ROS1-Jetson-Setup.txt and
Milestone5-test-darknet-ros-yolo.txt. Our TA has modified the Turtlebot to add a Nvidia Jetson Xavier NX, which will be used as the Remote PC from now on. We will give you one more SD card to work on Jetson. Our TA has already burned the Jetpack's image to the SD card for you. Please follow the instructions to install ROS and YOLO on the SD card, and then test the camera to see whether YOLO can track the red bottle you can find in the box of accessories we lend you. The accuracy of tracking is low because we use a general YOLO v3 Tiny model. In your final project, we will give you some hints on how to improve the accuracy. But in this milestone, you will have to think about how to cope with the poor tracking performance without training the YOLO model again. After installing and testing YOLO, please write a ROS program to control the Turtlebot such that the Turtlebot always looks at the red bottle if the red bottle is within the field of view of the camera. More precisely, if the bottle is not at the center of the field of view, the Turtlebot has to turn left or turn right so that the Turtlebot looks straight at the bottle. Your program will have to subscribe to the bounding boxes messages from the YOLO node and identify the bounding box of the bottle. Then the Turtlebot should turn left (right) if the center of the bounding box is on the left (right) of the center of the camera's field of view. Please submit a video clip showing how your program works, as well as the source code of your program. Students can now request to borrow the Turtlebot from the TA. If you haven't finished Milestone 4, you will have to work on both Milestones 4 and 5 at the same time.
April 26, 2021
Graduate students should start doing the special topic survey.
In this semester, I won't impose any limitation to the survey's topics, as long as it is related to robotics. However, every student will have to survey a different topic.
Please enter your topic in this Google sheet this week.
This is an individual work and you cannot have a partner.
At the end of the semester, you will give a presentation about your survey.
Please refer to the guideline in the syllabus
to learn about what to write in the survey.
May 17, 2021
The midterm exam will be held from 11am to 11:59pm this Saturday (May 22, 2021).
This is an open book, open note exam. You can download the question sheet from this course website at 11am on that day. You must print the question sheet and write the answers on it ***by hand***. After you finish the exam, please scan the question sheet and upload it to Blackboard.
April 19, 2021
The fourth milestone is about ROS programming. In this milestone, you will write a ROS program to control the OpenManipulator on the Turtlebot by keyboard. The program should be similar to turtlebot3_teleop_key in milestone 1, but it will accept a few more keystrokes to control the robot arm. Your program should provide some basic functions such as setting the arm to some predefined poses and opening/closing the gripper. In addition, your program should read the current configuration of the arm and the gripper and display the information on the screen. Of course, please feel free to add more functionalities to your program. You can write your program in either C++ or Python. Please read the source code in these ROS packages you downloaded in the previous milestones to learn about how to use ROS to control the arm: turtlebot3_manipulation/ turtlebot3_manipulation_gui and turtlebot3/turtlebot3_teleop. Please also refer to the ROS programming books and the official ROS tutorial.
If you are using C++, you may find this file helpful to you: posix_terminal.cpp.
You can borrow the Turtlebot for two days in this milestone.
If you need more time, you will have to wait for other teams to have a chance to use the Turtlebot before you can borrow the Turtlebot again. You will have to submit the source code of your program as well as a video clip showing how your program works.
April 12, 2021
The third milestone is about the use of OpenManipulator on the Turtlebot. Please follow the instructions in Chapter 7 (except Section 7.10) in the TurtleBot3's e-Manual. Note that there is no instruction for Noetic yet. But most of the instructions for Kinetic will work well. Our TA has prepared some notes to guide you:
ROS1-remote-pc-setup.txt,
test-manipulation-gui.txt, and
test-manipulation-rviz.txt.
You will have to submit some photos and/or videos showing that you have successfully controlled the manipulator via (1) rviz and (2) the ROBOTIS GUI Controller. Please try to learn the user interface of rviz and the ROBOTIS GUI Controller, and demonstrate what you have learnt in the videos. You should also run the SLAM code and the navigation code in Section 7.8 and Section 7.9, though they are not much different from what you did in Milestone 2.
There is no need to submit a video for running the slam and navigation code. You don't need to run the code for the home service challenge in Section 7.10.
Please email our TA to state the dates you are available, and the TA will pick the earliest available day for you. You must finish Milestone 3 this week.
April 11, 2021
The portable LCD screen was damaged: screen_damage.jpeg. If you are the one who damanged the screen, please contact me and I need to talk to you about this.
Mar 28, 2021
Our TA has setup a link on Blackboard for you to upload your videos of your project.
If you prefer submitting the videos on Blackboard, you can use the link. But remember
to email the TA after uploading the videos. If you prefer submitting the videos by email,
you can ignore the link on Blackboard.
Mar 31, 2021
The second milestone is about SLAM and automatic navigation. Please follow the instructions in Chapter 3-6 in the TurtleBot3's e-Manual. In Chapter 6, you only need to go through Section 6.1-6.3 and you don't need to read Section 6.4 and 6.5. Our TA has prepared some notes to guide you:
SLAM-milestone.txt,
Navigation-milestone.txt, and
Gazebo-Simulation-milestone.txt.
You will have to submit some photos and/or videos showing that you have successfully run a SLAM algorithm to (1) map a physical environment (e.g., a small corner of your room) *and* a simulated environment in Gazebo, and then (2) use a navigation algorithm to move the Turtlebot from one location to another in *both* the physical environment and in Gazebo. Since our TA and I failed to install Cartographer and Karto, you may have to use Gmapping as the SLAM method.
From now on, the time slot for borrowing the Turtlebot will be on a first-come-first-serve basis. Please email our TA to state the dates you are available, and the TA will pick the earliest available day for you. You must finish Milestone 2 before next weekend.
Mar 20, 2021
The first milestone of the course project is to install Ubuntu and ROS on the SD card and then run the demo of controlling the TurtleBot remotely by keyboard. Please follow the instructions in the Quick Start Guide in the TurtleBot3's e-Manual. Note that we will use ROS 1 Noetic Ninjemys on Ubuntu 20.04 LTS (64-bit). Note that the instructions in the e-manual are slightly outdated.
Our TA and I have prepared some notes to help you:
remote-pc-setup-v1.txt,
turtlebot3-setup-v1.txt, and
test-teleoperation-v1.txt. We will start lending the robot to you this week.
Mar 8, 2021
Please sign up your team for the course project on this Google sheet.
Feb 24, 2021
If you stumble on any interesting news article or any video about the latest research or development of robots, please tell me by filling out this google form. I will consider sharing it with your fellow classmates.
Feb 24, 2021
I want to know more about you and your needs so that I can make this course more helpful to you. Please fill out this survey on this google form.
Feb 24, 2021 Welcome to this class. This class web page is still under development. Stay tuned!
Disney's latest robot will bring Groot and other characters to life
With Project Kiki, Imagineering set out to create a robotic actor that could one day interact with Disney theme parks guests and make them feel like they're face-to-face with their favorite characters.
Foam Sword Fencing With a PR2 Is the Best Kind of Exercise
Competition between humans and robots doesn’t have to be a bad thing, in the same way that competition between humans and humans doesn’t have to be a bad thing. There are all kinds of scenarios in which humans respond favorably to competition, and exercise is an obvious example.
Watch a Robot AI Beat World-Class Curling Competitors
A robot named Curly that uses “deep reinforcement learning”—making improvements as it corrects its own errors—came out on top in three of four games against top-ranked human opponents from South Korean teams that included a women’s team and a reserve squad for the national wheelchair team.
No Human Can Match This High-Speed Box-Unloading Robot Named After a Pickle
Pickle Robots says that Dill’s approach to the box unloading task is unique in a couple of ways. First, it can handle messy trailers filled with a jumble of boxes of different shapes, colors, sizes, and weights. And second, from the get-go it’s intended to work under human supervision, relying on people to step in and handle edge cases.
Meet Stretch, a prototype of our new robot designed to automate box moving tasks in warehouses and distribution centers. Stretch’s mobile base allows it to go to where repetitive box lifting is required - unloading trucks, building pallets of boxes and order building. Stretch makes warehouse operations more efficient and safer for workers.
DJI’s New FPV Drone is Effortless, Exhilarating Fun
DJI is announcing a new consumer first-person view drone system that includes everything you need to get started. You get an expertly designed and fully integrated high-speed FPV drone, a pair of FPV goggles with exceptional image quality and latency that’s some of the best we’ve ever seen, plus a physical controller to make it all work. Most importantly, though, there’s on-board obstacle avoidance plus piloting assistance that means even a complete novice can be zipping around with safety and confidence on day one.