我试图用gpio销子用4个电机和覆盆子制造一个很小的遥控车,但是只有当我将所有电机都设置为旋转时,当我只设置一个电机将其炸毁时,它才能工作
我的构建:https://i.imgur.com/4mza4fQ.png
当我按我的key.up来激活所有它们时,我试图使用两个h桥仅将A侧与A侧同时使用,将A侧与另一侧仅使用A侧。但是,当我向右或向左按下键时,电机转动了几秒钟,然后停止,但H桥上的LED仍保持正常照明,但我认为是因为12v。
import RPi.GPIO as GPIO
import time
import json
from flask import Flask
from flask import request
import sys
app = Flask(__name__)
GPIO.setwarnings(False)
GPIO.setmode(GPIO.BOARD)
MotorgauchePlus = 16
MotorgaucheMoin = 18
MotordroitePlus = 22
MotordroiteMoin = 24
GPIO.setup(MotorgauchePlus,GPIO.OUT)
GPIO.setup(MotorgaucheMoin,GPIO.OUT)
GPIO.setup(MotordroiteMoin,GPIO.OUT)
GPIO.setup(MotordroitePlus,GPIO.OUT)
def Avant():
print ("Going forwards")
GPIO.output(MotorgauchePlus,GPIO.HIGH)//IT WORK
GPIO.output(MotorgaucheMoin,GPIO.LOW)
GPIO.output(MotordroitePlus,GPIO.HIGH)
GPIO.output(MotordroiteMoin,GPIO.LOW)
def Arriere():
print ("Going backwards")
GPIO.output(MotorgauchePlus,GPIO.LOW)//IT WORK
GPIO.output(MotorgaucheMoin,GPIO.HIGH)
GPIO.output(MotordroitePlus,GPIO.LOW)
GPIO.output(MotordroiteMoin,GPIO.HIGH)
def Gauche():
print ("Left")
GPIO.output(MotorgauchePlus,GPIO.LOW)//ai caramba
GPIO.output(MotorgaucheMoin,GPIO.HIGH)
GPIO.output(MotordroitePlus,GPIO.LOW)
GPIO.output(MotordroiteMoin,GPIO.LOW)
def Droite():
print ("Right")
GPIO.output(MotorgauchePlus,GPIO.LOW)//same
GPIO.output(MotorgaucheMoin,GPIO.LOW)
GPIO.output(MotordroitePlus,GPIO.HIGH)
GPIO.output(MotordroiteMoin,GPIO.LOW)
def Stop():
GPIO.output(MotorgauchePlus,GPIO.LOW)//That work
GPIO.output(MotorgaucheMoin,GPIO.LOW)
GPIO.output(MotordroitePlus,GPIO.LOW)
GPIO.output(MotordroiteMoin,GPIO.LOW)
@app.route('/', methods=['POST'])
def AvanOuArriere():
Alors = request.form['Alors']
if Alors == "Quite":
GPIO.output(MotorgauchePlus,GPIO.LOW)
GPIO.output(MotorgaucheMoin,GPIO.LOW)
GPIO.output(MotordroitePlus,GPIO.LOW)
GPIO.output(MotordroiteMoin,GPIO.LOW)
GPIO.cleanup()
sys.exit()
return("oklm")
elif Alors == "Avant":
Avant()
elif Alors == "Gauche":
Gauche()
elif Alors == "Droite":
Droite()
elif Alors == "Arriere":
Arriere()
elif Alors == "Stop":
Stop()
else:
pass
return("oklm")
try:
if __name__ == "__main__":
app.run(host='0.0.0.0', port=5000)
except Exception as e:
print(e)
GPIO.output(MotorgauchePlus,GPIO.LOW)
GPIO.output(MotorgaucheMoin,GPIO.LOW)
GPIO.output(MotordroitePlus,GPIO.LOW)
GPIO.output(MotordroiteMoin,GPIO.LOW)
GPIO.cleanup()
我完全迷失了方向,因为要启动电动机,我只需要将一个引脚设置为高电平,将另一个引脚设置为低电平,这就是我为激活所有引脚所做的事情,它可以正常工作! 也许是因为我将MotordroitePlus设置为LOW,而MotordroiteMoin也设置为LOW,但它在Stop功能中也起作用,并且它也像它那样工作,因此我需要您的帮助,因为我缺少了一些东西。