Hi! Ich möchte die Leistungsaufnahme von Computern aufzeichnen. Dazu baue ich Sensoren die an den ATX-Netzteilkabeln Strom und Spannung messen. Mein Ziel sind 10mV und 1mA Auflösung bei 10kHz Abtastrate und 20A Maximalstrom. Ich möchte einen Mikrocontroller mit USB-Interface und (galvanisch getrenntem) SPI-Bus als Master benutzen, welcher von einem anderen Computer über SSH gesteuert werden kann. Am SPI-Bus hängen per Daisy-Chaining mehrere Sensormodule mit jeweils 3 Strom- und Spannungssensoren. So kann ich die Sensormodule da im Computer verteilen, wo Strom verbraucht wird. Für die Strommessung habe ich MAX9919 Shuntverstärker oder MCS1100 Hall-Effekt-Sensoren. Für die Spannungsmessung benutze ich einen Spannungsteiler gegen eine 1,5 Volt Referenzspannung. Die Referenzspannung gilt auch für den Stromsensor und liegt in der Mitte zwischen 0V und 3,3V, so dass ich positive und negative Ströme gleich gut messen kann. Als ADC wird ein STM32 benutzt. Der STM32G030F6 ist der eine der gerade bei Mouser lieferbar ist (ausser die BGA-Dinger). Er wird die Aufgabe wohl erfüllen, aber wirklich zufrieden bin ich mit dem nicht, vor allem weil der ADC nur Single-Ended messen kann. Die Stromversorgung erfolgt mit 5V vom Master, und einem 3,3V LDO auf jedem Sensormodul. Der Mikrocontroller mit dem SPI-Bus (etwa 10Mbit/s) ist über einen SMD-Ferrit entkoppelt. Da der SWD-Anschluss 3,3V liefert, gibt es am LDO eine Schutzdiode. Der SWD-Anschluss besteht aus einem Platinenrandstecker für PCIe. So spare ich den klobigen Wannenstecker auf jedem Sensormodul. Die Sensormodule werden über Flachbandkabel mit 10-poligen 1,27mm Wannensteckern verbunden. Das letzte Modul soll bemerken, dass es das letzte Modul ist, und den MISO Ausgang in Richtung rückwärts umschalten. (MOSI_FWD vs. MISO) Jedes Modul verhält sich als Schieberegister mit 32-Bit-Wörtern, wobei ein Modul vorraussichtlich 96 oder 128 haben wird. Bei 8 Moduln ergibt sich eine Datenrate von etwa 10Mbit/s. Ich habe mich für STM32 entschieden, da es für diese Familie (soweit ich weiß) die besten Toolchains als freie Software gibt. Mit dem bei Mouser verfügbaren Exemplar bin ich nicht wirklich zufrieden, über andere Vorschläge wäre ich dankbar! Habt ihr sonst Feedback zu diesem Schaltplan? Im Übrigen ist dies mein erstes Project mit KiCad. :)
David H. schrieb: > Leistungsabgabe von ATX-Netzteil aufzeichnen > Ich möchte die Leistungsaufnahme von Computern aufzeichnen. Was denn nun?
David H. schrieb: > Habt ihr sonst Feedback zu diesem Schaltplan? Ja kannst du fertig von Elmor Labs kaufen: https://elmorlabs.com/product/pmd-power-measurement-device/
Harald W. schrieb: > David H. schrieb: > >> Leistungsabgabe von ATX-Netzteil aufzeichnen > >> Ich möchte die Leistungsaufnahme von Computern aufzeichnen. > > Was denn nun? Irgendwas dazwischen. Interessant sind die kurzzeitigen Veränderungen, nicht die exakte Leistung an der Steckdose. Da ist Messen an den Netzteilkabeln mMn. sinnvoll. Kevin M. schrieb: > David H. schrieb: >> Habt ihr sonst Feedback zu diesem Schaltplan? > > Ja kannst du fertig von Elmor Labs kaufen: > https://elmorlabs.com/product/pmd-power-measurement-device/ Das wars also schon wieder mit diesem Projekt... :D Danke für den Tipp, ich werde mir das Ding anschauen. :)
Ich habe mich jetzt für den Kinetis KL13 von NXP entschieden. Dieser Kontroller hat immerhin 4 differentielle Kanäle und einen 400ksps 16-Bit-ADC. SPI funktioniert auch mit 10MHz. Auf https://github.com/NXPmicro/mcux-sdk finde ich das SDK zu diesen Kontrollern. Leider nicht für den KL13, aber immerhin für den relativ ähnlichen KL27z. Das sollte man doch relativ leicht anpassen können, oder? Kevin M. schrieb: > David H. schrieb: >> Habt ihr sonst Feedback zu diesem Schaltplan? > > Ja kannst du fertig von Elmor Labs kaufen: > https://elmorlabs.com/product/pmd-power-measurement-device/ Weißt du zufällig, wo es Dokumentation zu diesem Gerät gibt? Man müsste ja zumindest wissen welche I2C-Adresse man ansprechen muss, und der Rest vom Protokoll wäre auch nicht schlecht. Gelten die 10ksps für jeden der 4 Kanäle, oder alle zusammen? Mein Ansatz ist nun, das Entwicklungsboard für den KL27z zu besorgen, und damit den ElmorLabs PMD anzusprechen. Parallel dazu versuche ich meine Schaltung mit dem KL13 aufzubauen, und dann kann ich beides vergleichen.
David H. schrieb: > Ich habe mich jetzt für den Kinetis KL13 von NXP entschieden. MKL13Z...? Da musst du dich aber beeilen. Weil für die meisten Versionen momentan "factory lead time 52 weeks" gilt. Was eine Umschreibung für "Hamwa nischt. Wann wieder wissen wir nischt." ist. > Das sollte man doch relativ leicht anpassen können, > oder? Frag NXP wo du Compiler, Bibliotheken etc. her bekommst.
Hannes J. schrieb: > David H. schrieb: >> Ich habe mich jetzt für den Kinetis KL13 von NXP entschieden. > > MKL13Z...? Da musst du dich aber beeilen. Weil für die meisten Versionen > momentan "factory lead time 52 weeks" gilt. Was eine Umschreibung für > "Hamwa nischt. Wann wieder wissen wir nischt." ist. 52 Wochen ist ja noch wenig, ich würde mich da aktuell nicht beschweren. ;) Als zweiten Datenpunkt bzgl. Ersatzmodelle habe ich den KL25 angeschaut. Der zweite MISO ist einen Pin weitergewandert, weil der KL25 kein MISO am vorherigen Pin hat. Die restlichen Pins passen so. >> Das sollte man doch relativ leicht anpassen können, >> oder? > > Frag NXP wo du Compiler, Bibliotheken etc. her bekommst. Okay, war gar nicht so schwer. Account anlegen, und schon kann man das MCUXpresso für eine Baureihe runterladen. Das hello_world vom KL43 kompiliert auch mit den Bibliotheken zum KL13, und CMake macht es (für mich) ziemlich leicht, das Ordnerlabyrinth zu durchschauen und mir das rauszusuchen was ich brauche. Mein einziger Kritikpunkt an NXP bis jetzt ist, dass das Repository auf GitHub nicht vollständig ist.
David H. schrieb: > Mein Ziel sind 10mV und 1mA Auflösung bei 10kHz Abtastrate und 20A > Maximalstrom. Anspruchsvoller Dynamikbereich.
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.