# Steuerung für pyrotechnische Steppsequenzen gesucht



## pyro.chris (4 Oktober 2011)

Hallo Leute,

Im folgenden beschreibe ich meine Aufgabenstellung und hoffe auf einen Tip von Euch, wie ich das Baby schaukeln kann.

Folgende Aufgabe:
Wir betreiben eine pyrotechnisches Zündsystem, mit dem wir Gasprojektoren ansteuern, Flammenhöhe ca. 5 Meter.
Um nun nette Steppsequenzen (schnelle Abfolge von z.B 20 Feuerbällen über eine Breite von z.B. 200 Metern) zu erreichen, muss unser Zündsystem relativ aufwändig programmiert werden. Manche Kombinationen sind gar nicht möglich.

Nun möchte ich einen Adaper bauen.
Dieser Adapter besteht aus einer SPS, die über einen binäre Eingänge den Befehl zum Start der Stepsequenz bekommt, und dann selbständig den Step ausführt.
Wird ein weiterer binärer Eingang angesteuert, so läuft die Stepsequenz in die andere Richtung. usw. Maximal 20 Bilder (binäre Eingänge) sollen möglich sein.

Das ganze wird über Schlüsselschalter usw. so abgesichert, dass nur wirklich dann gezündet werden kann, wenn gewünscht.

Nun zu meinen Fragen:
- Welche SPS auf 24VDC Basis könnt Ihr mir empfehlen (Hersteller, Type)?
- Wie baue ich das Programm am besten auf, damit eine Modifikation der Stepzeiten und gewünschten Ausgänge (Gasflammen) einfach möglich ist?
Ich denke an programmierbare Einschaltzeiten und Ausschaltzeiten der Ausgänge (Gasflammen). So kann ich auch die Dauer der Flammen bestimmen. Kleine SPS Systeme haben nur eine Handvoll Timer. Damit stehe ich sehr bald an. Welche Möglichkeiten gibt es noch?

Ein Link anbei, damit Ihr seht, was ich meine:
http://www.youtube.com/watch?v=Nnjg6SpEiMM*#t=3m05s
*Video ist interessant ab 3Minuten 5Sekunden
Danke für Eure Antworten
Gerne auch als PN

Pyrotechnische Grüße
Pyro.Chris


----------



## thomass5 (4 Oktober 2011)

... ich würde kühn behaupten, das kann jede SPS mit genug Ein/Ausgängen und etwas Speicher. Welche Vorkenntnisse hast du?

Programmaufbau:

Das Programm würde ich in Datenbausteinen ablegen. Je Sequenz einen Datenbaustein. Je Sequenzschritt würde ich ein Doppelwort Breite reservieren, das ermöglicht dir 32 Ausgänge Kannst gern auch mehr reservieren.
Dann würde ich weiterhin ein Abtastinterval (1/2 kleinste benötigte Schaltzeit) festsetzen, welches den entsprechenden Sequenzschritt auf die Ausgänge überträgt. ... 

Thomas


----------



## Mobi (5 Oktober 2011)

Hersteller würden da viele in Frage kommen. (Phoenix, Beckhoff, Wago)
Mit den Timern wirst du bei den "kleinen" SPS'en auch keine Probleme bekommen. Für die Sache z.B. in den Video brauchst du nicht viel. Das macht man dann auch in einer Schrittkette.


----------



## pyro.chris (5 Oktober 2011)

Hallo Thomass und Mobi,

Danke für Eure Antworten.

Zu meinen Vorkenntnissen:
Ich habe vor einigen Jahren eine kleine Bosch Steuerung programmiert.
Davor in der Schule, was man halt so mit SPSen macht, Ampelschaltung und so.
Bin aber recht gut im mich über kleine Tips zu einem fertigen Projekt weiterhanteln 

Elektrotechnisch baue ich seit etwa 10 Jahren die kleinen Zündsysteme für kleinere Feuerwerke selbst. D.h. Kenntnisse in Schwachstromtechnik sind vorhanden.

Da alle Komponenten in einem Pelicase in Aktenkoffergröße Platz finden müssen, inkl. der Akkus für mehrere Stunden Betrieb, soll die SPS so kompakt wie möglich sein.
Maximal benötige ich 20 binäre Eingänge (20 Verschiedene Bilder können somit gestartet werden) und 20 binäre Ausgänge (für die Gasprojektoren)

Wichtig ist mir, dass ich bevor ich die Steuerung kaufe, bereits eine Simulation durchführen kann, ob das auch so funktioniert, wie ich mir das vorstelle.
Folgende Steuerung finde ich interessant:
ILC 130 ETH von Phoenix Contact
- kostenlose Programmiersoftware
- modularer Aufbau der I/Os
- 24VDC
Ist diese SPS eurer Meinung nach geeignet?
Hat sie genug Speicher, um 20 "Bilder" ablegen zu können?

Ich lade mir Mal die kostenlosen Software PC Worx Express herunter.

Wie programmiere ich das Programm Eurer Meinung nach unter folgenden Gesichtspunkten:
- Die "Bilder" sollen einfach modifiziert werden können. Daher hätte ich im ersten Schritt die Anzahl der angeschlossenen Gasprojektoren eingegeben.
Als Variable gleich am Programmanfang.
Dann Unterprogramme für jedes Bild, wo ich Start und Stopzeit jedes Gasprojektors vorgebe. Immer nur 1 x Ein und 1 x Aus pro Bild.
Ich bin mir nur nicht sicher, wie ich das in einer Schrittkette abbilden soll.
Mein Ansatz wäre ein Counter, der im 0,1 Sekunden takt hochzählt, mit Vergleichern, die dann bei der richtigen "Zeit" ein oder ausschalten.
Bin ich da SPS technisch am Holzweg?

Danke Euch für die Unterstützung
Grüße
Pyro.chris


----------



## repök (5 Oktober 2011)

*vor ein paar jahren..*

mal hab ich das mit wago gemacht.
über timer usw brauchst du dir da keine gedanken mache, da hier alles über instanzen läuft (also auch die timer eigentlich nur fb's sind). die einziege grenze ist hier die maximalen möglichen klemmen (ich glaub beim 750-841 sind es 64Byte). betrieben werden diese mit 24V.


----------



## Deltal (5 Oktober 2011)

Warum macht ihr soetwas nicht über DMX + Software? Wenn du etwas an der Sequenz ändern willst brichst du dir doch die Finger...


----------



## pyro.chris (5 Oktober 2011)

Hallo Deltal,

Wenn ich für jeden Projektor eine Start und Stop-Zeit programmieren kann, dann ist jedes Bild möglich. Ohne groß das SPS Programm ändern zu müssen.
Ich ändere nur die Zeiten

Grüße
Pyro.chris


----------



## thomass5 (5 Oktober 2011)

pyro.chris schrieb:


> Hallo Thomass und Mobi,
> 
> Danke für Eure Antworten.
> 
> ...



Gut, die ILC130 kenn ich jetzt nicht genau, bin halt sehr Siemenslastig. Wird aber sicher funktionieren.
Ob es simulierbar ist ??? Ich kenn die SW nicht.

Über Zeiten und vergleichen würde ich nicht an die Sache herangehen.
Mein Ansatz wäre es, über "Ausgangsspuren" Ventil und Bildbezogen das zu steuern.
Die Spuren werden über deinen Zeittick abgetastet und auf die Ausgänge kopiert.


Ich würde immer mit 32Bit Breite arbeiten, dann hast du Reserven wenn du es brauchst. Für nicht angeschlossene Projektoren einfach 0 in der Spur.

...

Thomas


----------



## Mobi (6 Oktober 2011)

Ich glaube Thomas meinte wie bei LCD-Anzeigen. Dort werden die Muster abgespeichert und dann nacheinander angezeigt bei einer bestimmten Zeit.
Ich würde dann als Ausgänge den IB IL 24 DO 32/HD-PAC nehmen, dort kannst du die Muster als DWORD dann direkt draufgeben und musst nicht die einzelnen Bits ansprechen, sondern kannst alle zusammen zuweisen.
Die Muster könnte man in einer CSV-Datei speichern und auf dem integrierten FTP lagern. Somit kannst du dir die Muster mit einem selbstgeschriebenen Programm auf dem Rechner zusammenstellen, simulieren und dann übertragen auf den FTP vom ILC.


----------



## thomass5 (6 Oktober 2011)

Mobi schrieb:


> Ich glaube Thomas meinte wie bei LCD-Anzeigen. Dort werden die Muster abgespeichert und dann nacheinander angezeigt bei einer bestimmten Zeit.
> Ich würde dann als Ausgänge den IB IL 24 DO 32/HD-PAC nehmen, dort kannst du die Muster als DWORD dann direkt draufgeben und musst nicht die einzelnen Bits ansprechen, sondern kannst alle zusammen zuweisen.
> Die Muster könnte man in einer CSV-Datei speichern und auf dem integrierten FTP lagern. Somit kannst du dir die Muster mit einem selbstgeschriebenen Programm auf dem Rechner zusammenstellen, simulieren und dann übertragen auf den FTP vom ILC.



Wenn das Teil CSV verarbeiten kann, wäre es doch fast IDEAL. Die CSV erstellst du zur Not  mit EXCEL.

Thomas


----------



## Mobi (6 Oktober 2011)

Ich weiß es 100%-ig von der ILC 150 ETH (habs selber schonmal gemacht), aber die 130er müsste das auch können. ich würde die CSV über ein selbstgeschriebenes programm erstellen, somit kann man es dann auch simulieren. Um es komfortabler zumachen, damit man nicht selber die Datei mit einem FTP-Client übertragen muss, kann man sie auf Tastendruck per TCP/IP versenden und auf dem FTP vom ILC speichern.

Ist eigentlich immer nur ein Eingang gesetzt, also immer nur ein Programm was läuft? Oder greifst du, während das Programm läuft, ein? Indem du dann noch einen Eingang setzt.


----------



## rostiger Nagel (6 Oktober 2011)

Vielleicht ist ja der SPS-Tiger bereit zu helfen, er sucht auf jedem fall Tester
http://www.sps-forum.de/showthread.php?t=46396&page=2


----------



## pyro.chris (6 Oktober 2011)

Hallo Mobi,

Eis kommt immer nur ein Eingang als Trigger (ca 60ms - typische Zündzeit für eine pyrotechnische Zündanlage).
Dann läuft das Bild in der SPS ab (Dauer ich sag Mal maximal 5 Sekunden)
Eingänge sind in der Zeit gesperrt, es soll ja immer nur ein Bild laufen
Ist das Bild fertig, ist die Steuerung bereit für ein weiteres Bild.

Danke für den Hinweis mit dem HMI.
Ich denke aber das dies ein wenig overkill für den Stepper ist.
Außerdem geht es hin und wieder recht rauh am Abbrennplatz zu. Mechanische Schalter und Taster sind mir persönlich da lieber.
Und programmiert wird ohnehin mit Laptop in der warmen Stube.

Danke Euch
Pyro.chris


----------



## Mobi (6 Oktober 2011)

Ist bei dir ein Bild nur der Zustand von den ganzen Ausgängen oder eine Reihe von mehreren Zuständen? Also z.B. wie bei einem Lauflicht. Ist dann das Bild das ganze Lauflicht oder nur die einzelnen "Frames"? Die dann nacheinander abgearbeitet werden.


----------



## Michael.Uray (7 Oktober 2011)

Lösen lässt sich das sicherlich mit vielen SPSen, aber nachdem ich hauptsächlich mit B&R arbeite, würde ich dir die X20CP0291 CPU plus entsprechende x20 IO Modulen empfehlen.
http://www.br-automation.com/cps/rde/xchg/br-productcatalogue/hs.xsl/products_98698_DEU_HTML.htm
Damit wirst du grob geschätzt auf etwa €500 kommen.

Mich hat das jetzt selbst interessiert, wie so etwas am Besten softwaretechnisch zu lösen ist und ich bin da auf eine Befehlskette gekommen, in welcher jeweils die Fackeln, die Brenndauer und die Verzögerung bis zum nächsten Schritt ausgewählt werden können.

Ich hab das ganze einmal teshalber auf ein AR000 (B&R SPS Simulation am PC) ausprogrammiert. Das Programm findest du im Anhang und dur müsstest es noch auf die wirkliche Anzahl deiner Fackeln erweitern.
Auf einer X20CP0291 sollte dieses Programm auf jeden Fall auch lauffähig sein.
Wenn die PVs (Prozessvariablen) für die Bilder im FRAM abgelegt werden, könnten die Bilder auch über ein externes Programm z.B. mit einem Laptop über das Netzwerk konfiguriert werden und bleiben so auch bei einem Spannungsausfall erhalten.

Falls du dir die Hardware selber zusammen basteln willst, ist eventuell auch noch Arduino für dich interessant. Mein Programm sollte mit kleinen Anpassungen eigentlich auch darauf lauffähig sein.
http://de.wikipedia.org/wiki/Arduino-Plattform


----------



## pyro.chris (7 Oktober 2011)

Hallo Michael,

Danke für Deine Unterstützung

Ich habe mir das B&R System X20 angesehen.
Klingt nach dem was ich brauche, um das Baby zu schaukeln.

Ich habe mir mal eine Liste erstellt, mit den Komponenten, die ich glaube zu benötigen. Jeweils 2 BI und 2 BO Karten, somit 24 Ein- und Ausgänge.
Mit source oder Sink bin ich mir nicht sicher....
Brauch ich ein Einspeisemodul....?

X20CP0291 CPU
X20TB12 Feldklemme
X20BB22 Basis

X20DI9372 Eingangsmodul Source 12 Kanäle
oder
X20DI9371 Eingansmodel Sink 12 Kanäle
X20BM11 Busmodul
X20TB12 Feldklemme

X20DO9322 Ausgangsmodul Source 12 Kanäle
oder
X20DO9321 Ausgangsmodul Sink 12 Kanäle
X20BM11 Busmodul
X20TB12 Feldklemme

X20PS2100 Einspeisemodul ??? Brauch ich das
X20BM01 Busmodul
X20TB12 Feldklemme

Kannst Du mir ein Online-Shop nennen, wo ich die Teile in Österreich bestellen kann?
Die Software kann man nur mit Passwort und User downloaden.
Die Anmeldung ist mir noch nicht gelungen.

Zu dem Beitragl von Mobi.
Ich starte immer mit einem Eingangsimpuls (60ms) an einem Eingang -> definiert das Bild. Dann läuft das SPS Programm und steuert selbstständig die Ausgänge an.
Jeder Eingang hat ein anderes Bild hinterlegt.

 Arduino ist keine Option für mich.
Ich fühle mich bei einer SPS besser aufgehoben.

Danke Euch
Pyro.chris


----------



## Mobi (7 Oktober 2011)

Ist das dann wie ne Art Film oder sind das Frames? Also ist ein Bild eine ganze Abfolge von den Ausgängen oder nur ein Zustand.
Wenn du z.B. 10 Fackeln hast, nacheinander soll eine an gehen und wieder aus. Ist dann das Bild wo nur die jeweilige an ist und die restlichen aus oder ist das die ganze Abfolge?


----------



## Michael.Uray (8 Oktober 2011)

Hallo Chris,

ja ein Einspeisemodul brauchst du, aber nur das 9500er von der CPU.
Mit dem 2100er kannst du nochmal die IO Versorgung einspeisen, falls du mehr Strom benötigst. Ich nehme einmal an, dass du sowieso nur Relais auf den Ausgängen hängen hast und da ist das sicherlich nicht notwendig.

Sink bedeutet, dass die Eletronik im Modul gegen Masse schaltet, bzw. liest.
Bei einem Eingangsmodul bedeutet dies, dass du +24V am Eingang anlegen musst. Bei einem Ausgang wiederum heißt es, dass dieser den GND aus dem Modul herausschaltet.
Normalerweise werden DI Module in Sink und Ausgansmodule in Source verwendet.

So, das wäre dann jetzt wohl deine Hardware Liste:
1x X20CP0291 CPU
1x X20BB22 Basis
1x X20PS9500 Einspeisemodul für X2X und IO Versorgung

2x X20DI9371 Eingangsmodul Sink 12 Kanäle
2x X20DO9322 Ausgangsmodul Source 12 Kanäle

4x X20BM11 Busmodul
5x X20TB12 Feldklemme

Online Shop für die Hardware kenne ich eigentlich keinen. Wir bestellen das immer direkt bei B&R.

Vom Automation Studio gibt es eine voll funktionsfähige Evaluierungsversion welche an 30 Tagen (die Tage müssen nicht hintereinander liegen) lauffähig ist.
Ich würde einfach einmal dort anrufen und nachfragen. Die helfen einem in der Regel immer weiter.

Für das X20 System findest du übrigens hier das Anwenderhandbuch, wo auch genau beschrieben ist wie man alles aufbauen sollte:
http://www.br-automation.com/cps/rde/xchg/br-productcatalogue/hs.xsl/services_133603_DEU_HTML.htm

Michi


----------



## Michael.Uray (8 Oktober 2011)

Hallo Chris!

Nachdem du das ja mit einer B&R realisieren willst, habe ich mich noch einmal hingesetzt und das Programm etwas überarbeitet.

Du kannst jetzt zusätzlich für jeden Eingang eine Gruppe von Bildern definieren, welche abgearbeitet werden sollen. Dadurch kannst du mehrere Bildkombinationen hintereinander auf einen Eingang legen und ich denke, dass du so am flexibelsten bist.

lg.
Michi


----------



## pyro.chris (8 Oktober 2011)

Hallo Michael,

Danke für Deinen tollen Support.
Ich habe Mal die Komponenten und die Softwareversionen bei BR Österreich angefragt.
User zum Download der Software bekomme ich dann (hoffentlich) auch, dann kann ich Dein Programm testen.

Jetzt habe ich Sink und Source behirnt.
- DI Module in Sink -> Damit kann ich den Eingang mit dem Zündsystem triggern, wenn ich 24VDC reinjage
-DA in Source -> die Gasprojektoren haben hochohmige Eingänge und warten eigentlich nur auf 12 bis 24VDC Potential. Damit fällt die Zusatzversorgung wie Du schon schreibst auch flach.

Mit Bild habe ich mich schlecht ausgedrückt.
Eigentlich sind es kleine Filme, die ich mit den Eingängen starten will.
-> kommt Eingang 1, werden die Flammen von links nach rechts im 0,2 Sekunden Takt angesteuert (das war für mich ein Bild)
-> kommt Eingang 2, läuft die Abfolge von rechts nach links
usw.
Variabel sind die angesteuerten Gasflammen und die Zwischenzeiten zwischen den Bildern.

Da Leute mit dem System arbeiten werden, die von der Programmierung einer SPS nur wenig wissen sollen, gerade Mal, wie man die "Filme" ändern kann, und wieder uploaded, möchte ich im Programm einen Bereich mit genau diesen Informationen einrichten. Dann tut man sich leichter, und beschädigt nicht das Programm.
Am einfachsten denke ich tun sich die Leute wie folgt:
0 Steht für Flamme aus, 1 steht für Flamme, Zwischenzeit ist die Zeit, die ein Bild steht, bis das nächste eingeblendet wird.
Film 1 Besteht aus 6 folgenden Bildern, 6 Flammen sollen im 0,2 Sekunden Takt von links nach rechts gesteppt werden:

Film1:
Zwischenzeit 0,2
- Bild 1 100000
- Bild 2 010000
- Bild 3 001000
- Bild 4 000100
- Bild 5 000010
- Bild 6 000001
-Endbild 000000 (alles wieder aus)

Ich melde mich wieder, wenn das Angebot und die Software von BR angekommen ist.

Viele Grüße
Pyro.chris


----------



## Mobi (9 Oktober 2011)

Wenn Eingang 2 kommt, wird dann vorher Eingang 1 weggenommen? Um Eingänge zu sparen, hatte ich mir nämlich gedacht die Programmanwahl über einen Drehschalter zumachen und dann wenn man eins ausgwählt hat, dann den Start-taster betätigt.
Was ist denn die kürzeste Taktzeit die ihr habt?


----------



## pyro.chris (9 Oktober 2011)

Hallo,

Die Ansteuerung erfolgt über diverse Zündysteme für Grossfeuerwerk.
Dort sind Zündimpulse von maximal 100ms üblich.
-> an einem Eingang liegt maximal für 100ms ein Signal an

Die Filme werden zwischen 5 und 15 Sekunden lang sein.
Also werden sich keine Eingänge überlagern.
Taktzeiten in den Filmen von Bild zu Bild mindestens 100ms

Ich werden maximal (das soll die Endausbaustufe sein) 48 Eingänge vorsehen.
-> 4 Stück 12BI Karten
Somit kann ich über das Zündsystem 48 verschiedene Filme abrufen

Eine Matrixfunktion mit z.B. 6 x 6 also 12 Eingängen, die dann 36 Film starten können habe ich bereits intern diskutiert.
Wird aber verworfen, da es die Fehleranfälligkeit beim Programmieren steigert.

Das System ist nicht so geplant, dass man direkt darauf die Filme starten kann. Man benötigt immer ein Zündsystem / Stromquelle, die die Eingänge mit 24 VDC triggern

Viele Grüße
Pyro.chris


----------



## Mobi (9 Oktober 2011)

Warum erhöht es die Fehleranfälligkeit? Der User gibt doch nur die Programmnr. an. Den Rest errechnet das Steuerungsprogramm welche Eingänge dahinter stehen. Mit zwei Drehkodierschaltern die im BCD-Format arbeiten, benötigst du dann nur 8 Eingänge. Mit den beiden Schaltern sind dann 99 Programme möglich.


----------



## pyro.chris (9 Oktober 2011)

*Parametrierung ohne SPS Software*

Hallo,

Zur Parametrierung (ändern der Bilder) für die kommenden Jahre, habe ich noch eine Frage.

Gibt es da eine einfache Möglichkeit, z.B. eine txt Datei auf die SPS zu laden,
in der die Informationen der Filme stehen?
z.B.:
Film 1
Schrittzeit von Bild zu Bild 100ms
00011000
00100100
01000010
10000001
00000000

Film 2
Schrittzeit von Bild zu Bild 200ms
10000000
.......

Ich habe zwei Gründe, das zu fragen:
- Es werden Leute parametrieren, die keine SPS Kenntnisse haben. Die tun sich wesentlich leichter, eine txt Datei zu modifizieren und hochzuladen.
- Es gibt auf Dauer nur die Maintanance Version oder die Vollversion der Software für B&R. Die werden beide nicht gratis sein.

Eine OP kommt denke ich nicht in Frage.

@Mobi
Pyrotechnische Steuerungen haben keine Möglichkeit, Programmnummern zu schicken. Matrix (immer 2 Kanäle (DI) gleichzeitig) ist das einzig mögliche.
Die Fehleranfälligkeit liegt nicht bei der SPS, sondern beim Programmieren des Zündsystems, da man dann immer die 2 richtigen Ausgänge gleichzeitig ansteuern muss. Sonst läuft der falsche oder kein Film.
Wir haben uns intern jetzt auf 48 DIs geeinigt, da ein Verteiler des Zündsystems auch 48 DAs hat. Das reicht dann auch für große Shows mit 48 unterschiedlichen "Flammenfilmen"

LG
Pyro.chris


----------



## Mobi (9 Oktober 2011)

Hi,


wieso Ausgänge, ich rede doch von einer Matrix für die Eingänge. Das wären bei 48 Eingängen eine Matrix von 8x6. Also 14 Eingänge. Dann darf aber immer nur ein Taster (z.B. Programm Nr. 6) gedrückt werden.

Ich bin gerade dabei eine Software zuschreiben mit der du Filme erstellen kannst, dann auf deinem PC speichern kannst und zudem noch zur SPS zuschicken.
Wie hast du dir das denn gedacht?


----------



## pyro.chris (9 Oktober 2011)

Hallo Mobi,

Danke für Deine Antwort
Ich habe von MichaelUray bereits eine SPS-Programm erhalten, wo man die Bilder und Filme im SPS Programm erstellen kann.
Wahnsinn, wie Ihr Euch da für mich in Zeug legt.
Danke Euch beiden!

Da ja wie gesagt Leute mit dem Flammenadapter arbeiten werden, die keinerlei SPS Erfahrung haben,
ist dieses Programm zu Parametrierung der Flammen genau das, was ich mir wünsche.
Das ist dann so zusagen eine erweiterung des Programms von Michael.

Ich versuche Mal, Die Programmiersoftware zu beschreiben:

-SPS Konfiguration (Hardware):
System X20CP0291
- 4 x 12 digitale Eingänge, also für jedes Bild ein Eingang (Eingang 1 = Film 1), 48 Bilder sind somit möglich, Matrix ist nicht nötig
2 x 12 digitale Ausgänge, für 20 Gasflammen (Ausgang 1 = Flamme 1 usw.)

Was soll das Programm können, mit dem man die Filme erstellt:
Eingabe:
1) Drop down Menue, mit dem ich den Film wähle, den ich parametrieren möchte
2) Dann hantelt man sich von Bild zu Bild.
Immer gibt man die Flammen an, die brennen sollen (z.B. 20 Checkboxen), und die Zeit (in 10ms Schritten), die das Bild steht (also bis das nächste kommt), 
3) Dann ein Button mit "zum nächsten Bild"
4) Ist der Film fertig, gibts einen "Film Ende" Button oder so
5) Dann wählt man über das Drop Down Menue den nächsten Film

Wenn man eine bereits erstellte Datei lädt, so werden die Bilder mit den Flammen und der Zeit im Parametrierfenster angezeigt. Damit man nachträglich kleine Änderungen machen kann, ohne alles neu parametrieren zu müssen. (Ich hoffe das ist verständlich ;-) )

Simulation:
1) Film wählen
2) Simulations-Button drücken
3) Film simuliert mit 20 roten "Buttons" die Flammen

Sonstiges:
Buttons für "Datei speichern unter" und "Datei öffnen"
Button für Datei von PC auf SPS laden
Button für Datei von SPS auf PC laden

Vielen Dank für die Arbeit, die Ihr Euch macht.
Das erste Feuerwerk wird in der Nähe von Wien sein. Kommendes Jahr dann in Berlin.

Danke Euch
Pyro.chris


----------



## Mobi (10 Oktober 2011)

Achso, ich hatte gedacht, dass du noch nichts hast, Hardware und Programm. So wie du die Software beschreibst, habe ich mir das auch gedacht. Nur ich müsste noch wissen wie die Kommunikation läuft. Wird die Datei auf den FTP von der SPS geschickt? Und wie ist die Datei aufgebaut?
Ich hatte mir gedacht 32 Ausgänge zu nutzen, falls jemand ein paar mehr Flammen haben möchte. Dann kann man nämlich schön einfach ein DWORD auf die Ausgänge legen. Wie sieht eigentlich das Dateiformat aus? Ich habe ein extra kreirt, unzwar heißt das Programm "Flammendesigner und -simulator" und das Format *.fds.


----------



## Michael.Uray (10 Oktober 2011)

Hallo Mobi,

also die Kommunikation käuft über ein Programm Namens PVI ab.
http://www.br-automation.com/cps/rde/xchg/br-productcatalogue/hs.xsl/services_185866_DEU_HTML.htm
Ohne eine zusätzliche Lizenz läuft das Programm 2 Stunden und muss danach neu gestartet werden.

In der SPS werden die beiden Strukturen in welcher die Konfiguration abgespeichert ist in ein Datenmodul im Ram kopiert, welches dann einerseits zum permanenten speichern der Daten ins Flash kopiert bzw. nach einem Stromausfall von dort wiederherstellt wird und andererseits für den Upload / Download mittels PVI verwendet wird.

Momentan habe ich auf der PC Seite ein Programm geschrieben, welches das Modul von der SPS hochladet und in eine Datei schreibt. Es ist zwar bei der Fehlerbehandlung noch nicht ganz 100%ig, aber der Modul Up- und Download funktioniert schon einmal soweit.
Nachdem du ja anscheinend schon eine Software für die Oberfläche angefangen hast, könnten wir unserer Programme nicht eventuell kombinieren?
Für Eingabe und Simulation am PC habe ich bisher noch gar nichts gemacht.

Ich habe 2 Dateien an diesen Post angehängt.

flr_ctl1_AS.zip
Ist das Automation Studio Projekt.
Die Datei "flr_ctl1\Temp\Simulation\Simulation\PLC1\ar000loader.exe" ist eine SoftSPS welche ohne zusätzliche Lizenz 2 Std. läuft und danach neu gestartet werden muss. Mit dieser kannst du die Kommunikation über den PVI testen.

flr_ctl_vs2010.zip
Ist das Visual Studio Projekt.
Mit diesem Programm wird das Datenmoul "dh_tmp" aus der SPS geladen und als Datei "dh_tmp.txt" abgespeichert. Die Dateiendung .txt passt noch nicht, da es sich um reine Binärdaten handelt.

Wie dieses Datenmodul in der SPS unten zusammengestellt wird, kannst du dir im AS Projekt unter "\flr_ctl1\Logical\PRG\DataHandle\DataHandle.c" ansehen.
Den Aufbau der Strukturen findest du unter "flr_ctl1\Logical\PRG\flr_ctl\flr_ctl.h"
Ein Bespielkonfiguration der Bilder und Bilder Sets (=Zuordnung meherer Bilder zu einem Eingang) findest du unter: "flr_ctl1\Logical\PRG\flr_ctl\flr_pic.c"
Die Datei "flr_ctl1\Logical\PRG\flr_ctl\flr_pic.c" enthält nur noch die Programmlogik, welche dann die Auswertung der Bilder und Bildersets vornimmt und die Ausgänge für die Fackeln ansteuert und damit könnte die Simulation am PC nachgebildet werden.

Was sagst du dazu, wäre das irgenwie mit deinem Programm vereinbar?

lg.
Michi


----------



## pyro.chris (11 Oktober 2011)

*CPU Type*

Hallo Michael und Mobi,

Ich habe nun das Angebot von B&R erhalten.
Nach einem Telefonat mit dem Verkaufstechniker habe ich eine frage an Euch:

Angeboten hat er mir die CPU X20CP0291
Allerdings mit dem Hinweis, dass die nur bedingt von externen Programmen angesprochen werden kann.

Er hat mir alternativ die CPU X20CP1483-1 (4-facher Preis) angeboten.
Die hat einen OPC-Server usw. hat er mir erzählt

Meine Frage:
Ich komm doch mit der X20CP0291 für dieses Projekt aus?

Danke Euch für die Antwort
Werde dann umgehend die Teile bestellen

LG
Pyro.chris


----------



## Mobi (11 Oktober 2011)

Was heißt den bedingt? Der hat doch Ethernet.

@Michael: Ich wüsste jetzt nicht wie wir das zusammenfügen können. Ich "schreibe" die Software mit AutoIt, wenn dir das was sagt. Hab mir damit auch schon nen normale Kommunikation über TCP, UDP und Modbus TCP aufgebaut.


----------



## Michael.Uray (12 Oktober 2011)

Hallo ihr beiden,

also die X20CP1483 ist aus der SG4 Reihe und ist schon ein großes Stück stärker als die X20CP0291.
Der Verkaufstechniker hat so weit schon recht, dass der OPC Server auf den SGC (Compact CPU) Systemen nicht läuft. Allerdings könnte sogar für diese CPU ein OPC Server verwendet werden, wenn dieser am PC gestartet werden würde. Bei den SG4 System ist es möglich, den OPC Server auch direkt auf der CPU ohne ein Windows dazwischen laufen zu lassen.

Nachdem mein C# Programm was ich bisher geschrieben habe direkt auf den PVI Manager zugreift, stellt dies also kein Problem dar und leistungsmäßig ist diese Miniprogramm natürlich auch kein Problem für die CPU.
Ich habe das Programm einmal testhalber einmal in eine X20CP0291 hier bei mir übertragen und es läuft ohne Probleme.

Der PVI Manger ist halt eine fertige Software, wo man sich dann selbst nicht mehr um die Kommunikation kümmern muss, sondern dort nur mehr "reinschickt" was man von der CPU haben möchte.
Der einzige "Haken" beim PVI Manger ist, dass er ohne Dongle nur 2 Std. läuft und dann neu gestartet werden muss. Dies ist allerdings in deinem Fall auch kein Problem, da du aus der SPS ja nie laufend zyklische Daten auslesen musst, sondern nur einmal kurz deine Konfiguration nach unten übertragen willst.

So wie Mobi schon erwähnt hat, hat das Teil auch eine Ethernet  Schnittstelle und du könntest dir theoretisch selbst ein jedes Protokoll  auf TCP/IP oder UDP/IP ausprogrammieren um mit der CPU zu  kommunizieren. So haben wir das auch für unser selbst programmiertes Visualisierungssystem gemacht um Lizenskosten zu sparen.

Also mit AutoIt habe ich vor längerem nur ein paar kleinere Scripts erstellt und kenne es daher nur am Rande. Aber ich denke hier auch, dass sich das nicht so ohne weiteres mit meinem bisherigen Programm kombinieren lässt.

Ich habe das Windows Programm in C# erstellt. Von Microsoft gibt es eine recht umfangreiche Express Version für das Visual Studio, welche nichts kostet. 
Du kannst es dir hier unter folgendem Link einmal ansehen, falls es dich interessiert:
http://www.microsoft.com/germany/express/download/default.aspx

Ich bin jetzt bis Anfang nächster Woche im Ausland und ich weiß noch nicht, ob ich in der Zeit dazu komme, hier reinzuschauen.

bis dahin lg.
Michi


----------



## pyro.chris (20 Oktober 2011)

*Komponenten sind alle da*

Hallo,

Ich habe heute die BR Steuerung und alle Komponenten erhalten, um die Steuerung in ein PeliCase einzubauen. Jetzt wird ernst ;-)

Melde mich mit Fotos spätestens Mitte nächster Woche wieder, wenn alles fertig zusammengebaut ist.

Grüße
Pyro.Chris


----------



## Michael.Uray (21 Oktober 2011)

Hallo Chris,

nachdem du schon kurz vor der ersten Inbetriebnahme der Steuerung stehst, findest du mein aktuelles SPS Programm im Anhang.

Du brauchst nur noch im Hardwarebaum die IO Module aktivieren (rechte Maustaste) welche ich für Testzwecke zwischenzeitlich deaktivert habe und das Programm übertragen.

Bitte baue die SPS und die IOs so auf, wie du das im Hardwarebaum sehen kannst.

Mit der PC Software bin ich im Moment noch nicht viel weitergekommen, aber du findest den aktuellen Stand ebenfalls im Anhang.

lg.
Michi


----------



## malibu (21 Oktober 2011)

Über so ein Pojekt kann man ja nur neidisch werden, alles komplett mit Lösungen und fertigen Programm. Da kann ich mit meinen Kloschüsselglasierer, an den ich grad arbeite, nicht mithalten.
Da sieht man mal wieder, was wir SPS-Fuzzy's für Narzissen sind oder: 

There is no business like showbusiness
*ROFL*
Malibu


----------



## pyro.chris (21 Oktober 2011)

*Aufbau der Hardware*

Hallo Michi,

Ich habe mir das Deine SPS Programm angesehen.
Sorry, ich bin drauf gekommen, dass ich was verschwiegen habe.

Anordnung der I/O Module:

-SPS mit Basis
- Eingangsmodul 12-fach
- Eingangsmodul 12-fach
- Eingangsmodul 12-fach
- Eingangsmodul 12-fach
- separate Einspeisung 24VDC für Ausgangsmodule
- Ausgangsmodul 12-fach
- Ausgangsmodul 12-fach

So habe ich die Möglichkeit eines Not-Aus Kreises für die Ausgangsmodule.
-> Auf der Bühne ganz hilfreich, wenn ein Darsteller zu nahe an die Gasflammen geht. Dann unterbreche ich den Strom fü die Ausgangsmodule, das Programm läuft ganz normal weiter.
Ist wieder Sicherheit gegeben, kann ich so die Flammen wieder aktivieren.

Leider kann ich mit meiner Demoversion von BR die Module anscheinend nicht anders anordnen. Oder ich bin zu doof...

Danke Dir für die Mühe
LG
Pyro.Chris


----------



## Michael.Uray (21 Oktober 2011)

Hi Chris,

soweit ich weiß, geht das im AS nicht.
Du kannst sie aber extern mit einem Editor in den Dateien
Physical\CP0291\PLC1\ArConfig.rtc
Physical\CP0291\PLC1\IoMap.iom
z.B. durch suchen / ersetzen der STx Steckplatznummern verschieben.
Die Demoversion ist eigentlich voll funktionsfähig (halt eben nur an 30 Tagen).

lg.
Michi


----------



## bits'bytes (22 Oktober 2011)

Hallo

- Physikal View
- markiere CPU (X20CP)
- rechte Maustaste (Context-Menü)
- öffne X2X Link
- in der neuen Liste kannst du die Module einfügen und entfernen und somit die Reihenfolge ändern

bg
bb


----------



## Michael.Uray (24 Oktober 2011)

Hallo Chris,

ich habe gerade gesehen, dass hier auch noch die Datei
Physical\CP0291\Hardware.hc
auch noch zu ändern wäre, wenn man IO Module verschieben will.
Der Aufbau dieser Datei war für mich aber auf die Schnelle nicht so einfach zu durchschauen und daher habe ich es wie bits'bytes beschrieben hat gelöst.

Ich habe die oberen beiden DO Module gelöscht und unten neu (nach einem x20PS2100) eingefügt. Danach mussten nur noch die IOs dieser beiden Module neu belegt werden (bzw. ich habe die Datei IoMap.iom mittles Editor angepasst).

Ich kenne sonst keine Möglichkeit Module oder Modulblöcke untereinander zu verschieben und das ist meiner Meinung nach noch ein Schwachpunkt im AS.

Falls du es selbst noch nicht gelöst hast, habe ich dir das aktuelle Projekt wieder angehängt.

Du hättest übrigens auch die IO Versorgung vom PS9500 für deine Not Aus Schaltung wegnehmen können, ohne das die CPU heruntergefahren wäre. In diesem Fall hättest du aber auch die Eingänge deaktiviert.

lg.
Michi


----------



## pyro.chris (25 Oktober 2011)

*IB der Steuerung*

Hallo Michi,

Danke für das geänderte Programm mit den geänderten IOs.
Werde dieses aufspielen.

Ich möchte absichtlich nur die Ausgänge wegschalten, damit
bei einer Show das Programm weiter laufen kann, eben nur ohne Flammen.

Grüße
Pyro.Chris


----------



## pyro.chris (31 März 2012)

*Fertige Hardware*

Hallo Leute,

Das Projekt ist nun fast komplett fertig.
Ich möchte diese Gelegenheit nutzen, das Ergebnis vorzustellen.

Voraus schicken möchte ich, dass mir Michael in allen Schritten des Projekts unter die Arme gegriffen hat.
Von der Auswahl der Komponenten bis zur Erstellung des Visual Basic Programms wäre es ohne Ihn für mich nicht machbar gewesen.
Und alles über PN und das Forum! Wäre vor nicht all zu langer Zeit nicht denkbar gewesen.
Danke Michael!

Zur Technik
Eingesetzt habe ich eine B&R X20CP0291 CPU. Sehr kompakt und modular erweiterbar.
Eigenbau-Platinen für die Eingangsschaltungen und ein Pelicase für den rauhen Einsatz am Abbrennplatz.

Eckdaten:
48 digitale Eingänge
20 digitale Ausgänge
LAN-Schnittstelle
Mit der Software können 48 Filme zu je 40 Bildern frei prgrammiert und hochgeladen werden.
Am Abbrennplatz werden die Filme dann über die digitalen Eingänge nur noch "abgerufen"

Fotos:

Offeners Gerät mitten bei der Verkabelung




Fertiges Gerät, links die 8 Eingangsstecker zu je 6 Kanälen (= 48 Eingänge)
Rechts die 2 Ausgänge für je 100 Meter Kabel, alle 10 Meter ein Ausgang ( = 20 Flammenprojektoren auf 200 Meter Breite)
Vorne der LAN-Anschluss
Pelicase und alle Anschlüsse sind im aufgebaut Zustand IP68 (Wasser und Staubdicht)




Parametriersoftware
Jedes Hakerl ist ein Flammenprojektor
von Bild zu Bild ist die Wartezeit frei in Millisekunden einstellbar
Am letzten Bild werden alle Flammen abgeschalten, und die Steuerung wartet auf den nächsen Befehl (Film)




Die Software ist in Visual Basic C 2010 geschrieben.
Grundsätzlich funktioniert das Gesamtpaket schon, es sind noch ein paar Kleinigkeiten, die ein Programmierer mit VB Kenntnissen denke ich relativ schnell gelöst hat.
Da mir Michael bis hier her wirklich brutal viel geholfen hat, folgende Frage an Euch:

Wer kann VB programmieren und hat Lust, mir bei der Fertigstellung des VB Programms zu helfen?
Bitte schickt mir eine PN

Viele Grüße
Echt ein tolles Form
Pyro.Chris


----------



## Mobi (31 März 2012)

Warum ist den Bild 2, 3 und 4 auch Start?


----------



## Anaconda55 (31 März 2012)

Schaut cool aus die X20 in dem Koffer.


----------

