The PHOCI project explores the development of an imaging sensor that serves the dual purpose of imaging an area and receiving free-space optical communications from blinking light sources in the field of view. The pixels of the PHOCI sensors can independently locate and receive communication from a large number of different blinking light sources forming a many to one communication link. A PHOCI camera is a network camera that contains the PHOCI sensor, an FPGA sensor control unit, a Linux based embedded processor and a network interface.
The BiliBox is a hardware/software device to assist physicians attempting to identify stroke victims using a lumbar puncture diagnostic. The BiliBox analyzes the spectral absorption characteristics of the lumbar puncture fluid looking for bilirubin. The device consists of a spectralphotometer, a small LCD, a single board computer running Linux, and a custom software application that performs the analysis and displaying the results on the LCD.
The SAVANT project is an open source software solution for VHDL
analysis and simulation. The system is built around a VHDL compiler
called scram that compiles VHDL into an easily extensible
intermediate form. The intermediate is designed to support the
development of backend plugins for VHDL analysis and translation.
Included in the SAVANT system is a C++ code generator, TyVIS, and a general purpose discrete event
simulation package called warped.
Simbus is a simulation backplane written in C++ that interconnects a normally independent set of simulation engines. Simbus allows one to take simulation models operating in different simulators and integrate them into a common simulation activity. Clifton Labs is using this project to integrate the warped discrete event simulation kernel with a Spice like circuit simulation tool.
StraightBack is a C#/.NET software package to assist Neurologists in planning surgical corrections for patients with curved spines. StraightBack imports x-rays and allows manual identification of vertebra and hip sockets which the surgeon can then virtually manipulate to mimic surgical procedures (vertebra/disk shaping). StraightBack reports angles commonly measured by surgeons, outputs surgical plans of the virtual plan, and allows overlaying of x-rays and photographic images so patient outlines can be seen through their x-ray.
The Collaborative Beddown Planner is a tool to assess the capabilities of various military bases to beddown (or park) squadrons of aircraft that are performing operations. The architecture of CBP is an n tier architecture and utilizes Enterprise Java Beans in the middle tier. The application Server is Allair's EJIPT. JDBC is used in the database tier to talk to a set of Oracle databases, and CORBA is utilized to talk to an assessment engine called BCAT. The client front end is written in Java using Swing. Various other Java tools including BeanShell, the Java Messaging System, and Hypersonic SQL have been employed in the development of CBP.
VIVA is an automated test generator. Given a grammar for a language augmented with semantic information written in Java, a test case generator is generated. For this project, we employed JavaCC, Swing, and Sun's JDK to implement the tool. The target language of interest was VHDL, and a grammar/semantic definition for key parts of VHDL was developed. An earlier prototype of VIVA used a JDBC backend for symbol table management, but this proved to be too slow, so a native Java system was developed.
Clifton Labs assisted NASA to build a C++ to Java bytecode translation system. The system translated C++ to XML using the EDG C++ frontend. Various tools to analyze, manipulate, and optimize the XML were developed and then an XML to Java bytecode translator was written. NASA's interest in this project was to apply their in house model checking tool that worked on Java bytecode for model checking C++ codes. NASA was able to successfully apply their tool to several operational C++ programs which lead to the identification of at least one critical program bug.
Clifton Labs built a smart turnstile device that would read a ticket's barcode, validate the ticket against a central database, and allow/deny entry to the patron. A computer able to control up to 8 turnstiles was placed inside one of the turnstile and networked with the ticket server using either wired or wireless networking. The software was written in Java and the database in MySQL.