Forum: PC Hard- und Software PAC mit Labview


von gast (Gast)


Lesenswert?

Hallo,

wollte mir einen Regler mit 9 AI (etwa 1kHz) und 3 AO bauen. Da ich
einige Labview-Kenntnisse habe, würde ich dies auch gerne wieder für die
Programmierung nehmen.

Meine Frage: kennt jemand ein günstiges modulares oder komplettes
Hardwareystem (mit DSP, FPGA o.a.), das mit Labview programmiert werden
kann? Am liebsten ohne Windows ;-)

von LV Neuling (Gast)


Lesenswert?


von gast (Gast)


Lesenswert?

Das NI-PXI und das CompactRIO hatte ich auch in Erwägung gezogen. 
NI-Systeme kosten aber einige Euronen :-(

von Thomas (Gast)


Lesenswert?

Wer mit solch modernen Werkzeugen arbeiten will kommt auch nicht umhin 
ordentlich was dafür auf den Tisch zulegen.

Schonmal an ne Simulink basierende Lösung gedacht?
http://www.mathworks.com/products/target_mpc555/
http://www.mathworks.com/products/target_c166/
http://www.mathworks.com/products/tic2000/
http://www.mathworks.com/products/tic6000/

oder an Simulink + dSPACE?
http://www.dspace.de/ww/de/gmb/home/products/hw/singbord.cfm
http://www.dspace.de/ww/de/gmb/home/products/hw/micautob.cfm

Soll das ganze kommerziell eingesetzt werden, oder in einer 
Bildungseinrichtung?

von gast (Gast)


Lesenswert?

Simulink wäre natürlich eine Alternative. Ich habe allerdings noch nicht 
damit gearbeitet. Die Programmierung ist wahrscheinlich etwas 
aufwändiger. Auch weiß ich nicht, ob viele Hardware-Hersteller 
Simulink-Treiber mitliefern. Was würde denn so ein dSpace-system in etwa 
kosten mit 9xAI (10VAC) und 3xAO (10VDC)? Kann man da z.B. auch unter 
Linux arbeiten?

Ich arbeite in einer kleineren Firma und soll mir überlegen, wie man 
einen recht einfachen und günstigen Echtzeit-PID-Regler aufbaut 
(Echtzeit hier = etwa 10ms Antwortzeit). Zunächst als Labor-Testgerät, 
das aber später für industrielle Zwecke eingesetzt werden soll, 
allerdings kein Automotive.

von Thomas (Gast)


Lesenswert?

Simulink ist für den Reglerentwurf geschaffen, man programmiert in 
Blockdiagrammen quasi genau so, wie du es aus der 
Regelungstechnikvorlesung kennst. LabVIEW kenne ich kaum, aber einfacher 
als mit Simulink kann das gar nicht sein.

Die wenigsten Hardwarehersteller bieten Simulinktreiber für ihre 
Produkte, dSPACE ist da wohl der bekannteste.
Die haben allerdings kein System für deine geringen Anforderungen.
Alleine für die Hardware wirst du da schon 10000€ hinlegen müssen, dazu 
kommen dann noch die ganzen Softwarelizenzen:
- Matlab (Mathworks)
- Simulink (Mathworks)
- Real time workshop (Mathworks)
- Real time interface (dSPACE)
- ControlDesk (dSPACE)
und das ist nochmal deutlich teurer als die Hardware...

Was zahlt man denn so bei NI für eine Komplettlösung?

Wieso muss das denn so eine Lösung mit grafischer Programmierung sein?
Deine geringen Anforderungen lassen sich auch locker mit nem ARM7 für 5€ 
und kostenloser C-Entwicklungsumgebung erschlagen.

Wenn es denn unbedingt eine Klicki-Bunti Lösung sein soll kann ich dir 
bei euren Anforderungen nur das oben verlinkte "Embedded Target for 
Freescale MPC5xx" empfehlen. Dafür dann eine auf eure Bedürfnisse 
zugeschnittene Hardware entwickeln und gut ist. Komfortabler kann man 
Regelungstechnik kaum betreiben.

von gast (Gast)


Lesenswert?

Schon mal vielen Dank für die vielen Anregungen!

Natürlich soll alles mal wieder schnell fertig sein und darf auch nicht 
viel kosten ;-) Wir hatten vorher auch ein ähnliches Projekt mit eigener 
Hardware (TI-DSP), das eher mühselig mit C/C++ realisiert wurde. Seitdem 
gab es eine "größere personelle Fluktuation" und wir sollen jetzt keine 
eigene Hardware mehr entwickeln/einsetzen, sondern nur noch die 
Programmierung möglichst einfach gestalten, so dass sie auch für "Laien" 
verständlich ist. Da dachte ich halt an NI und Labview, das ich aus 
meiner Studienzeit kannte.

So ein Komplettsystem von NI würde auch ungefähr 10000€ kosten (etwa 50% 
Software/Lizenzen und 50% Hardware). Hatte zuerst an Compact FieldPoint 
gedacht, aber die AI-Module sind sehr langsam mit Abtastzeiten von 
wenigen Hz bis einigen hundert Hz. Brauche hier etwas mehr, da bei den 
Messsignalen Verzerrungen bis einigen kHz auftreten und ich TRMS und FFT 
berechnen muss.
Dann hatte ich CompactRIO auf FPGA-Basis in Erwägung gezogen. Kostet 
nach ersten Recherchen etwa genauso viel.

Ein weiterer Punkt ist, dass ich Daten über Ethernet mit einer SPS 
austauschen muss und verschiedene Protokolle benötige (z.B. Modbus) und 
NI eine gute Anbindung dafür bietet (OPC-Server etc.). Im Idealfall 
sollte auch eine komfortable Datenbankanbindung vorhanden sein.

Nach erster Recherche und deiner Kostenabschätzung ist dSpace für mich 
wohl nicht so geeignet, da diese überwiegend auf Automotive 
spezialisiert sind (CAN-Bus Interface u.a. brauche ich eigentlich 
nicht).

Eine Klicki-Bunti-Lösung ist auch nicht mein Favorit, aber im Hinblick 
auf Entwicklungskosten, -zeit und personeller Besetzung ist dies 
vielleicht die bessere Lösung.

von gast (Gast)


Lesenswert?

Matlab würde mich interessieren! Gibt es auch Hersteller, die fertige 
Hardware (z.B. DSP-Karte mit entsprechenden AIs und AOs) mit 
Matlab-Treiber liefern? Wären dann alle Bausteine (DSP, AI, AO, DIO, 
Ethernet-Port) über Matlab programmierbar?

von Weinga-Unity (Gast)


Lesenswert?

Hallo, nettes Thema.

Für die, die etwas mehr Linux-gesinnt sind, wie wäre es mit dem:

https://www.rtai.org/index.php?module=pagemaster&PAGE_user_op=view_page&PAGE_id=8&MMN_position=23:23

https://www.rtai.org/RTAILAB/RTAI-Lab-tutorial.pdf
... da ist weiter hinten sogar eine kleine Schaltung, wo man direkt über 
die LPT etwas steuern kann. Darauf aufbauend kann man z.B. einen I²C 
oder SPI machen.

Prinzip:
1) z.B. Debian Linux (KDE)
2) Darauf den RTAI-Patch ausführen -> Echtzeifähiges Betriebssystem
3) Mit SCILAB/SCICOS (OpenSource zu MATLAB/SIMULINK) Regler entwerfen 
und Echtzeit-Task generieren lassen
4) Echtzeittask starten und mit XRTAILAB z.B. Die Signale darstellen 
lassen (vgl. ControlDesk)

IO-Boards: Einfach kaufen (gibt genügend) oder selber was basteln (z.B. 
über die LPT, hab ich so gemacht, läuft einfach nur super!!!)

Kosten:
Einige Wochen bis man den Dreh raus hat mit dem Aufsetzen, dann klappts 
innerhalb von 6 Stunden + irgend ein PC + IO-Karte um 100-200€ oder 
etwas Lötkolbenarbeiten

Fazit:
Hat man den Dreh raus, besitzt man ein universales Werkzeug für 
Testzwecke oder den echten Einsatz.

mfg Weinga-Unity

von gast (Gast)


Lesenswert?

Hallo,

gibt es eine einfache Möglichkeit, mit RTAI und Scilab/Scicos Daten über 
einen Ethernet-Port mit einer SPS auszutauschen (z.B. Modbus-Protokoll)? 
Oder muss man alles von Hand programmieren? Wenn möglich, würde ich auch 
gerne den Zugriff auf Parameter und die Visualisierung webbasiert über 
Ethernet machen (über Webserver).

von Thomas (Gast)


Lesenswert?

RTAI ist mir auch schon aufgefallen, hab aber noch nie was damit 
gemacht. Außerdem finde ich die Bedienung von SCIOS grausam, aber 
anscheinend gibt es ja auch ein Simulink Blockset...
Muss der generierte Code nachher auch auf dem Bedien-PC laufen, oder 
gibt es auch ein Cross-Target?
Ich habe mal ein Regler-Modul mit nem MPC565 und einiges an I/O gemacht. 
Es währe ja ganz interessant dafür eine Anbindung zu erstellen...

@Gast
Für Simulink gibt es meines Wissens nach kein Ethernet-Blockset

von Weinga-Unity (Gast)


Lesenswert?

Hallo, es sieht so aus:
Wegen Bedienung von SCICOS ist grausam: Ich habe auch auf der UNI zuerst 
mit Simulink gearbeitet. Umstieg war gewöhnungsbedürftig. Mittlerweile 
stell ich mich in Simulink wie ein Anfänger an und in SCICOS flutscht es 
nur so.

Man kann über TCP/IP und/oder XML-RPC auf den Echtzeittask zugreifen. 
Habe da auch schon mit einer .NET Implementierung bekonnen (ist aber 
noch nicht fertig; keine Notwendigkeit momentan).

Man kann sich jederzeit eigene Blöcke neu schreiben (in C). Wenn man da 
ne Ethernet-Funktion implementiert, sollte sich da schon was machen 
lassen.

Also für unmöglich halte ich es nicht. Hat man sich mal die Arbeit 
angetan und alles schön in einen Block verpackt, ist die weitere Arbeit 
auch nur mehr drag&drop. Vielleicht liese sich diese Bibliothek geleich 
verwenden und man müsste nur mehr einen SCICOS-Block herum bauen 
(http://pvbrowser.de/pvbrowser/sf/manual/rllib/html/classes.html). Das 
ganze sollte dann eigentlich auch gleich direkt unter WIN laufen 
(SCICOS, realtime Scaling=1 aktivieren, und auf Simulation Drücken).

Wegen WEB-Basierten Zugriff: Kuck mal nach JRTAILAB (ist zwar nicht ganz 
web-basiert, aber fast).

mfg W.K.

von gast (Gast)


Lesenswert?

Hallo W.K.,

der link sieht nach erstem Durchblättern sehr interessant aus, da auch 
Klassen für Siemens-SPSen vorhanden sind, mit denen ich vorwiegend zu 
tun habe! Werde mich da mal durchforsten. Vielen Dank!

Gruß

von Thomas (Gast)


Lesenswert?

Hallo,

ich habe gerade was mit RTAI + SCICOS rumgespielt. Funktioniert ja 
wirklich prima!
Nen schnellen Einstieg ohne Installation gibts hier:
http://www-lar.deis.unibo.it/people/gpalli/files/rtai_knoppix.iso
(damit bin ich gerade online, von den Echtzeittasks die gerade im 
Hintergund laufen merke ich nichts.)

Und die Programmierung von RTAI per Hand scheint auch nicht besonders 
schwer zu sein, eine sehr gute deutsche Zusammenfassung gibts bei 
Wikipedia:
http://de.wikipedia.org/wiki/RTAI

Gruß,
Thomas

von Thomas (Gast)


Lesenswert?

Ach ja, richtig schick ist, dass man mit xrtailab auf alle Variablen im 
Echtzeittask zugreifen, grafisch darstellen und auch ändern kann.
Hat zwar lange nicht den Komfort von ControlDesk oder PROVEtech, aber 
schon klasse was mittlerweile mit OpenSource alles möglich ist.

von Weinga-Unity (Gast)


Lesenswert?

Hi,
interessant wird es, eigene GUI zu erstelllen und diese mit dem 
Echtzeittask zu verbinden. Habe auch mal einige Versuche mit RTAI-XML 
gemacht, aber wie schon erwähnt, nicht fertiggestellt. Für einfachere 
Sachen halte ich die Kommunikation über FIFO (gibt da Blöcke in SCICOS) 
für viel effektiver. C-Beispiele habe ich im RTAI-Tutorial gefunden.

@LIVE-CD: mit der habe ich auch begonnen :)

mfg Weinga-Unity

von Julia (Gast)


Lesenswert?

Hallo Leute!

Also ich habe da ein sehr ähnliches Problem!

Ich soll bei einem Trainingsgerät für Judokas eine Adaptierung 
vornehmen.

Und zwar arbeitet das System mit dSpace (Simulink, Matlab) als Regler 
und LabView als Auswertungstool.

3 sensoren und 4DI, 3AI, 3AO.

Meine Aufgabe ist es eine Kostengünsitge Variante zu finden das DSpace 
System zu ersetzen da dies nicht der Institution gehört.

Kann ich das einfach mit einem µController machen?

Vielen Dank im voraus

Julia

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.