Final Project Presentation ()

advertisement
Final Project Presentation
Nina Drozd
Supervisor: Fearghal Morgan
Co-Supervisor: Martin Glavin

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)
Download