Arduino und GSM-Modul laufen seit Jahren mit Li-Primärbatterien

Für eines unserer Projekte müssen wir ein Arduino-Board + GSM-Modul (z. B. SIM800C) viele Jahre ohne Aufladen mit Batterien betreiben.

Der Arduino sollte sich für 99,99 % der Zeit im Power-Down-Modus befinden und nur einmal am Tag aufwachen, einen Sensor (einen Ultraschallsensor) lesen und Daten über das GSM-Modul an unseren Cloud-Server senden.

Ich verwende einen 3,3 V Arduino. Die Eingangsspannung für das GSM-Modul liegt zwischen 3,4 und 4,4 V, benötigt aber beim Senden einen hohen Impulsstrom – bis zu 2 A. Die Übertragung ist kurz (ich schätze weniger als 1 Sekunde).

Jetzt ist mein Problem, dass ich nicht weiß, wie ich diese beiden mit Strom versorgen soll. Wäre ein 3,6V Li-SoCl2 Akku die beste Lösung? Soll ich den Arduino aus der Li-SoCl2-Batterie und dann das GSM-Modul aus dem Arduino mit Strom versorgen?

Jemand hat einen FET-Pegelwandler empfohlen, aber die, die ich online gefunden habe, wandeln von 3,3 V auf 5 V um, und das GSM-Modul scheint jedoch mit weniger als 5 V zu arbeiten. Das GSM-Modul hat keinen Regler auf der Platine.

Der Batteriehersteller hat empfohlen, auch einen Superkondensator zu verwenden? Sie schlugen auch einen Aufwärtswandler vor, da sie sagen, dass bei hohem Impuls (2 A) die Spannung niedriger als 3,6 V sein wird, sodass dies den Betrieb des Arduino- und GSM-Moduls beeinträchtigen könnte.

Zunächst ist die Verwendung eines 2-Akku-Packs (7,2 V) und des Herunterfahrens des aktuellen A-DC / DC-Wandlers jedoch keine praktikable Option, da er einen hohen Ruheverbrauch hat und wir jeden Stromverbraucher eliminieren müssen. Ich weiß, dass es sehr niedrige Ruheregler wie TPS61222-EP von Texas Instruments oder andere von Microchip gibt, aber diese können nur auf einem Breakboard verwendet werden, oder? Ich kann sie nicht direkt an Drähten installieren, oder?

Ich würde mich über jeden Vorschlag freuen.

Vielen Dank. Razvan

Ich glaube nicht, dass die GSM-Übertragung in weniger als einer Sekunde erledigt sein wird. Die Übertragung der Daten sicher, aber nicht die Verbindung des Moduls mit dem Netzwerk. Es sei denn, Sie würden es die ganze Zeit angeschlossen lassen, aber das würde Ihre Batterie in Wochen entladen (im besten Fall). Da sich Ihr System die meiste Zeit im Standby-Modus befindet, gehe ich davon aus, dass der Standby-Strom am kritischsten ist. Aber um irgendetwas Nützliches darüber zu sagen, müssen Sie alle Daten in eine Tabelle eingetragen und Berechnungen angestellt haben. Wenn Sie auf Ihrem aktuellen Niveau bleiben, in dem Sie nur Annahmen treffen, werden Sie die angestrebte Akkulaufzeit nicht erreichen.
Ja, es dauert 30 Sekunden bis zu einer Minute, um aus der Kälte ins GSM-Netz zu gelangen. Die Verwendung eines handelsüblichen Arduino- und GSM-Systems wird wahrscheinlich schreckliche Leckagen haben. Sie werden wahrscheinlich mehrere Kubikmeter Batterien haben. Wenn es überhaupt möglich ist, ein anderes Funksystem zu verwenden, tun Sie dies.
Ich bin mir nicht sicher, ob Sie da richtig sind @pjc50 - vorausgesetzt, Sie aktivieren die Schlafmodi im Arduino, stellen Sie sicher, dass alle linearen Regs aus dem Stromkreis sind, zusammen mit den Power-LEDs (Pro Minis lassen dies zu), Sie können problemlos 5 uA Schlafstrom erhalten. Das sind 120 uAh pro Tag aus der Zelle. Wenn wir davon ausgehen, dass das GSM-Modul 1 Minute lang durchschnittlich 500 mA zieht, sind das zusätzliche 8333 uAh pro Tag = 3 Ah pro Jahr von der Zelle. Ein ER34615 hat eine Kapazität von 19 AH bei 3,6 V, sodass selbst unter Berücksichtigung von Ineffizienzen mehrere Jahre möglich erscheinen.
@stefandz Ich denke, dass das GSM-Modul im Normalbetrieb etwa 500 mAh verbraucht, also sollte es für 1 Minute etwa 60-mal weniger verbrauchen, oder? Haben Sie Erfahrungen mit ER34615-Zellen? Jemand hat mir gesagt, dass sie sich vielleicht komisch verhalten und ich nicht weiß, was ich tun soll.
Ich habe noch nie ER34615-Zellen verwendet, aber ich verstehe nicht, warum sie sich "seltsam" verhalten würden. Definiere seltsam! Wenn ich das wäre, würde ich eine Boost-Schaltung verwenden, um das GSM-Modul mit Strom zu versorgen, das ich nur bei Bedarf einschalte (mit dem Arduino, um es zu steuern) und experimentieren, um den erforderlichen Kapazitätswert über der Batterie zu finden - wahrscheinlich beginnend mit 1F 5,5 V Supercap und Iteration von dort aus (unter Verwendung eines Oszilloskops zur Überwachung des verwendeten Spannungsabfalls). Übrigens könnte dieser Artikel für Sparkfun.com/tutorials/309 mit geringem Stromverbrauch von Interesse sein
@stefandz Entschuldigung für meine dumme Frage, aber was meinst du mit Boost-Schaltung? Ein bidirektionaler Pegelwandler? Kann ich einen fertig kaufen? Wenn ja, worauf muss ich achten? Wäre die Stromversorgung des Arduino direkt von einer Zelle und dann das GSM-Modul vom Arduino-Board die Lösung? Ich denke, ich sollte irgendetwas zwischen GSM und Arduino installieren? Vielen Dank.

Antworten (1)

Um es klar zu sagen, ich denke, was Sie vorschlagen, ist durchaus machbar, aber nicht trivial. Es wird viele Bereiche geben, die Sie optimieren müssen, um die gewünschte Leistung zu erzielen.

Ich würde dies angehen, indem ich den Arduino direkt von der LiSOCl-Zelle (so etwas wie ein ER34615) mit einem 1F-Supercap (mit einer Nennspannung von 5,5 V) parallel zur Zelle betreibe, um die Anforderungen an die Spitzenstromaufnahme zu erfüllen. Der genaue erforderliche Kondensatorwert hängt von der genauen Größe und Wellenform der Stromaufnahme des GSM-Moduls ab.

Ich würde den Strom für das GSM-Modul mit einem Boost-SPMS erzeugen , dessen Ausgangsspannung so eingestellt wurde, dass es die minimale Leistungsaufnahme des Moduls selbst verursacht. Eventuell können Sie diese aus dem Datenblatt ablesen oder besser noch selbst die Leistungsaufnahme über den Betriebsspannungsbereich messen. Sie können möglicherweise ein Modul kaufen, um dies zu tun, aber Sie müssen wahrscheinlich seine Ausgangsspannung anpassen - die meisten in diesem Bereich sind für die Ausgabe von 5 V ausgelegt. Sie möchten, dass diese Boost-Schaltung einen Aktivierungsstift hat, damit Sie sie ausschalten können, wenn der Arduino schläft.

Hier ist ein Diagramm auf Blockebene von dem, was ich vorschlage:

schematisch

Simulieren Sie diese Schaltung – Mit CircuitLab erstellter Schaltplan

Beim Arduino selbst müssen alle zusätzlichen Schaltkreise zur Stromaufnahme entfernt werden - jeder Linearregler hat einen Leckstrom, den Sie sich nicht leisten können, und Sie möchten dort auch keine ständig eingeschaltete Power-LED oder Puffer-Opamps. Der Arduino Pro Mini ist möglicherweise ein guter Kandidat, da er Vorkehrungen zum Aufheben der Verknüpfung einiger dieser Dinge (Linearregler) und andere überhaupt nicht hat (Puffer-Operationsverstärker).

Sie werden auch den internen RC-Oszillator im Gegensatz zum Kristall auf der Platine verwenden wollen. Hier finden Sie einige Ideen zur Reduzierung der Leistungsaufnahme eines Arduino, die einige Details dazu enthalten (Sie müssen die richtigen Sicherungseinstellungen mit einem geeigneten ICSP-Programmierer festlegen). Sie sollten Ihren Code auch über ICSP laden, da die Genauigkeit des Onboard-Oszillators möglicherweise nicht gut genug für den UART-Bootloader ist.

Re: Pegelverschiebung, Sie können möglicherweise mit einer Mischung aus Nichtstun (für Signale vom Arduino zum GSM-Modul) und einem relativ hochohmigen Potentialteiler (für Signale in die andere Richtung) davonkommen. Dies hängt von der genauen Art der Verbindung, der Bitrate/Frequenz und den akzeptablen Logikpegeln des GSM-Moduls ab. Es wird auch davon ausgegangen, dass Sie kein bidirektionales Protokoll wie I2C verwenden - dafür benötigen Sie einen MOSFET-basierten Pegelumsetzer wie diesen - sie funktionieren bei den von Ihnen erwähnten Spannungen einwandfrei.

Was die Akkulaufzeit betrifft, ist es schwer, genau zu sagen, da wir keine genauen Zahlen von Ihnen haben. Eine ungefähre Berechnung würde jedoch so aussehen:

Nehmen wir an, 5 uA Ruhestrom (1 uA sollte erreichbar sein, aber seien wir pessimistisch). Das sind 120 uAh pro Tag aus der Zelle. Wenn wir davon ausgehen, dass das GSM-Modul 1 Minute lang durchschnittlich 500 mA zieht, sind das zusätzliche 8 333 uAh pro Tag. Aber wir haben den Aufwärtswandler nicht berücksichtigt. Unter der Annahme, dass die Zellenspannung 3,6 V beträgt (sie nimmt ab, wenn die Zelle leer wird) und der Aufwärtswandler 4 V ausgibt, ist die Stromaufnahme an der Zelle 4/3,6 = 1,11x höher als am GSM-Modul. Fügen Sie einen angenommenen Wirkungsgrad von 80 % hinzu (Sie sollten es viel besser machen) und der Energieverbrauch beträgt etwa 8 333 x 1,11 / 0,80 = 11 574 uAh pro Tag für das GSM-Modul.

Fügen Sie die ursprünglichen 120 uAh Ruhestrom hinzu und das sind 11,7 mAh pro Tag. Allerdings pjc50macht einen hervorragenden Punkt über den Leckstrom von Supercaps. Für einen 1F 5,5 V Supercap, den ich nachgeschlagen habe, wurde der Leckstrom mit 300 uA angegeben! Und das nach 30 Minuten - davor ist es deutlich schlimmer. Unter der Annahme einer konstanten Leckage von 300 uA über 24 Stunden sind das zusätzliche 7.200 uAh - eine 60%ige Erhöhung des Verbrauchs ohne Nutzen. Vor diesem Hintergrund lohnt es sich, die Kappe zum Aufladen für eine bestimmte Zeit einzuschalten, bevor Sie das SMPS aktivieren und eine Verbindung zum GSM-Netzwerk herstellen – und die Verbindung trennen, wenn Sie fertig sind. Dies lässt sich leicht mit einem MOSFET erreichen - wie im vorgeschlagenen Schema gezeigt. Auf diese Weise verlieren Sie im Laufe eines Tages immer noch einige zusätzliche uAh, aber sie werden auf (absolutes Maximum) die im Kondensator gespeicherte Ladung bei voller Ladung (3,6 V x 1F = 3,6 C -> 1 000 uAh bei 3,6 V) und begrenzt wahrscheinlich viel weniger. Aber lass'

Ein ER34615 hat eine Kapazität von 19 Ah bei 3,6 V, was auf dem Papier etwa (19/0,0127)/365,25 = 4,1 Jahre Batterielebensdauer entspricht. Natürlich kann Ihre Laufleistung variieren, und Sie sollten während der Entwicklung sowohl Ihren stationären Zustand als auch die Übertragungsströme (mit einem Oszilloskop, vorzugsweise einem, das sich unter die Kurve integrieren kann) sorgfältig überwachen, um zu überprüfen, ob Sie auf dem richtigen Weg sind.

Sie haben jedoch einen langen Weg vor sich, wenn viele der Konzepte in dieser Antwort neu für Sie sind. Wenn dies ein Universitätsprojekt ist, schlage ich vor, Ihrem Vorgesetzten ein paar Bier (oder was auch immer für ihn angemessen ist) zu kaufen und ihn zur Seite zu holen. Wenn dies ein persönliches Projekt ist, müssen Sie sich mit einem durstigen Elektronikingenieur anfreunden, der Zeit übrig hat!

Viel Glück.

Haben Supercaps nicht selbst eine große Leckage?
@ pjc50 - das tun sie - aktualisierte Berechnungen und Schaltpläne, um die Auswirkungen davon zu minimieren
@stefandz Vielen Dank für deine so ausführliche Antwort und Anregungen. Ich muss zugeben, dass es jetzt über meinen Kopf hinausgeht. Um ehrlich zu sein, muss ich einem potenziellen Kunden an dieser Stelle nur eine Demo zeigen – es würde also reichen, wenn ich alles ein paar Stunden laufen lassen kann (kein Stromausfall) – und erst dann einen Ingenieur einstellen, der mir bei der Implementierung hilft Vorschläge. Ich plane, einen 3,3-V-8-MHz-Arduino direkt aus der Zelle mit Strom zu versorgen und von dort aus das GSM-Modul weiter mit Strom zu versorgen. Ich habe versucht, bei Aliexpress nach einem Aufwärtswandler zu suchen (er hat die DC / DC-Konverter zurückgegeben), aber haben sie nicht viel Ruheverbrauch? Danke.
Der Ruhestromverbrauch ist kein Problem, wenn das SMPS deaktiviert ist, entweder über einen Aktivierungsstift oder einen Reihen-MOSFET-Schalter. Ich hätte gedacht, dass Sie mit dieser Zelle überhaupt ein paar Stunden mit jeder Optimierung auskommen sollten - vielleicht sogar einen Tag. Nach diesem Punkt ist es, wie Sie sagen, am besten, einen Ingenieur an Bord zu holen, um dies richtig zu entwerfen.
Also sollte ich zuerst einen DC/DC-Aufwärtswandler mit anpassbarem Ausgang finden, oder? Würde das gehen? Ich würde auch den Regler und die LED auf dem Arduino Pro Mini für minimalen Verbrauch entfernen. Mir ist noch nicht klar, was der Unterschied zwischen DC/DC-Wandler und einem bidirektionalen Level-Shifter ist (ich dachte, dass der Level-Shifter viel weniger Strom verbraucht) ... Stimmt das? Vielen Dank.
Lesen Sie den Wikipedia-Artikel über das von mir verlinkte Boost-SMPS gut durch - die Kurzgeschichte besagt, dass das SMPS eine große Menge an Leistung umwandelt (und Spannungen erhöhen, verringern und invertieren kann), während Pegelumsetzer für niedrige Leistungspegel vorgesehen sind und nur innerhalb arbeiten können bereitgestellte Stromschienen (die wiederum von anderen Stromversorgungen erzeugt werden). Ich würde auf jeden Fall nach einem DC / DC mit einstellbarer Ausgangsspannung suchen (im Allgemeinen sind dies die meisten, aber einige Module werden mit Blick auf die Anpassung hergestellt). Ich würde mir zu diesem Zeitpunkt keine Gedanken über die lineare Ausrichtung und die LED machen - für einen Betrieb von 1 Tag sind sie Ihre geringsten Sorgen.
@stefandz noch einmal vielen Dank für so eine tolle Hilfe. Wäre es möglich, mich nach Abschluss dieser Demo wieder mit Ihnen in Verbindung zu setzen? Ich komme aus Spanien – aber wenn Sie etwas Zeit für ein solches Projekt hätten, könnten wir zusammenarbeiten, wo immer Sie auch wären. Vielen Dank. Razvan
Hallo @RazvanD.Toma – meine Kontaktdaten sind in meinem Netzwerkprofil. Fühlen Sie sich frei, sich über diese in Verbindung zu setzen, wenn Sie in Zukunft Hilfe benötigen, und ich werde sehen, was ich tun kann.