Drug Delivery - Task 2.

From Drexel University NanoEnlightment

Jump to: navigation, search

The goal of this week's module is to learn both the strengths and limitations of the sensors you will use in guiding the robot's interaction with its environment. Empirical understanding of sensor data is important as the limits of the sensors will determine how accurate your decision making can be and how precisely you can move and interact with your environment.

You will provide a written report on the sensors and the calibration procedures (see syllabus for due dates and report naming convention). Remember to follow the report guidelines provided on the ENGR102 website, and be sure to address the deliverable graphs and data as identified below in the tasks.



Light sensor

Light Intensity
The light sensor that is included with the kit is only capable of detecting absolute light intensity, it has no color sense. Sensors like these are the cheapest and easiest to interface with when constructing robots. More immediately, it is your only way of making determinations concerning the markings on the arena walls. The goal of your light sensor calibration is to attempt to determine which colors are distinguishable from each other, and which are not. Color samples can be found on the second-to-last page of the Lego NXT construction book that is included with your kit. You will have to scan the various colors (black, white, green, red, yellow, purple, blue) and to determine a minimum and maximum value returned by the sensor for each color. If the ranges overlap, they are considered indistinguishable. If they do not, they are effectively distinguishable. You should use the data logging software available in the NXT module to directly plot a graph of intensity detected for various colors vs time. Various examples and step by step insructions on how to use the data logging software can be found in the Robot Educator tab (located top right) on the NXT software window.

(Optional): Alternatively we have assembled a LabVIEW VI which may aid you in your data collection. It is capable of reading the light sensor data from the NXT and outputting to a comma-delimited text file that can be imported to a spreadsheet program for analysis. You are also welcome to output data directly to the NXT screen as in the ultrasonic tests. Determine the following:


    • Calibrate the light sensor prior to experimentation. The procedure for calibration can be found in the help secion of the NXT
    software window. : Help -> Contents and Index->(This will open on a new browser window) Calibrate sensors tab (on the left)
    • Intensity values of sensor pointed at each strip at different distances (e.g. 2cm, 4cm, 8cm).
    • Does the usage of the LED light built into the sensors help/hinder the determination?
    • What colors are distinguishable at what distances?
    • Record this in your lab notebook and present the data in your lab report (see syllabus for due dates).
    • Imagine now that your robot must search for cancer cells inside the human body. First, using the Hagerty Library resouces do some independent research and determine how many cells are in the human body, and what the average cell size is. Next, make an estimate for how quickly your nanobot might travel. Assuming that your nanobot could keep track of all the cells it visited, how long would it take a single nanobot to visit every cell? If you were to now deploy one million nanobots, how long would it take to search every cell? Next assume that your nanobots don't have any memory. They cannot remember if they visited a cell or not. How long would it take to visit every cell? Finally, to make matters worse, imagine that your nanobot has to scan through all of the 20,000+ mutations recently discovered in cancerous lung cells. In your notebook, show a few order-of-magnitude calculations and compare results with your lab partners.

Screenshot of LabVIEW Program and Code:
Example MS Excel Export:

  • As an alternative to the graphing format, consider using either the 3D plotting function in MS Excel, or a series of traces for each of the colors at multiple distances as seen below.


  • For this Module, you will write a report in the format given in ENGR 101. Please follow the formatting given for Module I.
  • The VI code associated with this is available for download Media:DDWk2-light.vi

Color Sensor

Unlike the light sensor the Color Sensor enables your robot to distinguish not only between black and white, but also a range of bright and pastel colors. A detailed working of the color sensor can be found on the link below: Color sensor


  • Using the color sensor scan through the color coded chart and determine the effectiveness of the sensor in distinguishing between

colors. In this case each color is identified by a number. Refer to the color sensor guide Color sensor

  • Determine the color sensing limitations of the sensor with respect to distance from the color chart.
  • Determine the max and min distance over which Red, Blue and green colors are distinguishable.
  • Prepare a table for various colors, their min, max and reliable detectable distances.

Infrared seeker

The Infrared seeker enables the functionality of detecting IR light sources, determine its direction and approximate distance.
Details on the functionality of the IR seeker can be found on the link below: IR seeker


Determine the effectiveness of the IR seeker in detecting IR signatures. Use the IR ball as the IR source. </OL>

If time permits perform the following sensor calibrations for EXTRA CREDIT:


Precision motion is incredibly important in the task set before you. It is important to know just how precisely you will be able to control your robot. Are commands executed reliably to the order of tens of degrees, single degrees, tenths, hundredths, etc? If the precision is insufficient, is there anything you can do to increase it?

The motor blocks within the NXT software present options for control in terms of time, degrees and number of rotations. The motors in the NXT kit use an internal tachometer to determine when the latter two options have been executed. We will forgo the description of the inner workings of a tachometer here, but you may benefit from some independent research on the topic. For our purposes it is enough to know that the error can be a function of the operational speed of the motor. Your goal is to determine the following characteristics of the motors:


  1. Graphs of angular error per rotation at 25, 50, 75 and 100% power.
  2. Analysis of the errors. Some questions to consider: Are the errors linear functions? Exponential functions? Repeatable?
  3. Can you predict the amount of error for a given operational time/distance at a specified power level? (If you can predict it, you can correct for it.)
  4. Program the robot to travel a few different distances. Measure these distances and calculate the error.

To get you started:

  • Think back to high school geometry; Realize that the diameter of the wheel, the number of rotations performed, and the distance traveled are all related.
  • Use this relationship to determine how far the robot should travel if ordered to travel for X rotations of its wheels.
  • Report the process used to do the measurements, include formulas and the raw data used to calculate angular error in your lab notebooks.

Touch sensor

The touch sensor is a simple I/O (on/off) switch. The one property you may find useful for your design is its trigger point, i.e. how much pressure you must apply to set it off.


  1. Determine the trigger point by constructing a simple T-shaped beam on the top of the sensor. Hang increasingly larger known masses from the beam until the switch triggers.
  2. Discuss resolution of the measurement and its repeatability.
Personal tools