Ebbe84
27. August 2018 um 18:04
1
Hallo zusammen,
Bin momentan noch ziemlicher anfänger was PHP angeht.
Habe vollgenes Problem.
Mein Kollege hat mir eine S7 Programmiert für unser Restaurant. Wollte die Lichtsteuerung jetzt ins IPS mit einbinden.
Das Problem ist nur das ich an dem Programm für die S7 nichts ändern kann. Er hat in den Datenblock 3 Variablen mit
„Status Licht“
„Licht ein“
„Licht aus“
angelegt
Wie bekomme ich das hin das ich das Licht an und aus schalten kann…???
hab schon alles mögliche probiert bekomme es leider nicht hin…
MfG Sascha
RWN
27. August 2018 um 18:19
2
Hallo Sascha,
das hat erstmal wenig mit if und else zutun.
Dein erster Schritt liegt hier eventuell mit Hilfe deines Kollegen.
SPS: Siemens, Vipa, Logo — IP-Symcon :: Automatisierungssoftware
Hab dein Thema mal nach SPS verschoben.
Ebbe84
27. August 2018 um 18:59
3
Ich habe die S7 schon eingebunden
Will nur ein Skript haben der wenn der status true ist die variable Licht aus true schreit und wenn der status nicht true ist true in die Variable Licht ein schreibt
RWN
27. August 2018 um 19:21
4
Oh, sorry. Das hab ich dann wohl überlesen.[emoji6]
Als Script würde sich dann anbieten.
If Eingang der SPS false…Set Ausgang der SPS auf true.
Eingebunden hast Du sie ja schon. Die Begriffe sollten dir ja dann geläufig sein.
Gesendet von iPad mit Tapatalk
Ebbe84
27. August 2018 um 21:27
5
<?
if (15730 /[Beleuchtung\Status Beleuchtung Innenraum\Status] / == true)
S7_WriteBit(24642 /[Beleuchtung\Beleuchtung Innenraum Aus] /, true);
else
S7_WriteBit(36565 /[Beleuchtung\Beleuchtung Innenraum Ein] /, true);
?>
Was ist daran falsch???
1007
27. August 2018 um 21:31
6
Ebbe84:
<?
if (15730 /[Beleuchtung\Status Beleuchtung Innenraum\Status] / == true)
S7_WriteBit(24642 /[Beleuchtung\Beleuchtung Innenraum Aus] /, true);
else
S7_WriteBit(36565 /[Beleuchtung\Beleuchtung Innenraum Ein] /, true);
?>
Was ist daran falsch???
Was soll den 15730 sein? Im Moment nur eine Zahl !
Vielleicht besser mit
GetValue(15730)
RWN
27. August 2018 um 21:42
7
Alleine von der Syntax her.
<?if (GetValue(15730) /*[Beleuchtung\Status Beleuchtung Innenraum\Status]*/ ) {
S7_WriteBit(24642 /*[Beleuchtung\Beleuchtung Innenraum Aus]*/, true);}
else {
S7_WriteBit(36565 /*[Beleuchtung\Beleuchtung Innenraum Ein]*/, true);
}?>
ob der Rest passt, weißt Du ja selber…
Ebbe84
27. August 2018 um 21:55
9
RWN:
Alleine von der Syntax her.
<?if (GetValue(15730) /*[Beleuchtung\Status Beleuchtung Innenraum\Status]*/ ) {
S7_WriteBit(24642 /*[Beleuchtung\Beleuchtung Innenraum Aus]*/, true);}
else {
S7_WriteBit(36565 /*[Beleuchtung\Beleuchtung Innenraum Ein]*/, true);
}?>
ob der Rest passt, weißt Du ja selber…
Es geht…:):)
Nur zeigt er mir in der Webfront jetzt beim schalten Fehler an… Schalten tut er aber…
RWN
27. August 2018 um 21:55
10
Du kannst noch 1000 mal gegen die Wand laufen.:mad:
Stell konkrete Fragen, gib Informationen wie jetzt z.B. dein Shot. Dann wird dir geholfen. Hier gibt es Profis genug.
Wie war das mit dem Wald hineinrufen.:eek:
1007
27. August 2018 um 21:57
11
Klassischer Fehler. Vor „<?“ oder nach „?>“ eine Leerzeile oder Leerzeichen.
RWN
27. August 2018 um 21:57
12
Dann fehlt dir das Aktionsscript. ?!?
Ebbe84
27. August 2018 um 21:58
13
So sieht es dann aus :eek:
Ebbe84
27. August 2018 um 22:03
15
Genau das war es…:)
Geht jezt alles…
Besten Dank euch allen…
RWN
27. August 2018 um 22:06
16
Es ist mir schleierhaft wie man bei dem verkorksten Code den der Chrome einstellt noch irgendwelche Leerzeichen einbauen kann.