Assignment: Introduction

This assignment gives an introduction to our course and reviews some basic material you will need. Hand ins will be noted in italics.

Course Form

Fill out the form in order to apply for admission to the course.

Collaboration Policy

Please read and sign the collaboration policy for CS1951R.Submit the signed pdf with filename collaboration_policy.pdf.

Safety Policy

Please read and sign the safety policy for CS1951R. Submit the signed pdf with filename safety_policy.pdf

Problem 1 (20 points)

Submit the answers to these questions in answers.txt

Before you start putting a lot of time into this course, it is important to figure out what you will get out of the course. Think about what you expect to learn from this course and why it is worth investing a lot of time. What do you hope to learn that you can take away for the next ten or twenty years of your career?

  1. What is a robot? What is a machine? What is a vehicle?
  2. Is a car a robot? How is my drone a robot?
  3. If I can fly a drone by remote, what can I get out of programming it?

Problem 2 (20 points)

Write the answers to these questions in the corresponding section of answers.txt.

For this problem we strongly recommend you do these calculations by hand, because they are warmup questions designed to remind you of some of the prerequisite material for the class.

  1. Multiply the matrix by the following vector: \(\begin{bmatrix}1 & 0 & 1\\0 & 1 & 2\\0 & 0 & 1\end{bmatrix} \times \begin{bmatrix}0\\0\\1\end{bmatrix}\)

  2. Multiply the matrix by the following vector: \(\begin{bmatrix}0\\0\\1\end{bmatrix} \times \begin{bmatrix}1 & 0 & 4\\0 & 1 & 10\\0 & 0 & 1\end{bmatrix}\)

  3. Imagine a robot is at \((0x,0y)\). It uses a sensor to detect an object on a distance of \(10\mbox{m}\) and a heading of \(45^{\circ}\). The facing toward positive numbers on the Y axis would be \(0^{\circ}\), and the degrees increase when turning clockwise. Where is the obstacle relative to the robot? Give coordinates and draw your answer on a map.

Problem 3 (20 points)

Read the FAA website on Unmanned Aircraft Systems. Provide short answers to the following questions.


Here is a little bit of discussion of the relevant rules: Tl;dr - We are in Class G airspace, that classification doesn’t directly matter, and we need to notify Rhode Island Hospital before flying.

We had some questions come up about airspace classification on homework 1. In an attempt to make sure we are all on the same page, I’ve done some more digging on the subject. This is the relevant FAA webpage: https://www.faa.gov/uas/faqs/. Because we fall under the Special Rule for Model Aircraft, the actual classification of the space we fly does not matter at all. That is only relevant for commercial or licensed flying under section 107. The airspace rules that apply to us are:

  1. We must notify airports or heliports within 5 miles (i.e. Rhode Island Hospital).
  2. We must fly within line of sight.

Class C airspace applies within 5 nautical miles of airports up to 4,000 feet. It also applies within 10 nautical miles between 1,200 feet and 4,000 feet. Source

This means that the CIT is not in Class C for altitudes below 1,200 feet. If we fly high enough, we would be in Class C because we are within 10 miles of the airport. However, presumably at that height we would no longer be in line of sight (assuming by line of sight they mean within visible range). Therefore, we are indirectly restricted from Class C airspace, even though the Classes don’t directly apply to us.

There’s a final interesting FAQ on the FAA site:

Can an airport operator object to model aircraft flights near an airport? “Yes, an airport operator can object to the proposed use of a model aircraft within five miles of an airport if the proposed activity would endanger the safety of the airspace. However, the airport operator cannot prohibit or prevent the model aircraft operator from operating within five miles of the airport. Unsafe flying in spite of the objection of an airport operator may be evidence that the operator was endangering the safety of the National Airspace System. Additionally, the UAS operator must comply with any applicable airspace requirements.”

This seems to imply that you can fly regardless of what the air traffic control says, but that you could then be arrested for it. This seems like a really weird addendum, like maybe they are trying to regulate things that Congress hasn’t actually given them jurisdiction over.

Bottom line, as long as we notify Rhode Island Hospital it seems like we are ok.


Write the answers to these questions in the corresponding sections in answers.txt

  1. What class of airspace is the area around the CIT? (You might find it easiest to use the B4UFLY Smartphone App.

Answer: Class G

  1. What is the closest airport to the CIT? Hint: Make sure to check for heliports as well.

Answer: T.F. Green Airport and the Heliport at the Rhode Island Hospital

  1. Is it okay to fly your drone outside the CIT? Why or why not?

Answer: It is okay for students to fly outside as long as they respect the FAA airspace rules. This falls as recreational use. However the CIT is within five miles of the Heliport at the Rhode Island Hospital. As a result it is not okay to fly without coordianting with them.

  1. What are some risks of drone flight? How could people get hurt with the robot?

Answer: People can get hurt when it falls on them. A propeller hits them. A propeller breaks off and gets in their eye. The battery explodes.

Problem 4 (20 points)

Write your answers in the corresponding section in answers.txt

Pick one of these robots that was used to solve a real-world problem and answer the questions below.

  1. What problem is the robot solving? Your answer should be focused on the problem people had, why it was hard, and why it was important to solve.

  2. What sensors does the robot use to solve the problem? What does it need to know about its environment, and how does it find out?

  3. What actuators does the robot use to solve the problem? What does it need to alter about its environment, and how does it do so?

  4. How well does the robot work? How is its performance quantitatively measured or qualitatively evaluated?

  5. How does the robot fail? What happens when it fails?

  6. How much does the robot cost? If you find a price, cite your source. If you cannot find a direct source, give an estimate and some reasoning.

Problem 5 (20 points)

Write your answers in the corresponding section of answers.txt

Read The Law of Leaky Abstractions. How might this be especially relevant to robotics? Make sure you address:

  • How might implemented systems not be true to their modeled behavior?
  • How can we use abstractions in light of these challenges?

Handin

If you do not have a Github account, please create one at this link. We will be using git repos throughout the course for versioning, moving code around, and submitting assignments.

Once you have a github account, click on this link to join our Github classroom. This should ask you to select your name from the list and create a repository for you. Clone the directory to your computer

git clone https://github.com/h2r/safety-yourGithubName.git

This will create a new folder. Before you submit your assignment, your folder should contain

  • safety.pdf
  • README.md

Commit and push your changes before the assignemt is due. This will allow us to access the files you pushed to Github and grade them accordingly. If you commit and push after the assignment deadline, we will use your latest commit as your final submission, and you will be marked late.

cd safety-yourGitHubName
git add safety.pdf README.md
git commit -a -m 'some commit message. maybe handin, maybe update'
git push

Note that assignments will be graded anonymously, so please don’t put your name or any other identifying information on the files you hand in.

If your name is not in the list of names, please email cs1951rheadtas@lists.brown.edu and we will make sure your name is added to the list.