MotionC++ – Motion Controller von Dübon Engineering

Die meisten Bewegungssteuerungen sind entweder einfach zu bedienen und preiswert, aber unflexibel - oder leistungsstark, aber kompliziert in der Handhabung. Damit waren wir nicht zufrieden und haben uns vorgenommen, das Konzept zu überdenken - mit Erfolg! Unser innovativer Ansatz kombiniert einfache Programmierung mit Flexibilität und einem sehr attraktiven Preis.

Wir decken insbesondere Deltarobotersysteme ab, aber auch jede Art von Mehrachsensystemen, die Anzahl der Achsen ist theoretisch nicht begrenzt!

Für einfache Anwendungsfälle bieten wir auch die Integration von GCode und anderen textbasierten Sprachen wie OSC an (siehe https://opensoundcontrol.stanford.edu/ )

Wir werden weiter unten erklären, wie das funktioniert, aber beginnen wir mit einigen Videos

  • Wie funktioniert das im Einzelnen? Beginnen wir mit einem einfachen Beispiel:

    Starten Sie einen Motor, drehen Sie Motor 1 mit der Geschwindigkeit X um 90°, und drehen Sie Motor 2 mit der Geschwindigkeit Y um 360°.

In our ActionGraph Sprache (ACL), wird das folgendermaßen definiert:

Sequential:

Sequential:

- Type: Motor1
      speed: x
      rotation: 90
- Type: Motor2
      speed: y
      rotation: 360
- Type: Motor3
      speed: z
      rotation: 180

Ziemlich einfach! Aber so etwas ist mit jedem Motion Controller relativ einfach zu realisieren. Aber oft werden die Dinge komplizierter, wie in diesen Sequenzen:

Beispiel eines komplexeren Ablaufs

Noch ein Beispiel mit externen Komponenten wie Kamera und Tablet als Eingabe/Ausgabegeräte

Betrachten wir den folgenden Anwendungsfall:

Visualisierung der Zustandsmaschine:

Darstellung in unserer IDE:

 
 

System Integration

Wie integriert sich der MotionC++ in ein Gesamtsystem?

Beginnen wir mit dem, was Sie nicht brauchen. Keine Motortreiber, kein Embedded PC zur Steuerung - nur unser MotionC++. Ein externer Linux/Windows-PC ist nur für die Programmierung notwendig, nicht für den Betrieb.

Ein Beispielsystem mit einem Delta Robot als Target

Kompliziertere Fälle, wie z. B. die Integration einer Kamera, die Verwendung eines Tablets als Eingabesteuerung oder die Verarbeitung von Informationen aus einem "Ihrer" Anlagenprotokolle und deren Übermittlung an MotionC++, können durch die Zwischenschaltung eines einfachen Embedded-PCs (z. B. eines Raspberry Pi oder eines BeagleBone) realisiert werden. Unsere Treiberschicht ist mit Linux, macOS und Windows kompatibel.

Small is beautiful - Sie brauchen keinen teuren Embedded-PC. Die Hardwareanforderungen für die Treiberschicht sind minimal, der Embedded PC braucht keine Echtzeitfunktionen, Boards von der Größe eines Raspberry Pi oder eines BeagleBone mit einem Standard-Linux ist vollkommen ausreichend.

Integrierte Entwicklungsumgebung

Zum Programmieren, Testen oder Bedienen des MotionC++ steht eine komplette Entwicklungsumgebung (basierend auf Visual Studio Code) zur Verfügung. Darin können Sie alle Parameter einstellen, die Trajektorien implementieren und alles jederzeit gegen das simulierte Modell testen.

Sie können auch die Ein-/Ausgänge simulieren, egal ob analog oder digital, grafische Benutzeroberflächenelemente sind ebenfalls verfügbar.

Simulation und digitaler Zwilling

Sie wollen MotionC++ so einfach und komfortabel wie möglich in Ihre Steuerung oder Anlage integrieren? Wir realisieren einen digitalen Zwilling auf einem Standard-PC, der als Remote-Station für Ihre Anwendung genutzt werden kann. Sie können Ihre Entwicklung vereinfachen und den Prozess unabhängig von der vorhandenen Hardware starten.

Sie haben unbegrenzte Flexibilität. Sie können 2 oder mehr Motion-Controller simulieren, oder Sie können einen Motion-Controller simulieren, während die anderen in Echtzeit laufen - was immer Ihre Anwendung benötigt.

Bring Your Own Device

Sie wollen den Motion Controller in Ihre Hardware integrieren? Einzige Voraussetzung ist ein System mit einer für Ihre Anforderungen geeigneten Echtzeittask und entsprechenden Schnittstellen für die Hardware (eine Hardware-Abstraktionsschicht).

Diese Schnittstellen sind universell und definieren z.B. den Zugriff auf den Motor oder, falls vorhanden, die Encoder. Auch Ihre speziellen Schnittstellen können hier integriert werden, etwa der Zugriff auf Sensoren oder Aktoren, die für den Motion-Controller eine Rolle spielen.

Unique Selling Points (Best in Class)

  • Wir integrieren Ihre Anforderungen in unser System und übernehmen die komplette Hardwareentwicklung für Sie. Für einen schnellen Test bauen wir Ihnen auf Wunsch einen Prototyp auf Basis von Evaluation Boards.

  • Unser System hat keine besonderen Anforderungen und kann auf jedem System kompiliert werden, für das ein moderner C++-Compiler verfügbar ist. Die Hardware-Abstraktionsschicht ist extrem klein, und wir implementieren sie gerne in Ihr Zielsystem. Dabei ist es unerheblich, ob Sie Ihre Motoren über eine digitale Schnittstelle (z.B. CANopen, EtherCAT oder ein proprietäres Format) oder über GPIOs ansteuern, Sie können unseren Motion Controller ohne Bedenken auf Ihrer Hardware einsetzen. Unser System überwacht die Einhaltung seiner Echtzeitbedingungen, und Sie werden über alle Änderungen informiert.

  • Die Komponenten in unseren Boards sind kostenoptimiert. Der Projektpreis ist stückabhängig, aber wir liefern die Basis für eine extrem kostenoptimierte Serie.

  • Wir realisieren Ihr System nach Ihren Anforderungen und sorgen dafür, dass es perfekt mit Ihrer Automatisierungslösung zusammenarbeitet. Wir können fast jedes Schnittstellenprotokoll verarbeiten, so dass Sie keine konzeptionellen Änderungen vornehmen müssen.

Preis

Unser Ziel ist nicht nur eine hohe Qualität und einfache Handhabung, sondern auch ein günstiger Preis.

Kontaktieren Sie uns noch heute für ein Angebot!