TwinCAT 3 und C++

mimuel

Level-1
Beiträge
24
Reaktionspunkte
0
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo,

ich komme soeben von der SPS-Messe und hab die Beckhoff-Ankündigung
für die C++ Programmierung gelesen und versucht mehr Informationen zu
bekommen. Es blieben einige Fragen offen:
- bei dem C++ handelt es sich um die unmanaged(native) Version?
- Visual Studio 2010 dient dann quasi nur als Entwicklungsumgebung,
was spricht gegen Eclipse?
- Kann ich auch mit den QT-Libraries arbeiten?

Vielleicht könnt ihr Licht ins Dunkel bringen?

Danke
 
TwinCAT und C++?! Ist ja strange bzw. crazy. Aber durchaus sehr interessant.

Dazu hier auch die Presseinformation von Beckhoff.

Hast du von den Beckhoff-Leuten auf diese Fragen keine Antworten bekommen?

Mich würde noch interessieren, wann das TwinCAT 3 verfügbar sein soll.
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Ich war auch auf der Messe...

Mich würde noch interessieren, wann das TwinCAT 3 verfügbar sein soll.

TwinCAT 3 soll wohl im 3. Quartal 2010 kommen. Auf der Hannover Messe soll dann richtig vorgestellt werden. In Nürnberg wurde es noch in der Programmierumgebung vorgstellt.

Das mit dem C++ hab ich auch nicht ganz verstanden...
 
Das mit dem C++ hab ich auch nicht ganz verstanden...

In Visual Studio 2010 gibt es zwei C++ Versionen:
1.) unmanaged C++ ist das klassische Microsoft C++ seit ca. 1980
2.) managed C++ läuft nur mit .NET Framework seit ca. 2000
 
Das mit dem C++ hab ich auch nicht ganz verstanden...

In Visual Studio 2010 gibt es zwei C++ Versionen:
1.) unmanaged C++ ist das klassische Microsoft C++ seit ca. 1980
2.) managed C++ läuft nur mit .NET Framework seit ca. 2000
 
Zuviel Werbung?
-> Hier kostenlos registrieren
C/C++ unter TwinCAT geht schon lange!

Über die Ring3 IO lässt sich eine C++ Assembly in einer TwinCAT Task abarbeiten.

Ich denke dieses Feature wurde in TwinCAT 3 nun vollständig integriert und Benutzerfreundlicher umgesetzt. Eventuell gibt es ja ein Addon für das Visual Studio, welches Debuggen etc. ermöglicht.
 
Was soll das ganze, so wie du es verlinkt hast, dann bringen, ausser, dass es für einen nicht-C++-Crack total unverständlich wird?

Wenn du wirklich Interesse daran gehabt und dich eventuell 10 Sekunden mit dem Link auseinandergesetzt hättest, währe dir eventuell aufgefallen, dass dort einiges mehr als nur der C-Code beschrieben wird. Sondern die komplette Umsetzung im TwinCAT System, Konfigurierung etc. Alles zu finden unter TwinCAT/R3IO wie bereits 3 Beiträge vorher und in meinem letzten Beitrag erzählt.
 
- Visual Studio 2010 dient dann quasi nur als Entwicklungsumgebung,
was spricht gegen Eclipse?

Ich habe auf der Messe mit einem Beckhoff MA gesprochen. Es wird zwei TCAT 3 Versionen geben. Beide Versionen nutzten das Visual Studio Framework.
Die Version mit c++ Unterstützung setzt ein installiertes VS voraus, die andere nicht. Die Projekte der beiden Versionen sollen kompatibel sein.
Mit Eclipse sollte da also nichts machbar sein.
 
Wenn du wirklich Interesse daran gehabt und dich eventuell 10 Sekunden mit dem Link auseinandergesetzt hättest, währe dir eventuell aufgefallen, dass dort einiges mehr als nur der C-Code beschrieben wird. Sondern die komplette Umsetzung im TwinCAT System, Konfigurierung etc. Alles zu finden unter TwinCAT/R3IO wie bereits 3 Beiträge vorher und in meinem letzten Beitrag erzählt.

Jaaa das ist mir schon klar, was dort erklärt wird. Mit ist jedoch diese Variante einer C++ oder Delphi-Implementierung schleierhaft. Ich finde den Weg ziemlich aufwendig und vor allem halte ich eine (auf XP-Systemen) nicht zwingend deterministischen Zugriffszyklus für wenig Praxisnah. Ideal wäre, wenn die C++-Implementierung in TwinCat3 es ermöglichen würde, eine Anwendung direkt für die Ausführung auf einem Laufzeitsystem zu kompilieren, sodass diese nachher in Echtzeit funktioniert.

Dazu müssten dann allerdings passende Bib's existieren, die mir eine behandlung meiner I/O's in gewohnter Weise bieten. Denn wir können uns, denke ich, darauf verständigen, dass C++ nicht gerade für den Anwendungsfall der SPS-Programmierung designed wurde.

Mir stellt sich eben die Frage, weswegen ich meine SPS in C++ programmieren soll.
Wenn es um eine Visualisierung/Scada-Lösung geht, ist eine Anbindung über ADS sicherlich sinnvoll, aber für das normale Anwendungsprogramm?
Vielleicht möchtest du mich aufklären, ich lerne selber grade C++, weswegen es nie schaden kann, dort eine Verbindung zu finden.
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Ich frage mich auch gerade was ich mit C++ auf meiner Steuerung anfangen sollte. Wird es damit evtl. einfacher komplexe Regelungen umzusetzen? Unsere Informatik Spezis würden sich sicher freuen, aber die normalen Wald und Wiesen-automatisierer und Techniker würden eine in C++ geschriebene Steuerungsoftware für unsere Beckhoffkästen sicher nur kopfschüttelnd begaffen.
 
Warum ist C++ schlechter als eine andere Sprache der IEC 61131-3??
Am Ende ist beides Assembler, bzw. Maschinencode.

Bei der IEC-Programmierung sehe ich den Vorteil, das dem Programmierer viele Möglichkeiten nicht gegeben werden, wie dynamischer Speicher. Das Schützt den Code vor Fehlern und sichert die Echtzeit. Stattdessen gibt C++ einem viel mehr Möglichkeiten, für Speicherzugriffe etc. und wenn der Programmierer Erfahren ist, kann mit der Sprache wesentlich mehr umgesetzt werden, was eventuell sogar ein schnelleres Programm erzeugt.

Der Vorteil von Objektorientierung ist ja mit der neuen CoDeSys Version hinfällig. Aber generische Typen oder ähnliches wird es in der IEC trotzdem noch nicht geben.

Ich denke, am Ende bleibt die Sprache immernoch eine Geschmacksfrage und Frage der Aufgabe, die damit umgesetzt werden soll.
 
Wie wäre es damit, die SPS an ein etwas komplexeres Datenbanksystem anzubinden? Denkbar ist hier die Einbindung in eine Produktionssteuerung oder ein Qualitätssicherungssystem. Dazu muss man mit C++ nicht Realtime können, sondern nur die Daten austauschen können.
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Also wenn ich die Entwicklung eines DB-Interfaces durch einen C++-Programmierer rechne, der dafür sicher einige Stunden braucht, dann nehme ich für ne Datenbankanwendung doch eher den TC Database-Server ;-)
 
C++ Erweiterung, Objektorientierte Programmierung, usw.

Das Polarisiert wohl stark ein CoDeSys Entwickler hat hier mal im Forum zum Thema CoDeSys V3.x und Objektorientierte Programmierung folgendes geäußert:
...
Also man kann sagen, dass sich die CoDeSys V3 Nutzer in zwei Klassen aufteilen:
- die die OO-Features exzessiv nutzen (und denen geht alles immer noch nicht weit genug)
- die die OO-Features überhaupt nicht nutzen
...

Das wird wahrscheinlich auf C++ in TwinCAT auch zu treffen. Die einen Nutzen es nicht und die anderen für alles.

---

Wie sieht es denn mit der Kompatibilität von TwinCAT 3 und dem alten TwinCAT aus?
[edit]
Projekte sind von V2->V3 konvertierbar. Quelle
[/edit]
 
Zuletzt bearbeitet:
Zurück
Oben