Forum: Mikrocontroller und Digitale Elektronik Hilfe bei Atmel Mikrocontroller Auswahl mit analogen Ein-& Ausgängen


von Patrick S. (patrick1990)


Lesenswert?

Hallo,

ich habe zum ersten mal mit Atmel Mikrocontrollern zu tun und weiß nicht 
so recht wonach ich genau suchen soll.
Ich benötige mindestens 4 analoge Ausgänge und 6 analoge Eingänge.

Des Weiteren gibt es noch ein Problem mit Drehgebern.
Es sollen absolute Drehgeber verwendet werden mit einer hohen Auflösung.
Von jedem der vier verwendeten Drehgeber kommen 10 Datenleitungen an, 
die an dem Mikrocontroller angeschlossen werden müssten. Das wären 
insgesamt 40 Eingänge, die dafür zur Verfügung stehen müssten.
Kann man das noch anders lösen? zum Beispiel in einem kleineren 
Controller, der vorgeschaltet wird?

Ich freue mich auf eure Antworten.
Vielen Dank im Voraus.

: Bearbeitet durch User
von Rainer U. (r-u)


Lesenswert?

Patrick S. schrieb:
> Ich benötige mindestens 4 analoge Ausgänge und 6 analoge Eingänge.

Die 6 ADCs ("analoge Eingänge") haben viele größere AVRs. EIngentlich 
nur einen der immer umgeschaltet wird. Analoge Ausgänge werden per PWM 
generiert. Wenn Du das nicht willst, schließ externe DACs an. Beides 
reicht aus, wenn Du nicht super-Schnelle Signale hast.

Patrick S. schrieb:
> Kann man das noch anders lösen? zum Beispiel in einem kleineren
> Controller, der vorgeschaltet wird?

Ja.

von Toni Tester (Gast)


Lesenswert?

Patrick S. schrieb:
> Ich benötige mindestens 4 analoge Ausgänge und 6 analoge Eingänge.
Auf der Atmel-Website gibt es einen Produktselektor für die erste grobe 
Schnellauswahl. Für Eingänge brauchst du logischerweise "ADC channels" 
(Analog-Digital-Converter); für die analogen Ausgänge entweder "DAC 
channels" oder auch nur "normale" "PWM channels" (Bei den Ausgängen in 
jedem Fall noch einen externen Tiefpass).
Zu beachten sind u. a. die Spannungsgrenzen, Geschwindigkeiten, 
Auflösungen etc. -> Datenblatt

> Es sollen absolute Drehgeber verwendet werden mit einer hohen Auflösung.
Welche sind das? Welche Signale liefern diese? -> Wichtig für die 
µC-Auswahl: Welche Frequenzen, welche Spannungen, welche Zusammenhänge?
Bei geringen Frequenzen können die Pins softwaretechnisch abgefragt 
(gepollt) werden => es reichen normale I/Os.
Für höhere Frequenzen ist es auf jeden Fall sinnvoll, Interrupts zu 
verwenden => Die Eingänge müssen in der Lage sein, einen Interrupt 
auszulösen.

> Kann man das noch anders lösen? zum Beispiel in einem kleineren
> Controller, der vorgeschaltet wird?
Macht keinen Sinn, da dieser dann eben die 40+ I/Os haben müsste, du 
jedoch zusätzlich noch den Aufwand für die zweite µC-Software und die 
Verbindung der µCs hast -> besser einen großen µC für alles.
Eventuell kann ein Schieberegister-IC (Reiner Logikbaustein) eingesetzt 
werden, um die Anzahl der I/Os zu reduzieren; das hängt allerdings davon 
ab, was diese zahlreichen Leitungen alles machen.

von Patrick S. (patrick1990)


Lesenswert?

Vielen Dank euch.

Der Drehgeber ist folgender:
http://docdro.id/9rUDMoC

mit einer Auflösung von 1024 in Binärcode.

Ich schaue mal eben nach einem Mikrocontroller.
Geschwindigkeit ist nicht so wichtig bei diesen Anwendungsfall.

von Toni Tester (Gast)


Lesenswert?

Nachtrag: Wenn es sich bei den 10 Datenleitungen um eine parallele 
Absolutwert-Datenschnittstelle handelt, gäbe es z. B. die Möglichkeit, 
die Datenleitungen zu multiplexen (d. h. z. B. acht Datenleitungen zu 
einer zusammenzufassen). Nachteil ist natürlich, dass diese acht 
Datenleitungen dann seriell nacheinander abgefragt werden müssen, sprich 
dem abfragenden µC könnte u. U. schon einmal ein Bitwechsel entgehen, 
wenn die Abfragefrequenz zu gering im Verhältnis zur Änderungsfrequenz 
auf dem Bus ist. Ebenfalls können unplausible Werte eingelesen werden, 
wenn sich mehrere Bits während eines Abfragevorgangs ändern => Alles 
hängt von den Anforderungen an die Schnittstelle ab.

Ein Beispiel für ein solches Multiplexer-IC wäre z. B. der 74HCT151 
(8-zu-1-Multiplexer).

von Patrick S. (patrick1990)


Lesenswert?

Vielen Dank.
Ich habe nun einmal einen passenden Controller gesucht und bin auf 
diesen gestoßen:
http://de.rs-online.com/web/p/mikrocontroller/7380132/

Nun wäre die Frage, gibt es ein Board dafür? Mit löten sieht es dort ja 
schlecht aus.

von Stefan F. (Gast)


Lesenswert?

32bit AVR - tu Dir das nicht an! Nimm lieber einen ARM basierten 
Controller, denn dazu findest du viel Leichter Boards und Anleitungen.

Schau Dir mal die STM32 Discovery Boards an. Die sind sehr billig.

von Patrick S. (patrick1990)


Lesenswert?

Ok, dann doch besser 8 Bit.
Das Geld spielt in dem Fall keine Rolle, wichtig ist eine einfache 
Programmierbarkeit, genügend Ein- & Ausgänge und bestenfalls ein Board 
dazu, wo Verbindungen einfach gesteckt oder geschraubt werden können.
Weiterhin sollte er von Atmel sein, da uns dort schon ein Programm 
vorliegt. Bisher wurde der ATMEGA 644p verwendet, der ist nun aber zu 
klein.
Eine Betriebsspannung von 5V wäre wünschenswert.
Die Auswahl ist ja jedoch riesig.

: Bearbeitet durch User
von Peter D. (peda)


Lesenswert?

Wenn Du die 40 Eingänge nicht direkt an einen großen MC anschließen 
willst, wären 5 * 74HC165 eine Möglichkeit.

von Patrick S. (patrick1990)


Lesenswert?

Es wäre sicherlich schön eine Komplettlösung zu haben.
Was haltet ihr von dem ATmega2560? Ich weiß auch nicht wieviel Speicher 
letztendlich benötigt wird oder so, alles ziemliches Neuland.
Ich benötige ca. 50 I/O-Pins.
Desweiteren wie gesagt am besten mit den Entwicklungsboards. Ich habe 
die STK500 oder STK600 gesehen.

von Ardu Ingo (Gast)


Lesenswert?

Was haltet ihr von dem ATmega2560?

Der müsste passen. Als günstiges Dev-Board könntest Du einen Arduino 
Mega nehmen. Der hat genügend Signale auf Buchsen leisten.
Schaltplan ist Open Source. Da kannst Du später auf der Grundlage ein 
eigenes Board designen.

https://ex-store.de/Arduino-MEGA-2560-5V-16MHz-kompatibles-Board-mit-CH340-USB-Chip

von Jack (Gast)


Lesenswert?

Patrick S. schrieb:
> Ok, dann doch besser 8 Bit.
> Das Geld spielt in dem Fall keine Rolle,

> Weiterhin sollte er von Atmel sein, da uns dort schon ein Programm
> vorliegt.

Was soll dann das Rumgehampel?

Fang mit dem größten 8-Bitter dessen du von Atmel habhaft werden kannst 
an. Für die Serie machst du ein Downsizing. Du siehst dir an was du von 
deinem AVR wirklich gebraucht hast und suchst dir den AVR raus der 
gerade noch passt.

Wenn heute schon der größten AVR nicht passt, dann solltest du deine 
Idee mit 8-Bit nochmal hinterfragen.

von Patrick S. (patrick1990)


Lesenswert?

Jack schrieb:
> Fang mit dem größten 8-Bitter dessen du von Atmel habhaft werden kannst
> an.

Welcher ist denn deiner Meinung nach der größte?

von Daniel H. (Firma: keine) (commander)


Lesenswert?

Patrick S. schrieb:
> Welcher ist denn deiner Meinung nach der größte?

- ATmega2560

von Jobst M. (jobstens-de)


Lesenswert?

Es wurde noch nichts zu Auflösungen vom DAC (10Bit für den ADC scheinen 
ja zu reichen), noch über maximale Frequenzen (DAC, Drehgeber) gesagt.

Von den Teilen geht es ja sonst mit gemultiplexten Drehgebern locker an 
einen ATmega48~328


Gruß

Jobst

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.