System Management Bus (SMB)

Neuere Motherboards besitzen Diagnosebausteine, über die Temperaturen, Lüfterdrehzahlen und die Betriebsspannungen des PCs überwacht werden können. Diese Werte können mit Hilfe des "Motherboard - SMB (System Management Bus)" "E/A-Gerätes" in TwinCAT gelesen werden. Leider gibt es z. Zt. noch keine einheitlichen Normen, wie diese Werte zur Verfügung gestellt werden.

Unterstützt werden neuere Motherboards mit Intel-Chipsatz. Diese verfügen i.d.R. über die PCI-ISA-Bridge PIIX-4. Über die PCI-ISA-Bridge kann auf die Register der Diagnosebausteine und auf den SMB zugegriffen und so die Diagnosedaten ermittelt werden. Aber auch bei anderen Chipsätzen können einzelne Werte ermittelt werden (wenn sie z.B. über einen LM75 Baustein oder kompatiblen verfügen). Welche Werte auf einem speziellen Board messbar sind, muss daher getestet werden.

Zurzeit können in den meisten Fällen von TwinCAT folgende Diagnose-IC's erkannt und deren Daten interpretiert werden:

Temperatur

Alle IC's gehören zu der LM78-Familie. Der LM78 ist der Basis-Chip zu dem alle andere Chips verglichen werden können. Die Winbond-IC's besitzen im Gegensatz zu den LM7x-IC's keinen internen Temperatur Sensor. Über den internen Temperatur Sensor wird in den meisten Fällen die Temperatur vom Motherboard gemessen. Die CPU-Temperatur wird entweder über einen Sensor unter der CPU, oder über die Pentium Thermo-Diode gemessen. Andere Temperatur Sensoren können über externe Anschlüsse auf dem Board angeschlossen werden. Befindet sich der CPU-Temperatursensor unter der CPU, muss zu der gemessenen Temperatur ein Korrekturwert aufgeschlagen werden. Dieser richtet sich nach der Größe des Luftspalts zwischen der CPU und dem Sensor. Wird die Temperatur über die Pentium Thermo-Diode gemessen, muss auf den gemessenen Wert ebenfalls ein Korrekturwert aufgeschlagen werden. Dieser hängt von dem Typ der Thermo-Diode ab. Falls an den gemessenen Werten gezweifelt wird, können die Temperaturwerte meistens in BIOS-Setup kontrolliert werden.

Lüfter

Alle IC's besitzen Eingänge um die Drehzahlen von drei Lüftern (LM80 nur zwei Lüfter) gleichzeitig messen zu können (CPU-Lüfter [CPU FAN], Gehäuse-Lüfter [CHASSIS FAN] und Netzteil-Lüfter [PWR FAN] ). Bei den Lüftern muss es sich um spezielle Lüfter mit Tachometer-Ausgang handeln. Solche Lüfter besitzen meistens drei Anschlussleitungen. Je nach Board kann der CPU-Lüfter vom Hersteller am unterschiedlichen Eingang des Diagnose-IC's verdrahtet sein. In den meisten Fällen sind für zwei Lüfter (CHASSIS FAN und PWR FAN ) die Eingänge als externe Anschluss-Pins auf dem Board ausgeführt.

Spannungen

Die Diagnose IC's können über die analogen Eingänge positive und negative Spannungen messen. Meistens können von dem IC maximal 4.096V am Eingang gemessen werden. Um größere Spannungen messen zu können werden Spannungsteiler vorgeschaltet. Der gemessene Wert errechnet sich aus dem Wert der vorgeschalteten Widerstände und dem Wert des ADC (Analog Digital Converter).

Als Widerstandswerte für den Spannungsteiler werden von TwinCAT die vorgeschlagenen Standardwerte des jeweiligen IC-Herstellers benutzt (aus der technischen Dokumentation zu dem IC). Hat ein Board-Hersteller andere Widerstandswerte auf seinem Board verdrahtet, können die gemessenen Werte von den realen abweichen. Die korrekten Spannungen können im BIOS-Setup kontrolliert werden.

Mappping der Diagnosedaten im TwinCAT System Manager

Die ermittelten Diagnosedaten werden im TwinCAT System Manager in folgende Struktur gemappt:

System Management Bus (SMB) 1:

Die Temperaturen werden in °C angegeben.

Die Lüfterdrehzahlen werden in Umdrehungen pro Minute angegeben.

Die Spannungen werden in 1/100 Volt angegeben. Negative Spannungen werden als positive Werte ausgegeben.

Folgende Tabellen geben eine Übersicht über das Mapping der Diagnosedaten im TwinCAT-Prozessabbild bei den unterschiedlichen Mainboard- und SMBus-IC-Typen.

Winbond W83782D

Motherboard

EPOX EP-3BXA

Variable

Hardware/Anschlussbezeichnung auf dem Board

Bemerkungen

Temp MB

3TH THERMAL

Temperatur eines externen Sensors. Ist dieser nicht angeschlossen, liefert die variable den Wert 0. In BIOS hat dieser Sensor die Bezeichnung: "Extended JP2".

Fan 0

CPU FAN

CPU Lüfter

Fan 1

CHASIS FAN

Gehäuse Lüfter

Fan 2

PWR FAN

Netzteil Lüfter

Volt 2a

Vccp1

In BIOS als "Vcore" bezeichnet

Volt 2b

Vtt

In BIOS als "Vio" bezeichnet

Volt 3.3

+3.3V Spannung

 

Volt 5

+5V Spannung

 

Volt 12

+12V Spannung

 

Volt -12

-12V Spannung

 

Volt -5

-5V Spannung

 

Temp 0

CPU Temperatur

Temperatur an der Pentium Thermo-Diode

Temp 1

RT1

In BIOS als "System Temperatur" bezeichnet. Auf dem Board befindet sich ein Thermo-Fühler (beschriftet als RT1).

Temp 2 bis Temp 7

nicht benutzt

 

Winbond W83627HF

Motherboard

BECKHOFF
CB1050, CB1051,
CB2050, CB2051,
CB3051, CB3050,
CB3053, CB5053

EPOX EP-4B2A

EPOX EP-M845B

EPOX IP-4GVI63

Variable

Hardware/Anschlussbezeichnung

Bemerkungen

Hardware/Anschlussbezeichnung

Bemerkungen

Hardware/Anschlussbezeichnung

Bemerkungen

Hardware/Anschlussbezeichnung

Bemerkungen

Temp MB

System Board Temperature

Thermistor in der nähe der CPU

nicht benutzt

Der Eingang ist offen.

nicht benutzt

Der Eingang ist offen.

nicht benutzt

Der Eingang ist offen.

Fan 0

FAN1

 

CPU FAN

CPU Lüfter

Fan 3 (CHASIS FAN)

In BIOS bezeichnet als Chasis FAN

CHASIS

In BIOS bezeichnet als Chasis FAN

Fan 1

FAN2

 

CHASIS FAN

Gehäuse Lüfter

Fan 1

CPU Lüfter

CPU

CPU Lüfter

Fan 2

FAN3

 

PWR FAN

Netzteil Lüfter

Fan 2

In BIOS bezeichnet als Power FAN

PWR

In BIOS bezeichnet als Power FAN

Volt 2a

VCCCORE

In BIOS als CPU Core bezeichnet

Vccp1

 

Vccp1

 

Vagp

In BIOS bezeichnet als Vagp

Volt 2b

CS_VCCCORE

In BIOS als GMCH Core bezeichnet

Vtt

 

Vtt

 

Vcore

 

Volt 3.3

+3.3V Spannung

 

+3.3V Spannung

 

+3.3V Spannung

 

+2.5V Spannung!

In BIOS bezeichnet als Vdimm

Volt 5

+5V Spannung

 

+5V Spannung

 

+5V Spannung

 

+5V Spannung

 

Volt 12

+12V Spannung

³)

+12V Spannung

 

+12V Spannung

 

+12V Spannung

 

Volt -12

-12V Spannung

¹)

-12V Spannung

 

-12V Spannung

 

-12V Spannung

 

Volt -5

-5V Spannung

¹)

-5V Spannung

 

-5V Spannung

 

-5V Spannung

 

Temp 0

CPU Temperatur

²)

CPU Temperatur

Temperatur an der Pentium Thermo-Diode

CPU Temperatur

Temperatur an der Pentium Thermo-Diode

CPU Temperatur

 

Temp 1

System DDR Temperature

Thermistor in der Nähe der RAM-Slots

RT1

In BIOS als "System Temperatur" bezeichnet. Auf dem Board befindet sich ein Thermo-Fühler (beschriftet als RT1).

TR1

In BIOS als "System Temperatur" bezeichnet. Auf dem Board befindet sich ein Thermo-Fühler (beschriftet als TR1).

TR1

In BIOS als "System Temperatur" bezeichnet. Auf dem Board befindet sich ein Thermo-Fühler (beschriftet als TR1).

Temp 2

Power Controller Temp.

Unterstützt nur von BIOS v0.80 und höher

nicht benutzt

nicht benutzt

nicht benutzt

Temp 3 bis 7

nicht benutzt

nicht benutzt

nicht benutzt

nicht benutzt

 

Der FAN4-Lüfter kann nicht überwacht werden.
¹) Bei CB2051, CB3050, CB3051 nicht vorhanden.

²) DTS (Digital Thermal Sensor) bei Core™ Duo/Core™2 Duo MAX(core 1..core n) und Atom. Temperatur an der Pentium Thermo-Diode bei anderen Prozessoren.
³) Bei CB3053, CB5053 nicht vorhanden.

 

Das EP-M845B-Board besitzt noch einen weiteren Lüfter-Anschluss ( beschriftet mit Fan 4 ). Dieser Lüfter kann nicht überwacht werden, weil der Winbond-IC nur 3-Lüftereingänge besitzt..

 

Winbond W83781D

Motherboard

ASUS - P2B oder P2B-F

Variable

Hardware/Anschlussbezeichnung auf dem Board

Bemerkungen

Temp MB

RT1S

Sensor auf dem Board in der Nähe von dem Winbond IC (System Temperatur)

Fan 0

CHA FAN

Gehäuse Lüfter

Fan 1

CPU_FAN

CPU Lüfter

Fan 2

PWR_FAN

Netzteil Lüfter

Volt 2a

Vccp1

 

Volt 2b

Vccp2

 

Volt 3.3

+3.3V Spannung

 

Volt 5

+5V Spannung

 

Volt 12

+12V Spannung

 

Volt -12

-12V Spannung

 

Volt -5

-5V Spannung

 

Temp 0

JTPWR

Anschluss für einen externen Sensor für die Netzteil-Temperatur

Temp 1

JTCPU

Anschluss für einen Sensor für die CPU-Kühlertemperatur

Temp 2 bis Temp 7

nicht benutzt

 

LM80

Motherboard

QDI - BrillantX IS

Variable

Hardware/Anschlussbezeichnung auf dem Board

Bemerkungen

Temp MB

Interner Temperatursensor im LM80 IC

Mainboard Temperatur

Fan 0

CHASFAN

Gehäuse Lüfter

Fan 1

CPUFAN

CPU Lüfter

Fan 2

nicht benutzt

 

Volt 2a

nicht benutzt

 

Volt 2b

+1.48V Spannung

 

Volt 3.3

+3.3V Spannung

 

Volt 5

+5V Spannung

 

Volt 12

+12V Spannung

 

Volt -12

-12V Spannung

 

Volt -5

-5V Spannung

 

Temp 0 bis Temp 7

nicht benutzt

 

W83783S oder LM75

Motherboard

ABIT - BE6

BOSER HS-6237 Version 2.2

BOSER HS-6237 Version 3.0

Variable

Hardware/Anschlussbezeichnung auf dem Board

Bemerkungen

Hardware/Anschlussbezeichnung auf dem Board

Bemerkungen

Hardware/Anschlussbezeichnung auf dem Board

Bemerkungen

Temp MB

CON2

Anschluss für einen externen Sensor für die CPU-Kühlertemperatur

nicht benutzt

 

JP14

Temperatur eines externen Sensors. Ist dieser nicht angeschlossen, dann liefert dieser Eingang einen undefinierten Wert.

Fan 0

FAN2

Anschluss für einen Lüfter in der Nähe der CPU

nicht benutzt

 

CN2

In BIOS als CPUFAN1 speed bezeichnet

Fan 1

FAN3

Anschluss für einen Lüfter in der Nähe der ISA Slots

nicht benutzt

 

CN25

In BIOS als CPUFAN2 speed bezeichnet

Fan 2

FAN1

Anschluss für einen Lüfter in der Nähe der CPU

nicht benutzt

 

CN26

In BIOS als CPUFAN3 speed bezeichnet

Volt 2a

+2V Spannung

 

nicht benutzt

 

Vcore

 

Volt 2b

nicht benutzt

 

nicht benutzt

 

nicht benutzt

 

Volt 3.3

+3.3V Spannung

 

nicht benutzt

 

+3.3V Spannung

 

Volt 5

+5V Spannung

 

nicht benutzt

 

+5V Spannung

 

Volt 12

+12V Spannung

 

nicht benutzt

 

+12V Spannung

 

Volt -12

-12V Spannung

 

nicht benutzt

 

-12V Spannung

 

Volt -5

nicht benutzt

 

nicht benutzt

 

nicht benutzt

 

Temp 0

RT1

System Temperatur. Auf dem Board befindet sich ein Thermo-Fühler (beschriftet als RT1).

CPU Temperatur

Auf dem Board befindet sich nur ein Temperatursensor (LM75)

CPU Temperatur

In BIOS als CPU1 Temperature bezeichnet.

Auf den gelesenen Temperaturwert muss ein Offset von ~30°C aufaddiert werden um annähernd die tatsächliche Temperatur zu ermitteln!.

CPUtemp = TwinCATtemp + 30°C

Temp 1 bis Temp 7

nicht benutzt

 

nicht benutzt

 

nicht benutzt

 

LM85B oder LM85C

Wichtige Systemvoraussetzungen:

Motherboard

Intel D865GLC oder D865GBF

Variable

Hardware/Anschlussbezeichnung auf dem Board

Bemerkungen

Temp MB

Ambient temperature sensor (internal to hardware monitoring and fan control ASIC)

In BIOS hat dieser Sensor die Bezeichnung: "System Zone 1 Tempearature".

Fan 0

CPU FAN

CPU Lüfter

Fan 1

FRONT CHASIS FAN

Vorderer Gehäuse-Lüfter

Fan 2

REAR CHASIS FAN

Hinterer Gehäuse-Lüfter

Volt 2a

Vccp

In BIOS als "Vccp" bezeichnet

Volt 2b

+1.5V Spannung

In BIOS als "+1.5Vin" bezeichnet

Volt 3.3

+3.3V Spannung

 

Volt 5

+5V Spannung

 

Volt 12

+12V Spannung

 

Volt -12

nicht vorhanden

Diese Spannung wird nicht überwacht

Volt -5

nicht vorhanden

Diese Spannung wird nicht überwacht

Temp 0

Thermal diode, located on processor die

Temperatur an der Pentium Thermo-Diode. In BIOS als "Processor Zone Temperature" bezeichnet.

Temp 1

Remote ambient temperature sensor

In BIOS als "System Zone 2 Temperature" bezeichnet.

Temp 2 bis Temp 7

nicht benutzt

 

Bemerkung

Falls die Variablen Temp 0 oder Temp 1 einen konstanten Wert 0xD0 liefern, dann ist möglicherweise kein externer Sensor auf dem Board angeschlossen (offener Thermoeingang).

Winbond W83627HF + LM63

 

Beckhoff CX1020 / CX1030

Variable

Hardware/Anschlussbezeichnung auf dem Board

Bemerkungen

Temp MB

Board CX1021

Board-Temperatur

Fan 0

FAN

reserviert, zur Zeit nicht benutzt

Fan 1

FAN

Nur CX1030: CPU/Gehäuselüfter sonst nicht benutzt

Fan 2

FAN

reserviert, zur Zeit nicht benutzt

Volt 2a

CPU-Voltage

 

Volt 2b

CPU-Voltage

 

Volt 3.3

+3.3V Spannung

 

Volt 5

+5V Spannung

 

Volt 12

+12V Spannung

 

Volt -12

nicht benutzt

 

Volt -5

nicht benutzt

 

Temp 0

Board CX1021

Board-Temperatur

Temp 1

nicht benutzt

 

Temp 2

Board CX1020 (LM63)

CPU-Temperatur

Temp 3

Board CX1020 (LM63)

Board-Temperatur

Temp 4 bis Temp 7

nicht benutzt