MotionC++, Motioncontroller von Dübon Engineering

Mit unseren Motioncontrollern haben wir einen wirklichen innovativen neuen Ansatz eingeführt. Die meisten Motioncontroller sind entweder einfach zu bedienen, preiswert dafür aber unflexible oder sie sind leistungsfähig dafür aber kompliziert im Handling. Wir waren mit dieser Situation nicht zufrieden und haben uns daran gemacht, das Thema neu zu durchdenken, mit Erfolg. Unser innovativer Ansatz verbindet einfache Programmierung mit Flexiblität und einem sehr attraktivem Preis.

Wie das funktioniert erklären wir noch, hier erst mal ein Demos

<todo Vides>

Wie funktioniert das im Detail?

Nehmen wir mal ein einfaches Beispiel (siehe Bild unten)

Starte einen Motor, Drehe Motor 1 mit Geschwindigkeit X um 90°, danach drehe Motor 2 mit Geschwindigkeit Y um 360°

In unserer ActionGraph langauge (ACL) Sprache wird das einfach so definiert:

Sequential: 
 - Type: Motor1
      speed: 1.0
      rotation: 10
- Type: Motor2
      speed: 2.0
      rotation: 20
- Type Motor3
      speed: 3.0
      rotation: 30

Ziemlich einfach, sowas ist wohl mit jedem Motioncontroller einfach zu realisieren. Aber wenn es komplizierter wird, z.B. folgender Ablauf:

Parallel:
 - Motor1
 - Motor2
? All:
 - Motor4
? All:

Das ist jetzt natürlich ein ziemlich willkürliches Beispiel aber klar ist, hier kommt man mit preiswerten Motioncontrollern irgendwann an seine Grenzen. Komplexe Motioncontroller können sowas natürlich aber das hat seinen (finanziellen) Preis und Komplexität.

Steigern wir die Anforderungen nochmal, nehmen wir an, das System muss in Echtzeit Parameter von einer Kamera verarbeiten und einen digitalen Ausgang ansteuern um z.B. einen Greifer zu triggern.

Klar ist, hier wird es normalerweise wirklich kompliziert und deswegen teuer. Aber nicht mit unserem Ansatz.

Systemintegration

Wie integriert sich der DEGMC in das Gesamtsystem?

Wir beginnen erst mal mit dem was sie nicht brauchen, keine Motortreiber, keinen embedded PC für die Steuerung, einfach nur unseren DEG. Nur zum Programmieren brauchen Sie einen externen Linux/Windows PC, im Betrieb ist der hingegen nicht nötig.

Beispielhafter Systemaufbau mit einem Delta Roboter als Target

Für kompliziertere Fälle, angenommen Sie haben eine Kamera zu integrieren oder Sie wollen ein Tablet als Eingabesteuerung oder sie wollen Informationen aus einem “Ihrer” Anlagenprotokoll weiterverarbeiten und an den DEGMC schicken oder …

Das lässt sich über das Zwischenschalten eines einfachen embedded PC (z.B. eines Raspberry Pi, oder Beaglebone) realisieren. Unsere Treiberschicht ist für Linux/MacOs/Windows kompatibel.

Aber auch hier gilt wieder, small is berautiful, sie brauchen keinen teuren embedded PC, die Hardwareanforderungen an die Treiberschicht sind minimal. Auch braucht der embedded PC keine Echtzeiteigenschaften, Boards der Gößenordnung eines Raspberry Pi oder Beaglebone etc. mit Standard Linux sind vollkommen ausreichend.

Integrierte Entwicklungsumgebung

Zum Programmieren/Testen/Bedienen des DEGMC steht Ihnen eine vollständige Entwicklungsumgebung auf Basis von Visual Studio Code zur Verfügung. Sie können hier alle Parameter einstellen, die Kurven implementieren und alles jederzeit gegen das simulierte Modell testen.

Simulation/digitaler Zwilling

Sie wollen den MotionController in ihre Steuerung/Anlage/.. integrieren, das möglichst einfach und komfortabel? Wir realisieren Ihnen einen digitalen Zwilling auf einem standard PC der als Gegenstelle für Ihre Anwendung genutzt werden kann. Sie vereinfachen Ihre Entwicklung und können unabhängig von zur Verfügung stehender Hardware Ihre Entwicklungen beginnen.

Sie haben dabei grenzenlose Flexibilität, z.B. können Sie auch 2 oder mehr Motioncontroller simulieren, oder Sie simulieren einen Motioncontroller, andere laufen in echt, was auch immer Ihre Anwendung benötigt.

Bringen Sie Ihr eigenes Gerät mit

Sie wollen den Motioncontroller in Ihre Hardware integrieren? Voraussetzung ist ein System mit einem für Ihre Anforderungen passenden Echtzeittask und entsprechende Schnittstellen zur Hardware (“Hardware Abstraction Layer”)

Diese Schnittstellen sind universell und definieren z.B. den Zugriff auf den Motor oder falls vorhanden auf die Encoder. Hier können auch z.B. Ihre spezielle Schnittstellen integriert werden, wie z.B. Zugriffe auf Sensoren oder Aktoren, die im Ablauf des Motioncontrollers eine Rolle spielen.

Alleinstellungsmerkmale (best in class)

Wir integrieren Ihre Anforderungen in unsere System, übernehmen die komplette Hardwareentwicklung für Sie. Für einen schnellen Test bauen wir Ihnen auf Wunsch einen Prototyp auf Basis von Evaluationsboards.
Unser System hat keine speziellen Anforderungen und ist auf jedem System für das ein moderner C++ compiler zur Verfügung steht compilierbar. Der Hardware Abstraction Layer ist extrem klein, wir implementieren ihn gerne für Ihr Zielsystem. Dabei ist es irrelevant, ob Sie Ihre Motoren über eine digitale Schnittstelle (z.B. CANopen, EtherCAT, proprietäres Format) oder über GPIOs ansteuern, sie können unseren Motioncontroller auf Ihrer Hardware nutzen ohne Interferenzen zu befürchten. Unser System überwacht die Einhaltung seiner Echtzeitbedingungen, sie bekommen im Falle eines Falles Alarm.
Die verwendeten Bauteile auf unseren Boards sind kostenoptmiert, natürlich ist der Preis stark stückzahlabhängig aber wir liefern die Grundlage für wirklich kostenoptimierte Serien.
Wir realisieren Ihr System entsprechend Ihren Anforderungen und sorgen dafür,dass es perfekt mit Ihrer Automatisierungslösung zusammenspielt. Dabei können wir mit jedem (sic!) Ihrer Protokolle umgehen, Sie müssen konzeptionell nichts ändern.
 

Testen Sie uns!

Preis

Wir dürfen hier keine Produkte vergleichen aber unser Ziel ist nicht nur hohe Qualität und einfache Bedienung sondern auch ein günstiger Preis, aber prüfen Sie selbst, was bezahlen Sie für ein Komplettsystem bei der Konkurrenz? Für die Motortreiber, die Motoren, den Motioncontroller, Verdrahtungsaufwand?

Datasheet

  • DeltaRobot V2.0 RevB

  • Dimensio 109,6mm x 109, 6mm x 41,6mm

  • Main Input Voltage: 15-60V

  • MCU: STM32F767, Cortex-M7, 216MHz, 2MB Flash

  • Stepper: 3 Independent

  • Stepper Power: 2A per phase, 4A per Motor

  • Stepper Driver: TMC5160

  • Sense Resistor: 50mOhm (0.05Ω)

  • Encoder: 4, Independent Single Ended or Differential