Here is a collection of selected projects and papers I made when I was a student at the UniversitÓ degli Studi di Brescia. Even if this stuff is provided freely and is free of charge, you still need to ask me (and if necessary to the other authors) permission before including it in other works or use part of it in commercial and/or government applications.
This is my Master Thesis; will be available online soon (october or so).
Written with Ms. Elisabetta Piantoni (student, currently writing her Master Thesis) and Ms. Veronica Gabusi (researcher, see her web page at http://www.ing.unibs.it/~gabusi).
In this report, we analyzed the usability of a Unix program called Vis5D, widespread between researchers in the atmospheric and meteorogical fields. Goal of the work was to detect and fix most of the usability problems this program showed.
After a brief overview of Vis5D and its capabilities, we classified the potential users in three, partially overlapping, main branches: professionals, researchers and students. We found the tasks every category usually do (like clip the data set), the tasks few categories perform (only professional and researcher build animations) and the tasks only one category do (only researchers use the scripting support). This late helped us to redefine and rationalize the main functionalities of the program.
Next, we tried to found some of the usability problems (we aren't experts in this field, after all) the program presents. To help ourselves in this endeavor, we followed the main usability principles spread among Human-Computer Interaction experts, like the Ten Nielsen Principles and the Walkthrough Method. To gather even more information, we planned and proposed a written schedule with a set of closed and open questions to a group of potential users (seven students).
After all these analyses, we build a prototype for a new version of the software, called NewVis5D; the goal of the new system is to give better usability to every category of users we identified before. To realize the prototype we used the Qt Designer, a powerful software usually used by programmers to design portable graphical user interfaces.
In every stage of the project we followed the Star Life-Cycle, a more realistic model to represent the life cycle of a computer program; much better than the classic Cascade and Spiral models, sometimes over-esteemed in software literature.
Written with Mr. Stefano Rosa (student, currently writing his Master Thesis).
This work implements all the logic and driving circuitry necessary to drive and control one to three bipolar stepper motors. From the user's point of view, these motors are controlled by a series of simple data packets sent to our boards over a standard EIA/TIA-232 serial interface. The physical connection chosen is the classic two wires, plus ground.
In the driving section, we used a Toshiba TA8435 integrated circuit for each motor; this constitutes an interesting improvement over the classic L297-L298 dual-chip alternative. This integrated circuit alone gives us the same control and driving capabilities the L297-L298 couple provides, plus a novel micro-stepping driving feature.
The high-level control board is built around an 8-bit microcontroller, a proud member of the well-known Motorola 68HC11 family. This device communicates to the host system and takes care to generate the velocity ramps necessary to correctly operate the stepper motors.
Our entire assembly will be part of the MARMOT robot, currently under development at the ARL.