Guten Tag, ich stecke im Moment in der Planung eines Projektes und da ich noch nicht so viel Erfahrung mit Hardware-Ansteuerung (reiner Software-Entwickler) habe, wollte ich hier mal Meinungen einholen. Vorweg; das System wird mehr als 10 Jahre bestehen bleiben und die verwendete Hardware sollte noch verfügbar sein oder einfach zu ersetzen sein. Es geht um die Ansteuerung eines Messplatzes innerhalb eines Labors. Der Messplatz hat 4 Motoren (4x PWM ist nötig für die Treiber) und 5 Sensoren (digital) verbaut. Die Steuerung soll dann über eine GUI auf einem PC laufen. Ich habe grundsätzlich zwei Ideen; entweder einen LabJack T7 oder einen Arduino. Bei dem Arduino bin ich skeptisch, ob diese in 10 Jahren immer noch verfügbar sind. Außerdem wäre wahrscheinlich der Entwicklungsaufwand höher, da der Arduino selber zu programmieren wäre. Im Gegensatz hat der T7 eine mitgelieferte Bibliothek, die die Steuerung aus einer Reihe von gängigen Sprachen ermöglicht. Zudem zielt LabJack ausdrücklich darauf ab, über einer langen Zeitraum verfügbar zu sein und hat keine Pläne die Geräte einzustellen, bevor nicht dessen Komponenten nicht mehr verfügbar sind und diese wurden von Herstellern mit dem Ruf einer langen Verfügbarkeit ausgewählt. So explizit habe ich das bei Arduino nicht gefunden. Eine weitere Möglichkeit mit dem T7 wäre es, ihn nicht über die mitgelieferte Bibliothek zu steuern, sondern via Modbus (wäre mehr Programmieraufwand, aber immer noch weniger als beim Arduino meiner Einschätzung nach). Das hätte den Vorteil, dass der T7 mit geringem Aufwand auch durch ein Gerät eines anderen Herstellers (Modbus vorausgesetzt) ausgetauscht werden kann. Deswegen spricht aus meiner Sicht viel für den T7 und auch der hohe Preis wäre gerechtfertigt, jedoch kann ich das mangels fehlender Erfahrung nicht gut einschätzen und würde mich über Feedback freuen. Oder gibt es noch eine komplett andere Lösung, die ich noch nicht betrachtet habe? VG Tobias
Tobias schrieb: > Bei dem Arduino bin ich skeptisch, ob diese in 10 Jahren immer noch > verfügbar sind. Es gibt sie schon 17 Jahre, und es ist kein Ende in Sicht. Zudem kann man sie nachfertigen, alle Produktionsunterlagen sind open source. Vergiss LabJack.
Tobias schrieb: > Es geht um die Ansteuerung eines Messplatzes innerhalb eines Labors. > ... > Ich habe grundsätzlich zwei Ideen; entweder einen LabJack T7 oder einen > Arduino. Bei dem Arduino bin ich skeptisch, ob diese in 10 Jahren immer > noch verfügbar sind. Warum willst du ausgerechnet in 10 Jahren die Ansteuerung tauschen? Auch in 10 Jahren wird es kleine Prozessoren geben, wie sie auf Arduino Boards sitzen. Es gibt übrigens nicht "den Arduino". https://store.arduino.cc/collections/boards Für den Preis eines LabJack T7 kannst du dir ungefähr 10 bis 200 Arduino (kompatible) Boards auf Lager legen. Wenn es, wie du schreibst, um einen Messplatz geht, sollte das doch möglich sein. Nur das Programm solltest du dann wieder neu aufspielen, weil sich der Inhalt des Programmspeichers im Flash nicht ewig hält.
Abhängig davon was für "digitale Sensoren" das sind und was für ein Protokoll sie verwenden würde ich sagen: nimm eine fertige Kleinsteuerung der Industrie. Die bekommst du je nach Hersteller auch noch in 20 Jahren. Ansonsten sehe ich es so wie Wolfgang. Kauf halt ein paar von den Dingern und lege sie auf Lager. Der Preis für das 10 Jahre einlagern wird den Kaufpreis deutlich übersteigen. Je nach dem was für Motoren bzw. Sensoren es sind wirst du aber vielleicht auch noch eine Außenbeschaltung deines Arduino benötigen. Eigene Platine? Freifliegend? Gehäuse? Stecker? Edit: Typo
:
Bearbeitet durch User
Es kommt drauf an, wenn du es auf einem Arduino Uno implementieren kannst, würde ich eindeutig den Uno einem LabJack vorziehen. Bei manchen Arduinos wäre ich mir nicht sicher was die Langzeitverfügbarkeit angeht, wobei dir natürlich die Möglichkeit bleibt 2-3 Arduinos auf Lager zu legen. Den Uno wird es vermutlich noch in vielen Jahren geben, bzw. eine komplett kompatible Variante. Immerhin ist der Arduino Uno auch noch mit den ersten Arduinos vor 15 Jahren kompatibel.
Aus meiner Sicht kann man beides nicht vergleichen. LabJack ist ein fertiges System um Ein- und Ausgänge über den PC zu steuern. Man kann das mit Arduino nachprogrammieren. Die HW braucht man trotzdem, die muss man auch Entwicklen. Die ist nicht ganz trivial. Also Eingangsbeschaltung, Relais, Netzwerk usw. usw. Der Entwicklungsaufwand ist relativ groß. Erst mal machen. Daher WENN ich solche Bausteine wie LabJack für etwas brauche, dann kaufe ich sie. Und fange nicht an die zu bauen.
:
Bearbeitet durch User
Vielen Dank für die schnellen und hilfreichen Antworten. Wolfgang schrieb: > Es gibt übrigens nicht "den Arduino". > https://store.arduino.cc/collections/boards Ein passendes Modell habe ich mir bei Arduino noch nicht rausgesucht. Wolfgang schrieb: > Warum willst du ausgerechnet in 10 Jahren die Ansteuerung tauschen? Das wird natürlich nur der Fall sein, wenn die verwendete Hardware dann den Geist aufgibt. MaWin schrieb: > Es gibt sie schon 17 Jahre, und es ist kein Ende in Sicht. Ja, aber nach meiner Information nicht die gleichen Modelle und es wäre in dem Fall nicht sicher gestellt, dass das selbe Programm drauf läuft. Oder liege ich da falsch? Es könnte ja sein, dass andere Register für eine bestimmte Funktion geschrieben werden müssen, das war auf jeden Fall mein Gedanke. N. M. schrieb: > e nach dem was für Motoren bzw. Sensoren es sind wirst du aber > vielleicht auch noch eine Außenbeschaltung deines Arduino benötigen. Also die Motoren werden über einen Treiber gesteuert und der braucht ein PWM Signal. Die Sensoren sind einfache Endschalter. Also das dürfte für einen Arduino (welcher auch immer es dann wird) kein Problem sein. Findet Ihr denn grundsätzlich einen Arduino (z.B. ATmega 2560) als die beste µC-Lösung oder kennt Ihr noch andere µC, die ich mir anschauen könnte?
Tobias schrieb: > aber nach meiner Information nicht die gleichen Modelle Na ja, Uno mit 328 ist aber auch schon 15 Jahre alt. Nur den 8er gibt es nicht mehr zu kaufen - aber sehr wohl selbst zusammenzustecken. Tobias schrieb: > Findet Ihr denn grundsätzlich einen Arduino (z.B. ATmega 2560) als die > beste µC-Lösung Grundsätzlich ist die beste Lösung die, die zum Problem passt, über das du NATÜRLICH nichts schreibst. Aber um 10 Jahre einen PC mit einer 700 EUR Erweiterung laufen zu lassen muss das ja schon ein sehr lang laufendes Laborexperiment sein bei dem Kosten keine Rolle spielen.
MaWin schrieb: > Aber um 10 Jahre einen PC mit einer 700 EUR Erweiterung laufen zu lassen > muss das ja schon ein sehr lang laufendes Laborexperiment sein bei dem > Kosten keine Rolle spielen. Es könnte ein Prüfplatz für ein Produkt sein, dessen Lebensdauer 10 Jahre betragen sollte.
MaWin schrieb: > Grundsätzlich ist die beste Lösung die, die zum Problem passt, über das > du NATÜRLICH nichts schreibst. Ich bitte um Entschuldigung. Welche Informationen fehlen Dir zu dem Problem? Ich wollte den Beitrag nicht in die Länge ziehen. Wie gesagt, es geht um eine Messstation, in der die genannten Komponenten verbaut sind. Die Motoren verfahren einen Messtisch, der bis zu bestimmten Position verfahren werden soll, das erreichen der Positionen wird über die Endschalter erkannt. Die Motoren sollen nach Auswahl des Benutzers über eine GUI (via C#) gesteuert werden. Je nachdem, ob die Endschalter aktiviert sind, müssen die Motoren gestoppt werden. Es handelt sich um eine Messstation, an der im Dienstleistungsbetrieb Kalibrierungen durchgeführt werden.
Tobias schrieb: > Welche Informationen fehlen Dir zu dem Problem? Du verrätst weder etwas zu den PWM-Signalen (Frequenz (-bereich), Pegel, Änderungsgeschwindigkeit), noch etwas zu den Sensoren (Schnittstelle, Abtastfrequenz, Pegel). Für Schlittenverstellung wären doch Schrittmotoren die einfachste Sache, damit der Controller direkt die Hoheit über die Position besitzt. Einfach Motor am Endschalter stoppen funktioniert als Sicherheitsschaltung, aber nicht für saubere Positionssteuerung/-regelung (Systemträgheit).
Schnittstellen (nach aussen ) klar definieren. Dann spielt es keine Rolle mehr, was (innendrin) werkelt. Alternative: Hardware horten - in der Hoffnung dass sie nach >10 Jahren noch tut. Hast halt Lagerkosten
Tobias schrieb: > Es handelt sich um eine Messstation, an der im Dienstleistungsbetrieb > Kalibrierungen durchgeführt werden. Ok, Geld spielt keine Rolle .. Wenn der PC sowieso laufen muss (der hält aber keine 10 Jahre, und hat auch kein RS485).
ein PC hält auch locker 20 Jahre, man muss ja nicht eine gnadenlos übertaktete Gamer Kiste nehmen. Ich hätte eher Bedenken das der Labjack so lange lieferbar ist. Und wenn man eine konkrete Anwendung mit spezieller Peripherie hat, dann ist eine eigene Platine doch sowieso sinnvoll. Arduino Software kann man ja trotzdem nutzen wenn es unbedingt sein muss.
MaWin schrieb: > Ok, Geld spielt keine Rolle .. > > Wenn der PC sowieso laufen muss (der hält aber keine 10 Jahre, und hat > auch kein RS485). Mal wieder sinnlos; which MaWin today?
Johannes S. schrieb: > ein PC hält auch locker 20 Jahre, man muss ja nicht eine gnadenlos > übertaktete Gamer Kiste nehmen. Die Schwachstellen beim PC sind Massenspeicherlebensdauer, Schnittstellenkompatibilität und OS-Kompatibilität. Da sieht das über 20 Jahre betrachtet ganz schlecht aus, jedenfalls wenn der nicht völlig abgekoppelt irgendwo ein Eremitendasein fristet und halbwegs 24/7 läuft.
Wolfgang schrieb: > Tobias schrieb: >> Welche Informationen fehlen Dir zu dem Problem? > > Du verrätst weder etwas zu den PWM-Signalen (Frequenz (-bereich), Pegel, > Änderungsgeschwindigkeit), noch etwas zu den Sensoren (Schnittstelle, > Abtastfrequenz, Pegel). > Für Schlittenverstellung wären doch Schrittmotoren die einfachste Sache, > damit der Controller direkt die Hoheit über die Position besitzt. > Einfach Motor am Endschalter stoppen funktioniert als > Sicherheitsschaltung, aber nicht für saubere > Positionssteuerung/-regelung (Systemträgheit). Dir soll es ausreichend sein wenn der TO das sowohl \so\ also auch so lösen kann, denn Du sollst nicht sein Pflichten oder gar Lastenheft schreiben sondern eine Antwort geben was aus Deiner Sicht sinnvoller ist. iaW da ist Erfahrung gut und nicht pedantisch bis ins letzte Detail nachfragen um dann doch keine Antwort liefern zu wollen. @TO: Machs mit einem Arduino, egal ob auf AVR oder ARM-Basis und dokumentiere den Krempel ordentlich, schreib die SW auf einer Linuxkiste und packe diese Maschine in eine VM damit Du ggfs "nur" den Unterbau der VM austauschen kannst. BTDT und so können wir Projekte die 15Jahre alt sind problemlos weiterbetreuen.
MiWi schrieb: > schreib die SW auf einer Linuxkiste > und packe diese Maschine in eine VM VM sind keine exklusive Linux Erfindung. Wenn man kein Linux know how hat, dann kann man 'sein' OS durchaus weiter benutzen. Und es gibt genug portable IDE Lösungen die auch einen OS Wechsel oder paralelles Nutzen möglich machen. Wolfgang schrieb: > Die Schwachstellen beim PC sind Massenspeicherlebensdauer, > Schnittstellenkompatibilität und OS-Kompatibilität. ein bisschen Pflege ist da schon nötig, ein Auto lässt man auch nicht 20 Jahre ohne Wartung laufen. Backup oder Raid 0 sind auch Möglichkeiten um HDD Ausfällen den Schrecken zu nehmen.
Tobias schrieb: > Im Gegensatz hat der T7 eine mitgelieferte Bibliothek, die die Steuerung > aus einer Reihe von gängigen Sprachen ermöglicht. ...wenn du in 10 Jahren dafür noch Treiber bekommen kannst! Wenn das System wirklich so lange laufen soll, würde ich da eine Trennung einziehen und dokumentieren: Simple digitale Signale für die Motorsteuerung und I/Os, sauber auf Klemmleiste o.ä. Welche Steuerung da dran hängt, ist dann am Ende egal. PWM und binäre Signale wirst du in 10 Jahren wohl irgendwie erzeugen können. Eine sorgfältige Doku der Abhängigkeiten usw. wird dir auch heute schon beim Entwickeln helfen. Eine Alternative wäre eine netzwerkfähige Steuerung, die eine Web-Oberfläche ausliefert. Browser und TCP/IP wird es wahrscheinlich noch deutlich länger geben als USB Treiber Support für ein Nischenprodukt.
Labjack hat hingegen zu arduino externe dioden bei jedem io. Widerstande fehlen bei beiden. Nimm firmata zur Ansteuerung. Das braucht kein Code schreiben auf Arduino.
Johannes S. schrieb: > MiWi schrieb: >> schreib die SW auf einer Linuxkiste >> und packe diese Maschine in eine VM > > VM sind keine exklusive Linux Erfindung. Wenn man kein Linux know how > hat, dann kann man 'sein' OS durchaus weiter benutzen. Und es gibt genug > portable IDE Lösungen die auch einen OS Wechsel oder paralelles Nutzen > möglich machen. > Stimmt... doch bedenke: ein schön verpacktes Linux ist auch ohne weiteres Lizenzgetöse in 10 Jahren in einer VM nutzbar. Bei einem aktuellen Windows mit seinem Bedürfniss die Lizenzserver regelmäßig kontatkieren zu wollen bin mir mangels Erfahrung nicht so sicher ob das in 10 Jahren in einer VM noch zufriedenstellend läuft.
Meiner Meinung nach sind 2 weitere Spezifikationen wichtig: 1.) welche Stückzahl 2.) Wie sind die Sensoren aufgebaut: analog oder digital Bei Stückzahl 1 und analogen Sensoren mit hohen Anforderungen an die Genauigkeit ist m.E. ganz klar der Labjack im Vorteil. Ab Stückzahl 100 und geringen oder gar keinen Anforderungen an die Analoggenauigkeit punktet der Arduino, aber für mehr als 12bit Analoggenauigkeit wirds aufwendig.
Je nach Budget kann man einen Versuchsaufbau mit Labjack (war das früher Labview?) machen und dann schauen ob man das ganze nicht in einem µC implementieren kann.
Oliver S. schrieb: > ... Labjack (war das früher Labview?) In der Zeit, wo du die Frage hier eintippst, hätte Google dir schon drei Mal die Antwort geliefert. https://labjack.com/ https://www.ni.com/de-de/shop/labview.html Und "nein": LabJack ≠ National Instruments
Ich würde auf den Arduino setzen. Wir haben genug proprietäre Systeme im Einsatz, für die es vom - noch existierenden - Hersteller keinen Support mehr gibt. Ein stetiger Quell der Freude... 1. OpenHardware, d.h. man kann den einzelnen Arduino im Notfall sogar nachbauen, solange noch Chips verfügbar sind. 2. Durch die OpenHardware existieren viele Klone, so daß die Chance besteht, daß zumindest noch ein Klon verfügbar ist, wenn Arduino selbst keine Lust mehr auf das Board hat. 3. Um ganz sicherzugehen, eine gewisse Anzahl Arduinos als ET einlagern. Die kosten ja nicht so viel. 4. Die Programmierung kann i.d.R. über ISP oder USB erfolgen. Wenn es das Budget erlaubt, dann einen einfachen PC nur für diese Aufgabe "wegstellen". Ebenso einen Programmer. 5. Die Arduino-IDE abstrahiert die Hardware schon ziemlich, d.h. es wäre vermutlich später auch relativ problemlos möglich, das Programm auf einen anderen Arduino zu portieren. 6. 10 Jahre sind keine uendlich lange Zeit. Irgendwann wir es ohnehin irgendein ET geben (kann auch im mechanischen Teil stecken), das nicht mehr lieferbar ist, dann ist ohnehin improvisieren angesagt. zu 1. Ich würde auf einen Arduino mit Atmel-Chip setzen. Microchip/Atmel sind dafür bekannt, daß sie i.a. lange Produktlaufzeiten haben oder zumindest pinkompatible Nachfolgemodelle liefern. Den 8051 gibt es ja nun schon über 40 Jahre - und auch da ist noch kein Ende in Sicht...
Klar macht es Spaß so etwas mit einem Arduino zu machen. Aber es scheint kein Hobbyprojekt zu sein sondern eine Firma will damit einen (vmtl. einzigen) Messplatz aufbauen um damit Geld zu verdienen. Vermutlich will die Firma am liebsten das ganze die nächsten 10 Jahre auch nicht mehr anfassen müssen. Damit sind für mich sowohl PC-basierte als auch selbst gebaute Lösungen raus. Wie oben bereits von jemanden anderen vorgeschlagen würde ich dafür eine SPS verwenden. Schau mal bei Siemens, Eaton und Co nach einer passenden SPS.
Tobias schrieb: > einen LabJack T7 Was ist das? Nicht, dass ich das nicht selber googeln könnte, aber letztlich ist das halt eine fertige Kiste mit fertigen Modulen, die auf einem heutigen OS mit heutiger PC-Hardware läuft. Und genau diese Hardware musst du samt Software im Zweifelsfall als Backup für die nächsten 15 Jahre instandhalten und bevorraten. > Zudem zielt LabJack ausdrücklich darauf ab, über einer langen Zeitraum > verfügbar zu sein und hat keine Pläne die Geräte einzustellen, bevor nicht > dessen Komponenten nicht mehr verfügbar sind Das kann also schon morgen sein, wenn es der neuen Geschäftsleitung gefällt und ein Widerstand auf der Leiterplatte abgekündigt wird. Solnage du eine Verfügbarkeitserklärung nicht schriftlich und rechtssicher auf dem Papier hast (und das wirst du nicht bekommen), sind solche Erklärungen gut gemeinte Verkaufsargumente und unmittelbar nach dem Verkauf nur noch heiße Luft. Tobias schrieb: > Deswegen spricht aus meiner Sicht viel für den T7 Wenn du unbedingt den T7 nehmen willst, dann nimm ihn. Denn sonst wird bei jedem noch so kleinen Problem immer der Arduino Schuld sein. > und auch der hohe Preis wäre gerechtfertigt Wir verwenden für unsere Testumgebung für Fertiggeräte Beckhoff Panel-CPU mitsamt der darauf TwinCat-SPS, damit wenigstens die Testsoftware einen Generationswechsel bei der Steuerung halbwegs anstandslos überlebt. Und klar ist auch, dass man da schon mal 10-20k€ für so einen Testplatz hinlegt...
Tobias schrieb: > Zudem zielt LabJack > ausdrücklich darauf ab, über einer langen Zeitraum verfügbar zu sein Hast aber schön das PR Dokument auswendig gelernt. Vorschlag: Lass Dir vom Hersteller eine Garantie geben das Du die nächsten 10J Geräte, Ersatzteile und Support bekommst. Vertragsstrafe 100K$ Machen die nicht? Tja, dann ist das Geseiher nichts wert. Garantien auf 10J Verfügbarkeit wurden mir von Kontron schon innerhalb des ersten Jahres gestrichen. Ab dem Datum gab es nichts. Lagerbestand NULL, Produkt abgekündigt, Last Time Buy fiel aus wegen ist nicht. Da standen wir mit unseren beiden Prototypen und durften völlig neu anfangen. Das sind nur Worte, von Verkäufern, die Umsatz wollen. Also entweder legst Du Dir alles für 10-20J hin, inkl. der Rechner, SW Dongels etc. pp. oder Du setzt auf etwas das Du komplett selbst in der Hand hast und jederzeit nachentwickeln kannst. Auch Schnittstellen verschwinden mit der Zeit, Treiber laufen nicht mehr unter neuem OS, das alte OS läuft aber nicht auf neuer HW. Der auf 10J projektierte Messplatz soll in ein paar Jahren nun doch noch drei mal gebaut werden und ist auch nach 20J doch noch okay... Arduinos sind nur MCUs mit minimaler Beschaltung. Nein, ich würde keinen Arduino dafür nehmen. Ich würde mir gleich die MCU meiner Wahl schnappen und alles darum herum bauen. Der Lab jack T7 ist ein Plastikbomber aus USA der mit tollen Angaben protzt aber wenn Du dann selber feststellst das die Unterlagen aus USA oft nicht das Papier wert sind auf dem sie gedruckt wurden, stehst Du da und kannst nichts machen. Definiere mal ganz genau was für Sensoren, welche Anzahl wovon, potentialgetrennt oder nicht. Skizziere den kompletten Messplatz und dann weist Du was Du wirklich brauchst. Und such dir nen HW Entwickler. HW Design ist weit mehr als offensichtliche ICs hintereinander zu pappen und irgendwie mit Kupferbahnen zusammenzuknüddeln. Gerade wenn Du nicht nur eine hohe Auflösung sondern dabei auch noch eine akzeptable GENAUIGKEIT haben willst und eine Qualität die auch 10J durchhält.
>Arduinos sind nur MCUs mit minimaler Beschaltung. >Nein, ich würde keinen Arduino dafür nehmen. Ich würde nichts mehr anderes als was Arduino-artiges nehmen. Open Source, Treiber gut abstrahiert, mit Sicherheit ewig verfügbar und selbst anpassbar. Und wenn's um die Beschaltung geht, gibt es Adaptershields in allen Farben und Formen: https://www.rugged-circuits.com/24v-industrial/24v-industrial-shield
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.