我用python创建了一个带有树莓的小型漫游者的原型,我创建了一个脚本,它允许我简单地通过按键盘上的几个键来移动它。
脚本基本上是等待一个键被按下“命令”火星车电机,代码通过终端 shell 工作,现在我想创建一个Web UI或Android应用程序,允许我命令火星车而不使用 shell 。
源代码是这样的:
#!/usr/bin/env python
#!/bin/bash
import RPi.GPIO as GPIO
from time import sleep
print("\n")
print("A-forward S-backward L-left turn R-right turn l-low m-medium h-high e-exit")
print("\n")
a=11
b=15
c=16
d=18
def init():
GPIO.setmode(GPIO.BCM)
GPIO.setup(a, GPIO.OUT)
GPIO.setup(b, GPIO.OUT)
GPIO.setup(c, GPIO.OUT)
GPIO.setup(d, GPIO.OUT)
p=GPIO.PWM(d,1000)
p.start(25)
def forward():
init()
//MORE STUFF
def reverse():
init()
//MORE STUFF
def left_turn():
init()
//MORE STUFF
def right_turn():
init()
//MORE STUFF
while(1):
x=input()
if x=='w':
print("forward")
forward()
x='z'
elif x=='s':
print("backward")
reverse()
x='z'
elif x=='a':
print("left")
left_turn()
x='z'
elif x=='d':
print("right")
right_turn()
x='z'
elif x=='e':
GPIO.cleanup()
break
else:
print("<<< wrong data >>>")
print("please enter the defined data to continue.....")
我怎样才能创建一个图形界面(基本上由4个按钮组成,代表方向),可以与python脚本交互?是否可以继续使用脚本作为移动我的漫游者的基础,或者我应该实现一个不同的解决方案?
这不仅仅是一个解决方案,我更感兴趣的是了解我是否可以使用基本脚本,以及我是否可以将它挂钩到UI。
1条答案
按热度按时间rdlzhqv91#
关于一个简单的图形界面,我会看看pygame的简单功能与按钮和显示漫游者移动。
就我个人而言,我不会推荐pygame用于大型、复杂的项目,比如游戏设计,但是你的问题似乎是可行的。
https://www.thepythoncode.com/article/make-a-button-using-pygame-in-python .
如果你想设计一个网站UI,根据我的经验,你应该选择一个框架,比如Django。
https://careerfoundry.com/en/blog/web-development/responsiveness-with-a-front-end-framework/ . https://www.w3schools.com/django/
在你设置好可以在本地托管之后,你应该能够在一个网页上实现你的脚本,在这个网页上你可能不得不使用javascript或者其他语言来实现设计功能。