Hallo, ich wende mich an Euch, in der Hoffnung, dass jemand mir weiter helfen kann, bzw. dass ich es in der richtiger Kategorie poste. Habe viel nach recherchiert, jedoch nicht das gefunden, was ich gerne haben möchte. Ich möchte gerne mit einem Smartfon (eigener (Android) App), egal was, - sagen wir eine LED, .... Lampe anschalten. Gefunden habe ich; 1) ALLNET ALL4075 Ist mir aber "zu leicht" - basiert auf ne xml Datei. Man implementiert die *.xml Datei auf ne Homepage und es wird alles nötiges (Steuerung) "generiert". ... 42) Entwickler- Board´s ohne Betriebsystem .... dafür bin ich sorry! zu blöd. Was ich suche ist ´ne Hardware, welche ich mit Internet (an meinen Router) verbinde (? feste IP) und mit einem Protokoll (Code) aus meiner App es steuern kann. Stelle mir das in etwas so vor: - mit (ip) x.x.x.x.y Verbinden - 12345 (Adresse) eines Relais1 (LED1) für an senden -> Relais1 (LED1) -> AN - 12346 (Adresse) des Relais1 (LED1) für aus senden -> Relais1 (LED1) -> AUS Für jeden Tipp - werde mich sehr freuen. Danke & LG Georg
:
Verschoben durch Moderator
zB Lantronics XPort mit Relaiskarte zB RaspberryPI mit Relaiskarte ...
WOW, danke für die schnelle Antwort! Ich werde mir dies ansehen.
Würd den RaspberryPi nehmen und dann ne kleine Webapp in Python schreiben die den gpio ansteuert. Wenn man doch mal was anderes machen will kann man dem nem wlan-stick geben und hat ihn mobil im netz. Als Betriebssystem Linux Raspbian. für 10 euro noch lautsprecher ran (bei mir stromversorgt über aktivem usb-hub den man noch braucht wenn man festplatten etc. an den pi anschließen will) und man hat nebenbei mit den Lautsprechern noch webradio oder kann Sprachausgabe-Meldungen mit espeak machen: echo "I sound like a female" | espeak -v female3 echo "The time is `date +"%H %M"`"| espeak -v female3 echo "Old Mc Donald had a Farm IAH IAH OH." | espeak -v english -s 140
Ich arbeite gerade an sowas und benutze einen Raspberry Pi mit Python3 und Tornado um einen Websocket-Server zu schreiben der die Kommandos entgegennimmt. Minimalbeispiel:
1 | #!/usr/bin/env python3
|
2 | |
3 | import tornado.web |
4 | import tornado.websocket |
5 | import tornado.ioloop |
6 | |
7 | class WebSocketHandler(tornado.websocket.WebSocketHandler): |
8 | # the client connected
|
9 | def open(self): |
10 | print("New client connected") |
11 | self.write_message("You are connected") |
12 | |
13 | # the client sent the message
|
14 | def on_message(self, message): |
15 | print("Got a message: >>>"+message+"<<<, parsing it..") |
16 | self.write_message(RequestHandler(message)) |
17 | |
18 | # client disconnected
|
19 | def on_close(self): |
20 | print("Client disconnected") |
21 | |
22 | |
23 | def RequestHandler(requestlist): |
24 | requestlist = requestlist.splitlines() # String von Kommandos (jedes Kommando eine Zeile) aufteilen |
25 | returnlist = "" # Liste für abgearbeitete Kommandos (wird zurück zum Client geschickt) |
26 | for request in requestlist: |
27 | request = request.strip() # Unnötige Whitespaces entfernen |
28 | requestsplit = request.split(':') # "command:value" auftrennen |
29 | requestsplit.append("dummy") # Falls keine value mitgegeben wurde wird "dummy" als value benutzt (um Fehler bei der Ausführung zu vemeiden) |
30 | command = requestsplit[0] |
31 | value = requestsplit[1] |
32 | if command == "set.led1": |
33 | if value == "on": |
34 | # Hier LED1 einschalten
|
35 | returnlist += "\n set.led1:ok" |
36 | if value == "off": |
37 | # Hier LED1 ausschalten
|
38 | returnlist += "\n set.led1:ok" |
39 | |
40 | return returnlist |
41 | |
42 | |
43 | # start a new WebSocket Application
|
44 | # use "/" as the root, and the
|
45 | # WebSocketHandler as our handler
|
46 | application = tornado.web.Application([ |
47 | (r"/", WebSocketHandler), |
48 | ])
|
49 | |
50 | # start the tornado server on port 8888
|
51 | if __name__ == "__main__": |
52 | application.listen(8888) |
53 | tornado.ioloop.IOLoop.instance().start() |
Hier auch noch der Code der im Moment auf meinem Roboter läuft: https://github.com/schuhumi/autocut/blob/master/Software/Main%20Module/Commandserver/CommandServer/main.py Um Befehle an den Server zu schicken benutze ich Javascript, das auch auf dem Roboter gehostet wird. Zur Orientierung: https://github.com/schuhumi/autocut/blob/master/Software/Main%20Module/Webserver/js/websocket.js (function set_ws_status(status) gehört da nicht rein sehe ich grade...) Die LED würdest du damit so anschalten:
1 | WebSocket_Open(); |
2 | WebSocket_Send('set.led1:on') |
3 | WebSocket_Close(); |
Hallo, VIELEN! dank für Eure antworten. Vorher wusste ich nicht wonach ich explizit suchen soll! Jetzt "Toogle" ich zwischen Lantronics XPort und RaspberryPi. Beide sind "HOCH" interessant. Im besonderen danke an @Simon S für Deine ausführliche (fast Tutorial) Antwort. Embedded Systeme sind leider für mich schon OUT! - (bin 52-ig und habe die "PC- Evolution" so zusagen verschlafen") Bei der "Oberfläche Programmierung" - geht es einiger masse bei mir. Als "Krönung" meiner ""Hobby Welt" - möchte gerne das Projekt durchziehen: Mit Handy (App schreiben) eine LED / Lampe (Hardware) via Internet (steuern). Es ist mir bewusst!, - dass so was schon Fertig auf dem Markt zu finden ist, - viele von euch es in ein paar Stunden - Tage - es kreieren könnten .... ist für mich ne letzte Voraussetzung. blablabla ... OK! Habe mich durch Eure Vorschläge (Lantronics XPort, RaspberryPi) etwas durchgeklickt. Egal an was ich mich entscheide; - ich bedanke mich herzlich für die Tipps. Irgendwie, sagt mir aber mein "Orakel Paul", dass ich hier (diesbezüglich) noch was fragen würde - hihihi Leute - DANKE! LG Georg Ps. An Moderator: - sorry & danke für die Verschiebung in die richtige Kategorie.
Pollin Net I/O da gibt es auch eine app, zumindest für das iPhone
Es gibt schaltbare Steckdosenleisten mit Ethernet-Anschluß. Nur die App müsstest du ggf. selbst machen. Mit freundlichen Grüßen Thorsten Ostermann
Thorsten Ostermann schrieb: > Es gibt schaltbare Steckdosenleisten mit Ethernet-Anschluß. Nur die App > müsstest du ggf. selbst machen. Nö, gibt auch welche mit fertigen Apps für iPhone oder Android: http://www.amazon.de/EnerGenie-EG-PM2-LAN-programmierbare-IP-Steckdosenleiste-LAN-Schnittstelle/dp/B00AACIHPS/
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.