Hallo Freunde
Ich möchte im Rahmen eines privaten Projektes Design durch Modellierung
als Methode verwenden ein geplantes System zur Schotsteuerung in einem
Modellsegelboot zu Modellieren, zu Simulieren und dann die
energieeffizienteste Lösung finden. Da Matlab und Simulink, bzw. Maple
und MapleSim zwar geeigneter, aber für den Privatmann unbezahlbar, will
ich meine Lösung finden durch den Einsatz der Wolfram Software
Mathematica und SystemModeler.
Nur zur Ergänzung der Hintergrundsinformatikn. Es geht bei meiner Frage
nicht darum die Mathematikfunktionen von Mathematica, noch um die
Modellierung innerhalb von SystemModeler auf der Basis vorhandener
"Modelica" Modelle, sondern darum zu externer Hardware, hier z. B.
LPCXpresso1769 unter anderem solche Verbindung herzustellen, wie man es
für "Hardware-in-the-Loop", bzw. "Software-in-the-Loop" benötigt, für
solche Hardware die nicht in der Liste der unterstützten Hardware von
Wolfram ist.
Noch ein Hinweis warum ich mich neben den Kosten für Mathematica
entschieden habe. SystemModeler egalisiert oder versucht zu egalisieren
ihr hinter den oben genannten Wettbewerbsanbietern die umfangreiche
Objekt-Bibliotheken haben, in dem Sie stark auf die Einbindung der bei
"OpenModelica.org" kostenlos verfügbaren IDE für Modelica und den dort
verfügbaren Objekten zu setzen. Für mich bedeutet dieses, dass ich
Objekte meines Systems in Modelica und ihrer IDE Modellieren kann!
Natürlich plane ich Erfahrungen zu sammeln, in dem ich Raspberry Pi B+,
z. B. auch mit gebundleter Mathematica Software einsetze. Aber trotz
wiederholter Nachfrage bei Wolfram in UK und extensiver Recherche im
Internet, habe ich kein Beispiel gefunden wie z. B. eine "Hello World"
Implementation wo man eine LED blinken ließe! Natürlich findet man
solches für RaspBerry Pi und vermutlich auch für Arduino. Ich würde aus
einer solchen "Applikationsnote" entnehmen können wie Wolfram sich das
vorstellt es zu realisieren. So müsste ich mich durch Unmengen an Links
und Dokumentation durcharbeiten und selber mir hoffentlich etwas bauen,
was der "Richtung" von Wolfram entspricht. Wolfram scheint zur Zeit
ausschließlich die Richtung zu verfolgen Mathematica und ihre Wolfram
Sprache auf externe Hardware zu portieren.
Meine Frage also, wo finde ich eine Referenz-Lösung wie man noch nicht
von Wolfram unterstützte externe Hardware anspricht und einbindet?
Ich freue mich eigentlich schon darauf das zu realisieren und dann die
Modellierung mit der echten Hardware vergleichen zu können!
Es ist in das Thema ein wenig bewegung gekommen.
meine Frage war ja welche methodik favourisiert Wolfram um externe,
nicht speziell unterstützte „Devices” für „Hardware-in-the-Loop”
einzubinden. Jetzt habe ich zur neuen Version des „SystemModeler” eine
aber eigentlich sehr suboptimale Weise gefunden, welche für Arduino
existieren soll!
Wolfram behauptet jede externe Hardware einbinden zu können, welche das
Protokoll „Firmdata” unterstützt und spricht dabei über eine eigene
dabei beteiligte Software „ModelPlug”. Geht man auf die Homepage von
Firmdata lernt man, dass es dieses Protokoll in unterschiedlichen
Versionen gibt, welche Wolfram hier verlangt habe ich aber nicht
gefunden. Weiterhin erfolgt der Datenaustausch nur in Intervalen von
minimal 10ms, länger falls mehr Daten übertragen werden, was auch auf
die serielle Verbindung und der von MIDI abgeleiteten Parameter
resultiert.
Sinnvoll wäre es WIFI oder Internet als Medium der Kommunikation zu
verwenden und ein mächtigeres Datenformat. es resultiert aus dem
verwendeten Datenformat, dass nur eine begrenzte Anzahl von PWMs z. B.
unterstützt werden.
Ein Beitrag einer Person aus China, der auf eine Frage vom Anfang 2014
nie geantwortet hat, der eine Portierung auf einen kleinen LPC800
gemacht hat, kann man lernen, das er, um diese Portierung von der
Arduino Umgebung auf die ARM Cortex M Umgebung, sowohl auf der PC-Seite,
wie auch in der Software auf der ARM Seite patches machen musste!
halte euch weiter informiert!
Offensichtlich ist das Thema Design durch Modellierung kaum jemand ein
Begriff, jedoch ein möglicher weg effizienter die immer komplexer
werdenden eingebetteten System zu entwickeln, besonders wenn dabei
unterschiedliche Domains, so nennt man die diversen Techniken die in
einem System zum tragen kommen können. Als Schiffsmodellbauer habe ich
seit einiger Zeit angefangen mir ein eigenes System der Schotsteuerung
zu konzipieren, welches eine Verstelllänge von 8400 mm in einem Rumpf
von nur 1650 mm Länge ermöglicht. Das im Anhang als erstes zu findende
Bild zeigt ein Blockdiagramm des Systems, wie ich es für einen Freund
aus Spanien, der mal überlegt hatte mitzumachen, nach mehreren
Iterationen gezeichnet habe. da es für das weitere Verständnis der
Beiträge in diesem Thread von Bedeutung ist, möchte ich das Umfeld und
die Zielsetzungen des System vorstellen und dann zeigen, wodurch ich
herausgefordert mich entschlossen habe die Methode des Design durch
Modellierung zu erlernen und einzusetzen.
Das System zur Schotsteuerung dient dazu einen Skipper am Ufer eines
Gewässers mit einer R/C Fernsteuerung die Segelstellung kontrollieren zu
können und so das Segelboot zu steuern.
Somit ist der Block ganz links der R/C-Empfänger, hier meine robbe F14
Navy, die mit 8 Steckern für bis zu 8 Kanäle jeweils das PWM Signal
liefert, welches durch die Länge der Zeit, 1 ms bis 2 ms, die das Signal
logisch „1” einnimmt die Position des Steuerelementes am Sender ins
Modell liefert. Der 2. Block im Diagramm von links ist eine
LPCXpresso1769 Karte die ich als Zentrale im Modell einsetze. 8 der
Pins, ich habe noch nicht entschieden welche Pins der Ports "0" oder "2"
ich dafür einsetzen werde werden mit den PWMs gefüttert und zusammen mit
einem Counter die PWMs der Kanäle des Empfängers digitalisieren.
Das Blockdiagramm besteht dann rechts von der zentrale aus 2 identischen
Zweigen, da das Schotsteuerungssystem 2 Segel zu kontrollieren erlaubt,
Haupt- und Vorsegel, welche beide einen um eine Welle drehenden Bäume
haben. Ich werde im Weiteren mich bei der Beschreibung nur dem oberen
Zweig widmen, der untere ist identisch.
Ändert sich der Wert der vom Sender kommt und den Befehl des Skippers am
Sender wiedergibt, dann und nur dann wird über I2C der neue Wert an die
nächsten LPCXpresso1769 Karte weitergeben. Ich werde diese LPCXpresso
1769 Karte im Weiteren „Steuerung Hauptsegel nennen. Die zentrale wird
dabei sicherstellen nur wirkliche Änderungen an die Steuerung Hauptsegel
weiter zu geben. Dieser Wert wird in der Variablen Maximalwinkel genannt
abgelegt und gepflegt. Der Wert heißt Maximalwinkel, weil er die
maximale zulässige Öffnung, hier des Hauptsegels, bestimmt, welcher der
Skipper durch die Stellung des Steuerknüppels am Sender bestimmt. Dieser
Winkel zwischen der Mittelachse des Rumpfes und dem Baum, in der
einfachen Zeichnung im Anhang "Schote_und_Baeume" wird es gezeigt.
Um die Kommunikation zwischen der Zentrale und anderen Steuereinheiten
im Modell auf ein Minimum zu beschränken, gibt die Zentrale nur dann
Werte weiter, wenn sich wirklich was geändert hat. Die Fernsteuerung
schickt ja alle 20 ms Werte für die 8 Kanäle und die werden durch die
Übertragung und Digitalisierung Schwankungen aufweisen, welche die
Zentrale abfängt. da das ganze Modell Akkus zur Versorgung verwendet
habe ich das Ziel eine möglichst Energieeffiziente Implementierung zu
erreichen. Auch hier wird die Design-Methode ihre Stärken ausspielen
können.
Die LPCXpresso1769-Karte Steuerung Hauptsegel hat also mit der Variablen
Maximalwinkel die Betriebsvorgabe vom Skipper!
Der Grund warum ich ein eigenes System zur Schotsteuerung einsetzen
werde ist, dass durch die Implementierung der Schotführung des
Originals, hier der Segler Endeavour, ist das die Schot 6x vom Deck zum
Baum und zurück geht, weshalb die enorme Schotlängenänderung von 8400 mm
erforderlich ist! Hier habe ich leider kein eigenes Bild und kann daher
nur auf die Endeavour im Internet verweisen. Mehrere Forenmitglieder aus
dem Bereich des Schiffsmodellbaus haben mit unterschiedlichen
Begründungen die von mir verfolgte Schotführung für im Modell nicht
funktionsfähig bezeichnet und die unterschiedlichsten Argumente dafür
genannt. Tatsache ist, das keines der auf dem Markt angebotenen oder in
Foren vorgestellten Schotsysteme die hier gestellte Aufgabe erledigen
können, das auch noch zuverlässig wie ich es von meiner Lösung verlange!
Hier liegt noch ein Grund warum ich die Methode des "Designs durch
Modellierung" anwenden werde. Diese Technik, für welche ich die
Kombination der Software-Werkzeuge Mathematica und SystemModeler von
Wolfram zum Einsatz bringe und welche für die Erstellung der Komponenten
der Simulation die Modellierungssprache Modelica verwendet, für welche
SystemModeler ein Werkzeug ist, welches ein solches auf Modelica
basierendes Modell simulieren kann! Modelica erlaubt es die
unterschiedlichsten Domains zu kombinieren, so kommt bei mir soweit
bisher beschrieben die Mechanik zum Einsatz, welche sowohl den Einfluss
der Natur, hier Wind und Dünung z. B., welche sowohl den Winddruck auf
das Segel, wodurch eine Zuglast auf die schot wirkt und diese ein
Lastdrehmoment auf den Schrittmotor, welcher die Schottrommel dreht.
Aber auch die Reibung der Schot spielt, zumindest bei den Einwänden eine
große Rolle. Hier ein paar Beispiele:
Die Schot, welche 6x zwischen dem Deck und dem Baum des Segels verläuft
geht durch Blöcke. Blöcke enthalten eine Rolle um welche die Schot läuft
und so umgelenkt wird! Hier spielt die Reibung in den unterschiedlichen
Betriebsbedingungen eine entscheidende Rolle. Durchmesser der Rolle im
Block, Winkel um welchen die Schot sich um die Rolle windet, Durchmesser
und Material der Schot und der Rolle, ob die schot nass oder trocken
ist. was passiert wenn die Schot ganz plötzlich durch das Segel in einem
Ruck durch den Block läuft, oder der Schrittmotor plötzlich mit einer
bestimmten zeitvariablen Beschleunigung an der Schot zieht?
Für alles dieses habe ich begonnen, obwohl ich vor fast 40 Jahren in der
Schule Physik-Leistungskurs hatte, habe ich begonnen im Internet
Vorlesungen als Video, begleitet durch Skripte, Video von
Übungsveranstaltungen und hervorragende Physik-Lehrbücher besorgt,
welche die theoretische und die experimentelle Physik-Vorlesungen
behandeln, welche zu dem Physik-Bachelor führen. Schon hier konnte ich
auch feststellen, dass in den fast 40 Jahren meine Mathematik-Kenntnisse
vom Abitur und dem Maschinenbaustudium eingerostet und erodiert sind! So
habe ich begonnen von der MIT in Boston, die im Rahmen der
"OpenCourseware" kostenlos im Internet Videos, schriftliches Material,
inklusive Lehrbücher der echten Vorlesungen der Mathematik, der Physik,
der Elektronik anbietet und dazu auch die Möglichkeit sowohl als Video
Übungsveranstaltungen miterleben zu können und imInternet Studiengruppen
zu bilden! So pauke ich gerade Calculus-Vorlesungen, 18.01SC und
18.02SC, die mein Wissen so auf die solide Platform bringen weiter die
Vorlesungen die im Rahmen des Bachelors der Mathematik angeboten werden.
Auch deutsche Unis bieten excellente Studiermöglichkeiten so kostenlos
und unverbindlich im Internet an! Schnell stellt man fest, dass ohne
eine solide Auffrischung der mathematischen Kenntnisse und Fertigkeiten
wie ein mathematischer Analphabet oder Legastheniker bei praktisch allen
Kursen liegt. Nach fast einem Jahr, trotz großer gesundheitlicher
Probleme die meine Konzentrationsfähigkeit begrenzen, bin ich nun
immerhin in der Lage parallel an der Modellierung meines Schotsystems
mit Mathematica, SystemModeler und Modelica anzugehn. Ich denke die
Modellierung der Schot um eine Rolle wird ein interessantes, für mein
Projekt wichtiges Teilprojekt werden.
Aber neben den mechanischen Einflüssen aus der Natur auf mein System und
dem Verhalten der Komponenten, sind auch elektrostatische Effekte von
Bedeutung. Da die eletrostatische Aufladung der Schot durch die Reibung
in den Führungsschläuchen, meist aus Kunststoff haben einen Effekt der
der rein mechanischen Reibung entspricht, wenn nicht sogar übertrifft.
Auch hier wurden einige Einwände präsentiert! Es geht jedoch weiter!
Ich möchte, um zu dokumentieren, dass es hier wirklich im Elektronik und
Mikrocontroller geht, nochmals darauf hinweisen, dass die
Regelungstechnik hier entscheidend ist, dass aber dafür der Einfluss des
Umfeldes voll verstanden werden muss und das in einem solchen
eingebetteten System eben Mechanik, Elektronik, Thermodynamik,
Elektrostitik zusammen das System bilden. Da die Vielzahl der
Einflussgrößen, die Wahl der Parametrisierungswerte letzlich alle
zusammen das Ziel beeinflussen eine möglichst einergieeffiziente Lösung
zu entwickeln!