如何在没有VNC的情况下远程控制Raspberry Pi [关闭]

问题描述 投票:-2回答:1

因此,为了更详细,我基本上想要构建一个程序(最终将成为一个gui,但我现在不需要担心)使用python,它将能够与raspberry pi进行交互。详细说明,我需要这个程序在一台覆盆子pi可以通过wifi连接的Windows机器上运行。我说wifi是因为这种情况需要最终许多不同的覆盆子pi能够连接到同一台机器并接受命令并吐出输出。

我不想使用VNC,因为我不想使用raspberry pi的gui能够在pi上远程运行程序。这就是为什么我更详细地研究SSH,但我又遇到了一个问题。能够无线地命令pi通过CMD做事情是很好的,除了我需要一个用户友好的方法,当这个项目完成时,其他人可以做到这一点。

从本质上讲,有没有办法在我的Windows PC上编写python脚本,这些脚本可以自动与pi进行交互,就像通过SSH一样?就像我在PC上的脚本中有一个名为runProgram1()的方法一样,它会自动在raspberry pi上无线运行program1吗?我总是可以将它转换为gui,但问题是首先得到python脚本。

一个快速的系统要求大纲将是windows pc能够有一些方法可以做一些事情,比如自动打开/关闭pi,运行已经在pi上的程序,获取pi收集的数据并将其吐出到Windows机器,并添加更多的pi到系统。所有这些都需要通过无线方式完成,因为当它们处于最终位置时,它们都将无法实现。

到目前为止,我还没有在网上发现任何类似的东西,所以我希望stackoverflow的大师可以提供帮助。我知道它要求很多但只是指向正确的方向会有助于加载。提前致谢!

python ssh raspberry-pi wireless vnc
1个回答
2
投票

我建议你在覆盆子pi上构建一个非常简单的flask Web服务器,并从你的Windows gui发送请求。

from flask import Flask
app = Flask(__name__)

@app.route("/function_one")
def function_one():
    # Do something on rpi or start a subprocess
    return "Some message"

app.run(host='0.0.0.0')

这应该在你的rpi上运行。然后,从Windows gui你可以发送一个带有requests库的get到该端点,也许是onclick或你喜欢的时候。

import requests
requests.get('http://<yout_rpi_local_ip>:5000/function_one')

这将从Windows触发RPI上的功能。您甚至可以通过身份验证来保护它。

最新问题
© www.soinside.com 2019 - 2024. All rights reserved.