Hardware - Leistung ausreichend?

hi,

ich überlege grade mir einen (2- vielleicht 4-kanal)Datenlogger aus einem UNO, einem SD-card modul, einem LCD und einem RTC modul zu bauen.

Habe schon gelesen, das z.b. das verwenden eines WLAN moduls recht viel Speicher benötig.
Gibt es da bedenken bezüglich der performance oder des Speicherverbrauchs?

mfg

ardu123:
ich überlege grade mir einen (2- vielleicht 4-kanal)Datenlogger aus einem UNO, einem SD-card modul, einem LCD und einem RTC modul zu bauen.

Habe schon gelesen, das z.b. das verwenden eines WLAN moduls recht viel Speicher benötig.
Gibt es da bedenken bezüglich der performance oder des Speicherverbrauchs?

Ich weiß nicht, welches WLan-Modul du einsetzen möchtest.

Das ESP8266 wird aber vom Speicherverbrauch kein Problem machen. Mir ist da jedenfalls nichts bekannt.
Alles Andere sollte bei sauberer Programmierung auch funktionieren.
Es gibt sicher genügend Beispiele im Netz.

ardu123:
hi,

ich überlege grade mir einen (2- vielleicht 4-kanal)Datenlogger aus einem UNO, einem SD-card modul, einem LCD und einem RTC modul zu bauen.

Habe schon gelesen, das z.b. das verwenden eines WLAN moduls recht viel Speicher benötig.
Gibt es da bedenken bezüglich der performance oder des Speicherverbrauchs?

mfg

Alle Lösungen, bei denen der AVR die "Intelligenz" der Schnittstelle bereitstellt, sind unbefriedigend. Ein Arduino YUN oder Arduino Pro oä,. + ESP sind da deutlich besser. Kommunikation zwischen ESP und Arduino geht dann über die Serielle Schnittstelle.

Der klassische Datenlogger mit SD und RTC kann auf einem Uno einfach realisiert werden.
6 Analog und mehrere Digital-Kanäle möglich. Sollte auch noch Kapazität für ein LCD Modul haben.

WLAN (ESP8266) wäre m.E. eher eine Alternative zum Datenlogger: Wenn die Daten statt auf SD als .csv Datei gleich in einer Datenbank abgelegt werden sollen. Auf einem externen (Raspberry PI) Server.

wlan wäre ne optinale spielerei,
hab mir nur mal angeschaut wieviel mehr aufwand das wäre.
wird maxmal nachträglich mal irgendwann gemacht.

ich wollte den adafruit logger eigentlich vermeiden und jeweils einen dezidierten rtc und sd chip nehmen.
habe mich nur gefragt ob sich das von den pins her ausgeht und ob ich vielleicht auf i2c für das LCD
zurückgreifen muss um pins zu sparen und ob das kleine ding damit nicht überfordert ist.

als absoluter anfänger weiss ich zwar nicht, was genau am yun +esp besser ist, aber für meine bescheidenen
anforderungen reicht mir was der uno kann denk ich(jedenfalls was auflösung und abtastrate des ADC betrifft) eigentlich hatte ich wenn überhaupt vor das alles eher auf einem ATTINY unterzubringen
(auch wenn dann das lcd wegfallen müsste), aber erstmal wollte ich es auf dem uno zum laufen bekommen.

Kann dir das ESP nodeMCU Dev Board durchaus empfehlen.

Ausreichend Speicher und WLAN gleich an Bord. Rausgeführte Pin's & USB on Board sollten für die meisten Anwendungen reichen.
Halte dich aber an den stabilen Webserver von Stefan Thesen.

Gibt auch einen ESPduino. Also ähnlich dem Uno mit WLAN an Board. Hat aber noch keiner hier getestet.

Du solltest dir mal einen genauen Plan machen, was du alles in diesen Logger integrieren möchtest.
Grundsätzlich ist, wie schon mehrfach bestätigt, das mit einem UNO möglich.
Wichtig ist aber auch, welche Sensoren intern und extern (ausserhalb des Gebäudes) du anschließen möchtest.
Evtl. ist ja auch ein einfache Funkverbindung zwischen einzelnen Controllern nötig.

Solltest du da mehr wissen, können wir sicher auch mehr Infos geben.
Um Pins an den Controllern zu sparen, würde der Wechsel auf I2C nur Vorteile bringen, auch weil viele Sensoren mit I2C-Bus angeboten werden.

also ich stelle mir das ungefähr so vor:

UNO mit LCD display
Spannung wird an zwei shunts mit den normalen analog I/O abgegriffen.
Werte werden alle 20ms mit RTC zeit auf sd geschrieben.
(nötigenfalls könnte ich auf absolute zeit verzichten und nur relativ mitschreiben
möchte ich aber eigentlich nicht)
Knopf zum starten und stoppen der aufzeichnung.
Auf dem Display sollen wert 1 und 2 und die Zeit ausgegeben werden und wie lange die messung schon läuft.

über wlan würde ich nur die daten nach der messung abholen - sd karte in den pc schieben geht wahrscheinlich schneller...

ardu123:
Werte werden alle 20ms mit RTC zeit auf sd geschrieben.

Was um alles in der Welt willst Du loggen?
Du wirst m.E. ein Timingproblem bekommen.

ardu123:
ich wollte den adafruit logger eigentlich vermeiden und jeweils einen dezidierten rtc und sd chip nehmen.
habe mich nur gefragt ob sich das von den pins her ausgeht und ob ich vielleicht auf i2c für das LCD
zurückgreifen muss um pins zu sparen und ob das kleine ding damit nicht überfordert ist.

Den "adafruit Datenlogger" kannst du vermeiden durch Eigenbau. Adafruit bietet gute Doku, die du zumindest angesehen haben solltest für eine Eigen-Entwicklung.

Einen sd-chip gibts nicht. SD Karten können SPI ( MISO-MOSI-CLK-CS ). Meinst du den Level-Converter ?
Oder meinst du die üblichen Module für RTC und SD?

Nachtrag: Das mit den 20 ms meinst du jetzt nicht ernsthaft, oder?
Unter Datenlogger verstehe ich etwas, das dauernd aufzeichnet.
Eventuell auch Ereignisgesteuert und mit ms - Auflösung, aber das wird dann eine andere Baustelle.

ich meine diese module die man einfach auf die pins aufsteckt mit rtc oder sd bausteinen darauf.

habe irgendwo gelesen(finde es leider grade nicht)
das 1ms intervalle locker funktionieren müssten.

der logger soll normalerweise etwa 6h aufzeichnen, falls ich ihn mal übers wochenende laufen lassen will
werden es auch mal 50-60h sein.

das mit den timing problem versteh ich nicht ganz, aber es wäre mir nicht wichtig ob es nun
16 oder 25ms sind.

falls ich ihn mal übers wochenende laufen lassen will werden es auch mal 50-60h sein.

Als .csv Datei mit ca. 1 GB?

Was für Daten willst du denn da speichern?

Die RTC liefert übrigens nur ganze Sekunden :wink:

diese module die man einfach auf die pins aufsteckt mit rtc oder sd bausteinen darauf.

In etwa sowas als RTC und SD
Da musst du die Verbindungen zu den jeweiligen Arduino Pins legen (als Shield aufstecken passt nicht) Ansonsten passt die adafruit doku und Beispielsoftware ziemlich...

(DS3231 und DS1307 (adafruit) sind in der Ansteuerung ähnlich und es gibt zig Libraries für beide)

solche module meinte ich.

das die RTC nur sekundengenau ist, ist ein wenig blöd.
vielleicht kann man in kombination mit millis() die ms rausbekommen.
stell ich mir allerdings schwierig zu syncen vor.
(wie machen professionelle logger das??)

wahrscheinlich schreibe ich nur die zeit in den dateinamen.
die umwandlung der ms zur zeit geht bestimmt mit ner batchdatei relativ einfach
am PC (hoff ich)

Du machst dir Sorgen, wo gar keine sind, wenn du erst mal die Basics drauf hast. Dann haben sich viele Fragen von selbst beantwortet.

das stimmt höchstwahrscheinlich.
nur wollte ich es eigentlich vermeiden mich irgendwo einzuarbeiten
obwohl es nicht zu realisieren ist.

ich hatte diese plattform eigentlich gewählt da es angeblich leicht ist damit zu
ergebnissen zu kommen - microconrtoller in und auswendig lernen wollte ich eigentlich nicht.

ardu123:
ich hatte diese plattform eigentlich gewählt da es angeblich leicht ist damit zu
ergebnissen zu kommen - microconrtoller in und auswendig lernen wollte ich eigentlich nicht.

Das ist ja auch so - aber ganz ohne lernen geht's halt doch nicht.

Datenlogger im Millisekundenbereich ist nicht trivial und wird auch in den gängigen Samples nicht abgedeckt.

Wofür brauchst'n des?

michael_x:
Wofür brauchst'n des?

Würde mich auch interessieren. Schließlich müssen die Sensoren schnell genug Daten liefern und die sich auch so schnell und oft ändern, dass eine so genaue Aufzeichnung über mehrere Tage nötig ist.

SdFat kann sehr schnell loggen. Aber auch nicht mit den Standard-Mitteln

ardu123:
ich hatte diese plattform eigentlich gewählt da es angeblich leicht ist damit zu
ergebnissen zu kommen - microconrtoller in und auswendig lernen wollte ich eigentlich nicht.

Der Einstieg ist einfach, ja. Aber man kommt doch sehr schnell an einen Punkt an dem man um Lernen nicht herum kommt. Sieht man hier ja immer wieder. Und wenn es wirklich performant werden soll, dann muss man sich erst recht um Details kümmern.

SdFat kann auf hochwertigen Karten sehr schnell loggen. Aber auch nicht mit den einfachen Standardmitteln. Das ist weit entfernt von dem üblichen vereinfachten Arduino Code.