Python macht Embedded Linux angenehmer



Ähnliche Dokumente
Embedded GNU/Linux mit Gnublin

GNUBLIN, die offene EmbeddedPlattform für die Ausbildung

GNUBLIN - Embedded Linux für Alle

Einführung in die Welt der Microcontroller

Embedded Linux gnublin Board Programmieren Sonstiges. Embedded Linux am Beispiel des Gnublin-Boards

Linux Embedded. Heimo Schön/August Hörandl 11/2004 Seite 1/17

embedded projects GmbH

Die Technik hinter IoT: Arduino, Raspberry Pi & Co.

Meine SPS kann Linux, und nun?

Inbetriebnahme des Willem Programmers PCB5-E. Die Software GQUSBprg 0.98d6 Willem Enhanced / Dual Power Programmer PCB5.

Wir machen neue Politik für Baden-Württemberg

[ Experiment- und Datenprotokollierung. mit der EV3 Software]

Microcontroller Kurs Microcontroller Kurs/Johannes Fuchs 1

32-Bit Microcontroller based, passive and intelligent UHF RFID Gen2 Tag. Zürcher Fachhochschule

Freier Linux Kernel für den Virtex4 FX12

Spectra-Panel IW 0840 V.1

Embedded Touch Panel PC OTP/57V

Anwendungen mit RaspberryPi und dem Elektor Linux Board (GNUBLIN) Benedikt Sauter,

Pflichtenheft. Projektteam. Rexford Osei - Frey Michael Weichert Thomas Thutewohl. Pflichtenheft Seite 1 von 7

CU-R-CONTROL. Beschreibung zur Schaltung ATMega16-32+ISP MC-Controller Steuerung auf Basis ATMEL Mega16/32. Autor: Christian Ulrich

Computergruppe Heimerdingen Basiskurs. Karlheinz Wanja & Richard Zeitler

Elektronik-Lösungen. Ihre Idee wird zum Produkt. i-bl Elektronik GmbH. Telefon: +49 (0) 7520 / Fax: +49 (0) 7520 /

Es besteht die Möglichkeit eine Batterieüberwachung der Drohne mit dem Mikrocontroller zu implementieren.

Microsoft.NET Gadgeteer: Ein raffinierter Weg zum Embedded-Produkt. ECC 2013 Marcel Berger

Atmel AVR für Dummies

Was unterscheidet Microcontroller von einem PC ( Laptop ) oder einem Handy

Gforth EC auf dem NXT Brick

HF Long Range Reader ID ISC.LR(M)2500

Das Unternehmen. Gründung: Elektrotechnik, Industrieelektronik

Miniaturisierter Sensorknoten mit BLE Gateway für das IoT. Ein Projekt des I3S der Berner Fachhochschule

SU Egerlandstr. 24a, Moosburg 08761/4245 oder 63708, FAX Vorteile der Cartridges

Workflows verwalten. Tipps & Tricks

Mikrocontroller Grundlagen. Markus Koch April 2011

Das Pollin Atmel Evaluationboard Ver unter Verwendung von MyAVR_Prog Tool und der Arduino IDE ein Kurztutorial

Konzeption und Implementierung einer Videodigitalisierung und Videoausgabe unter Embedded Linux. Kolloquium von Frank Schwanz

Duonix Service Software Bedienungsanleitung. Bitte beachten Sie folgende Hinweise vor der Inbetriebnahmen der Service Software.

Kurzanleitung. Scenter. Bestimmungsgemäße Verwendung: Zur direkten Datenerfassung.

Besicomm Leistungserfassung

Netduino Mikroprozessor für.net Entwickler

Steuerung DLS ECKLITE SC und SC xx-enc

Hex Datei mit Atmel Studio 6 erstellen

Vario Projekt Kobo und Bluetooth

Linux Terminal mit Ethernet und Java. Eine dynamische Plattform für Automatisierungsapplikationen?

Installation OMNIKEY 3121 USB

Stefan Schmidt 28. Mai 2006

Fragen und Antworten. Kabel Internet

1. Warum gibt es Virus Meldung beim Download der Software JNVR? Aber Bitte die Datei nur aus der Webseite: herunterladen.

AVR-Mikrocontroller mit dem GCC programmieren

Roberta - Tutorial Unterschiede EV3/NXT. Fraunhofer IAIS. v0.1_ TL, BJ

I/O Module TIOS Testsysteme.

Produkte. onsulting. roject. uhl ohannes. Bezeichnung. Automationsstationen

Vorläufige Dokumentation

Kapitel 2: Die edle Hardware

Installationsanleitung für das Touch Display: S170E1-01 LCD A170E1-T3 ChiMei - egalaxy

Teamentwicklung. Psychologische Unternehmensberatung Volker Rudat

Checkliste für die Behebung des Problems, wenn der PC Garmin USB GPS-Geräte nicht erkennt.

Inhaltsverzeichnis. Getting Started with TRM416/816 System Beispiel: TRM816 Open Frame mit RFID an COM2

AVR Experimentierboard

Programmierung Tiny45 für DCC Lokdecoder

Studienkolleg der TU- Berlin

Lasersteuerung. Themengruppen FTDI - Interface ILDA Format Ausgabensteuerung Figurenerstellung Lasershowerstellung Lasershowarten Software / Community

Wenn man nach Beendigung der WINDOWS-SICHERUNG folgendes angezeigt bekommt

Java Entwicklung für Embedded Devices Best & Worst Practices!

Einführung in Peer-To-Peer (P2P) Datenstreaming mit NI FlexRIO

Bau und Programmieranleitung für den IR - Booster. Vorbemerkungen

Die Software ActiveSync solte standardmäßig bei Ihrem PDA enthalten sein. Fals nicht, dann finden Sie auch hierfür einen Link unter

Anleitung zur Nutzung des SharePort Utility

Die Post hat eine Umfrage gemacht

BLIT2008-Board. Uwe Berger

Lego Roboter mit NXT-G programmieren. Hochschule Mannheim

NKR in Schleswig-Holstein Was hat sich geändert und was kommt noch?

Anwendungsbeispiele Sign Live! Secure Mail Gateway

XY-Plotter. Hardware. Software µp. Software PC. von Thomas Wagner

Menschen und Natur verbinden

Flyer, Sharepics usw. mit LibreOffice oder OpenOffice erstellen

C und C++ für Embedded Systems

Stefan Schaper. Dipl. Sozialpädagoge und Eltern-Medien-Trainer

Konzentration auf das. Wesentliche.

Allgemeine Anleitung Treiber für CP2102

Hybride Apps DPR und Android auf dem Xilinx ZYNQ. Endric Schubert, Missing Link Electronics Fabian Zentner, Univ. Ulm

RF-Explorer Handheld Spektrum Analyser und Handheld Signal Generator

GTA04: Wie stopft man eine neue CPU (OMAP3) in den Freerunner?

Update / Inbetriebnahme domovea Server. Update/Inbetriebnahme domovea Server Technische Änderungen vorbehalten

Netbooks in der (Linux)-Praxis

Windows 10 November Update from the scratch Installation

Anleitung für Vorlesungsaufzeichnungen mit Lecturnity. (im ZHG und diversen anderen Räumen der Universität Göttingen)

Platinen mit dem HP CLJ 1600 direkt bedrucken ohne Tonertransferverfahren

Übersicht und Dokumentation der Reset- Funktionen der IO CONNECT

HighTecBot: Ein Roboter-Baukastensystem zur Unterstützung der Informatik-Lehre an Hochschulen. Prof. Dr. Martina Lehser Embedded Robotics Lab

Erster Schritt Vom Herunterladen bis zum Programmieren

Anschluss des ISP-Programmieradapters. Erste Programmierung mit Bascom

Eigene Dokumente, Fotos, Bilder etc. sichern

D.E.O. Die Erwachsene Organisation. Lösungen für eine synergetische Arbeitswelt

Auswertung JAM! Fragebogen: Deine Meinung ist uns wichtig!

Making the Internet of Things

Spieglein, Spieglein an die Wand

AVR Net-IO. Der originale von Pollin vertriebene Bausatz hat folgende Eckdaten:

Zusatzplatine MP-Bus HZS 562

Transkript:

Python macht Embedded Linux angenehmer Hubert Högl Hubert.Hoegl@hs-augsburg.de http://www.hs-augsburg.de/~hhoegl Hochschule Augsburg 2. Juli 2010 H. Högl () FuE 2010 2. Juli 2010 1 / 14

Embedded Linux Hardware klein (10 5cm), preiswert ( 50 Euro) Software nicht x86, sondern SoC stromsparend ( 1W) schnell (100-400 MHz) Flash Speicher 16 bis 128 MByte SDRAM Speicher 16 bis 128 MByte viele Schnittstellen: UART, SPI, I2C, PWM,... Vollständiges Linux (wie PC) Ideal zum Messen, Steuern und Regeln Grasshopper (AVR32, 150 MHz) H. Högl () FuE 2010 2. Juli 2010 2 / 14

Was ist so schwierig dran? Trennung von Entwicklungsrechner (PC) und Target verwirrt Anfänger. Keine Standard-Distributionen wie bei PC-Linux. Cross Bau-Umgebungen riesig, komplex und für Experten gemacht ( Buildroot, OpenWRT,... ) Einige Jahre Linux Erfahrung notwendig Alles wird in C programmiert. Kernel/Treiber Dickicht. Kein einheitliches API für Hardware-Schnittstellen (aber Tendenzen zur Konsolidierung). Nur für Gurus Frustration beim Anfänger. Viel gelernt durch Leidensgeschichten aus Mechatronik, Maschinenbau und meiner Embedded Linux Veranstaltung. Menschen haben gute Ideen, aber leider nur geringe Chancen bei der Umsetzung. H. Högl () FuE 2010 2. Juli 2010 3 / 14

Am Anfang war Wall-E http://thomasboegle.de/walle.htm (Mechatroniker) Schau-Roboter mit etwa 12 Servomotoren. H. Högl () FuE 2010 2. Juli 2010 4 / 14

Embedded bedeutet Schnittstellen DAC RTC ADC WiFi Sensoren TFT Display Touch Controller LAN Mobilfunk Modem GPS RS 485 Eth UART SPI CAN I2C Embedded Linux Hardware PWM Standardisierte industrielle Servomotoren Steuerungskomponenten Display GPIO USB Interrupts Tasten LEDs Motoren Flash Dongle Tastatur Maus H. Högl () FuE 2010 2. Juli 2010 5 / 14

Wir brauchen eine Interpretersprache! Python, na klar! Erweitere batteries included auf Embedded Systems Programming. H. Högl () FuE 2010 2. Juli 2010 6 / 14

Software in Schichten GPIO Python SPI I2C PWM S PWM etc. User Kernel SoC Hardware Python Erweiterung (.so) Treiber HW naher Code Hardware Modul H. Högl () FuE 2010 2. Juli 2010 7 / 14

Python Schnipsel # ### GPIO Demo ### import gpio from time import sleep a = gpio.gpio(23, "out") a.direction = "out" while(1): a.value = 1 sleep(1) a.value = 0 sleep(1) # ### PWM Demo ### import pwm, time a = pwm.pwm(0) a.start() a.period = 1000000; a.polarity = 0 i = 0 while (i < a.period): a.duty = i time.sleep(0.001) i += 1000 a.polarity = 1 i = 0 while (i < a.period): a.duty = i time.sleep(0.001) i += 1000 a.stop() H. Högl () FuE 2010 2. Juli 2010 8 / 14

Ziele Einfache Anwendbarkeit Viele Schnittstellen GPIO UART, SPI, I2C PWM, Soft-PWM CAN ( socketcan ) 1-Wire Drahtlose Kommunikation (Zigbee, Bluetooth, IrDA) Sammlung von Peripheriebauelementen als Python Objekte (ADC, DAC, RTC, EEPROM,... ) Mehr Plattformen AVR32 ARM9, Cortex A5/A8/A9 x86 (mit USB I/O Erweiterung) Echtzeit (RTAI, Xenomai) H. Högl () FuE 2010 2. Juli 2010 9 / 14

Status Volker Thoms Diplomarbeit bringt grossen Fortschritt (1/2010). Plattform AVR32 auf Network Gateway 100 (NGW100). Cross-Kompilierung von Python schwierig, aber im Prinzip gelöst Zwei Tage Aufwand für Python 2.6.4. Umstieg von OpenWRT auf Buildroot TU Berlin, Maschinenbau (Prof. Meyer) Tests mit ARM926 (Atmel SAM9G45, 400 MHz) Ziel: Demonstrator auf Embedded World 2011 (März 2011) Suche Diplomanden H. Högl () FuE 2010 2. Juli 2010 10 / 14

Literatur Diplomarbeit von Volker Thoms (CC) http://elk.informatik.fh-augsburg.de/da/da-49 Python Dokumentation (vor allem Extending and Embedding ) http://www.python.org/doc/ Python-on-a-Chip (anderer Ansatz) http://code.google.com/p/python-on-a-chip H. Högl () FuE 2010 2. Juli 2010 11 / 14

Board mit SAM9G45 Ziel: Ein Board bauen mit SAM9G45 (ARM926EJ-S, 400 MHz), das für 50 Euro von Studenten und sonstigen Interessierten gekauft werden kann. Es wird bei den Veranstaltungen Embedded Systems und Embedded Linux eingesetzt werden. Das wäre eine hervorragende Python Plattform! Offenes Gemeinschaftsprojekt: git clone git://elk.informatik.fh-augsburg.de/srv/git/repositories/g45board.git Zur Zeit Benedikt Sauter (http://www.embedded-projects.net) und ich. Interessenten melden sich bei Hubert.Hoegl@hs-augsburg.de. H. Högl () FuE 2010 2. Juli 2010 12 / 14

Board mit SAM9G45 (2) PWM 0/1/2/3 ISI LCD PIO TSC/ ADC USART 0/1/2/3 TWI SPI 0/1 0/1 EBI GCap/Batt Power / State AVR I/O USB ISP Mega32U4 AVR 32 khz DBGU JTAG/UART INTR RESET TWI SAM9G45 ARM926EJS 400 MHz SD 0/1 USB Device USB Host 2010 04 07 V0.2 Power 1.0 32 Bit Supply 3 x LM1117 PWR CONN 1.8 3.3 External Power DM9161 eth 2 x SDRAM Data Flash 8MB GNUBLIN ARM9 Evalboard <Hubert.Hoegl@hs augsburg.de> H. Högl () FuE 2010 2. Juli 2010 13 / 14

Board mit SAM9G45 (3) Atmel SAM9G45 mit ARM926EJ-S Core H. Högl () FuE 2010 2. Juli 2010 14 / 14