PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Wenn kein Router, dann AP?



Rabenauge
23.06.2019, 10:49
Hallöle.
Ich bastele ja schon bisschen am Nachfolger meines ersten Kettenroboters.....der neue bekommt einen Raspberry Pi ZeroW rein.

Das Interface basiert auf dem hier: https://hackaday.io/project/25092-zerobot-raspberry-pi-zero-fpv-robot/log/97988-the-new-zerobot-pro
Bis zu diesem Punkt läuft die Sache auch bereits, auch wenn ich ne IR-Cut-Kamera dran hab.:cool:

Nun aber hab ich folgendes Problem: zu Hause ist das alles ja schön und gut, wenn der Pi im heimischen WLAN hängt, komm ich per Handy, Lapto, Tablet rauf- aber draussen?
Ausserhalb der Reichweite meines WLAN's klappt das natürlich so nich.
Aber mein Bot hat nich umsonst ein Kettenfahrwerk...der soll hauptsächlich draussen agieren können.

Ich weiss, dass ich den Pi auch als AP konfigurieren kann, damit das unterwegs funktioniert, aber ich hätte gerne _beides_:
-wenn er kein Netzwerk findet, in das er rein kommt, dann soll er kurzerhand nen AP aufmachen.

Mein kleiner Kettenbot, der einen NodeMCU drin hat, kann das- das funktioniert einwandfrei.
Aber beim Pi finde ich bisher nur Anleitungen, die entweder das eine _oder_ das andere machen.
Ist es denn mit dem Pi und seinem eingebauten WLAN-Adapter überhaupt möglich, zur Laufzeit zwischen Station-und AP-Mode zu wechseln?
Wie geht das?
Es reicht ja wenn er beim starten eine Weile versucht, in mein WLAN zu kommen- und bei Misserfolg dann nen eigenen AP aufmacht- genauso tut das der kleinere.

jmoors
23.06.2019, 11:41
Ich lese dann mal mit. Das Problem eines verfügbaren Netzwerkes mit entsprechender Leistung außerhalb des Hauses ist bei mir auch ungelöst.
Ich hatte schon überlegt, ein WLAN mobil aufzubauen, d.h. der Roboter fährt durch das Terrain, aber sobald der WLAN-Empfang schwächelt, wird ein WLAN-Repeater (Mit Akku versorgt und im Roboter transportiert) abgesetzt, der das WLAN von der Basisstation zum Roboter verstärkt. Mein Kopfmodell ist im Augenblick, dass der Roboter 3 von diesen Repeatern mitführt, die das WLAN alle verstärken, und bei Bedarf von Roboter abgesetzt werden.

VG, Jürgen

Holomino
23.06.2019, 15:18
Eine Frage dazu:
Muss es wirklich ein AccessPoint sein oder reicht nicht ein alternatives Netzwerk (das man mittlerweile mit so ziemlich jedem Endgerät aufbauen kann)?

Weil: AutoConnect kann der Raspi.

Ceos
23.06.2019, 17:07
Die Aufgabe geht tiefer in die Materie, du kannst einen initd-script oder service/daemon schreiben, welcher die konfiguration ausführt und versucht ein WLAN aufzubauen, dazu kommt dann eine prüfung ob das WLAN verbunden ist mit einem timeout, läuft das ab wird ein weiterer scroipt gestartet der auf AP umkonfiguriert (das geht ohne probleme)

zusätzlich kannst du den script auch z.B. an ein Event hängen, wenn das WLAN interface die Verbindung verliert.

ICh habe das selber so in der ARt noch nciht gemacht und du stichst hier auch in einen meiner größten Kritikpunkte an Linux hinein, es gibt 1000 Wege, die sind alle nur sehr spärlich und speziell erklärt und du brauchst dafür mindestens 4 unterschiedliche tutorials.

Was du brauchst ist
das erstellen von initd scripts zum konfigurieren von WLAN,
wie man timeouts
und bedingungen einbaut
und wie man einen daemon oder script an ein event bindet

wenn englisch eine option ist, würde ihc IRC channel, oder einen discord über raspberry pis empfehlen, deine Anwebndung ist schon relativ speziell leider

Rabenauge
23.06.2019, 22:27
Autsch.
Das man das mit nem Skript lösen kann, hatte ich mir schon gedacht- nicht eben meine starke Seite.
Aber kommt Zeit.....schaun wir mal.

@Holomino: an welche Alternativen denkst du da?
Bluetooth ist keine- ich will schon bisschen Reichweite haben (um nicht zu sagen: möglichst viel).
Mit Wlan schaff ich mit Handy oder Laptop durchaus mal eben 50-100m, das ist die untere Grenze (bei weniger brauch ich keinen Funk, hehe).
Mit ner gescheiten externen Antenne geht noch so einiges mehr.

Zudem kann ich dann einfach noch Repeater benutzen, die Idee, die @jmoors hatte, hatte ich nämlich auch schon.
Diese kleinen Repeater kann man wunderbar mit ner kleinen Powerbank versorgen, und da die vernünftige Antennen haben, spielen die ziemlich gut, sogar meine Drohne hab ich so schon geflogen.

Letzten Endes soll es _ungefähr_ so laufen: ich steuere den Roboter mit _irgendeinem_ Gerät (wahlweise Laptop (eher selten, das schwere Ding...), Tablet oder Handy).
Dazu hat er schon ein Web-Interface.
Aber ich will _auch_ die Möglichkeit haben, im Felde mal was an der Software zu ändern- momentan erledige ich das bequem per VNC auf meinen Pi's, und genauso soll das auch laufen.
Zumindest vom Tablet aus funktioniert das auch schon wunderbar (vom Handy aus sicher auch, aber wegen relativer Sinnfreiheit hab ich das noch nich probiert).
Das Ganze wird ne grössere Spielwiese...daher darf das ruhig ein bisschen mehr Aufwand sein.
Was definitiv nicht in Frage kommt: irgendein GSM,LTE oder sonstiges "Internet-Modul" im Roboter.
Der Grund: _willichnich_.

Axel37
24.06.2019, 01:18
ich würde das über Roaming lösen, geht alles automatisch.

Holomino
24.06.2019, 01:37
Tschuldige, ich hab mich wieder mal missverständlich ausgedrückt.

Im Augenblick verbindest Du den PI und Deinen Rechner mit dem Router und lässt Deinen Remote Client über das Netzwerk laufen.

Den Router kannst Du Dir eigentlich in vielen Fällen sparen. Wenn Dein Rechner (Notebook/Tablet/Phone) die "mobile Hotspot"-Funktion unterstützt (in Win10 implementiert, in Win7 per Batch startbar, unter Android weiß ich, dass es geht, aber nicht, wie es heißt, da setzen sich die Kiddis nebeneinander und surfen mit mehreren Phones über einen Internetvertrag), baut der Dir ein abgespecktes Wifi-Netz mit DHCP-Server und recht eingeschränktem Routing auf. Der routet dann zwar die PI-IP nicht nach außen sichtbar durch, für eine PeerToPeer-Verbindung per IP vom Hotspot-Rechner zum PI reicht es aber immer.

Ceos
24.06.2019, 05:48
Wenns nur mal um Feldarbeiten oder "Service Modus" geht, köntest du dich mit einem Schalter behelfen!

Ein kleiner Pyscripts (mit Autostart) , der die GPIOs abfragt

wenn du da einen bestimmten Pin auf HI oder LO legst, konfiguriert dein Tool das Netwerk entsprechend um!

Rabenauge
24.06.2019, 05:59
Hm, das würde unschön: mein Tab ist nämlich Wifi-only.
Mit dem Laptop gehts wohl, aber meistens werd ich eher das Tab nutzen.
Dann bräuchte ich zusätzlich nen Hotspot vom Handy *grummel

Das mit dem Service-Modus klingt gut, das dürfte recht einfach zu realisieren sein....

Ceos
24.06.2019, 06:01
auf wessen Post beziehst du dich gerade @Rabenauge? Mit der Schalter Lösung kannst du den Pi einfach on the Fly auf AP umschalten und dann darauf verbinden!

Rabenauge
25.06.2019, 17:47
Das "unschön" bezog sich auf Holominos Post.
Funktioniert nicht, eben weil mein Tab nur Wifi hat- das kann keinen Hotspot aufmachen.
Das müsste dann so laufen, dass ich das Handy als Hotspot benutze, und Tab und Pi im Station-Mode drauf verbinde-was ein Gewurstel.

Deine Idee mit dem Schalter dagegen klingt gut: das wär ausreichend praxistauglich (wenn auch trotzdem ein Rückschritt, weil die NodeMCU-Bausteine das "einfach so" drauf haben).
Aber mit nem kleinen Schalter (oder ner Jumper-Brücke unter Deck) könnt ich leben.