Есть ли способ переместить автомобиль с дистанционным управлением, построенный на Raspberry Pi 3, используя распознавание речи? - PullRequest
0 голосов
/ 27 марта 2019

Код Python ниже - это часть, которая использует голосовые команды для управления автомобилем с дистанционным управлением, созданным с помощью Raspberry Pi 3, с помощью голосовых команд. Но когда я выполняю код, машина не движется в соответствии с командой, данной пользователем. Машина вообще не двигается.

Может кто-нибудь сказать мне, что не так с моим кодом?

Я попытался запустить код в режиме sudo, но он все равно не двигает машину. Код ниже заключен в некоторое время True: цикл, который заканчивается только тогда, когда пользователь говорит остановить или выйти. Я использовал модуль speech_recognition для распознавания речи.

    r = sr.Recognizer()
    with sr.Microphone() as source:
        print("Give a voice command like move forward")
        audio = r.listen(source)
    command = r.recognize_google(audio)
    try:
        print("Google Speech recognition thinks you said " + command)
        print("Moving "+command)
    except sr.UnknownValueError:
        print("Google Speech Recognition could not understand audio")  
    if "stop" or "quit" in command:
        stop()
        exit(0)
    if "left" in command:
        print("Left")
        left()
        time.sleep(button_delay)
    if "right" in command:
        print("Right")
        right()
        time.sleep(button_delay)
    if "forward" or "straight" in command:
        print("Forward")
        forward()
        time.sleep(button_delay)
    if "reverse" or "back" in command:
        print("Reverse")
        reverse()
        time.sleep(button_delay)
    stop()

Когда мы запускаем программу, она должна принять голосовую команду и проверить, присутствует ли какой-либо из терминов, таких как forward, left, right и т. Д., Как указано в операторе if. Если он присутствует, он должен выполнить функцию внутри оператора if, которая дает команду Raspberry Pi 3 для соответствующего перемещения двигателей автомобиля.

Например, если мы скажем двигаться вперед. Он проверяет, есть ли слово вперед в команде. И поскольку он там, он выполняет функцию forward (), которая сообщает Raspberry Pi 3, чтобы двигатели, подключенные к портам gpio, перемещались, в результате чего RC Car двигался вперед. Но это не продвигается вперед.

...