Forum: Mikrocontroller und Digitale Elektronik DMS --> AT89C2051/AT89S8252 --> notebook


von András (Gast)


Lesenswert?

Hallo Zusammen!

Ein Freund hat folgendes Problem mit seiner Diplomarbeit:

Er möchte mit Dehnungsmeßstreifen Spannungen messen (ca. 5 - 10 Stück 
mit ca. 100 Hz).

Meine Idee dazu war das mit einem ADC mit seriellem Ausgang zu machen. 
Die Messwerte sollen letztendlich in ein notebook übertragen werden. Ich 
dachte mir das es ganz praktisch wäre das multiplexen der vermutlich 
mehreren ADC´s mit einem µC zu machen und die Daten dann über UART ins 
notebook zu senden. Die größten Schwierigkeiten bereitet mir momentan 
der die Auswahl eines geeigneten AD-Wandlers und dessen Anschluß a. an 
den DMS und b. an den µC. Es gibt von Maxim einen ADC (MAX1400) an den 
man direkt DMS hängen kann, aber der ist nur als SMD erhältlich und das 
wollte ich mir nicht antun. Hat jemand schon so etwas gemacht und könnte 
mich bitte auf die richtige spur setzen?

danke András

von Christian (Gast)


Lesenswert?

Hallo
welchen Anforderungen sollte den der ADC genügen??? (wieviel bit 
auflösung....)
Welche Ausgangspannung hat den der Messtreifen???? Wenn du nicht so viel 
lust und ahnung von MC programmierung hast würd ich mal nach einem AD 
mit parallelem Ausgang und mehreren Eingängen suchen (5-10) - dann 
kommst du relativ schnell zum ERfolg denke ich, weil du dich nicht so 
mit Hardware rumschlagen musst (keine Multiplexer extern) und auch dich 
mit irgendwelchen Mussystemen nicht so auseindandersetzten musst. Das 
mit den SMD Bauteilen ist wohl nicht so schlimm, weil man adaptersockel 
kaufen kann, auf die man das SMD Bauteil draulötet und wo man dann unten 
einfach drähte hat (SMD löten ist nicht schlimm)
Such mal im Product tree von maxim-ic.com oder bei analog devices - da 
kannst du dir gleich kostenlose Musterzuschicken lassen und hast keine 
Probleme bei der Beschaffung....
Wenn dir 10bit auflösung reichen kannst du auch zbsp einen AVR 
Controller verwenden, da der ja schon ein paar AD wandler hat (ja nach 
typ) oder ist es wichtig, dass du einen 8051 nimmst???
Viel erfolg!!
mfg
Christian

von Phagsae (Gast)


Lesenswert?

Hoppla

Hast du mal die Datenmenge überschlagen ?
Also 24 bit für den ADC das 100mal pro sec das 10 mal
sind schonmal 24 tausen byte/s die über die SPI rauschen
Dann das ganze wieder raus
is noch freundlich gerechnet kein start kein stop
( schafft die RS232 eigentlich 24kbyte/s ?)

also 48 tausen byte/s


Bei 8MHz muss der uC alle 166 Takte einen Wert bereitstellen
Da mussen die Routinen für die messwertwandlung
verdammt fix sein

Hab das mal überschlagen weil ich dachte die SPI klappt da schon 
zusammen
Aber die kann 1Mbit/sec ------hoppla!

von Thomas_D (Gast)


Lesenswert?

Rechenfehler! Sind nicht 24000 Byte sondern nur 24000 Bit!
Das schafft RS232 locker.
Das ist 1000 mal in der Sekunde ein Wert von 3 Byte.
Sollte auch kein Problem sein, außerdem kann die messwertumwandlung ja 
im Notebook erfolgen, welches eigentlich ein bißchen mehr Rechenleistung 
als der µC bereitstellen sollte. :-)

von András (Gast)


Lesenswert?

Hi!

Also 24bit Auflösung ist meiner Meinung nach Maßlos übertrieben. So 
genau will ich es gar nicht wissen. Wenn ich letztlich eine Spannung mit 
zwei Nachkommastellen 0.00N/mm² rausbekomme reicht das vollkommen.

Wichtig wäre eher das ganze möglichst unkompliziert hinzubekommen. Die 
Hauptaufgabe ist ja die vernünftige Interpretation der Daten und nicht 
das gewinnen der Daten. ch arbeite normalerweise auch mit einem 
Messverstärker von HBM, aber meinem Freund stehen solche Geräte leider 
nicht zur Verfügung deshalb die Selbstbaulösung. Irgendwer muß doch 
schon mal so ein DMS angeschlossen und ausgewertet haben.

danke András

von Phagsae (Gast)


Lesenswert?

HI T
Stimmt ist ja gar nicht so wild

Ich muss mal mein Datenmengengefühl neu justieren.
Hätte geschworen das ist ne Ganze Menge
Aber wnn man sich mal überlegt was so von einer HDD so alles in der sec 
geliefert wird .......schwindel.......

Hi Andreas
Die 24 bit kommen nicht von der Auflösung sondern von dem SPI Register
Wenn der MAX1400 18bit liefert braucht man 3 8bit schiebeoperationen

N/mm² ist ja nur das Endergebniss messen muss der ADC ja die my?
Das können ja auch schnell mal einige  kN/mm² werden
Ohne das der Messgeber gewechselt wird

Bei den meisten Geräten mit Messbereichsumschalter wird ja quasi der 
"Fühler" getauscht

Ich denke 18 bit sind nicht verkehrt
Zumal du dich um die nicht ganz trivale Eingangsbeschaltung nicht 
kümmern musst
Das das ein smd teil ist ist so schlimm nicht , es gibt adaptersockel.

Am einfachsten ist natürlich das Evaluation kit---- sofern verfügbar
( leider wird da kräftig zugelangt )

Phagsae

von Ingo B. (Gast)


Lesenswert?

Hi,

wenn Du versuchst 5V mit 18bit aufzulösen, bewegst Du dich bereits in 
Bereichen von 1-2uV. (Bei 10V sieht es auch nicht viel besser aus...)

Da mußt Du schon einen erheblichen Schaltungsaufwand treiben (Schirmung, 
Masseflächen,...), um das noch richtig zu messen.
Bisher haben bei mir 10bit - max. 12bit immer gereicht und auch da 
sollte man eine entsprechnende Hardware- / Softwarefilterung 
integrieren.

Bis dann,
Ingo.

von Christian (Gast)


Lesenswert?

Hi
was muss man den so alles machen, damit man 16-bit z. bsp sinnvol nutzen 
kannund nicht nur störstrahlung misst (mach doh mal ein paar konkrete 
Beispile was den Schaltung betrifft....)

mfg
Christian

von Phagsae (Gast)


Lesenswert?

Hmmmm...

Vorweg der Max1400 war nicht meine Idee

Allerdings spricht schon was dafür.
DMS sind ja im allgemeinen recht niederohmig und rauschen deshalb nicht 
so.
Da passt dann auch der Eingangsbereich von +-0,30 mV
Von den 18 bit kann man getrost 2 abziehen.
( das ist ja fast immer so wenn man die lin Fehler betrachtet)
Das elektronen im uV bereich bereits quantisiert ist mir neu.

Er hat bereits passende Filter an bord um den gröbsten Dreck zu 
beseitigen.

Zudem wir er ja auch noch symetrisch angesteuert.
Da ists auch  je nach CMMR mit der Eintreungen nicht mehr ganz so 
drastisch

Für einen Delta Sigma Wandler ( und so einer sollte es schon sein ) ist 
er eigentlich recht fix.
Man ihn über Ref + und -  mal so schnell im betrieb nachsetzten.

Also 10 bit find ich ja schon ein bischen dünne
9.99  0.01  ?
Da würd ich nur eine NKS angeben
Mit "echten" 12 kann man messen

Und mit warscheinlich 10€ find ich das nicht zu teuer

Ergo ein kompletter Fehlgriff scheints nicht zu sein.

von András (Gast)


Lesenswert?

Hi!

"ein kompletter Fehlgriff scheint es nicht zu sein..."

Da wären jetzt ein paar alternativvorschläge recht nützlich gewesen ;-)
Der MAX1400 war eine Idee, weil man halt direkt den DMS dranschließen 
kann. Ich hab mich mal in den AppNotes von Analog umgesehen und die 
Vorschläge wie man eine DMS-Verstärkung aufbaut waren schon ziemlich 
kompliziert. An einen MAX1400 kann man 3 DMS anschließen. Also brauche 
ich mehrere davon. Jetzt wäre ich für Tipps dankbar wie ich die 
Ansteuerung (Multiplexen?) der Bausteine anpacken soll. Sehr dankbar 
wäre ich für Vorschläge bzgl. des Programmablaufs - sprich wie müßte 
sowas aussehen (Nur die Struktur).


danke für die zahlreichen Beiträge

András

von Phagsae (Gast)


Lesenswert?

Moin moin

Alternativ vorschlägen ist eingentlich unmöglich
Es sei den jemand hat schon aktiv mit DMS gearbeitet.
Was ich noch darüber weiß stammt aus messtechnik vorlesungen und die 
waren ihrer natur nach wenig praktisch.

Die Einzigen infos sind DMS und 100Hz Abfrage und Mux.
Viele infos sind das ja nicht

Allzu tief willst du dich in die materie offensichtlich auch nicht 
einarbeiten.
Schnelles Ergebnis schein Dir wichtiger zu sein.
( Das ist keine Kritik ich glaube so liegen momentan die Schwerpunkte ?)
Also Wenn der Hersteller schon eine applikation liefert ---nimm sie !


Was den Anschluß des DMS vereinfacht ist der zugeführte Strom über
den referenz widerstand gleich bei richtiger Größenordung den 
messbereich
skaliert und dynamisch bei Temp Anderung und für alle langsamen 
Störgrößen
unempfindlich macht
Udiff ( Messbrücken Spannung ) sollte etwas kleiner als Uref gewählt 
werden.

Ob man 3 DMS an einen Max klemmen kann ?
Von den Messeingängen schon aber..
Ist der dann schnell genug ?
Brauchst ja dann 300 Messungen pro secunde
zzgl 3mal umschalten auf anderen eingang.

Hat der 3 Uref eingänge oder hast du da schon eine Applikation gefunden?
Ansonsten wür ich da erst mal Rumprobieren.
Und mit einem komerziellen DMS gegenprüfen.

Da es ein EV kit gibt geht das ja sehr schnell
( wenn du den uC Adapter von MAX brauchst ich leih in Dir gg Porto )

Das multiplexen an sich ist kein problem
Der uC arbeitet immer als Master
über das SS bzw CS signal wählt man den jeweiligen Slave aus
( 10 beliebige IO am uC )

Ob dann noch 10 Busy Leitungen erforderlich sind ?
Hängt vom timing ab
Ist die max conv time ca 2/3 der gesamtabfragezeit aller Wandler würd 
ich mal sagen unnötig,


Die MOSI MISO CLK Leitungen liegen an allen
SPI slaves parallell an.

Zur sicherheit würd ich alle Slaves über Treiberstufen anfahren.
Das entkoppelt den BUS zuverlässig und kostet eigentlich nix
Ob zzgl noch eine galv trennung sein muss zeigt die Praxis
Auf dem SPI Bus zu messen ist auch nicht mehr mit nem
HAMEG XY zu realisieren.
Ich hab ein " was sich so  100 MHz Oszi nennt " --> Klägliche 
Angelegenheit

Durch einschreiben des nächsten " Start new conversion" Befehls
Bekommst du automatisch das vorherige Messergebnis geliefert.

Die kommunikation via SPI ist beim AVR ja hardwareseitig implementiert.

Das läuft allerdings bit für bit

Vom programm ablauf ?

Grundlegende entscheidung
Alle daten sammeln dann senden
oder 1 ADC abfragen und sofort senden

Ich würde mal sagen ersteres
Weil die Daten dann "echtzeitiger" sind

Wo ich das schreib fällt mit auf

Müssen denn die Messzeitpunkte genau gleich sein ?

Da müsse man
1 allen ADC den Get new Data befehl senden.
2 erst jetzt die Convertierung starten. ( 1 läuft hier immer parallel )

LOOP
2 Dann alle Daten einsammeln.
( und sofort die neue Convertierung starten und den Timerstand 
speichern)
4 Alle Daten in die richtige form bringen
5 Alle Daten umrechnen Steuerzeichen Datensatznummer newline
und natürlich dien Zeitpunkt der Messung etc
( Da würd ich mal nen 16bit timer mit der Zeiterfassung beschäftigen)
3 Dann alles zum UART rausschicken
->LOOP


Wenn man allerdings 3 DMS an einen ADC hängt
muss man mit 3 jeweils versetzten Zeitscheiben arbeiten.


Als Praktiker würd ich mal vorschlagen

Findest du eine fertige Schaltung mit Software -> Bau sie nach
oder
Entscheide dich für einen X-beliebigen Typen
Am besten mit EV Kit ( kostet 50-100€)

_>Entweder Zeit oder Geld

Probier ihn aus sammle Messwerte/Probleme/mach Gegenprüfung

So ab jetzt weisst du was du wirklich brauchst
Und kannst gezielt die Anforderungen verschärfen bzw lockern

Oftmal ändert man an diesem Punkt das "Pflichteft"

Meist tauchen Probleme da auf wo man keine vermutete und
Die Bedenken die man vorher hatte waren des Nachdenkens nicht wert

Und der Teufel versteckt sich immer da wo man ihn nicht vermutet
Bei MAXIM hat man zur Zeit den eindruck das irgentwelche Praktikanten
Die Datenblatter schreiben
Da sind fehler drinn das man nur noch den Kopf schüttelt.
Wenn man dann beim Support anruft machts Schwups und am folgenden Tag 
ist ne neue Revision im Netz.
Und die ist dann schlimmer als die Orginal version

Phagsae

von FrankL (Gast)


Lesenswert?

Wer macht eigentlich sein Diplom Du oder Dein Freund ?

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.