Code Monkey home page Code Monkey logo

volttron's Introduction

image

Distributed Control System Platform.

Branch Status
Master Branch image
Releases 4.1 image
develop image

VOLTTRONTM is an open source platform for distributed sensing and control. The platform provides services for collecting and storing data from buildings and devices and provides an environment for developing applications which interact with that data.

Features

Background

VOLTTRONTM is written in Python 2.7 and runs on Linux Operating Systems. For users unfamiliar with those technologies, the following resources are recommended:

https://docs.python.org/2.7/tutorial/ http://ryanstutorials.net/linuxtutorial/

Installation

Install VOLTTRON by running the following commands which installs needed prerequisites, clones the source code, then builds the virtual environment for using the platform.

sudo apt-get update
sudo apt-get install build-essential python-dev openssl libssl-dev libevent-dev git
git clone https://github.com/VOLTTRON/volttron
cd volttron
python bootstrap.py

This will build the platform and create a virtual Python environment. Activate this and then start the platform with:

. env/bin/activate
volttron -vv -l volttron.log&

This enters the virtual Python environment and then starts the platform in debug (vv) mode with a log file named volttron.log.

Next, start an example listener to see it publish and subscribe to the message bus:

scripts/core/make-listener

This script handles several different commands for installing and starting an agent after removing an old copy. This simple agent publishes a heartbeat message and listens to everything on the message bus. Look at the VOLTTRON log to see the activity:

tail volttron.log

Results in:

2016-10-17 18:17:52,245 (listeneragent-3.2 11367) listener.agent INFO: Peer: 'pubsub', Sender: 'listeneragent-3.2_1'
:, Bus: u'', Topic: 'heartbeat/listeneragent-3.2_1', Headers:
{'Date': '2016-10-18T01:17:52.239724+00:00', 'max_compatible_version': u'', 'min_compatible_version': '3.0'},
Message: {'status': 'GOOD', 'last_updated': '2016-10-18T01:17:47.232972+00:00', 'context': 'hello'}

Stop the platform:

volttron-ctl shutdown --platform

Next Steps

There are several walkthroughs to explore additional aspects of the platform:

Acquiring Third Party Agent Code

Third party agents are available under volttron-applications repository. In order to use those agents, add volttron-applications repository under the volttron/applications directory by using following command:

git subtree add –prefix applications https://github.com/VOLTTRON/volttron-applications.git develop –squash

Contribute

How to contribute back:

Support

There are several options for VOLTTRONTM support.

  • A VOLTTRONTM office hours telecon takes place every other Friday at 11am Pacific over Skype.
  • A mailing list for announcements and reminders
  • The VOLTTRONTM contact email for being added to office hours, the mailing list, and for inquiries is: [email protected]
  • The preferred method for questions is through stackoverflow since this is easily discoverable by others who may have the same issue. https://stackoverflow.com/questions/tagged/volttron
  • GitHub issue tracker for feature requests, bug reports, and following development activities https://github.com/VOLTTRON/volttron/issues

License

The project is licensed under a modified BSD license.

volttron's People

Contributors

acedrew avatar anselmbradford avatar bbarcklay avatar carlatpnl avatar chrisfreeman avatar craig8 avatar deva3654 avatar dvaidhyn avatar fstshrk avatar hashstat avatar hlngo avatar jchap-pnnl avatar jhaack avatar joeychaps avatar kimw821 avatar kmonson avatar mrssquid avatar mvdisney avatar nikithark avatar ntenney avatar plnordquist avatar poorva1209 avatar rcalvert-cpi avatar rlutes avatar sanyalj avatar schandrika avatar sheridaj avatar shwethanidd avatar timothykang avatar zbeech avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.