mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik Neues Open-Hardware Projekt + Realtime-Linux + Scilab/Scicos


Autor: Weinga-Unity (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

seit 2008 arbeite ich an einem Open-Hardware Projekt, mit dem man ein 
Low-Cost Automatisierungssystem in Kombination mit z.B. RTAI-Linux und 
Scilab/Scicos erstellen kann um z.B. Regelungsaufgaben zu realisieren.

Das Open Hardware Projekt BIOE (Basic Input Output Element) 
http://www.bioe.at.tt stellt somit die Ein- und Ausgänge zur Verfügung, 
die z.B. in Scilab/Scicos (sogar unter Windows, nur dann keine harte 
Echtzeit) angesprochen werden können. Die Hardware verwendet einen 
AT-Mega16.

Mehr darüber findet ihr auf der Homepage (ist nicht vollständig, aber 
bereits brauchbar).

Ich hoffe, den einen oder anderen wird das Projekt nützlich sein.

mfg Weinga-Unity

Autor: chris (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Warum verwendet Ihr nicht einen Arduino als Schnittstelle zwischen PC 
und Atuomatisierungsaufgabe? Das System ist günstig und überall 
verfügbar.

Autor: Weinga-Unity (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ganz einfach: Es musste eine Schnittstelle verwendet werden, die 
schnelle Lese- und Schreibzyklen zulässt, und dabei mehrere Geräte an 
der selben Schnittstelle angesprochen werden können. D.h. irgendwelche 
USB2xxx Adapter fallen aus, auf denen ja einige Arduino aufbauen. Eine 
serielle Schnittstelle selbst ist auch nicht so recht geeignet, wenn 
mehrere Slaves angeschlossen werden sollen. RS485 & CO sprachen mich 
auch nicht so recht an, da auch meist seriel benötigt wird. PCI, 
Firewire usw. soweiso nicht, weil es sollte ja einfach aufzubauen sein. 
Die Druckerschnittstelle bot sich deshalb an und zeigte in den ersten 
Versuchen auch eine sehr gutes Echtzeitverhalten unter RTAI-Linux. 
Außerdem hat sich später gezeigt, dass das nachrüsten einer "echten" 
parallelen Schnittstelle heutzutage kein Problem ist (selbst bei manchen 
Netbooks).

Ein Lese- Schreibzyklus eines Endpunktes beträgt (abhängig von 
PC-Hardware) zwischen 25-40µS für einen 16bit Wert. Sicher können mit 
USB auch Automatisierungsaufgaben gelöst werden, nur halt nicht bei 
Abtastzeiten von z.B. 1ms ohne Verletzung einige Annahmen über das 
Automatisierungssystem bei der Verwendung der linearen Systemtheorie.

Ich hoffe, die Antwort erklärt einiges.

Autor: Weinga-Unity (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Aktualisierung: die Version 1.3 ist nun veröffentlicht.

- neue Schaltpläne und Layouts
- Verbesserung der Dokumentation (Startanleitung)
- Regelungen können in C implementiert, mit SCILAB/SCICOS verifiziert 
und anschließend auf den AVR mit der selben C Datei implementiert 
werden.

http://www.bioe.at.tt

Autor: OR (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

So wie ich das verstehe, fährst Du die Regelungstechnik unter RTAI/Linux 
und benutzt dann die parallele Schnittstelle für die Signalausgabe.
Den Ansatz finde ich eigentlich ganz gut. Jetzt habe ich ein bischen 
Erfahrung in der Regelungstechnik und würde mir das ganze gern mal 
anschauen.

Was mich interessieren würde:
- Was für eine Linux Distribution fährst Du? Muss man den Kernal 
patchen?
- gibt es spezielle Anforderungen an die PC-Hardware?
- Die Hardware: Ich bin jetzt nicht so der Fan vom selber ätzen. Gibts 
die Leiterplatten irgendwo zu erwerben?
- noch was zum timing: Du schreibst, Du kommst auf 40us für einen 16bit 
Wert. Angenommen ich würde eine 200us Zeitscheibe im PC rechnen. 
Wieviele Signale kann ich dann zu den Slaves runterschicken, bzw 
wieviele kann ich gleichzeitig lesen?
- Was hast Du gegen rs485?

Dank und Grüße
OR

Autor: Weinga-Unity (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo, ich versuche zu beantworten:

- Ich verwende RTAI mit Debian (RTAI 3.8 mit Lenny hab ich schon am 
laufen gehabt, wobei der kernel nicht von mir gepatch wurde; mein 
letzter Patch war noch mit RTAI 3.5 und einem 4er Debian).

- eigentlich keine Anforderungen an Hardware. eeePC-700 mit Paralleler 
über PCI-Express hat auch funktioniert. Man musste nur WLAN ausbauen und 
gehäuse etwas auschneiden. Man braucht halt eine echte Parallele. Die 
Adresse kann man beim BIOE umstellen.

- Fertig zum Erwerben gibts leider nichts. Ich hab auch kein Interesse 
einen Vertrieb aufzubauen.

- ich verstehe jetzt nicht ganz was du mit 200us Zeitscheibe meinst. Die 
40us sind so die worst-case messungen die ich bei neuer PC hardware 
gemessen habe. Bei älteren gehts auch mit bis zu 25us :-).
Also angenommen du realisierst eine Regelung mit 1er Stellgröße und 1er 
Messgröße und möchtest im 1/10 der Abtastzeit die Ein- und Ausgabe 
erledigt haben, dann müsstest du mit 800us die Abtastzeit für deine 
Regelung wählen.

- Was hast Du gegen rs485: nichts.

mfg Weinga-Unity

Autor: Weinga Unity (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Nachtrag: mit deiner Annahme der Funktion liegst du richtig.

Autor: OR (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Vielen Dank für die Antworten.

Grüße
OR

Autor: Weinga-Unity (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Bemerkung:

Ich habe erst vor kurzen BIOE mit UBUNTU 10.04, RT_PREEMPT und SCICOSLAB 
(http://linux3.dti.supsi.ch/~bucher/rt_preempt.html) getestet und das 
System war nach ca. 2 Stunden eingerichtet, betriebsbereit und 
echtzeittauglich :-). Also um einiges einfach einzurichten als RTAI. Für 
erste Versuche das Richtige.

Aktueller Link zu BIOE: bioe.bplaced.net
(der andere ist momentan offline)

mfg Weinga-Unity

Autor: Weinga-Unity (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Kurze Info:

Wegen Serverschwierigkeiten habe ich mich nun dazu entschieden das BIOE 
Projekt mit Sourceforge zu hosten.

http://bioe.sourceforge.net

mfg Weinga-Unity

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.