Warum sollte man eine SPS anstelle eines Mikrocontrollers verwenden?

47

Warum verwenden alle SPS in Industrieumgebungen anstelle einer auf Mikrocontrollern basierenden Lösung?

Für eine längere Aufgabe ist das SPS-Programm so kompliziert wie ein Mikrocontroller-Programm.

Eine auf Mikrocontrollern basierende Lösung ist möglicherweise anpassbarer und kostengünstiger.

Saneesh AT
quelle
9
en.wikipedia.org/wiki/…
Chris Laplante
1
Hai SimpleCoder, es ist ein Link, den ich einfach googeln kann. Aber wir posten Fragen in einer solchen Form, um Antworten von denen zu bekommen, die Erfahrung in der Industrie haben. Schauen Sie sich einfach die folgenden Antworten an, sie stammen nicht von Google, sondern aus Erfahrung.
Saneesh
4
Ich verstehe das - ich bin hier nicht neu. Aber viele Probleme lassen sich mit Google und / oder Wikipedia leicht lösen. Betrachten Sie einige der Referenzen, die im Wikipedia-Artikel zitiert werden.
Chris Laplante
4
Ich werde nicht auf Details eingehen, aber eine SPS ist eine legoartige Lösung: skalierbar, universell usw. Und sie ist resistent gegen elektromagnetische Störungen, Staub, Temperatur, Feuchtigkeit, Vibration, wie Sie es nennen. Es ist ein Panzer unter den Mikrocontrollern.
Jonny B Good
5
Eine SPS ist ein Mikrocontroller in einer Box. Zugegeben, es ist eine sehr schöne Box mit anderen überprüften und getesteten Peripheriegeräten in Boxen, die angeschlossen werden, aber es ist immer noch ein Mikrocontroller in einer Box. Es ist keine binäre Entscheidung.
Connor Wolf

Antworten:

26

Ich denke, ein wichtiger Faktor sind die Menschen. Die Ingenieure, die einen Mikrocontroller für den Betrieb einer Fabrik entwickeln können, sind damit beschäftigt, Kleingeräte zu produzieren. Ingenieure, die an Marken-SPSen arbeiten, verwenden Standard-Softwarepakete. Sie müssen sich nicht mit der Programmierung auf niedrigerer Ebene befassen. Die meisten Probleme, auf die sie stoßen, wurden bereits mit dieser Hardware gelöst (Kommunikation mit fremden Geräten, E / A-Problemen, PIDs). Auch die Ingenieure sind austauschbar. Mit einer guten Spezifikation oder einem guten Code-Kommentar benötigen Sie nicht den Ingenieur, der dort ein System erstellt hat, wenn Sie den Code ändern müssen.

Es ist auch ein bisschen so, als würde man fragen, warum jemand einen PC kaufen würde, wenn er seinen eigenen bauen könnte.

Daniel
quelle
Kann sein ... Der Preisunterschied spielt in einem industriellen Umfeld keine Rolle. Und es ist zuverlässiger, eine bewährte Hardware zu programmieren.
Saneesh
8
Wenn man über Geld spricht, muss man bedenken, dass die Zeit eines Ingenieurs einen Preis hat. So kostet beispielsweise eine SPS für eine Fabrik 4.000 US-Dollar. Ein Mikrocontroller kostet 2 US-Dollar, die Programmierung für den Betrieb der Fabrik dauert 100 zusätzliche Stunden bei 100 US-Dollar pro Stunde. Die SPS ist billiger, bis Sie eine magische Anzahl identischer Installationen erreicht haben (zweieinhalb in meinem Beispiel). Wartung, Upgrades, Ersatzteile und eine ganze Reihe anderer Faktoren erhöhen wahrscheinlich auch diese magische Zahl, bis Sie Tausende von Dingen kontrollieren müssen, die identisch sind und sich nicht ändern (Waschmaschinen, Steuergeräte?).
Daniel
1
Austauschbare Teile sind ein Segen für Ingenieure. Austauschbare Ingenieure zu haben, ist ein Fluch für Ingenieurskarrieren. Aber ja, diese Antwort nagelt es ziemlich gut.
JustJeff
1
Ich bin anderer Meinung, es liegt nicht nur an den Menschen, und schon gar nicht daran, dass sie damit beschäftigt sind, x statt y zu tun. Es ist WARUM sie x statt y tun. SPS sind zertifiziert und entworfen, Sie können sie direkt anschließen und sie funktionieren (wenn nicht, können Sie die Firma verklagen, die sie hergestellt hat?). Mikrocontroller sind billiger, benötigen jedoch ein komplettes Design sowie die Einhaltung von Werksnormen und müssen ausfallsicher gemacht werden. Eine SPS hat all diese Schwierigkeiten durchgemacht und kann direkt installiert werden, was für ein einmaliges Projekt billiger und sicherer ist.
Paul
28

Die höheren Kosten für SPS werden durch die Tests (häufig in unangenehmen Umgebungen) ausgeglichen, denen sie unterzogen werden (oder unterzogen werden sollten). Könnten Sie ein kundenspezifisches Mikrocontrollersystem entwerfen? Ja, aber dann müssten Sie es wahrscheinlich zertifizieren.

Die Anpassbarkeit ist kein großes Problem, wenn Sie eine große Anlage voller Ausrüstung haben. In der Tat möchten Sie das Gegenteil, Sie möchten, dass die Inhalte so standardisiert wie möglich sind.

Darüber hinaus ist die Kontaktplanlogik - abgesehen von herstellerspezifischen Merkmalen - bereits weitgehend standardisiert. Dadurch wird das Debuggen / Portieren von Software zwischen Steuerungen einfacher als das Portieren zwischen verschiedenen Mikrocontrollern.

Renan
quelle
18

Das Umweltproblem (physische, elektrische Isolierung, elektromagnetische Störungen usw.) ist sehr groß und wurde bereits durch andere Antworten abgedeckt.

Sie müssen auch überlegen, wie SPS Ihnen eine sehr deterministische Umgebung bieten. Sie sind gut verstanden und bestehen seit den 1970er Jahren.

Sie wissen, wie lange jeder Strompfad dauern wird, und Sie können das Verhalten anhand bekannter Eingabeparameter garantieren. Bei reiner Mikrocontroller-Programmierung kann es schwierig werden, genau herauszufinden, wie sich eine Änderung einer Funktion auf die gesamte Funktionsweise des Programms auswirkt.

Die Kontaktplanlogik ist für die Maschinensteuerung einfach zu verstehen und zu programmieren. Wir lassen sie von Elektrikern programmieren, ohne dass Techniker sie einbeziehen. Sie können die elektrischen Systeme der Leitung leicht selbst beheben und die entsprechenden Reparaturen durchführen. Sie können auch eigene Programme schreiben und Änderungen an bestehenden Programmen vornehmen. Die Debugging-Umgebung ist weitaus besser (und ich meine WAY) als das, was Sie normalerweise mit eingebetteten Mikros erreichen können.

Bei Sicherheitssystemen wird es noch wichtiger, Sicherheits-SPSen und deren redundante Funktionen und Watchdogs zu verwenden, um die ordnungsgemäße Funktionalität sicherzustellen.

Sie wissen, dass es einige SPS im Bereich unter 100 US-Dollar gibt: CLICK® Series Programmable Logic Controllers (PLCs) (Stackable Micro Brick) und viele SPS im Bereich unter 500 US-Dollar mit begrenztem E / A- Aufwand .

Es gibt einige Module, bei denen es sich im Grunde genommen um industrialisierte "Mikrocontroller" -Pakete handelt. Beispielsweise können die meisten PID-Temperaturregler als solche angesehen werden.

Abgesehen davon können Sie Orte in der Branche entdecken, an denen Computer mit Echtzeitbetriebssystem die Steuerungsaufgaben und die Maschinensteuerung direkt übernehmen. Dies wird insbesondere bei vernetzten IO weiter zunehmen.

Alberto
quelle
16

Nicht jeder, der mit SPS arbeitet, ist ein Elektronikexperte.

Ich habe angefangen, SPS als reiner Prozess-Typ zu machen. Ich konnte kein Multimeter verwenden, verstand den Unterschied zwischen Spannung und Strom nicht wirklich. Ich hatte in einer College-Klasse ein C gemacht, aber das war es.

Hochsprachen sind massiv. In ein paar Wochen Training konnte ich im Grunde den gesamten Befehlssatz einer SPS erlernen, und das war genug für die grundlegende SPS-Programmierung. Ich musste mich nie um Bibliotheken, E / A-Verarbeitung, Speicherzuweisung usw. kümmern.

Und wie bereits erwähnt, vor Sicherheitsanwendungen. Ich würde keinem selbstgebrauten Mikrocontroller vertrauen, für den er eine SIL-3-Einstufung beansprucht.

Jason Kennaly
quelle
11

Denken Sie an Endbenutzer: Eine SPS ist freundlicher für eine Person mit leichtem EE-Hintergrund. Einfacher zu bedienen, einfacher zu warten und eine SPS bieten eine Fabrikautomationssteuerung auf höchstem Niveau. Stellen Sie sich eine riesige Anlage vor, die 10.000 verschiedene Funktionen benötigt. Sie können nicht alle Funktionen aufbauen. Der Zeit- / Kostenaufwand ist im Vergleich zur Verwendung von COTS (billig von der Stange) enorm.

Wenn Sie ein echter EE sind, nehmen Sie keinen solchen Job an, es ist ein langweiliger Low-Tech-Job. Die Aufgabe eines echten EE ist es, mit einer MCU eine SPS-Box zu erstellen, mit der andere Leute spielen können.

user25987
quelle
6

Ein weiterer Faktor, der noch nicht erwähnt wurde, ist, dass einige SPS-Anbieter erhebliche Anstrengungen unternommen haben, um zu demonstrieren, dass sich ihre Systeme auch bei verschiedenen Arten von Widrigkeiten wie angegeben verhalten können (bei Widrigkeiten, die einen normalen Betrieb unmöglich machen würden). Das Gerät kann sich darauf verlassen, dass der Trigger einen Fehlerausgang auslöst oder andere Ausgänge in einen ausfallsicheren Zustand versetzt. Während es möglich wäre, viele Arten von Mikrocontrollern so zu programmieren, dass sie selbst bei Störungen, die ein oder mehrere Registerbits während des Betriebs kippen könnten (z. B. durch redundante Berechnungen mit unterschiedlichen Formeln), eine solche Robustheit bieten, Der Aufwand für das Schreiben und Validieren einer solchen Software wäre im Verhältnis zur Komplexität des tatsächlichen Verhaltens der Software enorm. Es ist viel einfacher, eine SPS zu verwenden, in die solche Sicherheitsfunktionen integriert sind.

Superkatze
quelle
5

In meiner Erfahrung habe ich sowohl Mikrocontroller als auch SPS in industriellen Umgebungen gesehen.

Ausschlaggebend ist "Wer wird das Gerät nach der Inbetriebnahme warten / warten / modifizieren?"

In industriellen Umgebungen wird mehr Zeit für das Lesen (siehe Fehlersuche) von Code aufgewendet als für das Schreiben. Dies bedeutet nicht, dass Sie versuchen, Probleme im Code zu finden, sondern den Code verwenden, um Probleme im Feld zu diagnostizieren. Oft sind die Leute, die eine solche Fehlersuche durchführen müssen, Elektriker, die elektrische Schaltpläne besser lesen können als Code in einem Textformat (daher die Beliebtheit der grafischen Art "Programmiersprachen" wie z. B. Kontaktplanlogik). Bei größeren Standorten mit engagierten Automatisierungstechnikern spielt dies keine Rolle mehr.

In engem Zusammenhang mit dem oben Gesagten stehen Fragen der historischen Trägheit für eine bestimmte Lösung. Der technische Hintergrund des Personals und frühere Erfahrungen mit Hardware / Anbietern führen zu den erforderlichen Voraussetzungen für Projekte, die in der Regel nach folgenden Kriterien organisiert sind: ("Wir verwenden bereits Anbieter X und verfügen über Ersatzteile - alles, was in der Zukunft implementiert wird, muss X-YZ verwenden ").

Ein weiterer Aspekt, der in den letzten Jahren immer wichtiger wurde, ist die Frage, wie dieses Gerät mit dem Rest meines Geräts / meiner Fabrik / meines Standorts / meiner Firma kommunizieren wird. Dies ist in der Regel für SPS-Steuerungen vorab behoben und eher ein Problem für Mikrocontroller-Lösungen mit geringem Volumen.

Ich habe Mikrocontroller implementiert gesehen, bei denen eine sehr kundenspezifische Lösung erforderlich war (aber normalerweise nur als Herstellerprojekt implementiert und vom Hersteller unterstützt). Gründe hängen normalerweise mit der Ausführungsgeschwindigkeit oder der Notwendigkeit zusammen, die Hardware und den Code sehr genau zu lokalisieren (keine Möglichkeit von Kommunikationsverzögerungen und die Notwendigkeit, den kritischen Prozess von anderem nicht verwandtem Code zu trennen).

Chris Freiberg
quelle
4

Der Mikrocontroller ist ein Gerät, die SPS ein Gerät. Verwenden Sie Mikrocontroller "am Ende", wenn Sie ein unauffälliger Bastler oder Hersteller eines Massenprodukts sind. Für kundenspezifische Industrielösungen ist PLC die einzige Wahl.

Proskit
quelle
3
Nicht die kategorisch einzige Wahl. Die SPS ist jedoch für die Fabrik oftmals viel praktischer, da das Fabrikpersonal leichter mit der SPS als mit μC arbeiten kann. Außerdem hätte die Fabrik das Budget, um fertige SPS zu kaufen.
Nick Alexeev
3

Sie können beide das gleiche Ziel erreichen. Während ein Mikrocontroller-gesteuertes System billiger sein kann, ist das Programmieren in C-Code ein gewaltiges Unterfangen. Um die C-Sprachen beherrschen zu können, ist eine Menge Training erforderlich.

Davon abgesehen gibt es einen Bereich, in dem ich mit MCUs mit einem C ++ - Programm kommuniziere, um den Strom und die Spannung großer Gleichrichter-Ladeschaltungen für Industriebatterien (über 200 AH-Batterien) zu verfolgen und zu regeln. Es gibt ungefähr 100 Gleichrichter. Das Auffinden des alten AD-DA mit dem STD-Controller und der Relaiskarte ist so gut wie unmöglich. Sobald diese Bretter schlecht werden, ist es das.

Aus diesem Grund rüsten wir derzeit alle Steuerungen auf die Allen Bradley-Reihe der Compact- oder Control Logix-Reihe um. Sind sie teuer? Ja. Ist es teuer, einen Programmierer einzustellen, der sich mit C ++ auskennt? Ja. Mit RS Linx / Logix können mehrere Personen, die alle für das Unternehmen bereit sind, Programme mit dieser Software schreiben / bearbeiten. Zusammen mit dem Umfang der Unterstützung und Erweiterung kann die Verwendung von SPSen schneller und kostengünstiger sein.

Jimmy
quelle
2

Ein weiterer erwähnenswerter Faktor ist der Produktlebenszyklus. In der Regel ist die Unterstützung für SPS über viele Jahre verfügbar. Ich unterstütze immer noch einige Texas Instruments-Steuerungen aus den Jahren 1985 und 1987. Sie waren gut gebaut und äußerst zuverlässig. Ersatzteile sind zu diesem Zeitpunkt in Industriereparaturzentren oder bei eBay erhältlich und zu hohen Preisen erhältlich.

Versuchen Sie, in 30 Jahren Ersatzchips, -platinen und -zubehör für Ihr (Lieblingsmikro einfügen) zu finden.

Transistor
quelle
2

Ich mag die obigen Antworten und dachte, ich sollte auch einsteigen. SPS vs. Mikrocontroller hat auch viel mit Umfang und Kosten zu tun. Beispielsweise können Sie eine Waschmaschine sehr schnell mit einer SPS programmieren. Aber dann würde Ihre Waschmaschine das Dreifache des Preises für die SPS kosten. Sie entwerfen also einen Mikrocontroller mit einem einzigen Programm, das 100.000 Mal repliziert werden soll. Die Entwicklungskosten dafür sind hoch, aber über 100.000 Einheiten sind sehr niedrig, und die Kosten für die Ausrüstung sind niedrig.

Alternativ können Sie auch ein gesamtes Kraftwerk in einem Mikrocontroller programmieren. Allerdings (zusammen mit vielen der oben genannten Antworten) werden Sie wahrscheinlich 20-mal so viel Zeit mit der Programmierung und weitere 20-mal so viel Zeit mit der Fehlersuche verbringen - Niedrigere Hardwarekosten ja, aber Ingenieure sind teuer, besonders gute. Sie können auch eine SPS mit höheren Hardwarekosten verwenden, die jedoch viel weniger Zeit für die Programmierung benötigt, was zu geringeren Engineeringkosten führt.

Beachten Sie auch, dass ich keine Person sein möchte, die BACnet, Modbus, CIP und einen Ethernet-HMI-Treiber in einen Mikrocontroller programmieren muss. SPS können dies mit ein paar zusätzlichen Karten und ein paar Stunden Konfigurationsaufwand erledigen.

Stephen
quelle
Wahrscheinlich war es nicht das beste Thema, das man hinzufügen sollte, da es so alt ist, eine akzeptierte Antwort und eine Vielzahl anderer Antworten hat. Aber du hast einen gültigen Punkt und bist neu hier, also +1. Neu hinzugekommen im Gespräch war vor allem der Punkt von High-Level-Stacks und Software für eine schnellere Integration für die Steuerungs- / Konstruktionsingenieure. noch scheint niemand diesen Teil direkt erwähnt zu haben.
KyranF
@KyranF Es ist nichts Falsches daran, neue Einblicke in alte Themen zu sammeln. :)
Nick Alexeev
1

Unter den anderen tollen Antworten mit einem Wort: Standardisierung.

Standardhardware, Standardkommunikation, Standardentwicklungs-IDEs, Standardsprachen.

Unterschiedliche Marken bieten unterschiedliche Geschmacksrichtungen. Wenn Sie jedoch erst einmal eine SPS-Marke kennengelernt haben, ist der Markenwechsel eher eine Lizenzlast als eine technologische Belastung.

user2097818
quelle
1

Für die Standardprogrammierung und die elektrischen Parameter ist es angebracht, eine SPS anstelle eines Mikrocontrollers zu verwenden.

Mikrocontroller werden verwendet, wenn Sie mit Produkten arbeiten, insbesondere mit geringer Leistung und geringen Abmessungen, z. B. für Automobile und für medizinische Zwecke. Sie verwenden dort keine SPS.

Aber wenn Sie mit Maschinen wie Auszeichnen, Schneiden usw. zu tun haben, können Sie leicht eine SPS verwenden.

Darüber hinaus standardisieren SPS die Anwendung von Embedded-Chips.

Pratik Suthar
quelle
1

Die Programmiersprache für die SPS ist sehr einfach und benutzerfreundlich, die in der SPS verwendeten Erweiterungsports sind auch im Vergleich zu Mikrocontrollern besser und vor allem im Mikrocontroller ist es aus all diesen Gründen schwieriger, Fehler zu beheben, wenn ein Pin beschädigt ist Die Industrie wird anstelle des Mikrocontrollers die SPS verwenden. Es gibt noch einige weitere, aber dies sind die Hauptprobleme, denen sich die Industrie gegenübersieht

user_1234
quelle
1

Ich habe im Laufe der Jahre SPSen gebaut und eingesetzt. Ich schlage vor, es gibt eine Marktkonvergenz, bei der WiFi PLC-ähnliche Mikros jetzt 49 US-Dollar kosten und sich wie Hotcakes verkaufen.

SPS-Hersteller spüren Preisdruck.

Neuere kostengünstige Steuerungen wie das Siemens-Logo eignen sich möglicherweise besser für einfache Anwendungen.

Gerade kommen SPS auf den Markt, die Arduino anstelle von Kontaktplanlogik verwenden. Viel Spaß fürs Geld. Suche Kickstarter für SPS

-Martin

Martin
quelle
1

Eine einfache Antwort ist, immer eine SPS zu verwenden. . . . Aber wenn eine SPS aufgrund von Faktoren wie Kosten, Größe oder Komplexität der Anwendung nicht realisierbar ist, sollten wir uns für einen Mikrocontroller entscheiden, da die SPS robuster ist und für die industrielle Umgebung geeignet ist (was bedeutet, dass sie viel mechanische Vibration, hohe Temperaturen und Staub enthält) , Spannungsspitzen usw.), deren Zuverlässigkeit geprüft wurde, verwendet Standard-Programmiermethoden, die es Ingenieuren mit geringeren Fähigkeiten ermöglichen, Änderungen usw. vorzunehmen.

Krishnananda. K. Hegde
quelle