design specifications - simon fraser universitywhitmore/courses/ensc305/projects/2009/... · 2010....

32
5 March 2009 Patrick Leung School of Engineering Science Simon Fraser University Burnaby, BC V5A 1S6 Re: ENSC 440 Design Specifications for the DTech Reminding System Dear Mr. Leung: The document included outlines the design specifications for goldFish Technologies’ DTech Reminding System. We are designing and implementing a device that will scan a person as they are leaving their home, check for important items that they have forgotten to bring with them, and alert them of these items. Our design specifications describe how we plan to implement hardware and software solutions to meet the proof of concept requirements described in our functional specifications document. The specifications will also be used by the members of the team to direct design, development and testing efforts. goldFish Technologies is built of five motivated and skilled fifth year engineering science undergraduates: Owen Lin, Sami Nguyen, Sharika Salim, Jeremy So, and Christopher Yao. If you have any questions or concerns please feel free to contact us at ensc[email protected]. Sincerely, Sharika Salim Chief Executive Officer goldfish Technologies

Upload: others

Post on 29-Jan-2021

2 views

Category:

Documents


0 download

TRANSCRIPT

  •   

     5 March 2009  Patrick Leung School of Engineering Science Simon Fraser University Burnaby, BC V5A 1S6  Re: ENSC 440 Design Specifications for the D‐Tech Reminding System  Dear Mr. Leung:  The document  included outlines the design specifications for goldFish Technologies’ D‐Tech Reminding System. We are designing and  implementing a device that will scan a person  as  they  are  leaving  their  home,  check  for  important  items  that  they  have forgotten to bring with them, and alert them of these items.  Our design  specifications describe how we plan  to  implement hardware and  software solutions  to  meet  the  proof  of  concept  requirements  described  in  our  functional specifications  document.  The  specifications will  also  be  used  by  the members  of  the team to direct design, development and testing efforts.  goldFish Technologies is built of five motivated and skilled fifth year engineering science undergraduates: Owen  Lin,  Sami  Nguyen,  Sharika  Salim,  Jeremy  So,  and  Christopher Yao.  If  you  have  any  questions  or  concerns  please  feel  free  to  contact  us  at  ensc‐[email protected].  Sincerely, 

     Sharika Salim Chief Executive Officer goldfish Technologies  

  •   

    Design Specifications: RFID-Based Reminder System

    Project Team: Shar ika Sal im Sami Nguyen

    Jeremy So Chr i s Yao Owen L in

    Contact Person: Shar ika Sal im ensc-goldf i sh@sfu .ca

    Submitted to: Mr. Patr ick Leung Mr. Steve Whitmore I s sue Date : March 5, 2009 Revis ion : 1 .0

  •   

    i | P a g e   

    Executive Summary   

    The Best Reminder Before Leaving Your Home  As most people have experienced the inconvenience of forgetting something important while leaving for school, work, or even social events, the creation of a reminder system that integrates seamlessly into everyday routines would save time and even money. The recent advances  in  communication  technology have  created  various opportunities  for innovative designs and solutions. Taking advantage of this, we at goldFish Technologies are probing various possibilities to create products for the sake of easing the everyday lives of our customers. Our invention, D‐Tech, seeks to integrate technology to create a reminder  system  that  is able  to  scan and  identify a household member as  they  leave their home. In the case that the family member leaves something of importance behind, the system would notify them. We hope this solution will bring ease of comfort to those who, due to various reasons, often forget items of importance.  The D‐Tech system consists of two main components: the Central unit and the Detect‐and‐Scan unit. These  two units are  installed at  the main household exit and serve  the following functionalities:  

    ‐ Detect and identify a user as they are leaving their home. ‐ Scan for tagged items on the user and notify them if any items are missing. ‐ Display relevant to‐do tasks and notes to the user. ‐ Allow touch‐based user interactions for task and item input. 

     In  addition  to  these main  components,  a  standalone  accessory  to  the D‐Tech  system called the Anywhere Access Form, gives users an alternative method for  item and task input to the D‐Tech system database. It is a web‐based application that can be accessed over the internet by the user’s own computer.   This  document  presents  the  design  specifications  of  the  D‐Tech  reminder  system. Continuing from the functional specification document, we outline what design choices were made to ensure that functionality requirements were met.       

  •   

    ii | P a g e   

    Table of Contents  Executive Summary ....................................................................................................... i List of Figures ............................................................................................................... iv List of Tables ................................................................................................................ iv Glossary ....................................................................................................................... iv 1. Introduction ............................................................................................................. 1 1.1.  Scope ................................................................................................................. 1 1.2.  Intended Audience ............................................................................................ 1 

    2.  System Requirements............................................................................................ 1 2.1. Understanding the User .................................................................................... 1 2.2.  System Overview .............................................................................................. 2 

    3.  Overall System Design ........................................................................................... 3 3.1.  System Design Overview ................................................................................... 4 3.2. Hardware Design Overview .............................................................................. 4 3.3.  Software Design Overview ................................................................................ 5 

    4.  Hardware System Design ...................................................................................... 6 4.1. Detect and Scan Unit ........................................................................................ 6 

    4.1.1. Motion Detector ........................................................................................ 6 4.1.2. RFID Scanner .............................................................................................. 7 

    4.2. Hardware Communication Hub ........................................................................ 9 4.3. Central Unit Hardware ...................................................................................... 9 

    4.2.1. Development Board .................................................................................. 9 4.2.2. Power Requirements ............................................................................... 10 

    5.  Physical System Design ........................................................................................ 10 6.  System Software Design ...................................................................................... 12 6.1. Anywhere Access Form ................................................................................... 12 

    6.1.1. Overview .................................................................................................. 12 6.1.2. Online Web Server .................................................................................. 13 6.1.3.  Security .................................................................................................... 14 6.1.4.  Information Database ............................................................................. 14 6.1.5. Usability Design ....................................................................................... 15 

    6.2. Central Unit Software ..................................................................................... 16 6.2.1. Entry Database ........................................................................................ 16 6.2.2. Database Structure .................................................................................. 17 6.2.3. Entry Addition Algorithm......................................................................... 18 6.2.4. Entry Comparison Algorithm ................................................................... 18 6.2.5. Entry Deletion Algorithm ......................................................................... 20 

    6.3. Graphical User Interface ................................................................................. 21 7.  System Test Plan .................................................................................................. 22 7.1. Unit Tests ........................................................................................................ 22 

  •   

    iii | P a g e   

     7.1.1. Motion Sensing Activation Test ............................................................... 22 7.1.2. RFID Scanning Test .................................................................................. 22 7.1.3. Anywhere Access Form Test .................................................................... 22 7.1.4. Central Unit Data Collection Test ............................................................ 22 7.1.5. Database Input and Organization Test .................................................... 23 7.1.6. Database Access and Modification Test .................................................. 23 7.1.7. GUI Command and Navigation Test ........................................................ 23 

    7.2.  Integration Tests ............................................................................................. 23 7.2.1. Online Input Entry Stage ......................................................................... 23 7.2.2. Home Input Entry Stage .......................................................................... 23 7.2.3. Motion Sensing Activation Stage ............................................................ 24 7.2.4. RFID Scanning Stage ................................................................................ 24 7.2.5. Reminder Stage ....................................................................................... 24 

    8.  Environmental Considerations ............................................................................ 24 9.  Conclusion ........................................................................................................... 25 10. References ........................................................................................................... 26 

  •   

    iv | P a g e   

    List of Figures Figure 2.1: System Diagram of D‐Tech Unit ........................................................................ 2 Figure 3.1: Hardware Overview ........................................................................................... 5 Figure 3.2: Software Overview ............................................................................................ 5 Figure 4.1: Detect and Scan Interactions ............................................................................ 6 Figure 4.2: Sensor Switch Circuit Schematic ....................................................................... 7 Figure 4.3: Application Schematic for the TRF7960[2]........................................................ 8 Figure 4.4: Communication Overview ................................................................................. 9 Figure 4.5: MC9328MX1 block diagram[3]........................................................................ 10 Figure 5.1: Central Unit System Enclosure Design (measurements in mm) ..................... 11 Figure 5.2: Detect and Scan Unit Enclosure (measurements in mm) ............................... 11 Figure 6.1: Anywhere Access Form Flow Chart ................................................................. 12 Figure 6.2: Login Page ....................................................................................................... 14 Figure 6.3: Simple Form Layout ......................................................................................... 15 Figure 6.4: Ease of Use (Calendar Pick list) ....................................................................... 15 Figure 6.5: Allocation of the three main algorithms in Entry Database ........................... 16 Figure 6.6: Entry Database using linked list data structuring ........................................... 17 Figure 6.7: Flowchart of data addition process ................................................................. 18 Figure 6.8: Flowchart of the comparison algorithm .......................................................... 19 Figure 6.9: Flowchart of the deletion process ................................................................... 20 Figure 6.10: General Dialog Layout ................................................................................... 21   

    List of Tables Table 1: Operating Specifications for the TRF7960  ............................................................ 8 Table 2: Web Application Scripting Languages ................................................................. 13   

    Glossary AE  Analog Emitter DMM   Digital Multi‐meter GUI   Graphical User Interface LCD   Liquid Crystal Display PIM  Personal Information Manager PIR   Passive Infrared RFID  Radio Frequency Identification SPI  Serial Peripheral Interface UART  Universal Asynchronous Receiver/Transmitter USB  Universal Serial Bus 

  •   

    1 | P a g e   

    1. Introduction  The D‐Tech system  is an  item and task reminding device, which can be  installed at the user’s  front door. Once  items have been  tagged with our SmartTags and entered  into the  system’s  database,  the  system  will  be  able  to  scan  and  detect  whether  or  not specific  items  are missing  as  a person passes  their  front door.  If  there  is a mismatch between the list of items the user wanted to bring, and the list of items that are on the user, the system will notify the user by displaying the missing objects on a touch‐based liquid crystal display (LCD). In addition, the user can also specify tasks that they wish to be reminded of when they are leaving their home.   1.1. Scope This document outlines the design choices we came to  in order to fulfill the functional specifications as listed in the goldfish Functional Specifications [1]. It provides a detailed description of how each  subsystem  is  implemented and validates design  choices with respect  to  each  subsystem’s  functional  requirements.  In  addition,  a  thorough  system test plan is outlined.    1.2. Intended Audience This document is to be used by all members of goldfish Technologies. The team lead will refer to it in order to track the group’s progress, and the design engineers can use it as an overall guideline  for  future design and  implementation stages. These specifications can also aid the test engineers when they are executing the system test plan, and will help them verify the validity of the test outputs.    

    2. System Requirements  2.1. Understanding the User The D‐Tech system is intended for average busy households. In a family, generally each member has multiple personal commitments and belongings. Commonly, a calendar or to‐do list is used to organize tasks and note personal reminders. The use of our product will  facilitate  family  members  in  scheduling  task  and  item  reminders  to  a  single electronic unit, and hence better organize their daily activities.     

  •   

    2 | P a g e   

     2.2. System Overview The  D‐Tech  reminder  system  consists  of  three  essential  units:  the  Anywhere  Access Form, the Detect and Scan Unit and the Central Unit. Figure 2.1 shows how these three units interact with each other by illustrating data and their operation.  

     Figure 2.1: System Diagram of D‐Tech Unit 

      The specific functionality of each subsystem is as described:  

    1. The Anywhere Access Form Through use of the internet, users can add reminder entries with the Anywhere Access Form. This web‐based application uploads user‐submitted entries directly onto  a  security  enabled  web  server.  Information  from  this  server  is  then downloaded to the Central Unit database  in a frequent  interval. By giving users the  option  of  adding  tagged  item  and  task  entries  remotely  from  the  Central Unit,  using  any  computer,  the  form  provides  additional  functionality  and convenience to the user.  

  •   

    3 | P a g e   

     2. The Detect and Scan Unit 

    This unit consists of two  interacting components: the Detect component which involves  a motion  sensor,  and  a  Scan  unit  which  involves  a  radio  frequency identification (RFID) module. The RFID module is always on stand‐by until a user is  in  the  vicinity of  their  front door. When  the motion  sensor detects a user’s movement,  the RFID module  is activated  to scan  the user and  record all  items that are on that person. The detected items are then sent to the Central Unit for comparison and display.  

    3. The Central Unit The Central Unit has two major components: the processing unit, which manages data and its algorithms; and the graphical user interface (GUI), which acts as an interactive medium between the system and the user. The processing unit keeps track of each household member’s  reminders by  implementing algorithms  that automatically delete expired  items and run comparison  tests between  the  tags the users possesses and the list of items they were scheduled to be reminded of. Similarly to the Anywhere Access Form, users can add new entries through the GUI, which is displayed on a touch‐based LCD. Additionally, the GUI allows users to manually delete items as desired. Thus the central unit is a crucial component to  the system’s  functionality as  it  is  the only subsystem  that  interacts with  the other subsystems as well as the user. 

       

    3. Overall System Design  The following sections detail the overall technical design of the D‐Tech system.    In the design of the reminder system, goldFish Technologies had to take into consideration the kind of user that would be using the product, as well as the environment of its intended use. As such, the D‐Tech software solution was designed with ease of use in mind, and the hardware solution was designed with unobtrusiveness in mind. The design approach to the entire D‐Tech system was focused around making a system that can integrate into a person’s daily life as seamlessly as possible, while still providing an ideal reminder that involves both a message and signal.  

  •   

    4 | P a g e   

     3.1. System Design Overview In designing our  system, we  sought  to minimize  the amount of  steps  the user has  to perform  in  order  to  register  an  item.  The  design  of  our  system  requires  the  user  to perform the following things:  

    1) Place a registered SmartTag (RFID Tag) on the item. 2) Register the object description via the Central Unit display screen or the 

    online form from any computer with an internet connection. 

    Though  the  registration of  the  item may seem  inconvenient, with computers being so integrated into our daily lives, this method will easily become natural and will prove to be more effective  than conventional methods of  reminding. Furthermore, our  system incorporates  a  task  scheduler, which would  be  akin  to  inputting  tasks  into  personal information manager (PIM) programs such as Microsoft Outlook or writing them down in a day planner. The added benefit of having an online form  is that the user may edit their  tasks and  tagged  items  from any computer with an  internet connection and not just on their D‐Tech Central Unit.   3.2. Hardware Design Overview The hardware is designed to be easy to install and quick to scan a user. In addition, our hardware  is designed to minimize power consumption. As this  is the proof‐of‐concept, the  read  range of our  system  is  limited  to  about 10  cm. With  this  limited  range,  the current  draw  of  the  scan  unit  alone  is  an  upwards  of  120mA  [2].  However,  in anticipation of the much higher power consumption required by a scan unit with a 1m range, a switch was designed to activate the reader only when there is a body present. This  ensures  that  no  power  is  consumed  when  there  are  no  SmartTags  within  the vicinity of the door to scan. This combination of the scan unit and the switch is referred to as Detect and Scan Unit. The Detect and Scan Unit will consist of a parallax parallel infrared  (PIR) motion  sensor  connected  to  a  Texas  Instruments  TRF7960  RFID  reader board via a relay circuit. The TRF7960 will relay RFID data to our Central Unit via a serial connection.   The D‐Tech Central Unit  is designed  to be  compact and wall mountable, with a  form factor  and  size  similar  to  that of  the  input device  from  a home  security  system. This Central Unit contains an LCD touch screen as well as audio speakers. The Central Unit will also have internet access in order to retrieve data from the online server database. Ideally,  this  internet  access would  be  via  a wireless  connection  to  the  user’s  home network.  In the case the user does not have wireless network set‐up  in house, we are making use of the wired Ethernet port on the development board to allow the user to directly connect their system to the internet.  

  •   

    5 | P a g e   

     The  final  piece  of  hardware  used  in  our  design  is  a  laptop,  which  is  a  temporary workaround  to  a  communication  problem  between  the  development  board  and  the Detect and Scan unit. The development board  is unable to act as a universal serial bus (USB)  host  device, making  it  impossible  to  retrieve  data  from  the  RFID  reader.  The laptop provides a means to read data from the RFID reader and funnel it directly to the development  board.  It  will  essentially  act  as  a  hardware  driver  that  facilitates communication  between  the  two  devices.  Figure  3.1  shows  the  overview  of  our hardware design with regards to the path of the data.     

      

    Figure 3.1: Hardware Overview   3.3. Software Design Overview D‐Tech Anywhere Access Form, though secondary to the main system, is very important interface  for  the  user.  This  form  is  web  based  to  increase  accessibility  as  well  as adaptability. Having a web‐based design allows features and additional functionality to be added easily. The Anywhere Access Form will be designed using various web scripting languages, which will be mentioned later.  

     The  other  software  portion  of  the D‐Tech  system  is  contained  in  the D‐Tech  Central Unit. The Central Unit will contain a GUI which will provide users with information about forgotten objects as well as display  the user’s  task  list. The Central Unit  software will have to facilitate communication and synchronization with the Anywhere Access Form, compare the SmartTag data from the scanner with the system database, and allow data input and display. Software to be used on the Central Unit will be designed in Microsoft Visual Studio for embedded systems, while the operating system used will be Microsoft Windows CE 4.2. The choice of development software was made based on availability of the software as well as online resources and support. Figure 3.2 shows the overview of our software design with regards to the path of the data.   

        

     Figure 3.2: Software Overview 

    TRF7960 Data 

    Anywhere Access Form  Central 

    Unit Software 

    User input 

    Output 

    TRF7960 RFID Reader 

    MC9328MX1 development board 

    LCD/Audio speakers 

    Input  OutputLaptop 

  •   

    6 | P a g e   

    4. Hardware System Design  The following section details the design choices for the entire hardware component of the D‐Tech reminder system.    4.1. Detect and Scan Unit The  Detect  and  Scan  Unit  consists  of  two  separate  entities:  the  detector  and  the scanner. The diagram below shows the relationship of the unit and its interactions with the rest of the system.   

        

      

    Figure 4.1: Detect and Scan Interactions  The motion  detector  will  be  constantly  powered  while  the  RFID  scanner  will  be  in sleeping mode  until  the motion  detector  sends  a  signal  to  wake  it  up.  This  design approach ensures  that  the  scanner will not overheat and  it also  saves overall  system power consumption. Below we will  individually discuss  the  functional specifications of the motion detector and the RFID scanner.  4.1.1. Motion Detector The motion detector acts as a control switch that regulates power to the RFID Scanner. We  are  utilizing  the  PIR  sensor  which  detects  changes  in  infrared  around  its environment. The unit operates on 5V at 100μA at room temperature. During the initial set up, the motion sensor requires around six minutes to adjust to the surroundings [3]. Along with the PIR sensor a power switch circuit is constructed with a mechanical relay. The schematic of the sensor switch circuit is shown below in Figure 4.2.  

             

    RFID Scanner

    Motion Detector 

    D‐Tech Central Unit Connects power when 

    motion is detected 

    Sends information to central system 

  •   

    7 | P a g e   

      

     Figure 4.2: Sensor Switch Circuit Schematic 

      

    When  the  PIR  sensor  is  activated,  it will  output  3.3V which  turns  on  the mechanical relay, and this in turn powers the RFID scanner.   4.1.2. RFID Scanner Keeping  in mind  the  technical  requirements  needed  to  achieve  seamless  interaction between  the  D‐Tech  System  and  the  end  user,  the  RFID  Scanner will  have  to meet several specifications:  

    • Ability to read and identify multiple tags • Have a dependable range • Offers expendability and flexibility • Can be easily integrated 

    With  these  requirements,  our  group  has  chosen  the  TRF7960  Multi‐Standard  Fully Integrated  13.56‐MHz  RFID  analog  emitter  (AE)  and  Data  Farming  Reader  System (TRF7960) as the RFID Scanner unit. The unit  is compliant with the ISO 15693 standard and  is  capable  of  detecting  up  to  sixteen  unique  RFID  tags  within  ten  centimeters without  an  external  antenna.  With  a  built  in  CP2102  universal  asynchronous receiver/transmitter  (UART)  to USB converter,  the unit can be easily  integrated  into a 

  •   

    8 | P a g e   

    computer. While  the  unit  offers  two modes  of  operation,  in  both  parallel  and  serial peripheral  interface  (SPI),  for  the  functionality needs of our product, only  the parallel mode of operation  is utilized. The parallel mode offers us  the ability  to  read multiple tags  simultaneously.  Below  is  the  application  schematic  for  the  TRF7960  in  parallel mode.   

     Figure 4.3: Application Schematic for the TRF7960[4] 

      While the TRF7960 can detect up to sixteen unique RFID tags, a point of concern is the fact that the unit does not offer any built in collision prevention measures. With this in mind, the D‐Tech system will attempt to solve the  issue by scanning the user multiple times to ensure consistency and accuracy.   The TRF7960 requires 5V and 120mA drawn  from the USB port to operate. Below  is a table listing the key operating specifications of the TRF7960 reader module.    Table 1: Operating Specifications for the TRF7960 [4] 

    Standard  ISO 14443A,ISO 14443B,ISO 15693,ISO 18000‐3 Frequency  13.56 MHz Output Power (mV)  100,200 Supply Voltage (Vdc)  0 to 5.0 Current Consumption (mA)  120 Operating Temperature (˚C)  ‐40 to 110 

  •   

    9 | P a g e   

      4.2. Hardware Communication Hub Due to design constraints for both the TRF7960 RFID reader as well as the MC9328MX1 development  board,  we  have  to  utilize  a  computer  to  act  as  a  medium  for communication between  the  reader  and  the development board. While  the  TRF7960 has  only  a  USB  output,  the MC9328MX1  can  only  accept  SPI  and  UART  input.  This limitation forces us to use a laptop to act as a wire and a data converter that will convert the USB output from the TRF7960  into a UART  input for the MC9328MX1. We will use this measure  only  for  our  proof  of  concept  design  as we  expect  future  versions  to improve on the design of the development board so that it can accept USB inputs while acting as a host. The diagram below shows the current relationship of the  laptop with respect to the TRF7960 and the MC9328MX1.         

    Figure 4.4: Communication Overview   4.3. Central Unit Hardware  4.2.1.  Development Board The processor  for the Central Unit  is a Motorola MC9328MX1, which  is mounted on a development  board  containing  an  LCD  touch  screen  and  several  UART  peripheral interfaces  as  well  as  Ethernet  and  audio  ports.  The  decision  to  use  this  particular development board is partly due to the fact that it was readily available at zero cost to goldFish Technologies.  We decided to use a full development board as opposed to a PIC microcontroller  because  the  features  included  on  the  processor  and  accompanying development  board  match  much  more  closely  to  what  we  need  than  PIC microcontrollers.  The particular features we wanted for the D‐Tech include USB hosting capabilities,  LCD  touch  screen,  internet  connectivity  and preloaded operating  system. The Motorola MC9328MX1 possesses most of  these  features. While  the MC9328MX1 did  not  have  hosting  capabilities,  the  zero  cost  associated  with  obtaining  the development board offset this drawback. Figure 4.5 shows a functional block diagram of the MC9328MX1.  

    TRF7960 RFID 

    Laptop MC9328MX1 Development 

    Board USB information from RFID reader 

    Converted UART input 

  •   

    10 | P a g e   

     Figure 4.5: MC9328MX1 Block Diagram [5] 

     4.2.2.  Power Requirements Ideally, the entire D‐Tech door console unit should be powered through an AC adapter which plugs  into  a wall outlet.  This  adapter provides +3V  at 1500mA.  Since we were required to incorporate a laptop in our workaround to the communication problem, the laptop will  also  be  powered  through  a  connection  to  a wall  outlet.  The  laptop  takes +15V  at  5A.  Because  the  laptop  is  being  used  to  transfer  data,  it was  convenient  to power the Detect and Scan Unit via the USB connection to the  laptop. The Detect and Scan unit consumes +5V and up to 130mA when the antenna  is active. The USB power connection of a laptop provides the +5V and enough current to the device [3].     

    5. Physical System Design  There will be two separate physical components to our system. The development board and the LCD screen will be encased as the Central Unit as shown in Figure 5.1. The RFID board  and motion  sensor will  be packaged  as  the Detect  and  Scan Unit  as  shown  in Figure 5.2. All measurements are provided are in millimeters.  

  •   

    11 | P a g e   

     Figure 5.1: Central Unit System Enclosure Design (measurements in mm) 

     

     Figure 5.2: Detect and Scan Unit Enclosure (measurements in mm) 

  •   

    12 | P a g e   

    6. System Software Design  The  following  section will  outline  the  system  software  design  choices  for  the  entire software component of the D‐Tech reminder system.   6.1. Anywhere Access Form The D‐Tech System Anywhere Access Form is an available online portal for users to add tagged  item and tasks to their D‐Tech Central Unit database. This web application acts similarly  to  a  survey  or  questionnaire,  asking  the  users  for  relevant  information. Performing  as  an  accessory  to  the D‐Tech  system,  the  home  system  is  able  to work without  the Anywhere Access  Form. However, with  the extended  functionality of  the form, D‐Tech system’s usability and flexibility is greatly improved.  6.1.1. Overview  

    Figure 6.1: Anywhere Access Form Flow Chart   

  •   

    13 | P a g e   

     Figure 6.1 above outlines the complete operational flow of the Anywhere Access Form software.  Many different web scripting  languages were needed  to develop  the web application. The table below summarizes the language used and their purpose in our design.    Table 2: Web Application Scripting Languages 

    Scripting Language  Purpose/Use HTML (HyperText Markup Language)  Scripting webpage layout and web 

    application CSS (Cascading Style Sheet)  Describes the look and formatting of all 

    web pages on the website PHP  Required to allow opening of a file and 

    writing to a file JavaScript  For interactive calendar pick list function  Flash  For webcam functionality 

      6.1.2. Online Web Server The form is hosted on a provided online server at 1&1 Hosting Service. For our purpose we required the following criteria to meet our functional specifications:  

    • The ability to handle a high volume of users • PHP5 and JavaScript support for the scripting of the form • Configurable security settings 

     The  basic  1&1  hosting  account met  all  these  needs  in  exception  to  the  last  point. However,  due  to  the  inexpensive  price  and  good  customer  reviews,  we  decided  to choose their service and find a work around for the security feature. With success, we found that security settings could be set with advanced knowledge of hypertext access files called .htaccess files. These files allow configuration management of files placed in the same server directory as the .htaccess file [6]. 

  •   

    14 | P a g e   

     6.1.3. Security 

    Because  the  Anywhere  Access Form is hosted on an online web server,  the  user  can  open  the website  on  any  computer  with internet  access, whether  it  is  at home  or  elsewhere.  Due  to  its accessibility,  security  features had  to  be  designed  to  ensure that  personal  data  is  not made public.  A  login  page  was  designed, which  requires  a  user  to  login with correct credentials  in order to access the web form page. 

      

    As previously mentioned,  the  security of  the  files was  implemented by protecting  the entire  website  directory  that  contained  the  related  web  form  application  page  and database files.   6.1.4. Information Database Once  a  user  takes  a  photograph  with  their  webcam  or  submits  the  form,  data  is immediately  uploaded  and  appended  to  a  text  file  on  the  server.  The  following  line shows the structure of which the data would be saved:  

    This method of  implementation allows  for the  file to be easily read and parsed by the Central Unit software. By providing  this  intermediate connection between  the Central Unit database and the server database we can ensure that data  is not  lost by saving a copy of it to the server database. Even if the Central Unit is turned off, data could still be entered through the online application and stored appropriately.  The choice of saving the information to a simple text file also allows quick reading of the information to the Central Unit database.  

    Timestamp.id;task.item.indicator;person.name;start.date; expiry.date;repeat.indicator;tag.id;tag.desciption; image.address

    Figure 6.2: Login Page

  •   

    15 | P a g e   

      6.1.5. Usability Design Our main usability concerns involved ensuring that the form was simple and intuitive to use. To meet these requirements, the following design was implemented:   Simple Website Design ‐  Large text was used to ensure  that text was not straining to   the user  ‐ Minimal amount of fields on a  single page to minimize   confusion  ‐  Small layout and minimal  images to minimize load time   Intuitiveness and Ease of Use ‐  Contrasting colours were used  to show separation of page  sections and to highlight areas  of importance    ‐  Different field types were  used for different data entry  fields  ‐  Character limit was set on  fields to prevent data  overflow and errors   ‐  Built in instructions and  examples  ‐  Calendar pop‐up pick lists to   allow easy date selection   These features were implemented using the languages outline in Table 2, from before.  

    Figure 6.3: Simple Form Layout 

    Figure 6.4: Ease of Use (Calendar Pick list) 

  •   

    16 | P a g e   

     6.2. Central Unit Software The software aspect of the Central Unit comprises of the Entry Database and the GUI. The following section will discuss each component in detail.   6.2.1. Entry Database The Entry Database utilizes a  linked  list data structure  to store and organize  item and tasks entries.  Functions and algorithm to support this database will be discussed in later sections. Figure 6.5  illustrates the allocation of the three main algorithms: comparison, add entry, and delete entry algorithm.     

      

    Figure 6.5: Allocation of the three main algorithms in Entry Database 

  •   

    17 | P a g e   

     6.2.2. Database Structure This type of data structure provides a dynamic storage system which allows quick access and data manipulation. In addition, to ensure that there is no data loss, backup text files will also be generated for the linked list. Figure 6.6 illustrates a two dimensional linked list used by the Entry Database.  The first dimension consists of registered users, where each user contains three separate lists, occupying the second dimension.     

    Item 1 Item 2 Item 3

    Task 1 Task 2 Task 3 Task 4 Task 5

    Item 1 Item 3 Task 2 Task 4

    User 1

    Daily List

    Items List

    Tasks List

    Item 1 Item 2 Item 3

    Task 1 Task 2 Task 3

    Item 3 Task 2

    User 2

    Daily List

    Items List

    Tasks List

    Item 3

    Task #

    Item #

    Entries: not yet due

    Entries: due

     Figure 6.6: Entry Database using linked list data structuring 

     Item  or  task  entries  can  be  added  through  the  Anywhere  Access  Form  or  the  GUI.  Further entry modification or removal can be done through the GUI as well.  Due to the nature  of  linked  lists,  there’s  no  size  limitation  to  this  database  as  long  as  physical memory is sufficient.   

  •   

    18 | P a g e   

     6.2.3. Entry Addition Algorithm There are  two methods available  to  the user  for adding a new  item or  task reminder. The  user  can  add  using  the  Anywhere  Access  Form  available  online,  or  they  can manually enter the  information on to the Central Unit. In both cases the data  is added to the general database which keeps track of the entries corresponding to each user. An overview of data addition process is detailed in Figure 6.7.   

      

    Figure 6.7: Flowchart of data addition process  6.2.4. Entry Comparison Algorithm When a user walks through the door, the RFID module sends over all the detected RFID codes to the Central Unit, through serial port communication and an event is triggered on  the GUI  to activate  its  comparison algorithm. As each user  is  required  to  carry an RFID tag that identifies the user, the received RFID codes will be compared with a list of user identification (ID) codes that are mapped to household members. Only if a user ID code  is  found, will  the system  run  the  rest of  the algorithm  to determine and display item  or  task  reminders  associated with  the  current  day.  This  process  is  described  in more detail in Figure 6.8.  

  •   

    19 | P a g e   

      

    Figure 6.8: Flowchart of the comparison algorithm 

  •   

    20 | P a g e   

     6.2.5. Entry Deletion Algorithm Similar to the adding a new entry, there are two methods available for deleting an entry from the database. The user can either wait  for the entry to expire, provided that the entry has an expiration date, or they can manually delete the entry on the Central Unit. In  the  first  case,  automatic  deletion  is  employed,  as  every  new  day  the  system will iterate through all the items in the database and will delete all items that have expired permanently from the database. This process is illustrated in Figure 6.9.   

      

    Figure 6.9: Flowchart of the deletion process  

  •   

    21 | P a g e   

     6.3. Graphical User Interface The GUI at the D‐Tech Central Unit interacts with user in two modes, the Scan Mode and the Edit Mode. As for user input, the Central Unit hosts a touch‐screen LCD display.  This offers  a  greater  degree  of  interaction  and  control,  since  multiple  command  and navigation  buttons  can  coexist  on  each  dialog.    In  order  to  maintain  an  intuitive interface,  a  designated  location  on  the  screen will  be  reserved  for  specific  types  of commands, as illustrated in Figure 6.10.   

    Current Location / ModeCurrent Location / Mode

    Navigation 1 Navigation 2

    Command 1

    Command 2

    Command 3

    Enter Text

    Command Area

    Navigation Area

    DisplayArea

    Current Mode

     Figure 6.10: General Dialog Layout 

      

     

  •   

    22 | P a g e   

    7. System Test Plan  The primary  test plan  for accessing  functionality of  the  system  consists of a  series of Unit  Tests  and  Integration  Tests.    The  purpose  of  the Unit  Tests  is  to  evaluate  each component’s functionalities during the development process.   Whereas the Integration Test, conducted during component integration, is to ensure functionalities are operating correctly  as  a  complete  system.    Once  the  Integration  Test  has  concluded  the  Final Acceptance Test will be conducted to evaluate the performance of the system.  

    7.1. Unit Tests 7.1.1. Motion Sensing Activation Test Component:  Motion Sensor Unit Precondition:  Motion sensor detects motion and trigger signal to indicate a reading Procedures:  Present object or person before motion sensor and measure signal using 

    oscilloscope or digital multi‐meter (DMM) Requirement:  Unit produce a signal to indicate motion  7.1.2. RFID Scanning Test Component:  RFID Unit Precondition:  RFID unit scans and reads identification number on RFID tags Procedures:  Present RFID tags before unit’s antenna and review collected data Requirement:  Unit scan and correctly read all RFID tags placed beside the antenna  7.1.3. Anywhere Access Form Test Component:  Web Server  Precondition:  Anywhere  Access  Form  records  fields  for  item  or  task  entry,  converts 

    entry to coded files and uploads to server for downloading Procedures:  Enter simulated item or task and download coded file from web server Requirement:  Downloaded file contains all entries with correct fields  7.1.4. Central Unit Data Collection Test Component:  Central Unit  Precondition:  Download coded file from an online server and parse data from database Procedures:  Upload a coded file on web server, download coded file and parse data Requirement:  Coded  file  downloads  and  parses  successfully,  parsed  data  contain 

    correct information 

  •   

    23 | P a g e   

     7.1.5. Database Input and Organization Test Component:  Central Unit  Precondition:  Input parsed data to database, organize item and task entries  Procedures:  Simulate parsed data and run functions to enter and organize entries Requirement:  Database  successfully  input  parse  data,  entries  are  stored  in  correctly 

    database  7.1.6. Database Access and Modification Test Component:  Central Unit  Precondition:  Access  item or task entries according to user, modify entries and return 

    data to database Procedures:  Modify  pre‐existing  test  entries  on  database  and  access  these  entries 

    afterwards Requirement:  Pre‐existing  test  entries  are  correctly modified  and  accesses  to  these 

    entries are successful  7.1.7. GUI Command and Navigation Test Component:  Central Unit  Precondition:  Command and navigation buttons on the GUI run specified functions and 

    forms  Procedure:  Select  all  command  and  navigation  buttons,  and  review  functions 

    activated by these buttons Requirement:  All  command  and  navigation  buttons  access  the  correct  functions  and 

    forms  

    7.2. Integration Tests 7.2.1. Online Input Entry Stage Component:  Web Server, Central Unit Precondition:  User  records  item or  task entries  via Anywhere Access  Form, and  then 

    entries are forwarded to database Procedures:  Enter item or task using Anywhere Access Form  7.2.2. Home Input Entry Stage Component:  Central Unit, Motion Sensor Unit Precondition:  User  records  and modifies  item  or  task  entries,  updates  are made  to 

    database Procedures:  Enter and edit item or task using Central Unit’s GUI 

  •   

    24 | P a g e   

     7.2.3. Motion Sensing Activation Stage Component:  Motion Sensor Unit, RFID Unit Precondition:  Motion sensor detects motion and activates RFID scanner Procedures:  Present object or person before motion sensor   7.2.4. RFID Scanning Stage Component:  RFID Unit, Central Unit Precondition:  RFID unit  scans,  reads  identification number on RFID  tags  and  forward 

    data to comparison algorithms Procedures:  Present tagged items and user ID before unit’s antenna  7.2.5. Reminder Stage Component:  Central Unit Precondition:  Remind user of due tasks and item he /she has forgotten Procedures:  Review forgotten items and tasks remind via GUI Requirement:  Correct item and task reminders are displayed on GUI 

     8. Environmental Considerations  The majority of the D‐Tech system consists of silicon based technology. The Central Unit as well as the RFID scanner cannot be disposed of easily due to the nature of the printed circuit board (PCB) as well as the materials of the chipsets. Due to this we believe any metal wiring should be salvaged for reuse, the PCB board themselves should be melted for future designs, and the chipsets should be properly disposed of by a waste disposal agency. The casing of the D‐Tech system consists of reusable plastic and wood, making it easy to recycle and would have little or no impact on the environment.  In general we believe the D‐Tech system will present an overall minimal  impact on the environment due to its size as well as the material used for its construction. 

  •   

    25 | P a g e   

    9. Conclusion  This document outlined the design choices we came to  in order to fulfill the functional specifications of the D‐Tech reminder system. The product development is divided into two  distinctive  phases.  The  proof‐of‐concept model  is  being  developed  at  this  time, while strictly  following  the specifications outlined above.  It  is expected  that all design requirements described  in this document will be completed by the target date of April 15, 2009.    

  •   

    26 | P a g e   

    10. References  [1]  “D‐Tech Functional Specifications”, goldFish Technologies, 2009  [2]  Texas Instruments, TRF7960EVM User’s Guide, November 2006. [Online]. 

    Available: http://focus.ti.com/lit/ug/slou192c/slou192c.pdf. [Accessed: March 1, 2009]. 

     [3]  Parallax, Inc, Datasheet: PIR Sensor (#555‐28027), v.1.2, February 2007 [Online]. 

    Avaliable:    http://www.parallax.com/Portals/0/Downloads/docs/prod/audiovis/PIRSensor‐

    V1.2.pdf  [4]  Texas instruments, TRF7960, TRF7961 Multi‐Standard Fully Integrated 13.56‐

    MHz RFID Analog Front End and Data‐Framing Reader System, August 2006. [Online]. Available: 

      http://focus.ti.com/lit/ds/symlink/trf7960.pdf  

    [5]  Freescale Semiconductor, Datasheet: Technical Data MC9328MX1, rev. 7, February 1991. [Online]. Available: http://www.freescale.com/files/32bit/doc/data_sheet/MC9328MX1.pdf. [Accessed: March 1, 2009]. 

     [6]  “.htaccess” Wikipedia.org. [Online]. Available: 

    http://en.wikipedia.org/wiki/.htaccess [Accessed: March 5, 2009]  

       

    DesignSpec-LetterDesignSpecsFinal