2 Systemdesign
Prozess 2: Hardware-Auswahl und Modularisierung
Input Products | Work | Output Products |
---|---|---|
IP1: Projekidee IP2: Projekt-Definition | W1. Eine Einteilung in grobe Software- und Elektronikmodule wurde erstellt W2.1) Die Anforderungen an Hardwareelemente wurden spezifiziert W3. Die passenden Hardwareelemente wurden gefunden W4. Die Verfügbarkeit der Elemente wurde geprüft W5. Der Betreuer wurde über die Hardwarekomponenten informiert | |
Input Condition | Output Condition | |
1) zu W2: Hardware-Anbieter und typische Komponenten |
Allgemeines
- Schaltung modularisieren : Bei Schaltungen und Software bietet es sich an, stark zu modularisieren. Ziel ist dann unter anderem die einzelnen Module separat entwickeln und testen zu können. Dazu sollte gewährleistet werden, dass die Module auch tatsächlich einzeln testbar sind. Hierfür können niederohmige Widerstände („$0 ~\rm\Omega$“) oder Lötjumper genutzt werden. Mit diesen lassen sich Teile der Schaltung bei Bedarf separieren oder verbinden.
- Komponenten suchen: Falls Sie noch nicht wissen, wie Ihre gesuchte Komponente heißt, sollten Ihnen folgende Tipps helfen:
- Suchen Sie die Komponente nicht (nur) auf deutsch. Die Ergebnisse vermehren sich um ein Vielfaches, wenn in Englisch gesucht wird.
- Nutzen Sie die Bildersuche, wenn Sie den genauen Begriff nicht kennen.
- Bei unklaren Begriffen, bieten sich auch folgende Suchworte an:
Arduino
+ <englische Übersetzung von dem „Ding“ was gesucht wird> + ggf.Project
. Alternativ bietet sich statt Arduino auchAVR
oderAtmel
an. Häufig hilft auch die Suche nachIC
+ <..> für integrierte Schaltkreise. Als Quelle bietet sich häufig Github an. Dies kann bei der Suche übersite:github.com
berücksichtigt werden.
- Eignung der gefundenen Komponenten überprüfen: Mouser und TME bieten eine gute Detailsuche für bekannte Komponenten. Diese lässt eine Eingrenzung der Komponenten durch die Auswahl von Eigenschaften zu. Nutzen sie diese, wenn Sie auf der Suche nach neuen Komponenten sind.
- Wählen Sie bei der Suche auch „auf Lager“ aus, damit nur die vorhandenen Komponenten angezeigt werden.
- Wichtig ist bei einem geeigneten Bauteil immer der Blick ins Datenblatt. Die Suchmaschinen verwenden gelegentlich veraltete und falsche Angaben.
- Blick in Datenblätter der ICs : Prüfen Sie
- den elektrischen Arbeitsbereich. Die „Absolute maximum ratings“ sind absolute Grenzen! D.h. in der Regel keine Spannungen, Ströme und Temperaturen für den Normalgebrauch. Um die Komponente für den Normalgebrauch auszulegen, ist die Betrachtung der „Electric Characteristics“ besser geeignet. Bitte den Fokus auf typical und nicht min/max Ratings legen.
- ob die Komponente für Ihre Versorgungsspannung geeignet ist.
- ob das Packaging gerade noch handlötbar und analysierbar ist: Es sollen bevorzugt SMD-Komponenten genutzt werden (keine THT), die ICs sollten Beinchen haben, also kein …GA („… grid array“), kein …CSP („… chip scale package“), kein …FN („… Flat No Leads“).
- welche weiteren Komponenten (Widerstände, Induktivitäten, Kapazitäten, Dioden etc) benötigt werden,
- bei Strommess-Widerständen (auch Shunt, Rsense) nicht nur die Formel im Datenblatt des Treibers zu berücksichtigen, sondern auch die maximale Leistung des Widerstands. Wenn z.B. $0.2 ~\rm\Omega$ Widerstände nur bis $0.2 ~\rm W$ Maximalleistung verfügbar sind, so wäre der Maximalstrom: $I = \sqrt{P \over R} = 1 ~\rm A$
- die Schnittstellen: Nicht nur der Footprint einer Komponente ist wichtig, sondern auch die Belegung.
- Insbesondere bei Operationsverstärkern ist folgendes zu beachten:
- nur „Rail-to-Rail“ Operationsverstärker sind für Spannungswerte ausgelegt, die von der negativen bis zur positiven Versorgungsspannung reichen.
Dabei wird gelegentlich unterschieden, ob nur die Eingangswerte in diesem Bereich sein dürfen (Rail-to-Rail Input OpAmp bzw. Full-Swing OpAmps) oder ob auch der Ausgangswert diesen Spannungsbereich abdeckt (Rail-to-Rail Input/Output OpAmps). - Nicht alle OpAmps können mit unipolar versorgt werden, d.h. z.B. mit GND und 3.3V. Um dies aus dem Datenblatt herauszulesen sollte nach „Single supply“, „single supply operation“ oder „unipolar“ gesucht werden. Wenn in den Tabellen und Beispielschaltungen nur bipolare Angaben gemacht werden (z.B. $V_{\rm S} = \pm 2.5 ~\rm V$) sollte intensiv gesucht werden, ob dieser OpAmp nur ein „dual supply“ Verstärker ist
- Vogelfutter heraussuchen :
- verschiedene Größen bei Induktivitäten: Achten Sie darauf, dass Induktivitäten ab $10..100 ~\rm\mu H$ nicht mehr günstig in einem kleinen Formfaktor (z.B. 0603 oder 0402) erhältlich sind. Diese benötigen somit eine größere Fläche auf dem Board. Weiterhin haben Induktivitäten häufig ein Strom-begrenzenden Widerstand, u.a. um eine Sättigung zu vermeiden. Beachten Sie die begrenzte Auswahl der Distributoren!
- verschiedene Größen bei Kapazitäten: Auch Kapazitäten ab ca $40 ~\rm\mu F$ sind nicht mehr günstig in einem kleinen Formfaktor (z.B. 0603 oder 0402) erhältlich. Gelegentlich werden für Anwendungen oder Bauteile bestimmte, teurere Dielektrika (z.B. NP0) benötigt. Hier ist das Datenblatt / die Anwendung auf Hinweise zu überprüfen (Frequenzbereich, Relevanz von Alterung und Temperatur-/Spannungsabhängigkeiten, ..).
- Verfügbarkeit prüfen: Wenn Sie die Komponenten gesucht haben, sollten Sie die Kosten und Verfügbarkeit prüfen (z.B. sind nur noch 10 beim Distributor verfügbar?). Es sind Komponenten aus dem Elektroniklager (siehe Part-DB) zu bevorzugen. Sind Ihre gewünschten Komponenten nicht vorhanden, suchen Sie diese bei unseren Lieferanten und geben Sie dem Betreuer bescheid.
Spezielle Anwendungen
Filter
Zur Auslegung eines Filters bieten sich verschiedene Filterdesign-Programme an:
- WEBENCH Power Designer von Texas Instruments
- Analog Filter Wizard von Analog Devices
- weitere Tools sind erlaubt, sollten aber angegeben werden
Falls Sie einen Filter auslegen, so beschreiben Sie bitte die Auslegung. Dazu könnte helfen:
- Begründung der Auswahl
- Darstellung und Beschreibung des Bodediagramms
- Darstellung und Beschreibung des Gruppendelay
- Sprungantwort und Darstellung des Ausgangssignals, je für PWM mit $50~\rm Hz$, $100~\rm Hz$, $500~\rm Hz$, $1~\rm kHz$, $7~\rm kHz$, $10~\rm kHz$, $40~\rm kHz$, $50~\rm kHz$
Motoren
Soll ein Motor verwendet werden, so muss eine sinnvolle Auswahl des Motors getroffen werden. Dabei ist folgendes zu beachten:
Schrittmotor | Gleichstrommotor | Servoantrieb | Synchronmotor | Asynchronmotor | |
---|---|---|---|---|---|
Alternative Bezeichnungen | Steppermotor | DC-Motor | Servo | PSM, ESM | ASM |
Positioniergenauigkeit (open loop) | hoch, wenn ohne Überlast betrieben (Teilschritte möglich) | niedrig | mittel-hoch (abhängig vom internen Regler) | niedrig | niedrig |
Drehzahlbereich | niedrig (bis ca. $20 ~\rm Hz$) | hoch (bis $1000 ~\rm Hz$) | mittel | hoch | hoch |
Drehmoment | hoch | hoch | niedrig | hoch | hoch |
Wirkungsgrad | niedrig | mittel | mittel | hoch | hoch |
Gelegentlich werden bei Schrittmotoren 2 weitere Spulen mit höherem Widerstand verbaut (z.B. 2x $1 ~\rm \Omega$ und 2x $10 ~\rm \Omega$). Es werden nur 2 Spulen mit gleichem Widerstand zum Betrieb benötigt.
Weiterhin gibt es mechanische Möglichkeiten die o.g. Eigenschaften zu ändern (z.B. DC-Motor mit 1:1000 Getriebe). Dabei ist zu beachten, dass diese i.d.R. in Akustik und im Wirkungsgrad negative Einflüsse zeigen. Zusätzlich muss speziell bei der Verwendung eines Schneckengetriebe beachtet werden, dass eine Selbsthemmung auftritt - Die Achse lässt sich nicht freidrehen.
Die Ansteuerung von Schrittmotor, Gleichstrommotor, Synchronmotor und Asynchronmotor geschieht über ein Leistungsendstufen. Details zu den Konzepten der Halb- und Vollbrücken finden Sie z.B. auf mikrocontroller.net. Heutzutage bietet es sich aber an die Leistungselektronik nicht mehr diskret aufzubauen, sondern integrierte Komponenten zu verwenden (siehe motoren_und_treiber).
Motorelektronik
- Außer bei Servomotoren und einigen BLDC-Motoren, ist das Ansteuern des Motors nicht direkt über die Pins des Mikrocontrollers möglich. Bei Schrittmotoren und DC-Motoren muss dazu hinreichend Strom zur Verfügung gestellt werden. Dies geschieht über folgende notwendige Komponenten:
- Leistungsschalter
- schaltet den benötigten Strom
- meist MOSFETs
- in Struktur einer Halb-, Voll-, B6-Brücke
- Gatetreiber
- stellt die richtige Spannung zum Schalten der Leistungsschalter bereit
- verhindert Kurzschlüsse
- Einige ICs wie DRV88xx haben bereits beide Komponenten in einem Chip vereint.
- Bei einem diskreten Aufbau der Leistungsschalter sollten Leistungsdioden vorgesehen werden
- Es kann sich anbieten bei Leistungselektronik-Komponenten - auch beim DRV88xx - eine Möglichkeit des Austauschs vorzusehen, z.B. über einen Sockel. Dazu müssen die Komponenten als Through Hole Device ausgelegt werden.
Auswahl des Prozessors
für die Veranstaltungen EST, Elektronik und ES an der HS Heilbronn
- Als Microcontroller wird ein 8bit AVR Microchip Chip (ehemals ATMEL AVR) empfohlen. Auf diesem Chipsatz wurde in Microcontrollertechnik aufgebaut. Im Elektronik-Lager stehen einige ATmega 328 zur Verfügung.
- In den grundlegenden 1×1 MexlePlatinen (hier die MmC1x1 328_2.x-Platine) sind ATmega32xx verbaut, welche prinzipiell mit $5 ~\rm V$ oder $3.3 ~\rm V$ betrieben werden können. Die gesamte Schaltung sollte aber auf $3.3 ~\rm V$ ausgelegt werden. Damit ist die Verwendung aktueller Sensoren möglich.
- Für die Auswahl eines Chips für Zusatzplatinen ist auf der Herstellerseiten von AVR eine übersichtliche Tabellen zu finden. Für ATtiny104, ATmega88, ATmega32xx ist Prototypen-Equipment vorhanden.
- Die Chip-Varianten mit „U“ haben dabei direkt eine Möglichkeit einen USB-Anschluss direkt zu nutzen
für weitere Projekte
Um den geeigneten Mikrocontroller für ein eigenes Projekt herauszusuchen sollten folgende Fragen geklärt werden:
- Wie viel Speicher wird benötigt?
- Wie groß wird das Programm? Werden größere Librarys eingebunden?
🡆 Wie groß muss der Flash-Speicher sein (in diesem wird der Code gespeichert) - Wie viele Variablen und Konstanten beinhaltet das Programm und wie groß sind diese (Arrays? int8, int32, float?)?
🡆 Wie groß muss das RAM sein? (Konstanten können alternativ auch im Flash liegen) - Sollen Werte permanent gespeichert werden? Wie viele?
🡆 Wie groß muss das EEPROM sein?
- Welcher Prozessortakt wird benötigt?
- Wie schnell muss der Mikrocontroller mit wie vielen Daten reagieren? Muss z.B. für eine Regelungsschleife Daten schnell aufgenommen, verarbeitet oder ausgegeben werden?
- Können ggf. Funktionalitäten einem Timer/Counter übergeben werden?
- Soll der Takt intern erzeugt werden, oder soll ein externer Quarz verwendet werden?
- Welche Interfaces werden benötigt?
- Welche digitalen Schnittstellen (I2C, SPI, USB, USART, PWM) werden benötigt?
- Wie schnell und genau müssen wieviele Analogwerte aufgenommen werden?
- Wie schnell und genau müssen wieviele Analogwerte ausgegeben werden?
- Welche und wie viele der genannten Schnittstellen werden gleichzeitig benötigt? 🡆 Pin Count
- Welche Infrastruktur im Controller wird benötigt?
- Soll auf ein oder mehrere Ereignisse (Timer, Benutzereingabe etc.) asynchron reagiert werden? 🡆 Interrupts
- Wird viel mit Gleitkommawerten gerechnet? 🡆 Controller mit FPU (z.B. PIC)
- Welche Infrastruktur um den Controller ist zu erwarten?
- Temperaturbereich
- Leistungsaufnahme
- Spannungsniveau
- Welche nicht-elektronischen Randbedingungen sind zu beachten?
- Kosten und Liefersituation
- Wissensbasis und Verbreitung
- Handling bei der Produktion (Chipgehäuse, Verpackung, ..)
- Pre-programmed lieferbar?
Nachdem durch diese Fragen der notwendige Bereich geklärt wurde, können durch verschiedene Webseiten die geeigneten Chips eingegrenzt werden.
z.B.: