51
Grazer Linuxtage 2013 / Benedikt Sauter, [email protected] GNUBLIN, die offene Embedded- Plattform für die Ausbildung Benedikt Sauter Linuxtag Berlin 23.05.2013

Benedikt Sauter - LinuxTaglinuxtag.org/2013/fileadmin/ · 2013-05-26 · Grazer Linuxtage 2013 / Benedikt Sauter, [email protected] Ziele Projekt GNUBLIN Idee ca. 2007

  • Upload
    others

  • View
    15

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Benedikt Sauter - LinuxTaglinuxtag.org/2013/fileadmin/ · 2013-05-26 · Grazer Linuxtage 2013 / Benedikt Sauter, sauter@embedded-projects.net Ziele Projekt GNUBLIN Idee ca. 2007

Grazer Linuxtage 2013 / Benedikt Sauter, [email protected]

GNUBLIN, die offene Embedded- Plattform für die Ausbildung

Benedikt Sauter

Linuxtag Berlin

23.05.2013

Page 2: Benedikt Sauter - LinuxTaglinuxtag.org/2013/fileadmin/ · 2013-05-26 · Grazer Linuxtage 2013 / Benedikt Sauter, sauter@embedded-projects.net Ziele Projekt GNUBLIN Idee ca. 2007

Grazer Linuxtage 2013 / Benedikt Sauter, [email protected]

Zur Person

Benedikt Sauter Informatiker Interessen: Mikrocontroller, Linux, Web Diverse Open-Source Projekte

Page 3: Benedikt Sauter - LinuxTaglinuxtag.org/2013/fileadmin/ · 2013-05-26 · Grazer Linuxtage 2013 / Benedikt Sauter, sauter@embedded-projects.net Ziele Projekt GNUBLIN Idee ca. 2007

Grazer Linuxtage 2013 / Benedikt Sauter, [email protected]

GNU Board Linux

Page 4: Benedikt Sauter - LinuxTaglinuxtag.org/2013/fileadmin/ · 2013-05-26 · Grazer Linuxtage 2013 / Benedikt Sauter, sauter@embedded-projects.net Ziele Projekt GNUBLIN Idee ca. 2007

Grazer Linuxtage 2013 / Benedikt Sauter, [email protected]

Ziele Projekt GNUBLIN

Idee ca. 2007 / 2008 Einfachen Embedded Linux Rechner bauen Hochschule Augsburg Lernen, verstehen, Projekte bauen Besonders geeignet für Anfänger Einfaches Arbeiten mit dem Board

Ein USB Kabel reicht Software auf SD-Karte Einfache IO-Schnittstellen

Page 5: Benedikt Sauter - LinuxTaglinuxtag.org/2013/fileadmin/ · 2013-05-26 · Grazer Linuxtage 2013 / Benedikt Sauter, sauter@embedded-projects.net Ziele Projekt GNUBLIN Idee ca. 2007

Grazer Linuxtage 2013 / Benedikt Sauter, [email protected]

Wunsch

Komplexität kann später entdeckt werden Viele Beispielprogramme Alles Open-Source (Board, Software, Tools,

Unterlagen, Skripte) Messen, Steuern, Regeln

Page 6: Benedikt Sauter - LinuxTaglinuxtag.org/2013/fileadmin/ · 2013-05-26 · Grazer Linuxtage 2013 / Benedikt Sauter, sauter@embedded-projects.net Ziele Projekt GNUBLIN Idee ca. 2007

Grazer Linuxtage 2013 / Benedikt Sauter, [email protected]

Das Gnublin Board

7 x 7 cm / 2 Lagen

Page 7: Benedikt Sauter - LinuxTaglinuxtag.org/2013/fileadmin/ · 2013-05-26 · Grazer Linuxtage 2013 / Benedikt Sauter, sauter@embedded-projects.net Ziele Projekt GNUBLIN Idee ca. 2007

Grazer Linuxtage 2013 / Benedikt Sauter, [email protected]

Das Gnublin Board

(2-Lagen Platine)

Page 8: Benedikt Sauter - LinuxTaglinuxtag.org/2013/fileadmin/ · 2013-05-26 · Grazer Linuxtage 2013 / Benedikt Sauter, sauter@embedded-projects.net Ziele Projekt GNUBLIN Idee ca. 2007

Grazer Linuxtage 2013 / Benedikt Sauter, [email protected]

LAN & DIP

Mit Netzwerk, RTC, Relais Für 40 polige IC-Sockel

Page 9: Benedikt Sauter - LinuxTaglinuxtag.org/2013/fileadmin/ · 2013-05-26 · Grazer Linuxtage 2013 / Benedikt Sauter, sauter@embedded-projects.net Ziele Projekt GNUBLIN Idee ca. 2007

Grazer Linuxtage 2013 / Benedikt Sauter, [email protected]

Zusammenfassung

LPC3131 / 180 MHz / 32 MB RAM 18 x GPIO 4 x AD-Wandler I2C / SPI / UART PWM USB OTG (Host oder Device) → nur 0,5 Watt!!

Page 10: Benedikt Sauter - LinuxTaglinuxtag.org/2013/fileadmin/ · 2013-05-26 · Grazer Linuxtage 2013 / Benedikt Sauter, sauter@embedded-projects.net Ziele Projekt GNUBLIN Idee ca. 2007

Grazer Linuxtage 2013 / Benedikt Sauter, [email protected]

Was kann man damit machen?

Linux kennenlernen Embedded Systeme studieren Interpreter Sprachen verwenden Einfache Steuerungen bauen Datenlogger Fahrradcomputer, Kaffeemaschine steuern ...

Page 11: Benedikt Sauter - LinuxTaglinuxtag.org/2013/fileadmin/ · 2013-05-26 · Grazer Linuxtage 2013 / Benedikt Sauter, sauter@embedded-projects.net Ziele Projekt GNUBLIN Idee ca. 2007

Grazer Linuxtage 2013 / Benedikt Sauter, [email protected]

Wie geht man an so ein System ran?

● Vom Anfänger zum Guru werden● Die richtigen Themen zum richtigen Zeitpunkt● Für Anfänger muss alles funktionieren!● Der Anfänger ist kein Linux Guru!

Page 12: Benedikt Sauter - LinuxTaglinuxtag.org/2013/fileadmin/ · 2013-05-26 · Grazer Linuxtage 2013 / Benedikt Sauter, sauter@embedded-projects.net Ziele Projekt GNUBLIN Idee ca. 2007

Grazer Linuxtage 2013 / Benedikt Sauter, [email protected]

Die Grundregel: STOP!

Skriptsprache

Anfänger Fortgeschrittene Experte

Konsole Toolchain

Kernel /Bootloader

Treiber

Debugging

Netzwerk Patches

Page 13: Benedikt Sauter - LinuxTaglinuxtag.org/2013/fileadmin/ · 2013-05-26 · Grazer Linuxtage 2013 / Benedikt Sauter, sauter@embedded-projects.net Ziele Projekt GNUBLIN Idee ca. 2007

Grazer Linuxtage 2013 / Benedikt Sauter, [email protected]

Projekt Homepage

http://www.gnublin.org

Page 14: Benedikt Sauter - LinuxTaglinuxtag.org/2013/fileadmin/ · 2013-05-26 · Grazer Linuxtage 2013 / Benedikt Sauter, sauter@embedded-projects.net Ziele Projekt GNUBLIN Idee ca. 2007

Grazer Linuxtage 2013 / Benedikt Sauter, [email protected]

Wiki, Forum, Tutorials

Wiki Forum Tutorials

Downloads Projekte

Page 15: Benedikt Sauter - LinuxTaglinuxtag.org/2013/fileadmin/ · 2013-05-26 · Grazer Linuxtage 2013 / Benedikt Sauter, sauter@embedded-projects.net Ziele Projekt GNUBLIN Idee ca. 2007

Grazer Linuxtage 2013 / Benedikt Sauter, [email protected]

Schritt 1: Wiki!

http://wiki.gnublin.org

Page 16: Benedikt Sauter - LinuxTaglinuxtag.org/2013/fileadmin/ · 2013-05-26 · Grazer Linuxtage 2013 / Benedikt Sauter, sauter@embedded-projects.net Ziele Projekt GNUBLIN Idee ca. 2007

Grazer Linuxtage 2013 / Benedikt Sauter, [email protected]

Schritt 1: Forum

http://forum.gnublin.org

Page 17: Benedikt Sauter - LinuxTaglinuxtag.org/2013/fileadmin/ · 2013-05-26 · Grazer Linuxtage 2013 / Benedikt Sauter, sauter@embedded-projects.net Ziele Projekt GNUBLIN Idee ca. 2007

Grazer Linuxtage 2013 / Benedikt Sauter, [email protected]

Die Mission

3D-Drucker

Hausautomatisierung

Wetterstation

Fernsteuerung XYZ

HaustierüberwachungKleingarten

Page 18: Benedikt Sauter - LinuxTaglinuxtag.org/2013/fileadmin/ · 2013-05-26 · Grazer Linuxtage 2013 / Benedikt Sauter, sauter@embedded-projects.net Ziele Projekt GNUBLIN Idee ca. 2007

Grazer Linuxtage 2013 / Benedikt Sauter, [email protected]

Die GNUBLIN Module

● Temperatur-Sensor● Relaiskarte● GPIO Board● Schrittmotor● RTC● LCD● CAN● LAN● AD-Wandler

Page 19: Benedikt Sauter - LinuxTaglinuxtag.org/2013/fileadmin/ · 2013-05-26 · Grazer Linuxtage 2013 / Benedikt Sauter, sauter@embedded-projects.net Ziele Projekt GNUBLIN Idee ca. 2007

Grazer Linuxtage 2013 / Benedikt Sauter, [email protected]

Das muss total einfach gehen!

Idee

● Temperatursensor● Motor● Display

Das brauche ich:

(und ein Linux-Board)

Page 20: Benedikt Sauter - LinuxTaglinuxtag.org/2013/fileadmin/ · 2013-05-26 · Grazer Linuxtage 2013 / Benedikt Sauter, sauter@embedded-projects.net Ziele Projekt GNUBLIN Idee ca. 2007

Grazer Linuxtage 2013 / Benedikt Sauter, [email protected]

Das Herz: GNUBLIN-LAN

Page 21: Benedikt Sauter - LinuxTaglinuxtag.org/2013/fileadmin/ · 2013-05-26 · Grazer Linuxtage 2013 / Benedikt Sauter, sauter@embedded-projects.net Ziele Projekt GNUBLIN Idee ca. 2007

Grazer Linuxtage 2013 / Benedikt Sauter, [email protected]

Module-Temperature

Page 22: Benedikt Sauter - LinuxTaglinuxtag.org/2013/fileadmin/ · 2013-05-26 · Grazer Linuxtage 2013 / Benedikt Sauter, sauter@embedded-projects.net Ziele Projekt GNUBLIN Idee ca. 2007

Grazer Linuxtage 2013 / Benedikt Sauter, [email protected]

Module-Step

Page 23: Benedikt Sauter - LinuxTaglinuxtag.org/2013/fileadmin/ · 2013-05-26 · Grazer Linuxtage 2013 / Benedikt Sauter, sauter@embedded-projects.net Ziele Projekt GNUBLIN Idee ca. 2007

Grazer Linuxtage 2013 / Benedikt Sauter, [email protected]

Module-Display 2x16

Page 24: Benedikt Sauter - LinuxTaglinuxtag.org/2013/fileadmin/ · 2013-05-26 · Grazer Linuxtage 2013 / Benedikt Sauter, sauter@embedded-projects.net Ziele Projekt GNUBLIN Idee ca. 2007

Grazer Linuxtage 2013 / Benedikt Sauter, [email protected]

Module-Bridge

4 x

Page 25: Benedikt Sauter - LinuxTaglinuxtag.org/2013/fileadmin/ · 2013-05-26 · Grazer Linuxtage 2013 / Benedikt Sauter, sauter@embedded-projects.net Ziele Projekt GNUBLIN Idee ca. 2007

Grazer Linuxtage 2013 / Benedikt Sauter, [email protected]

Wie geht das?

Page 26: Benedikt Sauter - LinuxTaglinuxtag.org/2013/fileadmin/ · 2013-05-26 · Grazer Linuxtage 2013 / Benedikt Sauter, sauter@embedded-projects.net Ziele Projekt GNUBLIN Idee ca. 2007

Grazer Linuxtage 2013 / Benedikt Sauter, [email protected]

Tools

gnublin-gpio gnublin-adc gnublin-temperature gnublin-relay gnublin-pwm gnublin-wlan

Option -h (Hilfe) Option -b (Bare entspricht Klartext) Option -j (JSON)

gnublin-lm75 gnublin-cam gnublin-pca9555 gnublin-step gnublin-dogm gnublin-adcmod …

Page 27: Benedikt Sauter - LinuxTaglinuxtag.org/2013/fileadmin/ · 2013-05-26 · Grazer Linuxtage 2013 / Benedikt Sauter, sauter@embedded-projects.net Ziele Projekt GNUBLIN Idee ca. 2007

Grazer Linuxtage 2013 / Benedikt Sauter, [email protected]

Demo

Page 28: Benedikt Sauter - LinuxTaglinuxtag.org/2013/fileadmin/ · 2013-05-26 · Grazer Linuxtage 2013 / Benedikt Sauter, sauter@embedded-projects.net Ziele Projekt GNUBLIN Idee ca. 2007

Grazer Linuxtage 2013 / Benedikt Sauter, [email protected]

Open-Source

Alle Daten verfügbar Stücklisten Schaltplan Eagle Dateien ...

Page 29: Benedikt Sauter - LinuxTaglinuxtag.org/2013/fileadmin/ · 2013-05-26 · Grazer Linuxtage 2013 / Benedikt Sauter, sauter@embedded-projects.net Ziele Projekt GNUBLIN Idee ca. 2007

Grazer Linuxtage 2013 / Benedikt Sauter, [email protected]

Fortgeschritten

Die API

Page 30: Benedikt Sauter - LinuxTaglinuxtag.org/2013/fileadmin/ · 2013-05-26 · Grazer Linuxtage 2013 / Benedikt Sauter, sauter@embedded-projects.net Ziele Projekt GNUBLIN Idee ca. 2007

Grazer Linuxtage 2013 / Benedikt Sauter, [email protected]

Digitaler Ausgang

LED

Page 31: Benedikt Sauter - LinuxTaglinuxtag.org/2013/fileadmin/ · 2013-05-26 · Grazer Linuxtage 2013 / Benedikt Sauter, sauter@embedded-projects.net Ziele Projekt GNUBLIN Idee ca. 2007

Grazer Linuxtage 2013 / Benedikt Sauter, [email protected]

Digitaler Eingang

Anschlussklemme

Page 32: Benedikt Sauter - LinuxTaglinuxtag.org/2013/fileadmin/ · 2013-05-26 · Grazer Linuxtage 2013 / Benedikt Sauter, sauter@embedded-projects.net Ziele Projekt GNUBLIN Idee ca. 2007

Grazer Linuxtage 2013 / Benedikt Sauter, [email protected]

Analoger Eingang

Anschlussklemme

Page 33: Benedikt Sauter - LinuxTaglinuxtag.org/2013/fileadmin/ · 2013-05-26 · Grazer Linuxtage 2013 / Benedikt Sauter, sauter@embedded-projects.net Ziele Projekt GNUBLIN Idee ca. 2007

Grazer Linuxtage 2013 / Benedikt Sauter, [email protected]

gnublin.h / gnublin.cpp

→ gnublin.h / gnublin.cpp zum Download auf http://wiki.gnublin.org

Page 34: Benedikt Sauter - LinuxTaglinuxtag.org/2013/fileadmin/ · 2013-05-26 · Grazer Linuxtage 2013 / Benedikt Sauter, sauter@embedded-projects.net Ziele Projekt GNUBLIN Idee ca. 2007

Grazer Linuxtage 2013 / Benedikt Sauter, [email protected]

Anleitung CodeBlocks

Page 35: Benedikt Sauter - LinuxTaglinuxtag.org/2013/fileadmin/ · 2013-05-26 · Grazer Linuxtage 2013 / Benedikt Sauter, sauter@embedded-projects.net Ziele Projekt GNUBLIN Idee ca. 2007

Grazer Linuxtage 2013 / Benedikt Sauter, [email protected]

Anleitung Makefile

Page 36: Benedikt Sauter - LinuxTaglinuxtag.org/2013/fileadmin/ · 2013-05-26 · Grazer Linuxtage 2013 / Benedikt Sauter, sauter@embedded-projects.net Ziele Projekt GNUBLIN Idee ca. 2007

Grazer Linuxtage 2013 / Benedikt Sauter, [email protected]

API Referenz

Page 37: Benedikt Sauter - LinuxTaglinuxtag.org/2013/fileadmin/ · 2013-05-26 · Grazer Linuxtage 2013 / Benedikt Sauter, sauter@embedded-projects.net Ziele Projekt GNUBLIN Idee ca. 2007

Grazer Linuxtage 2013 / Benedikt Sauter, [email protected]

API Referenz Teil 2

Page 38: Benedikt Sauter - LinuxTaglinuxtag.org/2013/fileadmin/ · 2013-05-26 · Grazer Linuxtage 2013 / Benedikt Sauter, sauter@embedded-projects.net Ziele Projekt GNUBLIN Idee ca. 2007

Grazer Linuxtage 2013 / Benedikt Sauter, [email protected]

Page 39: Benedikt Sauter - LinuxTaglinuxtag.org/2013/fileadmin/ · 2013-05-26 · Grazer Linuxtage 2013 / Benedikt Sauter, sauter@embedded-projects.net Ziele Projekt GNUBLIN Idee ca. 2007

Grazer Linuxtage 2013 / Benedikt Sauter, [email protected]

Ja, wie Arduino

nur mit Linux „inside“ ...

Page 40: Benedikt Sauter - LinuxTaglinuxtag.org/2013/fileadmin/ · 2013-05-26 · Grazer Linuxtage 2013 / Benedikt Sauter, sauter@embedded-projects.net Ziele Projekt GNUBLIN Idee ca. 2007

Grazer Linuxtage 2013 / Benedikt Sauter, [email protected]

Page 41: Benedikt Sauter - LinuxTaglinuxtag.org/2013/fileadmin/ · 2013-05-26 · Grazer Linuxtage 2013 / Benedikt Sauter, sauter@embedded-projects.net Ziele Projekt GNUBLIN Idee ca. 2007

Grazer Linuxtage 2013 / Benedikt Sauter, [email protected]

Unterschied RaspberryPi?

● Rechenleistung 700 MHz – ARM11 (Pi)

● Rechenleistung 180 MHz – ARM9 (GNUBIN)

● Layout / Schaltplan: ???? (Pi)

● Layout / Schaltplan: Creative Commons (GNUBLIN)

● Stromverbrauch: 2,5 – 3,5 W

● Stromverbrauch: 0,25 – 1 W

Page 42: Benedikt Sauter - LinuxTaglinuxtag.org/2013/fileadmin/ · 2013-05-26 · Grazer Linuxtage 2013 / Benedikt Sauter, sauter@embedded-projects.net Ziele Projekt GNUBLIN Idee ca. 2007

Grazer Linuxtage 2013 / Benedikt Sauter, [email protected]

GNUBLIN meets Pi

Adapter-Platine für GNUBLIN Module Mit RaspberryPi nutzen!

Page 43: Benedikt Sauter - LinuxTaglinuxtag.org/2013/fileadmin/ · 2013-05-26 · Grazer Linuxtage 2013 / Benedikt Sauter, sauter@embedded-projects.net Ziele Projekt GNUBLIN Idee ca. 2007

Grazer Linuxtage 2013 / Benedikt Sauter, [email protected]

Gnublin Distribution

● Debian 6.0 Grundsystem

● Angepasster Kernel für GNUBLIN

● Bootloader

● Ein Ordner mit vielen Beispielen (Skripte, Programmbeispiele, etc.)

● GNUBLIN Pakete zum Installieren von Zusatzmodulen und Programm Zusammenstellungen

Page 44: Benedikt Sauter - LinuxTaglinuxtag.org/2013/fileadmin/ · 2013-05-26 · Grazer Linuxtage 2013 / Benedikt Sauter, sauter@embedded-projects.net Ziele Projekt GNUBLIN Idee ca. 2007

Grazer Linuxtage 2013 / Benedikt Sauter, [email protected]

Gnublin Installer

wxWidget C++ Download / Partitionierung SD-Karte beschreiben Bootloader / Kernel / RootFS

Page 45: Benedikt Sauter - LinuxTaglinuxtag.org/2013/fileadmin/ · 2013-05-26 · Grazer Linuxtage 2013 / Benedikt Sauter, sauter@embedded-projects.net Ziele Projekt GNUBLIN Idee ca. 2007

Grazer Linuxtage 2013 / Benedikt Sauter, [email protected]

Projekte

BewässerungKleingarten

Page 46: Benedikt Sauter - LinuxTaglinuxtag.org/2013/fileadmin/ · 2013-05-26 · Grazer Linuxtage 2013 / Benedikt Sauter, sauter@embedded-projects.net Ziele Projekt GNUBLIN Idee ca. 2007

Grazer Linuxtage 2013 / Benedikt Sauter, [email protected]

Page 47: Benedikt Sauter - LinuxTaglinuxtag.org/2013/fileadmin/ · 2013-05-26 · Grazer Linuxtage 2013 / Benedikt Sauter, sauter@embedded-projects.net Ziele Projekt GNUBLIN Idee ca. 2007

Grazer Linuxtage 2013 / Benedikt Sauter, [email protected]

Page 48: Benedikt Sauter - LinuxTaglinuxtag.org/2013/fileadmin/ · 2013-05-26 · Grazer Linuxtage 2013 / Benedikt Sauter, sauter@embedded-projects.net Ziele Projekt GNUBLIN Idee ca. 2007

Grazer Linuxtage 2013 / Benedikt Sauter, [email protected]

Projekt

UMTS Stick Relais-Board für Pumpe Temperatursensor Solarpanel / Bleiakku Webcam? ca. 100 mA / 24h? / 365 Tage? embedded projects Journal

Page 49: Benedikt Sauter - LinuxTaglinuxtag.org/2013/fileadmin/ · 2013-05-26 · Grazer Linuxtage 2013 / Benedikt Sauter, sauter@embedded-projects.net Ziele Projekt GNUBLIN Idee ca. 2007

Grazer Linuxtage 2013 / Benedikt Sauter, [email protected]

Mini Pult

Page 50: Benedikt Sauter - LinuxTaglinuxtag.org/2013/fileadmin/ · 2013-05-26 · Grazer Linuxtage 2013 / Benedikt Sauter, sauter@embedded-projects.net Ziele Projekt GNUBLIN Idee ca. 2007

Grazer Linuxtage 2013 / Benedikt Sauter, [email protected]

3D Drucker

Page 51: Benedikt Sauter - LinuxTaglinuxtag.org/2013/fileadmin/ · 2013-05-26 · Grazer Linuxtage 2013 / Benedikt Sauter, sauter@embedded-projects.net Ziele Projekt GNUBLIN Idee ca. 2007

Grazer Linuxtage 2013 / Benedikt Sauter, [email protected]

Ende

Fragen?