我如何从 windows 电脑上的主 python 程序打开 运行 raspberry pi 上的 python 程序?
How would I open and run a python program on a raspberry pi from a main python program on a windows pc?
我正在 运行 在 Windows PC 上连接一个主 python 程序,该程序连接到不能 运行 在 Raspberry pi 上的设备。在主程序的某个时刻,我想call/execute一个Rpi程序到运行。我需要 Rpi 的 GPIO 引脚来打开 relay/s。有没有办法无线(或串行)打开 运行 raspberry pi 上的程序,主程序已经 运行 在 Windows PC 上打开?
也许我没有想到什么,有没有更简单、同样便宜的解决方案来从 Windows PC 程序打开继电器?
任何正确方向的观点都将不胜感激。
取决于安全要求。假设台式电脑和 raspberry pi 在同一个网络上,您可以在 pi 上创建一个 HTTP REST 端点,您可以为此使用 flask 或 fastapi。然后从桌面上的应用 运行 调用它。如需有关 Flask 的帮助,请参阅 https://flask.palletsprojects.com/en/2.0.x/ 如果您熟悉 python Flask 非常容易上手。
最简单的方法是使用 Remote GPIO,在 link 中都有记录。然而,它的要点非常简单,如下所示。
关于Raspberry Pi、运行这些步骤:
sudo apt install pigpio
sudo raspi-config
并启用 “远程 GPIO”
sudo systemctl enable pigpiod
在 Windows PC 上,运行 这些步骤:
pip install gpiozero pigpio
- 假设您的 RaspberryPi 的 IP 地址为 192.168.1.3,运行
PIGPIO_ADDR=192.168.1.3 python3 YourScript.py
您在 Windows PC 上的脚本将如下所示:
from gpiozero import LED
from time import sleep
red = LED(17)
while True:
red.on()
sleep(1)
red.off()
sleep(1)
我正在 运行 在 Windows PC 上连接一个主 python 程序,该程序连接到不能 运行 在 Raspberry pi 上的设备。在主程序的某个时刻,我想call/execute一个Rpi程序到运行。我需要 Rpi 的 GPIO 引脚来打开 relay/s。有没有办法无线(或串行)打开 运行 raspberry pi 上的程序,主程序已经 运行 在 Windows PC 上打开?
也许我没有想到什么,有没有更简单、同样便宜的解决方案来从 Windows PC 程序打开继电器?
任何正确方向的观点都将不胜感激。
取决于安全要求。假设台式电脑和 raspberry pi 在同一个网络上,您可以在 pi 上创建一个 HTTP REST 端点,您可以为此使用 flask 或 fastapi。然后从桌面上的应用 运行 调用它。如需有关 Flask 的帮助,请参阅 https://flask.palletsprojects.com/en/2.0.x/ 如果您熟悉 python Flask 非常容易上手。
最简单的方法是使用 Remote GPIO,在 link 中都有记录。然而,它的要点非常简单,如下所示。
关于Raspberry Pi、运行这些步骤:
sudo apt install pigpio
sudo raspi-config
并启用 “远程 GPIO”sudo systemctl enable pigpiod
在 Windows PC 上,运行 这些步骤:
pip install gpiozero pigpio
- 假设您的 RaspberryPi 的 IP 地址为 192.168.1.3,运行
PIGPIO_ADDR=192.168.1.3 python3 YourScript.py
您在 Windows PC 上的脚本将如下所示:
from gpiozero import LED
from time import sleep
red = LED(17)
while True:
red.on()
sleep(1)
red.off()
sleep(1)