Viptos: A Graphical Development and Simulation Environment for TinyOS-based Wireless Sensor Networks

Viptos (Visual Ptolemy and TinyOS) is an integrated graphical development and simulation environment for TinyOS-based wireless sensor networks. Viptos allows developers to create block and arrow diagrams to construct TinyOS programs from any standard library of nesC/TinyOS components. The tool automatically transforms the diagram into a nesC program that can be compiled and downloaded from within the graphical environment onto any TinyOS-supported target hardware. In particular, Viptos includes the full capabilities of VisualSense, which can model communication channels, networks, and non-TinyOS nodes. Viptos is compatible with nesC 1.2 and includes tools to harvest existing TinyOS components and applications and convert them into a format that can be displayed as block (and arrow) diagrams and simulated.

galsC (pronounced "GALS-see") is a language and compiler designed for use with the TinyGALS programming model, which uses TinyOS as the underlying component model. TinyGALS is a globally asynchronous, locally synchronous model for programming event-driven embedded systems, especially sensor networks. At the local level, software components communicate with each other synchronously via method calls. Components are composed to form actors. At the global level, actors communicate with each other asynchronously via message passing, which separates the flow of control between actors. A complementary model called TinyGUYS is a guarded yet synchronous model designed to allow thread-safe sharing of global state between actors without explicitly passing messages. The TinyGALS programming model is structured such that code for all inter-actor communication, actor triggering mechanisms, and access to guarded global variables can be automatically generated from a high level specification.

By raising concurrency concerns above the level of TinyOS components, the TinyGALS programming model allows programmers to focus on the main tasks that the application must execute. Programs developed using this task-oriented model are thread safe and easy to debug.

galsC is designed to be compatible with TinyOS 1.x, which uses the nesC programming language. galsC extends the nesC language (which is an extension to the C programming language), which allows for better code generation and static analysis of programs. These features are especially important in severely memory-constrained and safety-critical systems.

TinyOS is an event-based operating environment designed for use with embedded networked sensors. It is designed to support the concurrency-intensive operations required by networked sensors with minimal hardware requirements. In this project, we study the TinyOS architecture and formalize its programming model in a Ptolemy II domain. Specifically, we model the event handler, command handler, and task interaction of TinyOS components in Ptolemy II using the DE, TM, and FSM domains.

BabyOnBoard was developed as part of ME221 (High Tech Design and Rapid Prototyping). The project focused on developing a prototype of a consumer product that uses wireless sensor nodes, and presenting at the class tradeshow. The mechanical engineers on my team designed and produced prototypes of the plastic housing for the car seat unit and the key chain fob unit on a fused deposition modeling (FDM) machine. I designed and prototyped the sensor circuitry and node(s) software.

The EchidnaTM Real-Time
Operating System (RTOS) supports reconfigurable component-based
software for microcontrollers and digital signal processors (DSPs).
Existing RTOS's for these embedded processors are very costly, and they
only provide minimal system functionality. Few modern innovations in
real-time systems and software engineering that we are implementing are
supported. The Echidna RTOS is designed to reduce development time by
improving tools and maximizing portability of modules across both
applications and target platforms, while maintaining the high-performance
and predictability required in a real-time system.

This study guide is designed to help students prepare for the Advanced Placement Calculus AB Exam. Advanced Placement is a program of college-level courses and examinations that gives high school students the opportunity to receive advanced placement and/or credit in college. The Advanced Placement Calculus AB Exam tests students on introductory differential and integral calculus, covering a full-year college mathematics course.

This project is an investigation into the book history of the Joy of Cooking. Over the past 70 years in which the Joy of Cooking has been in print, American households have witnessed many changes. The political and economic effects of Prohibition, the Great Depression, World War II, and the advent of the global economy have affected how American cooking and eating habits. Research in food science and the benefits of a well-balanced and healthy diet have also changed how Americans eat. New developments in cooking technology have enabled Americans to cook more efficiently and quickly. Each edition of the Joy of Cooking has reflected the political and economic environment of its time and has included recipes and instructions to use the latest electrical appliances and knowledge of healthful cooking. The Joy has evolved as a result of these changes, but it has also affected American life through its engaging and helpful tips for modern cooking.