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:
- LM78 (National) ( z.B auf ASUS P2B-LS )
- LM78J (National) ( z.B. auf ASUS P2L97-DS Board)
- LM80 (National) ( z.B. auf QDI BrillantX IS Board )
- LM85B, LM85C (z.B. auf Intel's D865GLC oder D865GBF Board )
- W83781D (Winbond) ( z.B . auf ASUS P2B und P2B-F Boards )
- W83782D (Winbond) ( z.B. auf einigen EPOX Boards)
- W83783S (Winbond) ( z.B. auf ABIT BE6 Board )
- W83627HF (Winbond) (z.B. auf BECKHOFF CB1050, CB1051,CB2050, CB2051, CB3051, CB3050, CB3053, CB5053, EPOX EP-4B2A oder EP-M845B Board)
- CX1020 / CX1030 Diagnose IC's (nur ab Hardwarerevision 2.0)
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:
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 | 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. ²) 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. |
| 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:
- Der Intel(R) SMBus 2.0 Treiber für den ICH5/ICH5-M SMBus Controller-24D3 muss installiert und aktiv sein;
- Andere Monitoring-Applikationen (z.B. Intel's Active Monitor) dürfen nicht aktiv sein oder müssen falls vorhanden vom System entfernt werden;
- In BIOS muss die Option "Fan control" deaktiviert werden;
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 |
|