diff --git a/README.md b/README.md
index ea61e822e9dd54c0f8d6adf4f2bb8bf4be8d78b2..b9a7a5ef95766f603c63676b8817b049ee822519 100644
--- a/README.md
+++ b/README.md
@@ -1,3 +1,49 @@
-# BITs PID Controller
+# PID Controller
+
+Mit dieser Bibliothek kann ein PID Regler erzeugt werden, der mit Hilfe einer Führungsgröße und dem Ist-Wert die Regelgröße berechnet.
+
+## **Installation:**
+
+Um diese Klassen verwenden zu können, muss dieses Repository geklont und in das Library-Verzeichnis der Arduino-IDE kopiert werden.<br />
+<br />
+
+## **Anwendung:**
+
+Zur Verwendung siehe zunächst das Beispiel `pid_example.ino`<br />
+<br />
+
+**Einbinden der Bibliothek:**
+```Arduino
+#include <thk_pid_controller.h>
+```
+
+**Instanziieren:**
+```Arduino
+thk_PIDController pid_controller(proportional_gain, integrational_gain, differential_gain, setpoint);
+```
+
+- `proportional_gain`: Proportional Faktor
+- `integrational_gain`: Integral Faktor
+- `differential_gain`: Differential Faktor
+- `setpoint`: Führungsgröße<br />
+<br />
+
+### **Funktionen:**
+
+**Übergeben einer neuen Führungsgröße an den Regler:**
+```Arduino
+pid_controller.set_setpoint(setpoint);
+``` 
+
+**Berechnen der Regelgröße:**
+```Arduino
+controlled_variable = pid_controller.compute(input_value);
+``` 
+
+**Zurücksetzen von I- und D-Anteil:**
+```Arduino
+pid_controller.reset();
+``` 
+
 
 
diff --git a/examples/example.ino b/examples/pid_example.ino
similarity index 78%
rename from examples/example.ino
rename to examples/pid_example.ino
index 575199f8488179ebc0f0cef668f459389ada2c49..c998ce5e0cfd3e1f19124a60988c9f923716e1e8 100644
--- a/examples/example.ino
+++ b/examples/pid_example.ino
@@ -1,4 +1,4 @@
-#include <pid_controller.h>
+#include <thk_pid_controller.h>
 
 double prop_gain = 0.1;
 double int_gain = 0.1;
@@ -8,7 +8,7 @@ double input_value = 0;
 uint8_t step = 0;
 uint8_t setpoint = 50;
 
-PIDController pid(prop_gain, int_gain, diff_gain, 0);
+thk_PIDController pid(prop_gain, int_gain, diff_gain, 0);
 
 void setup(){
     Serial.begin(115200);
@@ -17,11 +17,7 @@ void setup(){
 
 void loop(){
     step++;
-    // if (input_value < 70)
-    // {   
-        
-    //     pid.set_setpoint(100);
-    // }
+
     input_value = pid.compute(input_value);
 
     if(setpoint - input_value < 0.01)
diff --git a/pid_controller.cpp b/pid_controller.cpp
deleted file mode 100644
index 5334491928bbd24c64eccc933dea48cc098bf995..0000000000000000000000000000000000000000
--- a/pid_controller.cpp
+++ /dev/null
@@ -1,25 +0,0 @@
-#include <pid_controller.h>
-
-PIDController::PIDController(double Kp, double Ki, double Kd, double setpoint) : Kp(Kp), Ki(Ki), Kd(Kd), setpoint(setpoint) {}
-
-void PIDController::set_setpoint(double setpoint)
-{
-    this->setpoint = setpoint;
-}
-
-double PIDController::compute(double input_value)
-{
-    double error_value = setpoint - input_value;
-
-    out_p = Kp * error_value;  // P-Anteil
-    out_i += Ki * error_value; // I-Anteil
-    out_d -= Kd * error_value; // D-Anteil
-
-    return out_p + out_i + out_d;
-}
-
-void PIDController::reset()
-{
-    out_i = 0;
-    out_d = 0;
-}
\ No newline at end of file
diff --git a/thk_pid_controller.cpp b/thk_pid_controller.cpp
new file mode 100644
index 0000000000000000000000000000000000000000..2e094edf162c17aba82566380fd06dc07f03dc1e
--- /dev/null
+++ b/thk_pid_controller.cpp
@@ -0,0 +1,25 @@
+#include <thk_pid_controller.h>
+
+thk_PIDController::thk_PIDController(double Kp, double Ki, double Kd, double setpoint) : Kp(Kp), Ki(Ki), Kd(Kd), setpoint(setpoint) {}
+
+void thk_PIDController::set_setpoint(double setpoint)
+{
+    this->setpoint = setpoint;
+}
+
+double thk_PIDController::compute(double input_value)
+{
+    double error_value = setpoint - input_value;
+
+    out_p = Kp * error_value;  // P-Anteil
+    out_i += Ki * error_value; // I-Anteil
+    out_d -= Kd * error_value; // D-Anteil
+
+    return out_p + out_i + out_d;
+}
+
+void thk_PIDController::reset()
+{
+    out_i = 0;
+    out_d = 0;
+}
\ No newline at end of file
diff --git a/pid_controller.h b/thk_pid_controller.h
similarity index 75%
rename from pid_controller.h
rename to thk_pid_controller.h
index 1faf019a62e6bdd3ee0a5d0ebbd9595c6e0ea027..33924886235c21d2cd1c1d815d19b7b5f591798b 100644
--- a/pid_controller.h
+++ b/thk_pid_controller.h
@@ -3,10 +3,10 @@
 
 #include "Arduino.h"
 
-class PIDController
+class thk_PIDController
 {
     public:
-        PIDController(double Kp, double Ki, double Kd, double setpoint);
+        thk_PIDController(double Kp, double Ki, double Kd, double setpoint);
         double compute(double input_value);
         void set_setpoint(double setpoint);
         void reset();