Forum: Mikrocontroller und Digitale Elektronik 50 X LM75 an ATMEGA16?


von Flo S. (light_master)


Lesenswert?

Guten Morgen an Alle....


Mich würde mal interessieren ob es möglich ist, 50 der oben genannten 
Temperatursensoren mir Bascom anzusteuern bzw. auszulesen... Und wenn 
ja, dann währ ich für Denkanstöße dankbar...





MFG
LIGHT_MASTER

von iggi (Gast)


Lesenswert?

was soll es denn werden?

wie lange sollen die kabel zu den sensoren sein?

das datenblatt sagt ja schon Up to 8 LM75s can be connected to a single 
I2C bus

dazu muessen bei jedem sensor beim adresseingang (A0-A2) je eine andere 
addresse eingestellt sein

mach dich mal mit i2c auf dem Mikrocontroller vertraut und starte mit 8 
Sensoren. Wenn du das hast, kannst du noch erweitern auf 50

von bastler (Gast)


Lesenswert?

hi,

es gibt von ti und philips sogenannte 1:8 i2c bus (de-)multiplexer, 
damit kann man dan auch deine 50 lm75 betreiben

lg

bastler

von Flo S. (light_master)


Lesenswert?

Hallo...


@iggi


Die Kabel sollten 1-5m lang werden...
Mit Mikrocontrollern bin ich vertraut und die 8 Sensoren laufen bereits 
:-)
In dem Fall ist nicht die Programmierung das Problem sondern die 
Hardware denk ich...


@ bastler

Haste da vielleicht mal n Datanblatt oder ne Bezeichung für mich?!



MFG
LIGHT_MASTER

von Fox Mulder (Gast)


Lesenswert?

PCA9547 von NXP, 8-Kanal Multiplexer

von Kevin K. (nemon) Benutzerseite


Lesenswert?

wäre es nicht einfacher, die Adressleitungen zu multiplexen, also über 
z.B. Schieberegister den jeweils gewünschten LM75 anzusteuern?

von Peter D. (peda)


Lesenswert?

Man könnte das I2C so schreiben, daß man mit einem Maskenbyte auswählt, 
welcher der 8 Pins eines Ports als SDA arbeitet.
Dann kann man je Pin 8 Sensoren ansteuern, insgesamt also 64.
Und SCL ist für alle gemeinsam.


Peter

von Flo S. (light_master)


Lesenswert?

Hallo...




Das mit dem Maskenbyte von Peter is eigentlich keine schlechte Idee...
Die frage ist nur, wie man 5m lange SDA Leitungen hin bekommt...




MFG
LIGHT_MASTER

von Flo S. (light_master)


Lesenswert?

Hallo...


Keiner mehr eine Idee?!



MFG
LIGHT_MASTER

von Nachtaktiver (Gast)


Lesenswert?

Nimm einen I²C Multiplexer und jeder I²C Kanal bekommt einen passenden 
Repeater. Der Multiplexer sowie die Repeater sollten Lokal auf deiner 
Hauptplatine sitzen und von dieser gibt es dann einzelne +5V/SDA/SCL/GND
Stränge.

Gleichzeitig würde bei jeden Slave unterschiedliche Reihenwiderstände zu 
den SCL/SDA Leitungen benutzen wodurch sich die Low Level Pegel 
voneinander unterscheiden, wodurch das Debugging pro Strang einfacher 
wird.

Von Philips gibt es eine Applikationsnote (Welche du dann suchen 
müsstest)
in der beschrieben wird wie die Adernbelegung bei einer langen I²C 
Leitung sein sollte.

Wenn das ganze sauber aufgebaut ist und du Kapazität an einen Busstrang 
gering hälst und mit der Datenrate runter gehst dann kann das ganze 
durchaus klappen.


Wenn ich mal fragen darf, was soll das denn werden?

von Flo S. (light_master)


Lesenswert?

Hi Nachtaktiver...


Danke für deine umfassende Antwort :-)


Das wird eine Kühlkörper Temperaturüberwachung für Leistungselektronik 
in Schaltschränken...



MFG
LIGHT_MASTER

von Nachtaktiver (Gast)


Lesenswert?

Ist schon eine schlechte Umgebung für deinen Zweck. :(
(Hohe Störemission)

von Flo S. (light_master)


Lesenswert?

Ich weis... zumal da auch PWM im spiel ist...


wenn ich pech hab, dann bleib ich doch bei NTC oder KTY hängen :-(


MFG
LIGHT_MASTER

von Nachtaktiver (Gast)


Lesenswert?

Du kannst ja erstmal das Mainboard designen und dann einen 8er Strang 
ausprobieren. Wenn es klappt kannst du es erweitern, wenn nicht muss 
etwas anderes her. Die I²C Repeater haben entsprechende Ausgangsstufen 
um die entstandene Kabelkapazität auch treiben zu können.

Der Rest ist dann eine Frage des Aufbaus.

von Kevin K. (nemon) Benutzerseite


Lesenswert?

nimm ein Patchkabel als Verbindung, leg dessen Schirmung auf und takte 
den Bus langsam.

von Nachtaktiver (Gast)


Lesenswert?

Guck dir von NXP die Applikationsnoten AN10441/AN255/AN10897/AN10419 an 
und
lese dich ein wenig durch.

Spontan würde ich sagen das ein Patchkabel gefährlich sein kann, da bei 
den einzeln verdrillten Adern (Wenn man SCL/SCA nimmt) zu heftigen 
übersprechen führen kann.(I²C ist ja keine Differenzielle 
Schnittstelle). - Wobei... ist die der "LAN Port" überarbeit etwas 
Differenzielles? :D

Vielleicht kann ja jemand mehr dazu sagen!

von Kevin K. (nemon) Benutzerseite


Lesenswert?

jedes Adernpaar parallel schalten, wenn du CAT7 (?) hast, ist jedes Paar 
einzeln geschirmt -> kein übersprechen

von buggy (Gast)


Lesenswert?

verpasse jedem sensor noch einen CAN treiber oder RS485 also mach ein 
differentielles signal draus

von Lehrmann M. (ubimbo)


Lesenswert?

Flo S. schrieb:
> Mich würde mal interessieren ob es möglich ist, 50 der oben genannten
> Temperatursensoren mir Bascom anzusteuern bzw. auszulesen

Wenn du die Meinung vertrittst, dass Bascom eine geeignete Alternative 
darstellt dann ja.

iggi schrieb:
> das datenblatt sagt ja schon Up to 8 LM75s can be connected to a single
> I2C bus

ist dir klar warum ?

> mach dich mal mit i2c auf dem Mikrocontroller vertraut und starte mit 8
> Sensoren. Wenn du das hast, kannst du noch erweitern auf 50

Das kannn man nur befürworten

bastler schrieb:
> es gibt von ti und philips sogenannte 1:8 i2c bus (de-)multiplexer,
> damit kann man dan auch deine 50 lm75 betreiben

Das ändert nichts an dem Problem der Leitungslänge und den Störungen und 
dass der I2C nicht zu den Zuverlässigen gehört.

Flo S. schrieb:
> Die Kabel sollten 1-5m lang werden...

Aua. Das ist nix für I2C

> Mit Mikrocontrollern bin ich vertraut und die 8 Sensoren laufen bereits
> :-)

Auf eine Länge von 5m im Anwendungsgebiet mit Störeinflüssen? Zeig doch 
mal ein Foto...

> In dem Fall ist nicht die Programmierung das Problem sondern die
> Hardware denk ich...

Normalerweise macht man sich zuerst über die HW Gedanken und dann über 
die SW.

Kevin K. schrieb:
> wäre es nicht einfacher, die Adressleitungen zu multiplexen, also über
> z.B. Schieberegister den jeweils gewünschten LM75 anzusteuern?

Todsünde

Kevin K. schrieb:
> jedes Adernpaar parallel schalten, wenn du CAT7 (?) hast, ist jedes Paar
> einzeln geschirmt -> kein übersprechen

Ich würde zuerst einige Informationen einholen wie genau die Schirmung 
funktioniert und mir über die Herkunft dieses Effektes klar werden. Dann 
würde ich diesen Ansatz nocheinmal kritisch überdenken und zur Seite 
legen.

buggy schrieb:
> verpasse jedem sensor noch einen CAN treiber oder RS485 also mach ein
> differentielles signal draus

Ich würde auch sofort auf einen CANBus setzen. Von daher würde ich auch 
gleich Temperatursensoren mit CAN Schnittstelle empfehlen.

von Nachtaktiver (Gast)


Angehängte Dateien:

Lesenswert?

AN255:
I²C / SMBus REPEATERS, HUBS AND EXPANDERS

AN262:
PCA954X FAMILY OF I²C / SMBus MULTIPLEXERS
and SWITCHES

AN10897:
A guide to designing for ESD and EMC

Ansonsten kann ich nur Micheal zustimmen.

von Flo S. (light_master)


Lesenswert?

Hallo...


Lehrmann Michael schrieb:
> Auf eine Länge von 5m im Anwendungsgebiet mit Störeinflüssen? Zeig doch
> mal ein Foto...

Die 8 Sensoren laufen nur auf dem "Steckbrett"... Ich wollte iggi mit 
dem Satz nur sagen, dass nicht die Software mein Problem ist und das ich 
mich durchaus mit µC´s Auskenne.


Lehrmann Michael schrieb:
> Ich würde auch sofort auf einen CANBus setzen. Von daher würde ich auch
> gleich Temperatursensoren mit CAN Schnittstelle empfehlen.

Ich werde warscheinlich die RS-485 Variante nehmen...
Da muss ich mich aber erst nochmal Schlau machen...



MFG
LIGHT_MASTER

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.