EG1003 Lab Manual: Nano-Robotics Challenge (NRC)

From EG1003 Lab Manual
Jump to: navigation, search

RFP*: Nano Robotics Challenge(NRC)

* RFP is an acronym for Request For Proposal. Internationally, RFPs are called ITTs, an acronym for Invitation To Tender. Governmental agencies use RFPs to solicit new business.

This project reflects real life scenarios; the robot must be able to handle minor imperfections in the course.

Introduction and Overview

Nano-robotics is a quickly growing field; robots the size of a nanometer (1*10^-9 m) could very well be the next important breakthrough in medical technology. Currently the interest in nanorobots revolves around their potential application in the medical field to act inside the human body as a cure for various ailments.

The Center of Disease Control (CDC) has recently had an influx of very sick volunteers willing to try out this novel technology. In response the CDC has reached out to engineers and programmers to develop an autonomous nano-robot that can travel through the bloodstream, diagnose health issues, and cure diseases.

Each research group has been provided with a patient. Your group's patient is Jesse. Jesse decided to go for a swim in the Gowanus Canal. We can't be sure what possessed them to do that, but here we are. Provided with information on illnesses that Jesse could have, your group will need to program an autonomous nano-robot to detect, find, and cure all the illnesses present in the body.


Jesse is represented by a light-up skeleton located in the EG Modelshop at 6 Metrotech Center, Brooklyn, NY 11201. The nanorobot in Jesse's body can be interacted with via an HTTP API as described in Appendix A. Most programming languages have some way to send HTTP requests. For the purposes of this project, Python with the Requests module is recommended. However, for students completely unfamiliar with programming, an instance of Snap!, a graphical programming language maintained by UC Berkeley, is provided.

To interact with Jesse, connect to the WiFi network EG_NRC-8913 in the EG Modelshop. Snap! is available at Information on the API Specification and using Snap! is available in the Appendices below.

Microsoft Project

You must create a schedule to manage your time in Microsoft Project. You can learn Microsoft Project by doing the MS Project Skill Builder. This schedule must include all tasks related to the project from the start of the project to Submission. Click here to access the guide on how to transfer a file. The Microsoft Project schedule should include the following:

  • Minimum of 20 tasks
  • Milestones should be clearly indicated on the project plan (duration of zero days)
  • Each task must include the person responsible for completing the task (resource names)
  • Use the "Copy Picture" function to include the project plan in the presentations. Do not take a screenshot
  • Gantt chart must be displayed alongside the tasks list (fit onto one slide)
  • Gantt chart must clearly show a progress line
  • Clearly state during the presentation whether the project is on-time, behind schedule, or ahead of schedule

For help in planning the project, review the manual page Planning Project Scheduling & Costs.

Milestones, Benchmarks, and Deliverables

As you work on your project, you will be required to present periodic reports on your progress. We call these Milestones. All the items assigned in each Milestone are called deliverables. These deliverables often consist of a combination of written submissions, presentations, and demonstrations.

Preliminary Design Investigation

The Preliminary Design Investigation (PDI) is extremely important, as it lays the groundwork for your project. You will be outlining your project idea, inspiration, and goals.

The PDI must include:

  • Cover Page
  • Project Overview
  • Goals & Objectives
  • Design & Approach
  • Cost Estimate
  • Project Schedule
  • Relevant Pictures

An example PDI template can be found here. The PDI is due by Benchmark A. Do not forget to include the items listed above. Use this link to access the VEX PDI Rubric.

Milestone 1

Prepare a preliminary assessment of the track system using digital logic (truth table, Karnaugh maps, and Boolean equations), a cost estimate, and an MS Project plan.

Look Ahead: What tasks are planned between now and Milestone 2?

See How To Give a Milestone Presentation for the format of a Milestone presentation.

Milestone 1 Deliverables:

  • Presentation:
    • Project description
    • Design approach
    • Mission statement
    • Cost estimate
    • MS Project schedule
    • Progress update: current state of the project

Presentation notes:

  • Be sure to include any special features and benefits of your design.

Benchmark Assessment A

The purpose of Benchmark A is to demonstrate familiarity with interacting with the API and the ability to do it repeatably through code. For benchmark A, students must:

  • Demonstrate an understanding of the API by building a set of functions (or SNAP! blocks) that allow them to use the API conveniently
  • Demonstrate the ability to login
  • Demonstrate the ability to tick the game
  • Demonstrate the ability to start holding and stop holding
  • Demonstrate the ability to change the direction of the nanobot
  • Demonstrate the ability to reset the game

Milestone 2

Look Ahead: What tasks are planned between now and Milestone 3?

See How To Give a Milestone Presentation for the format of a Milestone presentation.

Milestone 2 Deliverables:

  • Presentation:
    • Project description
    • Design approach
    • Design changes since Milestone 1
    • Mission statement

Benchmark Assessment B

Students must twice:

  • Defeat the weaker virus
  • Reset the game

WITHOUT manually interacting with their program.

Milestone 3

Look ahead: What tasks are planned between now and the completion of the project?

See How To Give a Milestone Presentation for the format of a Milestone presentation.

Milestone 3 Deliverables:

  • Presentation:
    • Project description
    • Design approach
    • Design changes since Milestone 2
    • Mission statement
    • Cost estimate (previous and current). What changes were made?
    • MS Project schedule (previous and current). What changes were made?
    • Progress update: current state of the project (time, budget, etc.)


In order to commission students must twice:

  • Defeat the stronger virus
  • Return to their start node
  • Reset the game

WITHOUT manually interacting with their program.

Final Presentation

The Final Presentation will be a technical briefing, similar to the Milestones, but also serves as a sales presentation explaining why your company should be selected instead of the competition. Please include the following:

  • Problem statement
  • Solution overview
  • Company description and qualifications
  • Source code of program
  • Cost estimate
  • Microsoft Project schedule
  • Video demonstration
  • Why should the company be awarded this contract?


All SLDPs must submit online. Please visit for the link to the Project Submission form and each SLDP group's individualized login information. To submit, you must login to the EG1003 website using this special login information. Submitting with your NYU account or any other account will generate an error. You may resubmit at any time before the deadline. Please note that submission times are based on the most recent submission.

Please note the deliverables for this project are as follows. If any of the following items are omitted, you will be penalized. Be sure to click submit at the bottom of the form. The following list includes deliverable items that are expected from your group:

  • Submission deliverables:
    • Final presentation
    • Final program
    • Final MS Project Schedule
    • Final cost estimate
    • Resume(s) (No fictitious resumes will be accepted.)

Early Submission

If you submit your project one academic week early, you are eligible for a bonus that will be added to your final semester-long project grade. You must submit all deliverables one academic week before the submission deadline (see syllabus for exact date). The deliverables received early are the ones you will use in your presentation. No adjustments to the submitted deliverables will be accepted.

Late Submission

Late Submission is not allowed. If you do not Commission or Partial Commission by the deadline set forth in the syllabus, you will not be allowed to submit and will receive a zero for the project grade. In order to receive Partial Commissioning, two TAs must analyze the project and determine its level of completeness in terms of Commissioning requirements. Please refer to the EG1003 Grading Policy for more information.

Frequently Asked Questions