RIAPS Platform Information

Logo

RIAPS is a Resilient Middleware for Smart Grids. See riaps.isis.vanderbilt.edu for more information.

View My GitHub Profile

RIAPS Tutorials

Informations is provided in several formats to assist users in understand the system concepts and options better. Videos will be utilized to explain system concepts and examples of code that leverage the feature discussed. Any code used in the videos will be provided to all users to try out the concepts on their systems. Written tutorials will outline available options and provide supporting information on tips and tricks available.

Tutorial Legend

General Tutorials

Starting Point

RIAPS applications are built from distributed computing components that work together. The configuration and interactions of the components, and how they are combined to create processes (called actors) are defined within a RIAPS model file (.riaps). The defined actors are then allocated to the specific system nodes in the network using a deployment model file (.deplo). Here is a short video showing how to create, deploy and run a simple RIAPS application utilizing Eclipse development tool and a RIAPS plug-in to assist in the file creation.

Application Development

Component implementation can be written in either Python or C++. Python implementations allow quick prototyping of algorithms using a simple language and works well for those not requiring fast update rates or actions. An explanation of the language used to create RIAPS model and deployment files can be found in the Application Model and Deployment Files Tutorial.

Note: At the moment, the C++ capability has been table and will be included again in the future. The RIAPS hooks are still included in the application definition, so the explanations will remain in this tutorial. For components requiring fast timing or developers wanting to use C++, refer to the C++ Component Development Tutorial.

The RIAPS Eclipse plug-in utilizes a code generation tool that can also be used from the command line. Information on the riaps_gen code generation tool can be found in the RIAPS Code Generation Tutorial.

Application Management

A RIAPS application is launched and controlled using the riaps_ctrl tool. This tool interacts with the available RIAPS network nodes on which the application can be launched. The RIAPS Application Management Tutorial provides command line information on running the controller on a host machine and launching the applications on the nodes using the riaps_deplo tool (either automatically or manually), along with hints of situations that may occur when the developing a new application.

Debugging Tutorials

Logging files are useful in the debugging and monitoring of applications. The Component Logging Tutorial describes ways to view logs on the RIAPS nodes or monitor it remotely.

There is also a Debugging RIAPS Apps Tutorial that can provide information on different ways to debug an application during development or when something goes wrong.

RIAPS Feature Tutorials

Here is a set of videos describing different features of the RIAPS platform and how they can be utilized in application development. The code used in the video is provided.

NOTE: Upcoming Tutorials