mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik Raspberry Pi als Controller extern steuern


Announcement: there is an English version of this forum on EmbDev.net. Posts you create there will be displayed on Mikrocontroller.net and EmbDev.net.
Autor: Max A. (checkeranonym)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

hoffentlich bin ich hier richtig. Ich habe eine Frage. Kann man den 
Raspberry Pi extern steuern? Gemeint ist das so:

Ich öffne mein Programm auf meinem Windowsrechner und verbinde meinen 
Rechner über einen USB-Kabel oder einem Ethernetkabel mit dem Pi. Die 
Signale werden über das Kabel gesendet.

Oder geht das nur mit Programmen wie Putty? Danke im Voraus.

Autor: GEKU (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Es geht mit Putty via SSH Protokoll aber über HTTP bzw. HTTPS mit 
WEB-Server am Raspberry Pi.
Man kann aber auch sein eigenes proprietäres IP Client/Server Protokoll 
implementieren.

Autor: PittyJ (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Kann man statt putty nicht auch gleich ssh nehmen?

Oder liegt das bei Windows nicht mit dabei?

Autor: Rufus Τ. F. (rufus) (Moderator) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
PittyJ schrieb:
> Oder liegt das bei Windows nicht mit dabei?

Tut es nicht*, aber das tut putty auch nicht.


*) mag sein, daß es Bestandteil der zunehmend wachsenden Linuxifizierung 
von Windows 10 ist und mit irgendeinem der vielen Zusatzpakete dann doch 
irgendwie mitkommt.

Autor: GEKU (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
PittyJ schrieb:
> Kann man statt putty nicht auch gleich ssh nehmen?

Man kann auch Teraterm verwenden.

Autor: Sascha W. (sascha-w)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Max A. schrieb:
> Ich öffne mein Programm auf meinem Windowsrechner
was für ein Programm?
> und verbinde meinen
> Rechner über einen USB-Kabel oder einem Ethernetkabel mit dem Pi. Die
> Signale werden über das Kabel gesendet.
Was für Signale?

Du willst ein Programm das auf dem PI läuft von Windows bedienen? Bzw. 
den PI allgemein ohne Monitor, Maus u. Tastatur betreiben?
Anwendung mit GUI => Desktop per RDP, VNC übertragen
Anwendung ohne GUI => Zugriff über SSH

Sascha

Autor: georg (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Max A. schrieb:
> Ich öffne mein Programm auf meinem Windowsrechner und verbinde meinen
> Rechner über einen USB-Kabel oder einem Ethernetkabel mit dem Pi

Einfacher: das Programm läuft auf dem Pi und hat für Einstellungen eine 
Website - falls man von einem anderen Rechner (oder Tablett, Handy...) 
zugreifen will genügt der Browser.

Georg

Autor: Christian H. (netzwanze) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
PittyJ schrieb:
> Kann man statt putty nicht auch gleich ssh nehmen?
>
> Oder liegt das bei Windows nicht mit dabei?

Nur bei den neueren Windows 10 Versionen.

Autor: Wolfgang (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Max A. schrieb:
> Ich habe eine Frage. Kann man den Raspberry Pi extern steuern?

Ja, willst du den Raspberry über eine Textkonsole steuern oder ein GUI 
verwenden?

Autor: Wolfgang (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Max A. schrieb:
> Kann man den Raspberry Pi extern steuern?

Mit Suchbegriff "headless+raspberry+pi" findest du genug Treffer

MobaXterm wäre z.B. auch eine Möglichkeit zur Fernbedienung des 
Raspberry Pi

Autor: Max A. (checkeranonym)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Danke für die vielen Antworten. Ich habe ein Programm in Python auf dem 
Pi zum Steuern von Motoren geschrieben. Das Programm will ich auf meinen 
Rechner überspielen und von dort dann starten und den Pi vom Rechner aus 
über ein Ethernetkabel oder USB-Kabel steuern.

: Bearbeitet durch User
Autor: woas i nit (Gast)
Datum:

Bewertung
-1 lesenswert
nicht lesenswert
Max A. schrieb:
> Ich habe ein Programm in Python auf dem Pi zum Steuern von Motoren
> geschrieben. Das Programm will ich auf meinen Rechner überspielen und
> von dort dann starten und den Pi vom Rechner aus über ein Ethernetkabel
> oder USB-Kabel steuern.

irgendwie hinkt die theorie. wenn du das programm auf deinen rechner 
überspielst, dann wird es dort (obwohl python) nicht laufen, weil die 
hardware zugriffe nicht funktionieren.

in dem fall würde ich dir vorschlagen, das bestehende programm zu einer 
server/client struktur zu ändern. server bleibt am raspi und läuft auch 
dort, client am pc/handy/whatever

Autor: Bernd (Gast)
Datum:

Bewertung
1 lesenswert
nicht lesenswert
woas i nit schrieb:
> Max A. schrieb:
>> Ich habe ein Programm in Python auf dem Pi zum Steuern von Motoren
>> geschrieben. Das Programm will ich auf meinen Rechner überspielen und
>> von dort dann starten und den Pi vom Rechner aus über ein Ethernetkabel
>> oder USB-Kabel steuern.
>
> irgendwie hinkt die theorie. wenn du das programm auf deinen rechner
> überspielst, dann wird es dort (obwohl python) nicht laufen, weil die
> hardware zugriffe nicht funktionieren.
>
> in dem fall würde ich dir vorschlagen, das bestehende programm zu einer
> server/client struktur zu ändern. server bleibt am raspi und läuft auch
> dort, client am pc/handy/whatever
Wichtige Regeln - erst lesen, dann posten!

    Groß- und Kleinschreibung verwenden

Autor: woas i nit (Gast)
Datum:

Bewertung
-1 lesenswert
nicht lesenswert
bite me

Autor: Max A. (checkeranonym)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Geht das nicht wie mit dem Arduino? Da kann man die Bibliothek serial in 
das Programm importieren und dann alles Programmieren. Ein Beispiel was 
ich meine ist im folgenden Link:

https://www.python-forum.de/viewtopic.php?t=43545

Autor: Dominik S. (dasd) Flattr this
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Max A. schrieb:
> Geht das nicht wie mit dem Arduino? Da kann man die Bibliothek serial in
> das Programm importieren und dann alles Programmieren. Ein Beispiel was
> ich meine ist im folgenden Link:

Doch... natürlich geht das so in der Art auch.

Wie oben gesagt muss das Programm das die eigentliche Ansteuerung macht 
natürlich weiter auf dem RPi laufen. In deinem Bsp. entspricht das also 
dem Arduino-Code.

Dein PC-Programm schickt dann nur Kommandos an den RPi. Der wertet die 
Kommandos aus und führt dann die entsprechenden Aktionen aus.

Du musst zuerst mal definieren über welche Schnittstelle du mit dem PI 
sprechen willst.
 - Auch seriell?
 - Oder Ethernet? Wenn Ethernet, welches Protokoll?

Wenn du das weißt musst du dir noch überlegen wie die eignetliche 
Kommunikation zwischen den beiden Aussehen soll. Also welche Kommandos 
gibt es und wie sind diese aufgebaut?

Autor: Max A. (checkeranonym)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Danke für die zahlreichen Antworten. Ich habe mich entschlossen über 
Putty und da über Ethernet und SSH zu arbeiten. Ich habe aber nun 
folgendes Problem:

Ich habe auf meinem RaspberryPi ssh aktiviert und hab auch bei Putty die 
richtige IP-Adresse eingegeben. Aber ich kann nicht auf den Pi 
zugreifen. Folgende Fehlermeldung kommt:

Network error: Network error: Connection timed out

Den Port 22 habe ich in meiner Firewall freigegeben. Was könnte ich noch 
tun?

Autor: Frank M. (ukw) (Moderator) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Max A. schrieb:
> Ich habe auf meinem RaspberryPi ssh aktiviert und hab auch bei Putty die
> richtige IP-Adresse eingegeben.

Welche? Ist diese innerhalb Deines Netzwerkbereichs?

> Aber ich kann nicht auf den Pi
> zugreifen. Folgende Fehlermeldung kommt:
>
> Network error: Network error: Connection timed out

Keine Verbindung. Könnte zum Beispiel daran liegen, dass Du an Deinem PC 
WLAN nutzt und in Deiner FritzBox die Kommunikation der Clients 
untereinander nicht freigegeben hast.

: Bearbeitet durch Moderator
Autor: Max A. (checkeranonym)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ich habe eine Ethernetkabel zwischen meinem Notebook und dem 
eingestöpselt. Die IP-Adresse vom Pi ist eine statische IP-Adresse, die 
jemand anderst vor mir festgelegt hat. Wie kann ich schauen was der 
Adressenbereich ist? Ich habe meinen Pi nie mit dem Router verbunden.

Ich das WLan am Notebook abgeschaltet. Da kam die Meldung No route to 
host. Wie kann ich die Kommunikation innerhalb der Clients ermöglichen.

Autor: Max A. (checkeranonym)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ich habs jetzt hingekriegt. Hab meinem PI einfach eine neue IP-Adresse 
gegeben. Die aktuelle war nicht in dem Bereich von meinen verfügbaren 
Adressen. Gibt es eine Möglichkeit in der Konsole in Putty einen 
bestimmtes Pythonprogramm mit einer GUI zu starten? Danke im Voraus

Autor: Dominik S. (dasd) Flattr this
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Max A. schrieb:
> Gibt es eine Möglichkeit in der Konsole in Putty einen
> bestimmtes Pythonprogramm mit einer GUI zu starten?

Nein. PuTTY ist ein Terminal, sonst nix.

Dreh den Spieß um und mach aus deinem Python-Programm heraus SSH.
https://www.google.com/search?q=python%20ssh&rlz=1C1GCEU_deDE819DE819&oq=python%20ssh&aqs=chrome..69i57j0l5.4695j0j7&sourceid=chrome&ie=UTF-8&safe=active

Autor: Stefanus F. (Firma: Äppel) (stefanus)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Max A. schrieb:
> Gibt es eine Möglichkeit in der Konsole in Putty einen
> bestimmtes Pythonprogramm mit einer GUI zu starten?

Von früheren Linux Versionen kenne ich die Methode, mit dem vnc Server 
einen virtuellen Bildschirm anzulegen, auf den das grafische Programm 
seine Ausgaben machen kann. Diesen wiederum kann man mit dem vnc Client 
auf einem andern Rechner anzeigen.

Ob das auf dem Raspberry Pi funktioniert, weiß ich allerdings nicht.

Nach dieser Doku sollte es gehen: 
https://www.elektronik-kompendium.de/sites/raspberry-pi/2011021.htm

Autor: Timo N. (tnn85)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Man kann auch das X Window System verwenden um die grafische 
Benutzeroberfläche von Raspbian oder Programmen mit GUI, die auf dem Pi 
ausgeführt werden, auf dem PC anzuzeigen.
Mit MobiXterm kann man einen XServer starten und sich verbinden.

Ich verwende MobiXterm eigentlich recht gerne, da es gleichzeitig noch 
FTP hat und man dann schnell per Drag/Drop Dateien an den Pi senden 
kann. So lässt sich  der Pi wirklich komplett ohne 
Tastatur/Maus/Bildschirm bedienen.

Der TO sollte aber lieber darüber nachdenken sein Programm verteilt 
laufen zu lassen und (Server/Client) und sich über eines der bekannten 
Netzwerkprotokolle (TCP/IP oder UDP) in seinem selbst (von mir aus in 
Python) geschrieben Client vom PC mit dem selbst geschriebenen Server 
(auch in Python) auf dem Pi zu verbinden.

Diese SSH-Geschichte mag zum Testen ok sein, aber ich glaub nicht, dass 
es das ist was er sich am Ende vorstellt.

Autor: Max A. (checkeranonym)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Danke für die Antworten. Ich will es mit Xming versuchen. Leider habe 
ich eine neues Problem. Vorgestern hat mein Ethernetanschluss noch das 
Kabel erkannt. Heute ist es leider nicht mehr. Der Pi erkennt noch, dass 
da ein Verbindung ist. Woran könnte es liegen? Was kann ich machen?

Autor: Max A. (checkeranonym)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

ich bins nochmal. Ich hätte noch zwei Fragen.

1. Wenn ich den Pi mit einem anderen PC verbinde, der in einem anderen 
IP-Bereich liegt, kann ich da die IP ohne zusätzlich einen Monitor 
anzuschließen die aktuelle IP-Adresse abändern?

2. Mit meinem Programm steuere ich verschiedene Motoren an. Dies 
funktioniert auch ganz gut. Diese bewegen sich nacheinander. Geht es 
auch, dass diese gleichzeitig bewegen oder geht es nur, dass diese sich 
nacheinander bewegen? Ich weiß, dass ein Programm nacheinander 
abgearbeitet wird und deswegen kann ich mir es nur schwer vorstellen.

Danke im Voraus.

Autor: Stefanus F. (Firma: Äppel) (stefanus)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Max A. schrieb:
> 1. Wenn ich den Pi mit einem anderen PC verbinde, der in einem anderen
> IP-Bereich liegt, kann ich da die IP ohne zusätzlich einen Monitor
> anzuschließen die aktuelle IP-Adresse abändern?

Ja, kannst du. Aber wenn du dich dabei aus versehen vertippst, kommst du 
ohne Bildschirm und Tastatur nicht mehr heran.

Initial wirst du wohl zuerst DHCP nutzen und dann eventuell die IP 
Adresse manuell umstellen.

> Geht es auch, dass diese gleichzeitig bewegen

Natürlich geht das. Du musst es nur entsprechend programmieren.

> Ich weiß, dass ein Programm nacheinander abgearbeitet wird

Nicht unbedingt, es gibt auch Multithreading. Aber: Das Programm muss 
nicht laufen, damit ein Motor läuft. Der dreht sich auch ohne Programm 
weiter, wenn er genug Spannung bekommt.

Um was für einen Motor geht es denn, und wie ist er mit dem Raspberry Pi 
verbunden?

: Bearbeitet durch User
Autor: Rainer V. (a_zip)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Stefanus F. schrieb:
> Ob das auf dem Raspberry Pi funktioniert, weiß ich allerdings nicht.

Ja, funzt! Und ist eine bequeme Art mit dem Pi zu arbeiten. Läuft bei 
mir sowohl über Kabel als auch per WLan. Und deine Frage zu den Motoren 
kann man wohl nur so beantworten: wenn du einem Motor "sagst", dass er 
laufen soll, dann läuft er so lange, bis du etwas anderes "sagst". Gilt 
natürlich auch für mehrere Motoren :-)
Viel Spass und Gruß Rainer

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.