From 2987da4373f09738a6c99d877877c6abb0c118b3 Mon Sep 17 00:00:00 2001 From: bt304019 Date: Mon, 12 Aug 2019 16:42:57 +0200 Subject: [PATCH] improved keyboard controller script. added quit option and option to pass ip as command line argument --- remote_control/keyboard_controller.py | 22 +++++++++++++++++++--- 1 file changed, 19 insertions(+), 3 deletions(-) diff --git a/remote_control/keyboard_controller.py b/remote_control/keyboard_controller.py index f327042..ae9f730 100644 --- a/remote_control/keyboard_controller.py +++ b/remote_control/keyboard_controller.py @@ -1,20 +1,29 @@ import socket import pygame +from argparse import ArgumentParser + +parser = ArgumentParser() +parser.add_argument('ip', metavar='ip', type=str, help='ip address of the controlled robot') +args = parser.parse_args() + +ip = args.ip pygame.init() pygame.display.set_mode((640, 480)) rc_socket = socket.socket() try: + + rc_socket.connect((ip, 1234)) # connect to robot #rc_socket.connect(('192.168.4.1', 1234)) # connect to robot #rc_socket.connect(('192.168.1.101', 1234)) # connect to robot #rc_socket.connect(('192.168.1.102', 1234)) # connect to robot - rc_socket.connect(('192.168.1.103', 1234)) # connect to robot + #rc_socket.connect(('192.168.1.103', 1234)) # connect to robot except socket.error: print("could not connect to socket") - -while True: +running = True +while running: u1 = 0 u2 = 0 vmax = 1.0 @@ -37,7 +46,14 @@ while True: u1 = -vmax u2 = -vmax print("backward: ({},{})".format(u1, u2)) + elif event.key == pygame.K_ESCAPE: + print("quit") + running = False + u1 = 0.0 + u2 = 0.0 rc_socket.send('({},{})\n'.format(u1, u2)) elif event.type == pygame.KEYUP: print("key released, resetting: ({},{})".format(u1, u2)) rc_socket.send('({},{})\n'.format(u1, u2)) + +