0

ребят требуется ваша помощь. Управление двухколесным роботом происходит через соединение по wi fi и написан уже код для управления им с помощью клавиатуры. Как добавить сюда управление джойстиком, а именно его аналогами? Версия python 3.7, pygame 1.9.6, система windows 10. Данный код ниже:

import socket
import pygame

pygame.init()
pygame.display.set_mode((640, 480))

rc_socket = socket.socket()
try:
    rc_socket.connect(('192.168.1.101', 1234)) # connect to robot
except socket.error:
    print("could not connect to socket")

while True:
    events = pygame.event.get()
    for event in events:
        if event.type == pygame.KEYDOWN:
            if event.key == pygame.K_LEFT:
                u1 = 1.0
                u2 = -1.0
                print("turn left: ({},{})".format(u1, u2))
            elif event.key == pygame.K_RIGHT:
                u1 = -1.0
                u2 = 1.0
                print("turn right: ({},{})".format(u1, u2))
            elif event.key == pygame.K_UP:
                u1 = -1.0
                u2 = -1.0
                print("forward: ({},{})".format(u1, u2))
            elif event.key == pygame.K_DOWN:
                u1 = 1.0
                u2 = 1.0
                print("forward: ({},{})".format(u1, u2))
            rc_socket.send('({},{})\n'.format(u1, u2).encode())
        elif event.type == pygame.KEYUP:
            u1 = 0
            u2 = 0
            print("key released, resetting: ({},{})".format(u1, u2))
            rc_socket.send('({},{})\n'.format(u1, u2).encode())

Добавить комментарий