README.md 2.07 KB
Newer Older
René Schöne's avatar
René Schöne committed
1
2
3
4
# ERASER - OpenLicht Knowledge Base

## Overview

5
There are the following subprojects in this repository:
René Schöne's avatar
René Schöne committed
6
7

- Base
8
	- **eraser-base**: The core part of the framework containing the [grammar](/../../blob/main/eraser-base/src/main/jastadd/main.relast), various attributes, the [parser](/../../blob/main/eraser-base/src/main/jastadd/eraser.parser) for model specification files, and Java classes for the [openHAB communication](/../../tree/main/eraser-base/src/main/java/de/tudresden/inf/st/eraser/openhab2) via [MQTT](/../../blob/main/eraser-base/src/main/java/de/tudresden/inf/st/eraser/openhab2/mqtt/MQTTUpdater.java)
René Schöne's avatar
René Schöne committed
9
10
- Utility
	- **commons.color**: Utilities for converting color spaces (XYZ, RGB, HSB)
11
12
13
	- **eraser.rest** and **eraser.spark**: REST-API to communicate with the framework
	- **eraser.starter**: The main entry point to start the application
	- **feedbackloop.\***: Component specification and implementation of the MAPE-K feedback loop
René Schöne's avatar
René Schöne committed
14
15
16
17
	- **project-template**: Template to quickly create new subprojects used by `make-new-project.py`
- Demos
	- **integration** and **openhab-mock**: Playground projects testing some features
	- **skywriter-hue-integration**: The first real demonstrator integrating the [Skywriter gesture recogintion](http://docs.pimoroni.com/skywriter) with a [Hue](http://www.meethue.com/) using a simple rule
18
19
20
21
22
	- **benchmark**: Small benchmark to replay previously recoreded sensor events
- Machine Learning Integration (deprecated)
	- org.openhab.action.machinelearn: openHAB connector of the Machine Learning Part
	- org.openlicht.action.reinforcementlearning: Reinforcement-Learning of preferences
	- stub.org.openhab.core.scriptengine.action: Stub to make the other two projects build
René Schöne's avatar
René Schöne committed
23
24
25

## Setup and Building

26
This project uses Gradle as the build tool. For detailed information, see [setup guidelines](/../../wikis/setup)
René Schöne's avatar
René Schöne committed
27
28
29
30

## Trivia

The name *Eraser* is a small pun on the term *eRACR*, which is an extension of *RACR* for event recognition. It was chosen to ease the search for a good repository image as it is based on a [film](https://en.wikipedia.org/wiki/Eraser_(film)).