Final Project Presentation ()

apatheticyogurtΛογισμικό & κατασκευή λογ/κού

13 Δεκ 2013 (πριν από 3 χρόνια και 7 μήνες)

96 εμφανίσεις

Nina Drozd

Supervisor: Fearghal Morgan

Co
-
Supervisor: Martin Glavin




Final Project Presentation


Framework


Turbogears 1.x:


Model (SQL Object)


SQLite used


View (Kid Language)


allows Python snippets to be
imbedded in XML
-
like manner


Controller (CherryPy)


middleware, compiles event
handlers that return data to templates


Mochikit


lightweight library, makes website
interactive



Hardware connector:


Remote Procedure Call to hardware



SQLite database, simple to administer,
operate and maintain


Divided into different entities:


Config


configuration of the lab by administrator


Bitstream


contains system and user files


Visit


contains visit data, e.g. time of visit


Visit identity


links user to particular visit


Group


2 groups: admin and user


User


contains all information about current
confirmed and non
-
confirmed users


Permission


states permissions each group has




Simple XML based template language, uses
Python for GUI handling


Group of files with extension .kid which can
be accessed by user online


Administrator has more privileges, therefore
can access more pages


JSON (JavaScript Object Notation) used to
import SQLite objects and parse them into
view component to be shown to
administrator, i.e. current users data table


Configured using CherryPy, object
-
oriented
web application framework


Connects to all other components of the
system


Interacts with XML RPC file, which connects to
hardware


Developer can view system in work in
command prompt response files, useful for
troubleshooting


If any errors present, system does not work


Remote Procedure Call that uses XML passed
via HTTP as transport


serXMLRPC.py acts as server


Controllers.py acts as client


Local connection established for such
operations as bit toggle of register in
Spartan
-
3



User registration secured by ReCaptcha and
confirmed by administrator


User access to Spartan
-
3 microcontroller
board from any geographic location


Database stores all user information, board
configuration and statistics


Statistics generation viewable by
administrator’s account


CSR’s 8 and 9 are dedicated to store the
remote switch configuration.

CSR 8 contains information about button
configuration and remote/local switch
configuration (bit 0)

CSR 9 contains information about remote
switches





Added statistics, administrator can confirm or
delete account according to user visits






Guest account created to promote the use of
website, 2 demo’s currently available,
complete with switches and CSR access, as
well as guide material


ReCaptcha Validation:



Registration Request:





Registration Confirmation:




System bad gateway: controller file has
syntax error, look through FPGA prompt file


Website tabs not working properly: view
component has syntax error, review & modify


Data object or variable does not exist: check
SQL initialising and modification


Video not showing: update to latest java
platform


Registration email not sent: NUIG firewall
blocking mail, new mail server created


TurboGears


CherryPy


Mochikit


XML RPC


Kid language


ReCaptcha


IIS setup


Putty


TightVNC


Python


Remote switch access for complete testing of
VHDL projects online


Guest page for promoting the website


Demo guides to familiarize user with system


Developer guide for further development


Registration control given to administrator


Statistics of website use for administrator


Documentation of the system as help for
administrator


System development: framework and system
architecture


Python programming


ReCaptcha validation


SMTP implementation


SQLite access and modification


Virtual server maintenance and configuration


Problem Solving


Use of new technologies and programs (e.g.
reCaptcha)



Feedback tab for registered user (mail server
already set up, and registration code can be
used)


Windows 2000 migration to newer edition of
Windows (support ends on 13 July)


Remote Lamp implementation (ready
-
made
remote switches too expensive, can be done
as small electronics project)


Further statistics development (if more
information about users is needed)