# SPS WLAN Fernsteuerung lite - für Android



## MarkKoenig69 (17 November 2013)

Moin,

ich habe im Google Play Store meine Fernsteuerung eingestellt und würde die hier kurz vorstellen:




https://play.google.com/store/apps/details?id=com.mkoenig.PlcControl

Anders als andere Apps, habe ich die Kommunikation mit einem einfachen UDP Protokoll realisert. Signale oder Bits lassen sich hiermit perfekt steuern. Aber man kann damit auch z.B. eine Hausautomatisierung machen.

Die Kommunikation erfolgt über WLAN. Dazu sendet das Handy oder Tablet  eine Nachricht per UDP an die SPS. Die Verbindung wird auf Unterbrechung  überwacht, im Falle einer Unterbrechung werden die Ausgänge  abgeschaltet. IP Adresse und Port für die Kommunikation sind  einstellbar. Die SPS sendet Status und Text zurück.

Es gibt bereits fertige Beispiele für folgende SPSen:
Siemens S7 mit CP 343
Omron CS/CJ Serie mit ETN21

Ein Testprogramm für den PC und die Beispiele für die SPS können zusätzlich geladen werden.
http://www.kleiner-schelm.de/plccontrol/

Grafische Beispiele runden das Angebot ab.
Das Protokoll ist offen, so ist eine Implementierung auf jede beliebige Steuerung möglich ist.

Die Lite Version bietet schon mal folgende Funtionen:

8 Tasten mit 3 Schaltstufen (gedrückt, und gedrückt mit Vol+/-)
8 Signal Leuchten für jeden Taster für z.B. Endlagen
Anzeigen eines beliebigen Textes
CRC16 Überwachung
Grafik der Taster kann beliegbig über die SD Karte geändert werden
Der Bildschirm wird "AN" gehalten solange die App aktiv ist
IP und Port einstellbar
MAC-ID Filtering möglich
Beispiele für S7 und Omron
Testprogramm für den PC (SPS Emulation)
Die Kommunikationszeit beträgt < 300ms

Ich plane noch eine Pro Version machen. Die wird zusätzliche Funktionen haben:

mehrere Layouts (8,10,12 Tasten mit/ohne BCD oder Joystick)
4 verschiedene SPSen bedienen
12 Buttons
BCD Schalter zur Anwahl
Joystick Modus (X/Y Werte 0-100%)
2 Zeilen Text, kein Branding
Hintergrund GFX
und noch andere Wünsche






mit Backgr.     mit BCD        Joystick

ACHTUNG: bei Verwendung in Maschinen beachten Sie bitte die für Ihr Land gültige Maschinenrichtlinie bzw. Risikoanalysen.


----------



## Crack123 (18 November 2013)

Hallo! 

Coole App  gefällt mir, was ich mir noch wünschen würde wär nen Baustein für Beckhoffs Twincat 


lg


----------



## PN/DP (18 November 2013)

Crack123 schrieb:


> Coole App  gefällt mir


Beurteilst Du das nur anhand des bunten Aussehens oder hast Du die App auch getestet?

Harald


----------



## Crack123 (18 November 2013)

Natürlich getested


----------



## bike (18 November 2013)

Crack123 schrieb:


> Natürlich getested



Innerhalb von weniger als 24 Stunden alles ausgetestet?
Wow, das ist ein echte Leistung! 

Hab ihr denn sonst nichts zu tun? 


bike


----------



## MarkKoenig69 (18 November 2013)

Moin,

ja, ein Baustein wäre grundsätzlich kein Problem. Allerdings arbeite ich mit Codesys 2.3 und Wago. Das auswerten des Strings und der CRC ist sicherlich einfach in einen Baustein zu packen. Die entsprechende Ethernet Lib kenne ich allerdings nur von Wago. Das kann man sicherlich leicht anpassen, ist ja alles ST. In der Reglel kommt da ja so ein Byte Array vom UDP zurück. Ich werde mal was für Wago machen machen....als Beispiel.


----------



## PN/DP (18 November 2013)

Crack123 schrieb:


> Natürlich getested


Mit welcher SPS? Hast Du seine "fertigen Funktionsbausteine" benutzt oder selber was funktionierendes programmiert?

Harald


----------



## PN/DP (18 November 2013)

MarkKoenig69 schrieb:


> ich habe im Google Play Store meine Fernsteuerung eingestellt und würde die hier kurz vorstellen:
> [...]
> https://play.google.com/store/apps/details?id=com.mkoenig.PlcControl
> [...]
> ...


Deine Idee ist ja ansich nicht neu, da beschäftigen sich schon einige erfahrene Fachleute mit dem Thema.
Da nun aber schon die ersten "Coole App"-Bekundungen kommen, Deine Version aber noch sehr unausgereift wirkt und Du wohl etwas "blauäugig" ins Business einsteigen möchtest, erlaube ich mir, Dein Programm in der jetzigen Form zu kritisieren. Ich habe mir mal Deine "fertigen Funktionsbausteine" für die Siemens S7 angesehen.



MarkKoenig69 schrieb:


> Anders als andere Apps, habe ich die Kommunikation mit einem einfachen UDP Protokoll realisert. Ich steuer damit z.B. Portalkräne.


:sm14: Hilfe! Bist Du noch zu retten?! 
Sag mir jetzt bitte, daß es nur ein Spielzeug in Deinem Bastelkeller ist ... oder welche Fabrikgelände ich besser nicht betreten sollte ...

Zur Steuerung einer Industrieanlage gehört mehr dazu als nur zu zeigen, daß das Drücken eines bunten Knopfes auf einem Smartphone etwas an der Anlage bewirkt wenn die Umstände zufällig günstig sind ...



MarkKoenig69 schrieb:


> Die Kommunikation erfolgt über WLAN. Dazu sendet das Handy oder Tablet  eine Nachricht per UDP an die SPS. Die Verbindung wird auf Unterbrechung  überwacht, im Falle einer Unterbrechung werden die Ausgänge  abgeschaltet.


Zumindest für Deine S7-Bausteine ist diese Aussage nicht korrekt. Die Ausgänge werden nicht abgeschaltet.
Sag mal, wie testest Du eigentlich die von Dir angebotene Software?

Ein Rat von mir: Zumindest für die S7-SPS-Bausteine solltest Du Dir Hilfe von jemandem suchen, der Ahnung von SPS-Programmierung hat (aber möglichst keinen alten S5-Hasen ) Ein sooo unsauber programmiertes S7-Programm habe ich lange nicht mehr gesehen ... wurde die S7-Version eigentlich aus dem CX-Programm "konvertiert"?
Sooo viele Programmierfehler! Köstlich ist auch der Programmierfehler für den Merker "First_Cycle", der am FB200 ein Dauer-INIT_COM bewirkt *ROFL*




MarkKoenig69 schrieb:


> Ich plane noch eine Pro Version machen.


Dann solltest Du Dir mal die Zeit nehmen, alle Deine öffentlich lesbaren Texte, Programmzeilen und -kommentare nochmal zu lesen (oder lesen zu lassen) und all die schlampigen Tippfehler und falschen bzw. nicht mehr gültigen Aussagen zu korrigieren.

Bei einem kostenlosen Gaul kann man nix gescheites erwarten, doch sobald man Geld dafür bezahlen soll, dann kann man schon verlangen, daß das Produkt weitgehend fehlerlos ist, dem Stand der Technik und ggf. den Sicherheitsvorschriften entspricht und mit einem Mindestmaß an verantwortungsvoller Sorgfalt erstellt wird.


Achja: als Anbieter von Software, die in technische Anlagen eingreift, sollte man unbedingt eine gute Betriebshaftpflicht-Versicherung haben - nicht daß man für eventuell angerichteten Schaden auch noch privat einstehen muß ... womöglich lebenslang ... eine Standard-Privathaftpflicht wird Deine unbedarften Spielchen sicher nicht abdecken.

Noch ein Rat: Schreibe umgehend in Deine Programmbeschreibung, daß Dein Programm noch im Alpha-Stadium V0.1 ist und nur zum Schalten von Lampen im Haushalt geeignet ist und Du keinerlei Haftung übernimmst oder ziehe Dein Programm zurück, bis es zuverlässig funktioniert und Du Dir das Risiko von angerichtetem Schaden leisten kannst. 
Wobei: wenn Du Glück hast, dann entscheidet der Richter, daß nicht Du sondern ein anderer Programmierer für den Programmcode in der SPS verantwortlich ist.

Vielleicht solltest Du überhaupt Dein Angebot auf die App im Smartphone/Tablet und eine gute Beschreibung eines ausgereiften Kommunikationsprotokolls beschränken. Und keinerlei Beispielcode für die SPS-Einbindung geben. Da für Deine Fernsteuer-Lösung immer ein Eingriff in das SPS-Programm nötig ist, sollte es im Bedarfsfall auch einen erfahrenen SPS-Programmierer geben, der diesen SPS-Part anhand der Protokollbeschreibung programmiert. Wer den notwendigen SPS-Part nicht selbst programmieren kann, der ist für diese Aufgabe sowieso nicht qualifiziert.

Allerdings - ohne fertigen SPS-Code ist Deine Android-App für Deine Zielkundschaft leider nichts wert ... Wenn Du aber den SPS-Programmcode mitlieferst, dann MUSST Du damit rechnen, daß der Code von den allergrößten Deppen in SPS eingebaut wird, die irgendwas steuern, was Du nicht beeinflussen kannst - die im Schadensfall aber garantiert versuchen werden, Dich für den Schaden haftbar zu machen!

Harald


----------



## bike (18 November 2013)

Danke Harald 

Mit deiner Schilderung hast du mich echt neugierig gemacht und ich habe mir die Bausteine heruntergeladen und angeschaut.
UFF! Das ist wirklich ein gutes Beispiel wie Mann oder Frau es nicht machen sollen.
Abschreckende Beispiele haben aber auch ihre Berechtigung 

Aber ich behaupte, die App und auch die Bausteine sind einfach da, damit es Traffic zu der Seite gibt.
Denn ein Portalkran mit solch einem Spielzeug steuern, ist nicht einmal ein Witz.


bike

btw: Kommentare kosten keinen Speicher in der CPU und machen das Verständnis des Code leichter.
Und in Deutsch wäre echt sinnvoll, denn in Englisch die Texte von BigS hernehmen macht das ganze nicht professioneller.


----------



## IBFS (19 November 2013)

Nachdem der Potalkran in die Wand geknallt ist, kann man ja noch die "Nie mehr Rauchen !" -App des TE testen. https://play.google.com/store/apps/details?id=com.mkoenig.quitSmoking


----------



## Gerhard Bäurle (19 November 2013)

@mark

Nach der – berechtigten – Kritik der Kollegen 
würde ich überall reinschreiben, dass das im 
Experimentierstadium zu Lern- und Testzwecken
geeignet ist, aber keines Falls für den produktiven 
Einsatz.

Vielleicht kommt ja jemand und bastelt mit.


und nicht in prod


----------

