Project 41 Auto Pilot

This is an archive site. Current senoir design projects are at https://projects.eng.uci.edu.

Topic:

Idea source:

Assignment 6. Communication Refinement

1. Private vs Public Information (6 points)

The magstripe ID card contains the student ID, student name, and an "expiration date".

  1. Which is considered private information or public information?  

Student ID is the private information, while student name and expiration date are public information.

  1. What must be encrypted?

Student ID need to be encrypted.

  1. What does not have to be encrypted?

Student's name and expiration date do not have to be encrypted.

  1. Would you encrypt unrestricted information?  Give two reasons for why or why not. For teams of five or more, give three reasons.

I would not encrypt unrestricted information.

  1. If too much information is encrypted, the running speed of the system will be slow.

  2. Some unrestricted information should be easy to access. If these pieces of information are encrypted, the accessibility cannot be guaranteed.

2.  Types of Cryptographic Approaches (6 points)

The lecture mentioned three types of cryptographic techniques: (one-way) hash, symmetric key, and asymmetric key.

  1. Which type is most suitable for encrypting "restricted information" when saving to flash?  Give two reasons. (teams of 5 or more give 3 reasons)

Hash is more suitable for encrypting restricted information.

    1. Since restricted information needs high level protection, by using hashing encryption, which is irreversible, the information can only be available to be checked, not modified, thus can be protected suitable.

    2. Hashing has a low level of complexity when the crypto key is not easily exposed or guessed at the same time.

  1. The CC2420 wireless chip contains an AES coprocessor.  What type of crypto technique is it?  Is it suitable for wireless transmission?  Give two reasons (teams of 5 or more give 3 reasons)

For CC2420 wireless chip contains as AES coprocessor. The crypto technique is symmetric key. It is suitable for wireless transmission for two reasons.

    1. Since 2002 in IEEE 802.15.4 AES became standard for encryption to protect sensitive information by all U.S. government organizations and protocol for the ZigBee wireless communication protocol makes AES ideal for use in WSNs

    2. CC2420 has property of short latency if channel utilization is low and effective for power managing transmitter (Tx)

3. Where to Encrypt (8 points)

  1. List all combinations of encryption you may need to apply for storage and transmission.

    1. Storage: Hash; Transmission: Asymmetric key;

    2. Storage: Hash; Transmission: Symmetric key;

    3. Storage: Hash; Transmission: Hash;

    4. Storage: Asymmetric key; Transmission:Hash;

    5. Storage: Asymmetric key; Transmission: Asymmetric key;

    6. Storage: Asymmetric key; Transmission: Symmetric key;

    7. Storage: Symmetric key; Transmission: Hash;

    8. Storage: Symmetric key; Transmission: Symmetric key;

    9. Storage: Symmetric key; Transmission: Asymmetric key.

  2. What would be your choice of combination and why?  Give two reasons (teams of 5 or more give three)

Choice storage is Hash and transmission is Asymmetric key.

    1. Asymmetric key has private and public key, and with the private-public key mode, users could gain access to the database, while others need two keys to gain the access.

    2. Hash good for storing restricted data since it is irreversible.

Assignment 5: Layers of Communication

1. HAL (Hardware Abstraction Layer)

(4 points) On slide 10, the sample driver code calls

instead of reading/writing the SFRs listed on page 9.  Why is this a good idea?  Give two reasons (for groups of 5 or more, give 3 reasons).

Reason#1:

If you want to put code to different machines and different architectures, you only need to change hardware-abstraction layer in order to be the way to the specific to micro-controller. Therefore, the parts in driver does not need to change too much, because it calls some functions.

Reason#2:

There are a lot of work which is same from different machines and architectures, but they have different names of registers. If reading and writing the SFRs which list on the slide, it will be an onerous work due to each register needs to be very specific.

 

2. Shared Connection

In the Attendance System example from Lecture 5, the LCD and RTC share the same I2C bus connection.

2.1  (4 points) On slide 19, it shows that there is only one copy of the I2C driver that is called by both LCD and RTC.  Explain why this is a good idea (compared to having separate copies of I2C driver for LCD and RTC).

Several options 1.make driver specific to RTC and  another copy to LCD. Option 2: use same set up of drivers to RTC and LCD. Many reasons to response why is a good idea for both LCD and RTC.

  1. No reason to rewrite I2C for different device

  2. Easy for debugging

2.2 (4 points)  "Reentrance" of I2C driver code is described as one of the potential problems that should be addressed.  Explain what reentrance means, how it can happen, and how it can be addressed.

Reentrance means before function called is finished another copy of the same function is invoked. Reentrance could happened such as something interrupt in the middle of talking to RTC, but operating system trying to access LCD. Touching to the same hardware and something bad will happen due to the reason of different speed of micro controller and I2C and Micro controller is faster than I2C. so reentrance may happened and lead to the result of will be not expected. Because they share the resource, so reentrance may happened. So want to stop one of them in the middle of process. Also, some global variables may get updated improperly. To address so one of the device pass Driver and pass I2C controller, but micro controller speed is faster than I2C, so during the middle of passing the result to the address reentrance happened and another signal come of the signal will stop the previous signal.

 

3. Protocol Stack in Network Modules

3.1 (6 points) For the first two WiFi module (Marvel 8 and TI CC3000) on slide 43 from Lecture 5, explain if it is possible to replace the RF module (over SPI) on slide 31 with this WiFi solution and connect it to the ATmega8 MCU?  Why or why not?  Hint: consider the following:

  • Is the built-in hardware controller (e.g., UART, SPI, I2C, etc) available on the MCU? (because it is already taken by another device? because it is not available on the ATmega8? etc)  If not, can the interface be implemented in software (firmware) using GPIO pins?

  • Even if the hardware pins can be interfaced, does the RF solution require a driver, a protocol stack, etc to be implemented on the ATmega8 MCU for it to work?  Do you estimate the ATmega8 to be able to handle it?

 

In the ATmega8 MCU, a SPI process is already built-in in the board. However, UART a three-pin process are not available on the board. The Wi-Fi based on 88W8764 technology can use UART, 3-pin or 4-pin to connect to a powerful CPU, so 88W8764 can be used to replace RF module through the 4-pin, i.e. the SPI bus, to the powerful CPU. However, CC3000 is not available because it can only be applied through UART, which is not built-in inside the ATmega8 MCU. On the other hand, a software UART can be implemented on GPIO, but three times more execution time shall be needed.

 

3.2  (2 points)  Explain what "single-chip configuration" means for the CC3200 (Links to an external site.).  What would the resulting (high-level) schematic look like if it works?  If not, why not?  You don't have to draw the schematic - just describe it.

With CC3200 embedded on the ARM board, the chip can function as wireless MCU. The WIFI b It would be a single board with chips like flash and Wi-Fi modules integrated in it. The single chip would have TCP/IP protocol and Wi-Fi Directly.

 

 

Assignment 4: MCU-Based System Design

1. Choice of MCU board (5 points)

  1. a link to the specification of the board.  Validate your links before submission!

    1. https://www.arduino.cc/en/Main/ArduinoBoardUno (Introduction)

    2. https://www.arduino.cc/en/uploads/Main/Arduino_Uno_Rev3-schematic.pdf (Schematic)

 

  1. a summary of the MCU on the board, similar to the slide titled "Case Study MCU: ATmega8"

8-bit MCU by ATmega328P:

  • 14 digital input/output pins, 6 analog inputs, a 16MHz quartz crystal, a USB connection, a power jack, an ICSP header and a reset button

  • 32 KB flash (0.5 KB used by bootloader), 1KB EEPROM, 2KB SPAM

  • 6 PWM channels

  • 6 channels of 10-bit ADC

  • 0-16 Mhz, 7-12V supply

  • Power: Active 50 mA, Idle 20mA, Off 0.5uA

  • LED Builtin: 13

  • Weight: 25 g

  • Size(Length*Width):68.6 mm*53.4 mm

  1. a summary of features supported by the board, including connector or break-out areas, built-in converters, input/output features (buttons, keypads, LEDs, LCDs, buzzers, etc)

    1. Input/Output features: a) 14 pins, including 6 PWM outputs, 6 analog inputs.

b) A reset button.

c) Built-in LED controlled by pin 13.

     b. Connector: the USB connector (5V), POWER connector.

     c. Built-in converters: a USB-to-serial converter.

 

  1. a list of reasons why you think the board is a good choice.

    1. Regular USB port

    2. Processor is ATmega328P ==> Frequency is high

    3. Low cost

    4. Stable

2. Choice of Peripherals (10 points)

Find each of the following categories of peripherals, list one product can be interfaced to the MCU boards that you describe in Part 1 above.

  1. sensor (mag stripe, bar code, RFID reader, etc)

  1. a link to the data sheet https://www.parallax.com/sites/default/files/downloads/28140-28340-RFID-Reader-Documentation-v2.3.pdf   

  2. In order to connect to the UNO board, the input voltage should be 3.3V, and the frequency is around 13.56MHz. The connection should also follow the below rules.

Pin Wiring to Arduino Uno

SDA------------------------Digital 10

SCK------------------------Digital 13

MOSI----------------------Digital 11

MISO----------------------Digital 12

IRQ------------------------unconnected

GND-----------------------GND

RST------------------------Digital 9

3.3V------------------------3.3V (DO NOT CONNECT TO 5V)  

 

  1. communication (wireless module)

    1. a link to the data sheet http://www.nordicsemi.com/eng/Products/Bluetooth-low-energy/nRF8001(see Specification column)

    2. Connection: UART (Universal asynchronous receiver/transmitter)

 

  1. data storage (SD card, USB flash drive, etc)

    1. A link to the data sheet: https://cdn-shop.adafruit.com/datasheets/TS16GUSDHC6.pdf

    2. Communication between controller and SD card uses SPI which takes digital pins.

 

  1. text LCD

    1. A link to the data sheet : https://developer.mbed.org/components/HD44780-Text-LCD/

    2. Connection:

Pin number TextLCD pins    mbed pins

1     GND 0V

2     VCC 3.3V

3      VO 0V, via 1k resistor

4      RS p15

5     RW 0V

6       E p16

7       D0 not connected

8       D1 not connected

9       D2 not connected

10       D3 not connected

11       D4 p17

12       D5 p18

13       D6 p19

14       D7   p20

 

  1. Keypad

    1. A link to the data sheet:                                   http://www.futurlec.com/Keypad4x4.shtml

    2. Connection:

OUTPUT PIN NO. SYMBOL

1 ROW 2

2 ROW 3

3 COL 1

4 ROW 4

5 COL 2

6 COL 3

7 COL 4

8 ROW 1

 

  1. power on/off

    1. A link to the data sheet:     https://datasheets.maximintegrated.com/en/ds/MAX16054.pdf   

    2. Connection: Power already in the UNO

 

  1. general button (software defined behavior)

    1. The general button is SPST.

    2. Connection: The button should be placed between the pin 2 and 5V and a resistor functioning as a protection should be placed between pin2 and GND.

 

  1. LED (software defined behavior)

    1. A link to the data sheet: http://www1.futureelectronics.com/doc/EVERLIGHT%C2%A0/334-15__T1C1-4WYA.pdf

    2. LED already built in  the UNO

 

  1. real-time clock

  1. The main component connected to the UNO in the real-time clock is the LCD screen, so the data sheet of a standard LCD 16*2 screen is attached: https://www.adafruit.com/product/181

  2. Use SPI bus technology. It also needs encoding in the UNO board to control the clock.

 

  1. power source

    1. Built into the MCU.

    2. The board has a 5V built-in power source, and a Vin for external power (7-12V).

For each peripheral, include

  • a link to the data sheet, unless it is a commonly known part such as a common switch (describe whether it is SPST, SPDT, etc) or a pushbutton, an LED, or a conventional keypad (give number of rows and columns).  If it is a peripheral that is built in the MCU (not the board), state so.

  • describe how the peripheral should be connected to a control in general, or if it is already built in the MCU (not the board).  For example, is it UART? RS232? I2C? SPI? SD (4-bit data or SPI compatibility)? analog signal (range of voltage, current, or both)?  USB (which profile)?  GPIO (on/off? pulled-up? pulled-down?)?  Is there any encoding or decoding required (by the MCU)?  voltage up/down conversion?  level shifting?

3. High-level Schematic (5 points)

Draw the high-level schematic of how you connect the peripherals to the MCU, in a way similar to how the block diagram is built up in the lower left corner of slides from "Example: ID card scanner -- Sensor" to "Example: ID card scanner -- Power Source" (but take it to completion).  In the center of this schematic, show the CPU block with the pins (or ports) available to connect.  You can usually find this picture in the data sheet of the processor.  Connect each peripheral to the MCU by wire.  e.g., I2C needs SDA and SCL; SPI needs SCK, MOSI, MISO, and a separate /SS per peripheral; UART needs TxD and RxD, etc.  You may neglect power and ground to the peripherals, except for the regulator or power supply component.  Labels the wires or groups of wires accordingly.  Some peripherals may be able to share certain wires.

You may also insert converters, mux/demux, level shifters, amplifiers, and other interfacing or bridging components in case you cannot connect the peripherals to the MCU using the standard features.

 

Assignment 3: Specification - early stage

1. Structural Specification

捕获

1.1Team Effort

Controller—Fingerprint Scanner:

The controller is one of the key step that compares the feedback from the server with the reference which is class number and makes the decision to record attendence. Therefore, the card’s reader seems like the controller in the whole attendance system.

Actuator—Finger printing:

The actuator is a device or mean that can influence the output. Hence, finger printing from different students is the actuator in the attendance system.

Process—Data collector and sender:

The process is the output of process is to be controlled. Therefore, data collector and sender like the process in the system, because data collector and sender, as like name, need to collect data from scanner and sent the data to the given website.

Sensor—Server:

The sensor is a device or mean that senses the output and feedbacks it to the controller in order to check the correctness in the system, so the server plays the role of sensor in the whole attendant syst1.

1.2 Individual Effort

The sensor should be underspecified feature because after processing the data the sensor should check the status of the testing model and adjust the position. However, the system desires to get a specific value, people may want an easy model to get the figure print fast than keep adjusting the position over and over again. The most important part is fast and easy. (Xiaoran Li)

The scanner is underspecified because the scanner is only defined as the machine which is used to scan, but the inner program types have not been decided nor the size or material of the scanner. It is a good idea to not specify the outfit of the machine, including the color or outlook. The size should be decided after the whole inner chips are decided, and the material should be decided according to the working condition of the machine. However, it is a good idea to specify the program type of the scanner because it is out of importance even in the whole program. The speed of the system is highly depended on the system. (zhilai shen)

A deliberately underspecified feature is that the requirement only gives the description that the device needs to be carried easily and have a quick response. The advantage of this is that it gives the team freedom to discuss and come up with all kinds of options to choose from what kind of product it would be to how it works. For example, it can be a pin that students can attach on their bag, or it can be a sticker that they can stick on their arm. It opens up the potential of the system, gives the team a chance to compare all possible solutions, and get one solution that works best to reach the requirement. (Yishan Ma)

Data real time processing (deliberately underspecified feature): each student can check their attendence on the given website after scanning his or her fingerprint from the scanner. From this deliberately underspecified feature, it is not hard to find that there are a lot of benefits from this good idea at early stage of the design, because this deliberately underspecified feature makes the attendence system have an advantage in selling point, because students, the major group of users, do not need to worry that the technical error from the attendence system gets them in trouble from attendence system by checking the status from themselves on given website.(Ningfeng Zhang)

2. Behavioral Specification

 

2.1 Team Effort

Configuration:

Administrator and user setup: The information of the students should be collected and put into the database in advance.

Device setup: The device should be connected to the database and can be able to change the status in the database.

Deployment:

Scan fingerprint: Choose the finger recorded in the database to do the scanning.

Upload data: Using Wi-Fi to connect the scanner to the server.

Subsystem:

The system should have a database that can change according to the receiver and show the status display on Apps that build to for students to check their status and report error if occurs.

2.2 Individual Effort

1. The system should have a mobile App that can help students check their attendance status after they log in to the system, the App needs to be connected to the database, and updates at the start of the class every ten minutes, allowing students to check their status and make sure they can get a chance to prove their attendance to the TA during class in time. (Yishan Ma)

  1. The local behavioral specification of receiving data record into databask, checking validity and sending acknowledgement to one of the subsystems involved in the global behavioral specification of transaction centric in database in database.

捕获

In this flowchart, first of all, students need to scan their fingerprint into scanner. Therefore, the scanner can receive the data and send them to database. By comparing the original data, such as students’ ID, class number and fingerprints, from the database with the data from input, the system need to make decision to whether sending acknowledgement on website or rescanning the fingerprint from students.(ningfeng Zhang)

  1. When data are received from the fingerprint scanner machine, the server begins to check if the data can be found in the system. If the fingerprint can be related to an existing fingerprint in the database, the system records that the owner attends the class under the corresponding dates. If the data is not found, the fault fingerprints will also be recorded in case there is someone who wants to sign in for others. Whether the data is found or not, the results will be sent back to the fingerprint scanner to show students the results(zhilai shen)

  1. After registered on the computer students would like to check their status if success to register on the website. If the student finds their status did change then they are good to go. Otherwise they may want to re-do all the steps again in order to get success registers. (Xiaoran Li)

  1. Other Aspects of Specification

Mechanical: the size of fingerprint detect machine is a box around the size of 10cm*20cm*20cm. The weight should be around 1 kg, which is light and easy to be carried. In order to protect the machine from dropping damage, a metal case can be provided outside the machine. However, the machine should be kept away from water or any liquid.

Maintenance: The battery of the fingerprint scanner cannot be exchanged easily because we would like to use rechargeable lithium battery, but it is still replaceable in case there are some damage or aging problems on the battery. At the same time, the inner components are soldering on the circuit board, so if these components are damaged or aged, the whole circuit board should be replaced. The screen, on the other hand, can be replaced.

The mechanical specification shall have influences on the maintenance. Since the machine is as light as 1 kilogram, the maintenance will be easy because the detector can be lifted up without much effort. Since the fingerprint detector is not waterproof, there will be huge damage exerted to the whole machine, and the maintenance will be quite complicated because broken parts should be found out and identical substitute shall be produced and replaced as soon as possible.

Performance: When the machine is trying to detect for finger print, we desired it runs can be fast. The speed depends on dealing data’s ability of a sensors. In this case, for figure print we want the data can be less than 0.1 seconds and send to the computer or other electronic devices.

 

Assignment 2: Application and Technology Exploration

1. What are the possible technology options for taking attendance?

Explanation(option 1):In this method, the attendance system relies on wireless equipment or smartphone. By use the Wireless ID-card reader or smartphone to check attendance from class, students just need to show their individual and exclusive student cards or scan the special QR-code from each different lecture.

Explanation(option 2): Radio Frequency based Identification Tokens work by sending and receiving signals through electromagnetic fields, which have the ability to activate the process of identifying and keeping track of objects with the specialized tags attached to them. Typical commercial products using this technology includes Near Field Communication (NFC) and Bluetooth Low Energy (BLE). Practically speaking, the tokens can be worn on wrist or be pinned on bags, and when the people with the token walks pass by the signal receiver, it can record the student’s attendance.

Explanation(option 3): In order to check in. there is one option based on biometrics. We can use facial recognition, figure print or even retina recognition to determined who are they.  The definition of facial recognition is using camera to calculate people’s face shape and usual to check on their eyes and nose. After detect people’s face transfer the image as signal and pass through the internet and figure out who are they. By using this method would be easy to find out a group of people which can use in many areas such as concert or some events.

Explanation(creative idea): Based on biotechnology, we can recognize people by analyzing their DNA and thus figure who they are.

2.  For each technology option above, discuss the pros and cons of each 

Option 1:

Convenience: It is pretty simple and convenience for students to swipe their ID-card or scan QR-code before taking each class, because students do not need do any complex steps in this attendance system. Describing it differently, swiping or scanning does not cost a lot of time from students, so people do not need to worry that it does not convenience in this way.

Efficiency: it is not really effective in some different situations from this way. For example, swiping and scanning only get the date from student card or smartphone, but, inevitable, they cannot check the truth of this movement’s performer. Therefore, students’ friends are able to take the place of students who truly take class.

Confirmation: it is very fast for students to confirm their signing status, because each student gets the feedback from their smartphone or reader after scanning the QR-code or swiping the ID-card.

Completeness: it is not quite complete if only few readers from the way of swiping, because, as I mentioned before, it still takes a few time to swiping. However, it is quite complete for smartphone’s scanning if the professors put a huge QR-code in the beginning or in the end of lecture.

Authenticity: Both the scanning the QR-code from smartphone and swiping the ID-card from reader are easy for students to play hooky to ask another student to sign in and sign out, because students can give their smartphone or ID-card to others easily.

Sensitivity: it is sensitive from scanning or swiping to detect the action of sign-in or sign-out, because the machine and smartphone are able to get the data from ID-card and QR-code accurately and precisely from different time.

Specificity: it is also accurate for the sensor in reader and smartphone identify the person’s data through the ID-card and QR-code, because each student’s IP address from smartphone and ID-card are entire different.

Security: it is safety.

Cost: The most expensive part of swiping ID-card to check attendance is the reader, because each reader might work hundred times each day. Hence, school need to spend a lot of money into maintaining. However, the other way of scanning the QR-code does not cost too much, because students and school do not need to purchase any other device.

Option 2:

Convenience: Tokens can be detected easily, students just need to walk pass by the receiver at the normal pace, and then the attendance can be detected and recorded automatically, thus there is no time wasted on the process of taking attendance.

Efficiency: Tokens can parallel the detection process, and have the ability to recognize several tags within the range and record them all at once. The range of the detection should be normally within 50 meters, the limitation may vary based on the signal strength of tokens and receivers.

Confirmation: The response time of confirmation can be rather short, since there can be led lights or buzzers installed on the tag to indicate the status of the students, whether the movement has been recorded.

Completeness: Based on the tendency of the signal strength, the receiver can recognize the direction which indicates the students’ status of checking in or signing out.

Forgiveness: It will not work if the tags were forgotten. If the units broke, there need to be a new receiver to replace the broken one.

Authenticity: It is rather easy for students to forge their attendance by asking another students to bring their tags to class, but there is a possible solution to set the closest distance limitation between each individual tag to prevent students from taking two or even more tags at once.

Sensitivity: RFID Tokens have a relatively high sensitivity, since the detection range is from 0 to 600 meters, and the closer it gets, the faster it responses.

Specificity: The sensor will detect the tag individually by its own Universally Unique Identifier (UUID), and link the UUID directly to the student in the database.

Security: If the receiver or the database of the system were to be tempered or damaged, the whole system will be extremely vulnerable, since the record can be changed and forged easily.

Cost: The receiver may cost $100 or more, each tag for individual students may be $5, so the whole cost of the system may be determined by the capacity of the class.

Option 3:

Convenience: For the idea of biometrics can be classify. As facial recognition people need to remove their glasses and hat in order to figure out the result. For figureprint would be easier because people only need to put their hand on a machine, but people need to remove their glove from their hand if they have it. Last but not least is retina recognition people need do nothing but remove their glasses to help camera shoot on their eyes instead of get reflection from the light. Overall, this idea is convenience for big group of people.

Efficiency: It is possible to parallelize the detection process. As long as the computer calculate fast enough then can be really efficiency. The project of figure print does have limit, because most of the machine cannot scan figure print fast enough. Others would be easy and efficient.

Confirmation: For figure print I would expect for 2minutes to confirm a person, if we have more equipment would be easy, others will depend on the speed of computer should be less than 10s in Matlab because it is not a hard program with huge amount data to calculate.

Completeness: Yes for all these three can avoid long line to exit by setting up enough machine. For facial recognition and retina recognition will be less time than figure print.

Forgiveness: if all the data has been recorded, then forgiveness will be higher

Authenticity: yes, this one will be easy for student who have been signed or not. Student needs to bring nothing because everything will be on student’s body.

Sensitivity: The sensitivity will be really high, but the sensitive depend on the equipment.

Specificity: because this technology is based on biosystem. Before machine learning would be bad for accuracy. If the group did amount of training and practice for the camera. These would be really accurate. Even twins they are not 100% same.

Security: Because it must be trained with lots of data, So the problem may cause during training process.

Cost: The cost for this technology would be the same price of the camera or 20 bucks for one figure print machine. All in all, it is a cheap and efficient way to detect.

Creative Idea:

Convenience : it only needs student to provide their DNA, including issues, hair, spit or blood. It needs no extra ID to record.

Efficiency: The machine has limited range. In fact, students have to put their “item” inside the machine, so the range is the least to concern. 

Confirmation: the confirmation may be slow due to different kinds of machine. The average speed of DNA test is around 10 to 30 minutes, so it will consume a lot amount of time, especially for those large size classes.

Completeness: the machine can only detect who signs in, but cannot distinguish whether the students are coming or leaving.

Forgiveness? As DNA are required, the forgetting or missing can never happen unless something serious happens and cause one student to change his or her overall body. However, the machine can be complicated, so the repairmen and replacement will be somehow difficult.

Authenticity? Due to the uniqueness of DNA, it is hardly possible for students to sign in for others, and it will cause little injuries because DNA can be provided in many ways.  

Sensitivity: the machine can work only if DNA carriers are placed into the machine, and no one will place their DNA into the machine out of no reason, so whenever the machine begins running, it can define the owner of DNA wanting to be recorded.

Specificity: The greatness of the DNA test is that the accuracy can reach over 90% percent, so there is no need to worry about whether the machine can identify the person or not.

Security: The machine nearly has no damage or risk for security because it is inhackable from outside.

Cost: A high-end DNA test machine is expansive by all means.

3. What do you think the selling points for your team's Class Attendance System should be, if you were charged with building such a product?

Option 1

Scanning the QR-code by smartphone is portable, inexpensive and low-power, because students do not need to bring any other device into class, and school also does not need to set up any equipment.

The order of these properties is inexpensive > portable>low-power. The reason of choosing the properties of inexpensive at first position is that scanning the QR-code by smartphone is the most convenience and environmental way to check students’ attendance without any huge investment.

Option 2

Portable: The RFID tokens can be carried around easily.

                Inexpensive: The cost of the whole system is relatively not that expensive.

Low-power: The technology of BLE makes it low power consumption and low cost, since BLE does not require frequent battery replacement.

Secure: The system does not contain personal information, so it will not be a violation of privacy.

Scalable: It is scalable, since to add more students in to the system, it only requires adding information in the database with students’ names, IDs, and the UUID of the tags.

Low Latency: The system have a rather short time of delay that will not even be noticed.

Reliable: The system if maintained properly, can function reliably.

Rank: Cost> Authenticity> Security> Efficiency> Convenience> Sensitivity> Specificity> Completeness> Forgiveness

Reason: Since the system is made for taking attendance is class, so the cost should not be to high, it should be something that the students and the school can both afford. Another important factor to consider is the authenticity, or the system would lose its meaning of even exist. Also, security regarding privacy is also important. Since forgiveness only happen occasionally, so it can be dealt easily. And other factors are something to consider after the three main factors have been evaluated.

Option 3

Portable: camera is easy to be carried around.

Inexpensive: To build the model is not expensive

low-power: camera cannot use high power to control the system

secure: only read people face and eye. Can be bit dangerous because can find all their information by internet

scalable: yes, only need to update the database. No need to worried about others.

low latency: The system’s latency really depends on the computer they use. Overall the system is fast

reliable: it is reliable as long as update database frequently.

For this project would rank as sensitivity> security> completeness>cost> efficiently>specificity> Authenticity>convenience> forgiveness> Authenticity. Because this is biometric system more important is to catch the image accurate, when we accurate a person we also want to make sure their information is safe. For most of the student they would care about the completeness so we do not miss any one. Then would be cost because if build a simple module by using huge amount of money would not be necessary. The last factor we should care is authenticity. Because when we detect a student they do not need to prepare for others only themselves have to show up. So those reasons above become the fact that how we ranked

Creative Idea

The most important feature for an attendance system is its reliability because the system should accurately recognize who the people are. The DNA-based detect system can guarantee its accuracy as well as keeping a low latency and a high security because DNA is unique for different people, so it will be impossible to be hacked by others or mistakenly recognize individuals as someone else. Moreover, as the technology develops, the speed of running the system will rise in a large scale.

 

Assignment 1: Team Formation

1. Team basics

1.1 Project title

As we are going to do a robot that can control image processing using deep learning idea. So the project

title would be Auto Pilot.

1.2 name of your team

Team name is: Project Group 41

1.3 URL

http://srproj.eecs.uci.edu/projects/project-41

 

2. Team composition

2.1 Name and Major

Xiaoran Li

Majors: Department of Electrical Engineering and Computer Science

Skills and experience: C/C++, Python, Matlab, Mathematica, AutoCAD, Solidworks, Participated in

many robotics competition.

Technical aspects: Can help team runs fluent, and creative new ideas for design, Also can code in Matlab

for signal processing meanwhile can transfer matlab to Python and using Python or Matlab to control the robot

Roles on team: team captain

Zhilai Shen

Majors: Department of Electrical Engineering and Computer Science

Skills and experience: Matlab computing, OrCAD simulation, Mathematica management, C-programming.

Familiar with all kinds of electrical components. Used to participate in Unmanned Ground Vehicle and Aerial Wind Turbine projects.

Technical aspects: can contribute to construct sound Matlab codes and process signals transferred to the system. He is a quicker learner, so he can understand new knowledge fast and explain to the group.

Roles on team: hardware

Ningfeng Zhang

Majors: Department of Electrical Engineering and Computer Science

Skills and experience: C program, Matlab, Mathematic, photoshop, Web design

Technical aspects: program design, data collection, data acquisition

Roles on team: software

Yishan Ma

Majors: Department of Electrical Engineering and Computer Science

Skills and experience: Familiar with C Programming, Assembly Language, and Matlab. Participated in research regarding embedded image compression and transmission system through Wi-Fi, and research regarding Bluetooth communication and ibeacon.

Technical aspects: Be collaborative and communicative with partners, and be willing to learn new knowledge. Have a clear understanding of the basic concepts of the project, and be creative about new ideas, and take part in every aspects of the project, both software and hardware parts.

Roles on team: network

2.2Team information

Strengths of this team: This is an active team. We communicate with our mentor before the quarter start and negotiate our idea with the professor. The most important thing is the topic match with the professor’s interest field. Three of us are interest is signal processing and one was working on the communication. For both specializations required a certain amount of programming skills. Therefore, for our senior design we are going to be easier for programming part as long as we figure out how to detect the signal from light.

 

3. Mentor

3.1 Name and Major

Professor Glenn Healey is a EECS professor.

3.2 Why

When we are picking up our mentor we had a quick discussion. Because 3 of us interest in signal processing so we are looking for a professor who also belongs to this major field. Starting up with professor’s paper and talk with them because of pro. Healey has really sharp understanding of image processing. Therefore, we sent him email and talk with him early. Because we are working on the project of image processing, we expect that professor can give our guide to help us understanding the paper’s formula that we have difficulty with.

3.3 other professors

We have talk with two other professors A. Lee Swindlehurst, a EECS professor. We met in the elevator and have asked him about to be our mentor. Unfortunately, his interest is massive Mimo info point. So for our project he is not the best person to talk with, but he did not let us down, because he introduces professor Anandkumar to be our mentor. Not only meet in person but also by email. He did a great job.

Animashree Anandkumar, a EECS signal professor. After introduced by Professor Swindlehurst, so we

sent her an email. What she told us is she is not available to guide any team and be their mentor. Also she did not introduce any other professor that is good for our project. Have to say she did make us feel down. After her rejection, not talk with her anymore.

 

4.Project idea

4.1 project idea

The project is trying to build a robotics that can run automatically which means when receive the green

light signal the robot would run, when receive red light signal the robot would stop on a certain line.

4.2 How this idea come up

The original idea comes from student which is facial recognition by using probability idea. The robotics be running, but people may miss the world that on the side road. So using image processing idea to take a quick shoot for image and calculate the probability to find out words which determined what is the next step for cars moving. Professor Healey helped us to simplify the idea and become the idea of when receive a red light signal the robotics stop and green light signal the robot would keep running.

4.3 Why do you think is a good project idea

We believe that this is a good project idea, because it can approve automobile’s automation. In the market, many companies have similar idea such as Tesla they have a similar idea for their cars. So the car be able to run without human being. If the idea comes true, we believe people would not be afraid of about driving and no tickets anymore.

4.4 Skills

For this project, we do need lots of coding skills and high understanding of signal processing. Since all of us have similar skills so there is no such as who will work in certain aspects. It bases on what we need. If the skill not covered by the team, we will seek some help from website to learn it.

4.5 Multidisciplinary

For our project, we are combining the knowledge between Electrical Engineering and Mechanical Engineering. The robotics that design we need to have certain knowledge about Mechanical Engineering such as balancing. Since Xiaoran has experience about robotics design. So far we do not need any other people from a different discipline. Since we are detecting signal for red and green. We need to figure out the wavelength for each color. Because the wavelength is common knowledge we do not need any technical skills within the team as well.