-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathTelerobotics.py
55 lines (42 loc) · 1.34 KB
/
Telerobotics.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
import simulation as sim
import sys
import rospy
import rospkg
import os
def tele_function():
sim.initialize_simulation()
def forward(duration=3):
return sim.go_forward(10, duration)
def left_turn(duration=3):
return sim.spin_left(20, duration)
def right_turn(duration=3):
return sim.spin_right(20, duration)
def backward(duration=3):
return sim.go_backward(20, duration)
my_dict = dict(w="forward_motion", a="left_turn", d="right_turn", s="backward_motion")
while True:
while True:
motion_key = input("Enter a motion key: ")
try:
motion_key = motion_key.lower()
if motion_key not in my_dict:
raise ValueError()
except:
print("wrong input: key must be either 'w', 'a' ,'s', or 'd' ")
if motion_key in my_dict:
break
if motion_key == "w":
forward()
sim.stop_moving_for()
elif motion_key == "a":
left_turn()
sim.stop_moving_for()
elif motion_key == "d":
right_turn()
sim.stop_moving_for()
elif motion_key == "s":
backward()
sim.stop_moving_for()
if __name__ == "__main__":
if not rospy.is_shutdown():
tele_function()