Hinweis: Diese Inhalte wurden mit Unterstützung von Künstlicher Intelligenz erstellt und redaktionell überprüft (Transparenzhinweis gemäß Art. 50 EU AI Act).
OpenDataKit (ODK): Komplettanleitung¶
OpenDataKit (ODK) ist ein Open-Source-Toolkit zur effizienten Erhebung von Daten in Feldstudien. Das System ist speziell für den Einsatz in Entwicklungsländern und Ressourcen-begrenzten Umgebungen konzipiert und ermöglicht die Datenerfassung auf mobilen Geräten – auch offline. ODK wird von einer aktiven Community unterstützt und von Regierungen, NGOs, Forschungseinrichtungen und Unternehmen weltweit eingesetzt.
📋 Überblick¶
Was ist ODK?¶
ODK ist eine Sammlung von Open-Source-Tools, die gemeinsam ein vollständiges System für die mobile Datenerfassung bieten:
| Komponente | Zweck | Plattform |
|---|---|---|
| ODK Collect | Mobile App zur Datenerfassung | Android |
| ODK Central | Server zur Formular- und Datenverwaltung | Web/Server |
| ODK Aggregate | Älterer Server (Vorgänger von Central) | Web/Server |
| ODK Build | Web-basierter Formular-Designer | Web |
| ODK Validate | CLI-Tool zur Formular-Validierung | Desktop |
| ODK Briefcase | Desktop-Tool für Daten-Synchronisation | Desktop |
| XLSForm | Excel-basiertes Formular-Design | Excel/Spreadsheet |
Hauptmerkmale¶
✅ Offline-Fähigkeit – Volle Funktionalität ohne Internetverbindung ✅ Open Source – Kostenlos und frei anpassbar ✅ Plattformunabhängig – Laufend auf Android, mit Web-Alternativen ✅ Skalierbar – Geeignet für kleine Projekte bis zu großen Studien ✅ Mehrsprachig – Unterstützung für über 100 Sprachen ✅ Erweiterbar – Plugins und Customizations möglich
🚀 Schnellstart¶
1. Installation von ODK Collect (Android)¶
Methode A: Google Play Store¶
- Öffne den Google Play Store auf deinem Android-Gerät
- Suche nach "ODK Collect"
- Installiere die App von ODK (Entwickler: ODK Team)
- Starte die App nach der Installation
Methode B: APK-Download¶
- Lade die neueste APK von ODK Downloads herunter
- Aktiviere auf deinem Gerät: Einstellungen → Sicherheit → Unbekannte Quellen
- Installiere die APK-Datei
- Starte ODK Collect
Methode C: F-Droid¶
- Installiere F-Droid (Open-Source App-Store)
- Suche nach ODK Collect
- Installiere die App
2. Installation von ODK Central (Server)¶
Voraussetzungen¶
- Ubuntu 20.04/22.04/24.04 oder Docker
- Mindestens 2GB RAM, 2 CPU-Kerne
- Domain oder IP-Adresse mit SSL-Zertifikat
Docker-basierte Installation (empfohlen)¶
# Verzeichnis erstellen
mkdir odk-central && cd odk-central
# docker-compose.yml erstellen
cat > docker-compose.yml << 'EOF'
version: '3'
services:
service:
image: getodk/central:latest
container_name: odk-central
ports:
- "8080:80"
- "8443:443"
volumes:
- central-data:/srv
environment:
- ODK_CENTRAL_DEFAULT_ADMIN_PASSWORD=your-secure-password
- ODK_CENTRAL_DEFAULT_ADMIN_EMAIL=admin@example.com
- ODK_CENTRAL_PERIODIC_BACKUPS=true
restart: unless-stopped
volumes:
central-data:
EOF
# Container starten
docker compose up -d
Die Oberfläche ist danach unter https://localhost:8443 erreichbar.
Manuelle Installation (ohne Docker)¶
Siehe Offizielle ODK Central Installationsanleitung
📝 Formular-Design mit XLSForm¶
Was ist XLSForm?¶
XLSForm ist ein Excel-basiertes Format zur Definition von Formularen für ODK. Es ermöglicht:
- Einfache Erstellung von Formularen ohne Programmierung
- Verwendung von Excel oder Google Sheets
- Definition von Validierungen, Skip-Logik und Berechnungen
XLSForm-Struktur¶
Ein XLSForm besteht aus mehreren Tabs (Blättern):
| Tab | Zweck | Pflicht |
|---|---|---|
| survey | Hauptfragen des Formulars | ✅ Ja |
| choices | Auswahlmöglichkeiten (z. B. für Multiple-Choice) | Nein |
| settings | Formular-Einstellungen | Nein |
Grundlegende Syntax¶
| Spalte | Inhalt | Beispiel |
|---|---|---|
| type | Fragetyp | text, int, select_one, select_multiple |
| name | Variable Name | age, gender |
| label | Frage-Text | Wie alt sind Sie? |
| hint | Hilfetext | Geben Sie Ihr Alter in Jahren an |
| required | Pflichtfeld | yes, no |
| constraint | Validierungsregel | . > 0 (muss > 0 sein) |
Fragetypen¶
| Typ | Beschreibung | Beispiel |
|---|---|---|
text |
Einzeiliger Text | Name, Adresse |
integer |
Ganzzahl | Alter, Anzahl |
decimal |
Dezimalzahl | Gewicht, Temperatur |
date |
Datum | Geburtsdatum |
time |
Uhrzeit | Beginnzeit |
datetime |
Datum + Uhrzeit | Zeitstempel |
select_one |
Single-Choice | Geschlecht, Status |
select_multiple |
Multiple-Choice | Interessen, Symptome |
yes_no |
Ja/Nein Frage | Ja oder Nein |
image |
Bildaufnahme | Foto hochladen |
audio |
Audioaufnahme | Sprachmemo |
video |
Videoaufnahme | Video aufnehmen |
geopoint |
GPS-Koordinaten | Standort erfassen |
geoshape |
Polygon/Area | Flächen erfassen |
calculate |
Berechnetes Feld | sum(${var1}, ${var2}) |
📱 ODK Collect: Bedienungsanleitung¶
Erste Schritte¶
- App starten – ODK Collect öffnen
- Server konfigurieren
- URL des ODK Central/ Aggregate Servers eingeben
- Benutzername und Passwort eingeben
- Verbindung testen
- Formulare herunterladen
- Auf "Formulare erhalten" klicken
- gewünschtes Formular auswählen
- Herunterladen wählen
- Formular ausfüllen
- Heruntergeladenes Formular öffnen
- Fragen beantworten
- Speichern (Zwischenspeicherung) oder Senden (Upload)
Wichtige Funktionen¶
| Funktion | Beschreibung |
|---|---|
| Entwurf speichern | Speichert unvollständige Formulare für spätere Fortsetzung |
| Senden | Lädt ausgefüllte Formulare an den Server hoch |
| Gesendete Formulare | Zeigt bereits hochgeladene Formulare an |
| Gespeicherte Formulare | Zeigt unvollständige/gespeicherte Formulare an |
🖥️ ODK Central: Serververwaltung¶
Dashboard-Übersicht¶
Nach dem Login sehen Sie:
- Projects – Ihre Projekte
- Forms – Formulare in jedem Projekt
- Submissions – Eingereichte Daten
- Users – Benutzerverwaltung
Projekt erstellen¶
- Auf "New Project" klicken
- Projektname eingeben
- Beschreibung hinzufügen (optional)
- Speichern
Formular hochladen¶
- In das gewünschte Projekt navigieren
- Auf "Upload Form" klicken
- XLSForm-Datei oder ZIP-Datei auswählen
- Formular-Details eingeben
- Upload
📊 Datenanalyse & Export¶
Daten exportieren¶
ODK Central unterstützt verschiedene Exportformate: - CSV – Für Excel, Python, R - JSON – Für API-Integration - OSM – Für GIS-Anwendungen
Beispiel: Python-Analyse¶
import pandas as pd
# CSV einlesen
df = pd.read_csv('odk-export.csv')
# Grundlegende Statistik
print(df.describe())
# Nach Geschlecht gruppieren
print(df['gender'].value_counts())
🔗 Weiterführende Ressourcen¶
- ODK Dokumentation
- ODK Collect Handbuch
- ODK Central Handbuch
- XLSForm Dokumentation
- ODK Community Forum
Hinweis: Diese Inhalte wurden mit Unterstützung von Künstlicher Intelligenz erstellt und redaktionell überprüft (Transparenzhinweis gemäß Art. 50 EU AI Act).