Hallo,
ich habe ein größeres Projekt im Hinterkopf, dass den Rahmen meiner
bisherigen Beschäftgung mit Computer und Elektronik üebrsteigt. Aber
vielleicht ist es ja doch alles auch nur halb so schlimm und ich hätte
gerne mal meine Einschätzung dazu gehört.
Wenn das Ganze bei "PC-Programmierumng" besser aufgehoben sein sollte
bitte einfach verschieben.
Und zwar schwebt uns eine netzunabhängige Überwachsungs- und
Steuerlösung mit Webinterface für eine Tierweide vor.
- Überwachung in Bild, Wasserstände und ggf. Weidezaunfunktion
- Steuerung von Pumpen, Torantrieb und ggf. Kameraausrichtung
Dachte dabei, Mechanik jetzt mal aussen vor gelassen, an den Einsatz
folgehnder Komponenten:
- 12V Solarmodul
- Laderegler (gekauft)
- Bleigelakku
- Spannungsregelung für Verschiedenes (Selbstbau)
- embedded Board mit USB, LAN etc., eventuell Raspberry Pi
- Webcams
- UMTS EDGE GPRS - Modem / Router
- Mikrocontroller mit Sensorik, Schaltausgängen etc.
Die Mikrocontrollergeschichte samt Kommunikation per USART/SPI/I²C mit
dem embedded Computer sowie Ansteuerung von Sensoren / Aktoren bekomme
ich auf die Reihe.
Hapern tut es dann bei dem Raspberry PI und der Erfahrung mit Linux. Wie
ich inzwischen herausgefunden habe, kann das Zusammenspiel zwischen
Webserver und Schnittstellen über CGI / FastCGI erfolgen, was auch nicht
allzu schwer sein sollte. Nur die Ansteuerung des GPIO aus einem
Betriebssystem herraus hat sich mir noch nicht so ganz erschlossen.
Ich könnte also eine nahezu beliebige, frei verfügbare
Webserver-Software verwenden?
Wird die dann in der Regel in der Linux Paketverwaltung zur Verfügung
stehen oder wird man wohl einen Webserver auf dem embedded Board
compilieren müssen.
Und vor Allem wie erfolgt die Einbindung der Webcam(s), damkit man
letztendelich einen Stream hat ?
Der Rest wie UMTS-Router mit Netzwerkanschluss (und hoffentlich
Dyndns-Unterstützung) sollte ja eigentlich nahezu Plug-and-Play laufen -
oder ?
Meinungen und Vorschläge zu dem Projekt ? Wo werden die Schwierigkeiten
liegen ?
die erste Schwierigkeit die ich sehe ist, dass ein UMTS/GPRS Gerät vom
Internet nicht erreichbar ist, weil man meist keine öffentlich IP
bekommt, das würde soweit ich weiß extra kosten, sprich die Verbindung
muss vom UMTS/GPRS Modem initialisiert werden, man kann also nicht out
of the Box einen Server drauf laufen lassen.
Wenn man allerdings einen Server im Internet hat könnte man das ganze
über den Tunneln und die Verbindung vom UMTS/GPRS modem initialisieren
und offen halten.
Früher (tm) hatte ich das so in etwa realisiert, jedoch mit Fotokamera
und Abspeicherung der Dateien auf SD Card sowie kopieren derselben auf
USB-Festplatte. Wenn ich das jetzt machen müsste, würde ich ein <100€
Android Handy nehmen mit >=3Mpixel Kamera, entsprechende SW drauf
installieren, ein Script schreiben und ev. noch was mit OpenCV machen,
sollte es sich anbieten. USB Solarlader gibt es auch an jeder Ecke und
die USB Festplatte kann ich auch direkt am Händy anschließen.
Danke erstmal für die Antworten.
Das habe ich mangels Erfahrung soweit nicht bedacht, dass man keine
öffentliche IP zugewiesen bekommt, was natürlich einiges ändert.
Wenn ich es richtig verstanden habe benötigt man für Tunneling
mindestens einen V-Server. Ich habe allerdings nur normalen Webspace und
möchte den auch nicht unbedingt erweitern.
Auch mein Synology NAS, das 24/7 online ist, möchte ich, selbst wenn es
hinzubekommen wäre, nicht missbrauchen, um die ohnehin recht
schwächliche Internetverbindung zu Hause nicht weiter zu belasten.
Bleibt also zumindest aus meiner amateuhaften Sicht der regelmäßige
Upload von Einzelbildern und Daten auf den Webspace, alle paar Sekunden
ein Bild reicht im Zweifel auch noch. Andersherum muss natürlich ein
Download von Befehlen an Torsteuerung Pumpe Messeinheit erfolgen.
Wie macht man sowas ? FTP up- und download von Text/Bild-Dateien ?
Gibt es da für Linux vielleicht Lösungen (zumindest für Win, Webcam,
Upload per FTP habe ich sowas schon einmal gesehen) oder muss man das
selber coden?
Oder gibt es gar einen ganz anderen Vorschlag der herangehensweise ?
-
Android-Handy finde ich auch keine schlechte Idee, wäre allerdings
genauso Neuland für mich. Zudem:
Verfügen alle Smartphones zumindest über USB und gibt es Treiber für
weitere Webcams?
Und die Kommunikation mit dem Controller ? USB->RS232 geht oder nur über
Bluetooth ?
Bei der Solarzelle lässt sich nicht sparen (also kein billiger
Handy-Solarlader), da für Peripherie noch Einiges mehr an Energie
benötigt wird.
hmm, also du brauchst einen öffentlich erreichbaren Rechner, geht auch
mit dynamischer IP über dyndns oder so.
Von da sehe ich zwei Möglichkeiten:
1) Server läuft auf dem öffentlichen Rechner, dieser zeigt immer den
aktuellen Status, welchen er über FTP upload oder besser SCP bekommen
hat an. Um den Status upzudaten rufst du die Box an (nicht abheben ->
kostet nichts) und die Box schickt daraufhin die neuen Daten an den
Server und holt sich möglicherweise Stellwerte vom Server,
möglicherweise auch öfters um ein gewisse Maß an Interaktivität zu
erreichen, so brauchst du nicht immer online sein.
2) Server läuft auf der Weide und baut einen SSH Tunnel zum Internet
Rechner auf mit reverse Portforwarding (alles was zB auf Port 80 über
Internet hereinkommt wird auf den Server weitergeleitet) ist dieser dann
vom Internet erreichbar. Problem ist nur, du musst den Tunnel immer
offen halten bzw neu aufbauen wenn es Probleme gibt, das kostet
Datenvolumen. Du könntest auch hier den Trick mit dem Anrufen anwenden
um den Aufbau des Tunnels zu triggern.
Die Methode hat den Vorteil, dass dein System unmittelbar reagieren kann
und du brauchst am Internet Rechner nicht viel Aufwand ausser SSH. Der
Traffic muss auf beide Arten über den Internet Rechner laufen.
Bis hier ...Theorie. In der Praxis laeuft dir das Rind genau in deine
fragile Kiste und frisst die Gummidichtung weg. Den Rest nimmt sich der
Franzl mit in seinen Stall. Die Solaranlage gefaellt natuerlich auch dem
oertlichen Solarspezi...und weg war sie.
Fernueberwachung ? Theoretisch ja ...praktisch nur fuer 14 Tage ;-)
...im Land des HCR (Heiligen CastroFans Ratzi )
Achtung, du hast eine Händyverbindung. Da hst du bei GSM 9.6kbit/s oder
bei GPRS 8-14.4Kbit/s oder bei CSD 14.4Kbit/s Uploadgeschwindigkeit,
welche
gegen 0 tendiern, zeitweise auch 0 bytes/sec, je nach Netzauslastung.
Da sieht es sehr schlecht aus, wenn der Server auf der Wiese über
Händyverbindung läuft und zwei/drei Personen die Webcam ansehen, sei es
auch
nur Google welche den Server scannt. Normalerweise wird der Image-Stream
recodiert und komprimiert hochgeladen und der Server decodiert das und
functioniert als Proxy. Bilder sind ein paar Sekunden verzögert, um
eben die Geschwindigkeitseinbußen der Übertragung zu managen.
Du brauchst einen Webserver mit PHP mit installierter GD lib, als
Mindestvoraussetzung um das zu machen. FTDI rs232 geht problemlos,
entweder
über USBLIB oder über native Treiber wenn rooted. Auch UVC Webcams
funktionieren, brauchen aber ein rooted Android. Nicht jedes Händy kann
gerooted werden. Wegen Solarpanel, ich habe ein Android Händy mit
2 Freeloader (je 1A Lipo) laufen. Das Händy hält 2.5 Tage durch, und bei
sonnigem Wetter ist der 1A Akku in 8 Stunden voll. Ca 1Woche
schlechtwetter Buffer. Und, ein zweites Android mit Solar-Accu und Wlan
verbindung zum
ersten ist ev. günstiger als ein eine andere Lösung. Blitzeinschlag muss
ja auch geachtet werden, also nicht einfach so 100 Mt Kabel ziehen.
Wie weit ist denn die Weide von der naechsten Zivilisation entfernt?
(Ist es eine spezielle oder irgendeine?)
Ist eine breitbandige Datenuebertragung ueberhaupt sinnvoll?
Statt brute force kann man z.B. ueber Packet-Radio ein paar Sensordaten
senden und sie dann per Gateway ins Netz stellen. (Die Fotos in Echtzeit
fallen dann nat. weg.)
Fotos kann man aber im Alarmfall auch per MMS und Alarme per SMS
versenden (z.B. Weidezaun ausgefallen).
Ein lokaler Embedded-PC koennte Bilder (als Beweise) speichern, falls
Nachbars Lumpi wieder mal die Schafherde aufmischt.
Die Frage nach Vandalismus und Diebstahl ist damit allerdings auch noch
nicht geklaert.
Bei T-Mobile oder der deutschen Telekom gibt es oeffentliche IP
Adressen.
Z.B. mit dem APN internet.t-d1.de
Bei der Service Hotline wird man dir wohl sagen das es nicht geht aber
meine Erfahrung ist das es mit jedem Tarif funktioniert. Und zwar immer
und ueberall.
Du bekommst dann eine 88.x.x.x oder 80.x.x.x IP Adresse.
In Verbindung mit DynDNS eine funktionierende Loesung.
Eine Alternative ist Teamviewer. Fuer Private Nutzung kostenlos.
Teamviewer meldet sich dann auf dem Teamviewer Server an.
Zu Vandalismus seitens der Tiere und Diebstahl:
Wenn das was gibt kommt das Ganze unter ein etwa 2,50 - 3,00m hohes Dach
eines geplanten größeren Stahlkonstrukts.
Zertreten wird das Ganze somit von den Pferden schonmal nicht und für
Kopfstöße gibt es stabile Behausungen, die es auch Dieben schwer machen.
Und wenn man eben oben in die Ecke als billiges, stabiles Gehäuse so
einen Baumarkttresor schweisst ...
Alles was extern sein muss wird entweder auch angemessen gesichert oder
man lebt eben mit dem Restrisiko.
Wer gerne eine große Leiter mitbingt um auf einem Dach aus
Wellkunststoff rumzukriechen und dann die Befestigung, bestehend aus
Maschinenschraube und geLoctideder Kontermutter unter den Dachplatten
lösen kann - das alles ohne vom 150m entfernten Weg bemerkt zu werden -
der soll das 50,- Euro teure Solarmodul haben :)
Im Ernst: mit so einem Restrisiko muss man leben. Im Zaun der Weide, die
nicht einmal unglaublich groß ist, stecken ja auch mal eben ~400 Euro
Zaunmaterial, das Weidezaungerät nebst Autobatterie nicht mitgerechnet.
Da kann man nichts machen ...
Typischerweise werden Weidezaungeräte als "Mitnahmeartikel" geklaut. Ist
ein schwerer Kasten drumrum, ein unter Spannung gesetztes Gehäuse oder
ist das Gerät auch nur mit einem noch so billigen Fahrradschloss an dem
nächsten stabilen Gegenstand gesichert, kommt da in der Regel nichts
weg.
Den Rest, der geschrieben wurde, werde ich mir mal durch den Kopf gehen
lassen. Allerdings soviel: Flatrates über dem Preisniveau der
Prepaidkarten-Flatrates kommen nicht in Frage. Das Ganze ist und bleibt
eine nicht zwingend notwendige Spielerei und sollte deshalb irgendwo im
Rahmen bleiben.