[LOGO] ITM praktiker - MULTI MEDIA & ELEKTRONIK
PROJEKT: "ITM µ-Butler" Microcontroller-Steuersystem | ITM praktiker Nr. 12/2003 u. ff.
[BILD] ITM µ-Butler Hauptplatine und Display

ITM µ-Butler - Projektübersicht

Start: ITM praktiker Nr. 12/2003 bis Nr. 9/2004. Ab Nr. 10/2004 bis Nr. 6/2006: Anleitung für Löten von SMD, Grundkurs für C-Programmierung, Beispielanwendungen etc.

Das Microcontroller-Steuersystem "ITM µ-Butler" basiert auf einem Atmel AVR Microcontroller AT90S8535 als Herzstück. Es gibt mehrere Ein- und Ausgänge, darunter auch eine Infrarot-Schnittstelle. Die Programmierung des eigenständig laufenden Moduls erfolgt über einen PC. Zudem gibt es ein kleines LC-Display. Realisierbar ist damit so ziemlich alles, was auf Basis von elektrisch erkennbaren Zuständen, Kombination von Bedingungen und Zeit gesteuert werden soll. Zu den "erkennbaren Zuständen" zählen nicht nur Widerstandswerte und einfache High-Low-Zustände, sondern auch die Auswertung eines Protokolls. Beispielsweise u.a. eine Steuerung über Infrarot-Geber, abhängig vom Inhalt einer via SMS einlangenden Nachricht.

Die Hardware inklusive der Analog-, Digital- und Infrarot-Schnittstellen sowie einige Applikationen werden im Rahmen der Bauanleitung vorgestellt. Bereitgestellt werden auch die Entwicklungs-Tools für eigene Programme, die sich recht einfach am PC entwickeln und über die Parallele Schnittstelle (Centronics) in den Programmspeicher von "ITM µ-Butler" hochladen lassen. - Wegen extrem kleiner Leistungsaufnahme kann "ITM µ-Butler" auch in Fahrzeugen eingesetzt werden, ohne dass dadurch der Bordakku während längerer Standzeiten "ausgesaugt" würde.



Projektbeschreibung: ITM µ-Butler Microcontroller-Steuersystem

[!> Die folgende Kurzfassung soll eine grobe Übersicht über das Projekt geben. Details finden Sie in den betreffenden Heften. Wenn Sie Fragen haben, die Sie in den Heften nicht beantwortet finden, so schreiben Sie uns bitte. Wir werden Ihnen dann sowieso gerne weiterhelfen. Wir wollen aber freilich nicht den Inhalt der Hefte in E-Mails wiederholen oder den Inhalt von Heften auszugsweise am Telefon - quasi - vorlesen.

"ITM µ-Butler" ist ein extrem leistungsstarkes, vielseitiges Microcontroller-Steuersystem auf Basis des Microcontrollers Atmel AVR AT90S8535. Das im "praktiker"-Labor entwickelte System bietet eine Vielfalt an Ein- und Ausgängen sowie Datenschnittstellen. Damit lässt sich prinzipiell alles realisieren, was mit einem Programm steuerbar ist und auf irgendwelche äußeren Zustände - u.a. durch Ändern von Schaltzuständen -reagiert. Das kann ein einlangendes SMS sein, das einen IR-Geber ansteuert, der wiederum einen Videorecorder steuert. Das kann ein komplexes Zeitmess-System sein. Der Entwickler-Phantasie sind kaum Grenzen gesetzt. Die Programme werden in einer Entwicklungsumgebung auf dem PC programmiert und einfach hochgeladen. - Die Bauanleitung umfasst nicht nur eine ausführliche Erläuterung der Funktion, sondern auch einen speziell auf diese Anwendung abgestimmten C-Programmierkurs für Einsteiger.

Mit "ITM µ-Butler" wird Ihnen eine universelle Plattform zum Lösen Ihrer individuellen Aufgaben an die Hand gegeben. Wir haben unsere eigenen Ideen zusammengefasst und auf einen gemeinsamen Nenner gebracht. Was brauchen wir alles um möglichst viele Ideen zu realisieren? Und wie macht man es, um die Kosten möglichst niedrig zu halten? Oft stecken die eigentlichen Kosten solcher Projekte nicht im Material, sondern vielmehr in der Software, die dieses Material erst brauchbar zu machen hilft. Daher brauchen wir eine vollständige, idealerweise kostenlose Entwicklungsumgebung für die Erstellung der eigentlichen Projekte.

Voraussetzungen die erfüllt werden sollten

Beispielsweise um per SMS den Videorecorder einzuschalten braucht man einen Microprocessor mit Programmspeicher und flüchtigen Speicher, eine Serielle Schnittstelle zu einem GSM-Datenadapter ("GSM-Modem"), einen Infrarotsender, Möglichkeiten zur Programmierung des Bausteins und Erstellung des Programms.

Man könnte das alles im Prinzip mühelos mit einem PC bewältigen, der obendrein komfortabel in der Programmierung wäre. Nur leider hat dieser einen hohen Strom- und vor allem Platzbedarf. Wenn es also stromsparend, oder gar batteriebetrieben sein soll, kommt nur eine Einplatinenlösung in Frage.

Am Markt wird eine Vielzahl von Microcontrollern angeboten mit mehr oder weniger überschneidenden Eigenschaften. Sehr viel wurde für den PIC entwickelt, aber die von uns geforderten Eigenschaften verlangen zusätzliche Peripherie. Die meisten 8051-Derivate bieten wiederum keine komfortable Bausteinprogrammierung an. Sodass nach vielen Streichungen als Ergebnis die AVR-Plattform von Atmel herausgekommen ist.

Warum die AVR-Plattform gewählt wurde

Die Gründe warum wir diese Plattform gewählt haben sind die gute Dokumentation und, dass Atmel der einzige Hersteller von Microcontrollern ist, der alles anbietet. Alle notwendigen Eigenschaften sind im Chip integriert und einfach zu benutzen. Und es gibt eine kostenlose, hervorragende Entwicklungsumgebung. Es gibt - auch kostenlose - professionelle C-Compiler sowie weiterführend im Internet eine Sammlung von Seiten, die sich diesem Thema widmen.

Was "ITM µ-Butler" alles beinhaltet

Unsere Anwendung ist also eine Microcontrollerbaugruppe, die von allem hat. Es gibt:

Solange man im kleinen Rahmen bleibt, kann man damit eigentlich jede Aufgabe lösen. Die Anordnung ist extrem stromsparend, hat kleine Ausmaße und ist leicht zu bestücken.

Was mit "ITM µ-Butler" alles machbar ist

Es werden für die Atmel-Controller auch fertige Evaluation-Kits angeboten. Im Wesentlichen sind das Platinen mit einem Controller und einem Mindestmaß an externen Bausteinen, um damit rasch einen Testaufbau zu machen. Das geht mit unserem "ITM µ-Butler" natürlich auch. Nur sind die CPU-Anschlüsse von uns bereits vollständig belegt und mit entsprechenden Schaltungen versehen.

Man braucht also nur mehr die zu messende Spannung anlegen und allenfalls die gewünschte Verstärkung und Filterung durch Bestückung einstellen. Und fertig ist die Anwendung.

Durch die universelle Belegung mit digitalen und analogen Ein- und Ausgängen setzt eigentlich nur die Phantasie den Anwendungsmöglichkeiten Grenzen. Von der Heizungssteuerung über die Humidor-Regelung, die elektronische Gartenbewässerung, die Fern-Videorecorderbedienung, die Alarmanlage bis hin zum Rundenzähler für Slotcars etc. lässt sich alles damit machen.

Damit eignet sich "ITM µ-Butler" auch für eine rasche Prototypenerprobung für industrielle Anwendungen. Die AVR-Familie wird vor allem im industriellen Bereich gerne verwendet.

Sie können also - bevor Sie teure Prototypen bauen -, feststellen ob die Umsetzung Ihrer Idee mit dem vorhandenen Flash-Speicher des Controllers auskommt, oder ob sie einen Typ mit größerem Speicher benötigen. Oder Sie machen eine Performance-Studie damit, um festzustellen ob die gebotene Geschwindigkeit ausreicht.

Was im Rahmen der Bauanleitung behandelt wird

Im Rahmen dieses Projektes wird die Grundschaltung der "ITM µ-Butler"-Platine erklärt und gezeigt, wie Sie mit Bestückungsvarianten die Anpassung an Ihre Anwendung rasch durchführen können.

[!> Bei entsprechendem Interesse im Leserkreis werden im Laufe der nächsten Jahre immer wieder neue Projekte damit vorgestellt und Ideen verwirklicht werden, für die es zum jeweiligen Zeitpunkt noch keine oder nur sehr teure Lösungen gibt.

Da die Werkzeuge zur Programmerstellung die Grundlage allen Arbeitens sind, wird ein Überblick über deren Funktion und Anwendung gegeben. Die Werkzeuge sind alle Freeware oder kostenlose Versionen mit limitiertem Funktionsumfang (wobei diese Limitierung für die Anwendung nicht beschränkend ist), sodass wir uns auf Kochrezepte und Quick-Referenzen beschränken können. Dem tiefergehend interessierten Praktiker stehen detaillierte Beschreibungen vom Hersteller zur Verfügung.

Da es leichter ist, vorhandene Lösungen zu modifizieren als alles selbst zu erfinden, werden jeweils die Quellcodes veröffentlicht. Die AVR-Familie von Atmel wurde in Zusammenarbeit mit führenden C-Compiler-Herstellern entwickelt, die beim Design des Microcodes mitwirken konnten. Daraus ergibt sich allerdings, dass der Controller nur sehr mühsam in Assembler zu programmieren ist. Die Mnemonics, die gewählt wurden, sind ein bisschen "ungewöhnlich". Deshalb werden alle Softwarebeispiele in der Programmiersprache C gezeigt. Und zwar so, das diese jederzeit mit einem frei verfügbaren C-Compiler kompiliert werden können.

Erste Lösungen mit "ITM µ-Butler"

Beispielsweise eine SMS-Fernsteuerung: Ein Mobiltelefon mit integrierter Modemschnittstelle wird mit der seriellen Schnittstelle des "ITM µ-Butler" verbunden und ermöglicht den Versand und den Empfang von SMS-Telegrammen. Sie tippen auf Ihrem Handy ein SMS, wie beispielsweise "Heizung einschalten", drücken auf "Absenden" und in Ihrem Wochenendhaus empfängt der "ITM µ-Butler" über das an ihn über eine Serielle Schnittstelle angeschlossene Handy dieses Telegramm und schaltet mit seinen Leistungsrelais die Heizung ein. Wenn Sie es so programmieren, kann Ihr "ITM µ-Butler" anschließend mit einem Quittungstelegramm antworten: "Befehl ausgeführt". Beispielsweise.

Die Möglichkeit - in Verbindung mit einem GSM-Handy - SMS abzusetzen und auszuwerten, eröffnet gewaltige Möglichkeiten.

Die Skala reicht vom Objektschutz bis hin zum Fernreset eines PC, einer Hochwasserüberwachung oder eines Alarms wenn die Tiefkühltruhe mangels Strom auftaut.

Die Kosten für ITM µ-Butler

Die Kosten für ITM µ-Butler liegen in der Größenordnung von 250 EUR für ein komplettes System mit weitestgehend fertig bestückter Hauptplatine, allen Bauteilen auf der Platine, Display und Programmierstecker-Platine ohne die Kosten für ein etwaiges Gehäuse, spezielle Stecker und Kabeln.

==> Platinen, Fertigteile und Bauteile-Sets im Rahmen des "praktiker LeserClub"

Realisieren Sie auch Ihre Ideen!

Wir haben uns bemüht, Ihnen den Einstieg so leicht wie möglich zu machen und Ihnen jenes Basiswissen an die Hand zu geben um eigene Lösungen erarbeiten zu können. Also auch dann, wenn diese Materie für Sie ganz neu ist.

| PROJEKT ITM µ-Butler - Projektübersicht |

Sie sollten einen Sinn für Logik haben - gute Löt-Kenntnisse wären vorteilhaft

Das Projekt "ITM µ-Butler" ist nichts für blutige Laien, was Sie wohl bereits unserer Projektbeschreibung entnehmen können. Vom Start weg wird jeder, der in der Entwicklung arbeitet und mit dem Umgang mit Microcontrollern vertraut ist, damit zurecht kommen. Jene, die bereits den eingesetzten Microcontroller kennen und nach einem komplett ausgestatteten Evaluations-Board dafür suchen, bekommen mit "ITM µ-Butler" eine sehr preisgünstige und vor allem komplette Lösung zur Prototypenerprobung, wie es sie in dieser Form derzeit sonst nicht gibt.

Wenn Sie aber kein professioneller Entwickler sind, werden Sie sich sicherlich ausgiebiger damit auseinandersetzen müssen. Sie können damit bislang nicht realisierbare Aufgaben lösen und es ist damit spannender als jedes noch so ausgefeilte Computer-Spiel. Vor allem bekommen Sie als Ergebnis nicht einen High-Score, sondern ein reales Erfolgserlebnis.

Folgende Fertigkeiten brauchen Sie für den Bau und den Einsatz von "ITM µ-Butler":

  1. Basis-Kenntnisse beim Aufbau von elektronischen Schaltungen sollten Sie schon haben. Wenn Sie erst großartig überlegen müssen um die richtige Einbaulage für einen Bauteil zu finden oder überhaupt den Typ des Bauteils zu erkennen oder wenn Sie Probleme haben, die Drahtverbindungen korrekt herzustellen, dann ist "ITM µ-Butler" ganz sicher nicht das richtige Projekt um die ersten Erfahrungen zu sammeln.
  2. Löten konventionell großer Bauteile und auch SMDs. Sie sollten mit dem Lötkolben umgehen können. Schwieriger dabei ist das Montieren der winzigen SMDs. Zum Löten von SMDs gibt es eine detaillierte Anleitung im Rahmen der Bauanleitung. Üben Sie an kaputten Baugruppen (Ausschlacht-Platinen). Sie werden vielleicht einige Stunden lang üben bis Sie dabei sicher sind. Um nicht Gefahr zu laufen, Bauteile oder die Platine zu beschädigen. Mit etwas gutem Willen und einer ruhigen Hand ist das kein Problem.

    [!> Wenn Sie die beiden ersten Punkte - den Aufbau der Hardware - nicht selbst bewältigen können, dann bitten Sie lieber einen einschlägig versierten Freund darum, Ihnen diese Arbeiten abzunehmen. Die hauptsächliche Herausforderung des "ITM µ-Butler" ist schließlich die Programmierung und das Entwickeln von Anwendungen. Der Bau der Hardware ist dabei in Wirklichkeit eher eine Nebenaufgabe.

  3. Etwas Rechenarbeit zur Dimensionierung. Die Schaltung des Hauptteils ist komplett fertig und braucht daher nur noch nach der Anleitung aufgebaut werden. Um allerdings flexibel bei den Einsatzmöglichkeiten der Schnittstellen zu sein, gibt es mehrere Möglichkeiten, diese zu beschalten (Anpassung an die Ausgabe-Werte von Sensoren, beispielsweise) - oder auch ungenutzt zu lassen. Im Rahmen der Bauanleitung gibt es Anleitungen zur Berechnung der Dimensionierung der Bauteile für die von Ihnen gewünschte Anwendung. Dazu müssen Sie sich nur etwas genauer damit auseinandersetzen und Ihren Taschenrechner zur Hand nehmen.
  4. Programmieren. Das Programmieren des "ITM µ-Butler" ist die eigentliche Herausforderung bei diesem Projekt. Es wird die Programmiersprache "C" verwendet. Wenn Sie
    • diese bereits kennen, ist die Programmierung eine Kleinigkeit für Sie.
    • eine Ahnung von Programmierung - durch Erfahrung mit anderen Programmiersprachen - haben, dann werden Sie sich sehr gut zurechtfinden mit unserem "Grundkurs für C" im Rahmen der Bauanleitung, der speziell auf die Verwendung mit "ITM µ-Butler" abgestimmt ist.
    • blutiger Laie in der Programmierung sind, dann müssen Sie das freilich erst von Grund auf lernen. Ausreichende Unterstützung dafür wird ebenfalls im Rahmen der Bauanleitung geboten durch Erläuterung der Grundprinzipien. In Verbindung mit dem "Grundkurs für C" und der Analyse des Quellcodes von Muster-Programmen werden Sie mit Ihrem Verständnis für logische Abläufe die Technik recht bald durchblickt haben. "praktiker" empfiehlt, vorerst vorhandenen Quellcode, von dem Sie die Funktion kennen zu modifizieren. Durch Text-Kommentare im Quellcode unserer Muster-Programme wird die Funktion der Programmierschritte erläutert.
      Beispiel: Angenommen, das Programm schließt (schaltet) in einem Programmschritt einen Ausgang für zwei Sekunden lang. Es wird dann vorerst einfach sein, das Programm so zu ändern, diesen Ausgang für vier Sekunden zu schließen (schalten). Es wird dann auch einfach sein, einen anderen Ausgang für vier Sekunden zu schließen (schalten). Nach der Erforschung der Logik werden Sie dann verschiedene im Muster-Quellcode vorhandene Programmschritte so verwenden und umgruppieren sodass sich ein völlig neues Programm ergibt. Sie werden darüber sicherlich einige Nächte lang brüten. Dann können Sie aber prinzipiell schon programmieren. Später werden Sie sich dann mit Feinheiten beschäftigen können. Lesen Sie dabei mehrmals unseren "Grundkurs für C", von dem Sie je nach Ihrem jeweils aktuellen Erfahrungsschatz immer mehr verstehen werden und Ihnen damit dieses schon recht gute Grundwissen "in Fleisch und Blut übergeht".

    [!> Der "Basiskurs für C" im Rahmen der Bauanleitung zu "ITM µ-Butler" ist übrigens auch dem erfahrenen C-Programmierer empfohlen, da darin einige Verfahren erläutert sind wie das in dieser Zusammenstellung in der einschlägigen Fachliteratur derzeit nicht zu finden ist.

  5. Ihr Erfindergeist zum Erkennen von Problemen und Finden von Lösungen ist gefordert. Der eigentliche Zweck von "ITM µ-Butler" ist es, bestimmte Aufgaben zu lösen, also Vorgänge automatisiert ablaufen zu lassen, das Vorhandensein von Bedingungen abzufragen, auszuwerten und entsprechende Aktionen an den Ausgängen von "ITM µ-Butler" auszulösen. Wenn Sie dies hier lesen haben Sie sowieso schon eine gewisse Portion Erfindergeist. Ansonsten würden Sie sich für "ITM µ-Butler" nicht interessieren. Es geht also - wie bei der Anwendung jeder Technik - im ersten Schritt darum, genau zu kennen wie diese arbeitet, welche Möglichkeiten Sie bietet. Dieses Wissen wird ausführlich im Rahmen der Bauanleitung vermittelt. Einige Ideen werden Ihnen auch gegeben. Diese können Sie selbst weiterspinnen und auch - das wäre wohl das Ziel - ganz neue, eigene Lösungen entwickeln.
| PROJEKT ITM µ-Butler - Projektübersicht |

In welchen "praktiker"-Heften die Bauanleitungen enthalten sind

Die Projektbeschreibung zum "praktiker"-Projekt "ITM µ-Butler" finden Sie hier auf dieser Seite. Die in Heft Nr. 9/2003 erschienene - ausführlichere - Projektbeschreibung ist möglicherweise nicht mehr aktuell.

Die Bauanleitung gliedert sich in die eigentliche Bauanleitung, Einführung in die Programmierung der Firmware, Beispielanwendung und Dimensionierung von Peripherie (Anleitung für die Selbstberechnung bereits in der Bauanleitung enthalten).

  1. Komplette Bauanleitung für Hauptplatine und Programmierstecker inkl. Dimensionierung für On-board-Beschaltung und Peripherie (SMD): ITM praktiker Nr. 12/2003 sowie Nr. 4/2004 bis Nr. 9/2004, Nr. 11 /2004 (nur Seite 10: aktualisierter Schaltplan) (= 7 Hefte, 28 Seiten).
  2. Genaue Anleitung für Löten von SMT-Bauteilen (SMD): ITM praktiker Nr. 10/2004 (= 1 Heft, 5 Seiten)
  3. Essentielles zur Programmierung allgemein und Inbetriebnahme, Hochladen der Firmware (Beispielprogramm für erste Inbetriebnahme herunterladbar von "praktiker"-Website): ITM praktiker Nr. 11/2004 (= 1 Heft, 4 Seiten)
  4. Grundkurs in C-Programmierung speziell zur Anwendung für "ITM µ-Butler": ITM praktiker Nr. 12/2004, Nr. 1-2, 4 und 5 / 2005 (= 4 Hefte, 14 Seiten)
  5. Beispielprojekt "Infrarotbefehle senden und empfangen": ITM praktiker Nr. 6, 11 / 2005, Nr. 1-2, 3 / 2006 (Achtung: Überschneidung mit "Telemetrie ...", ebenfalls in Heft Nr. 3/2006) - (= 4 Hefte, 12 Seiten)
  6. Telemetrie, Grundlagen: ITM praktiker Nr. 3, 6 / 2006 (Achtung: Überschneidung mit "Infrarotbefehle ...", ebenfalls in Heft Nr. 3/2006) - (= 2 Hefte, 7 Seiten)

[!> Für Nachbestellungen wählen Sie bitte aus, was Sie davon brauchen. Wenn Sie bereits mit einem Microcontroller dieses Typs gearbeitet hatten und "ITM µ-Butler" eigentlich nur als erweitertes Evaluationsboard anschaffen wollen, dann werden Sie mit der Bauanleitung allein (Punkt 1) zurecht kommen. Ansonsten empfehlen wir Punkt 1 und Punkt 3 als für Bau und Verwendung zumindest erforderliche Unterlagen. Was Sie sonst noch brauchen richtet sich freilich danach, was Sie mit "ITM µ-Butler" realisieren wollen resp. wie weit Sie bereits mit dieser Materie vertraut sind.

==> Downloads Berechnungshilfen, ergänzendes Material für Erbauer und Entwickler
==> Korrekturen, Ergänzungen zur Bauanleitung und Ersatztypen für Bauteile
==> Nachbestellung bereits erschienener Hefte

| PROJEKT ITM µ-Butler - Projektübersicht |

Wo Sie die Bestandteile für den Bau erhalten

"ITM µ-Butler" kann auch ohne hohe Elektronik-Kenntnisse aufgebaut werden. Einige Übung ist nur erforderlich für die Bestückung der SMD-Gruppe für die Analog-Schnittstelle. Für das Löten von SMDs gibt es eine Anleitung im Rahmen der Bauanleitung.

"ITM µ-Butler" besteht aus drei Elementen:

[!> Über den "praktiker-LeserClub" ist nur das Komplett-Set verfügbar!

==> Platinen, Fertigteile und Bauteile-Sets im Rahmen des "praktiker LeserClub"

| PROJEKT ITM µ-Butler - Projektübersicht |

[!] Die Bauanleitung ist ausschließlich im Heft veröffentlicht. - Der gewerbliche Nachbau oder gewerbliche Einsatz spezieller Schaltungsdetails sowie die gewerbliche Anfertigung von Platinen ist verboten (z. B. Verkauf von Fertiggeräten etc.). Die Zusammenstellung von Bauteilesammlungen zu "praktiker"-Projekten und deren Angebot ist freilich gestattet.


| praktiker.at Top | ITM µ-Butler |
© 2004-2023 by Felix Wessely, Wien (Austria) - All rights reserved - Permalink - Nutzungsbedingungen - Impressum