-
Notifications
You must be signed in to change notification settings - Fork 0
/
robot_server.py
91 lines (70 loc) · 3.8 KB
/
robot_server.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
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
import flask
import servo_mc
import time
app = flask.Flask(__name__)
app.config["DEBUG"] = True
servo_obj = servo_mc.servo()
found_coordinates = (84, 107, 84, 10, 90, 90)
#servo_obj.robot.robot_coord((90, 120, 120, 30, 90, 90))
@app.route('/', methods=['GET'])
def home():
return "<h1>Robot framework.</p>"
@app.route('/set_color/<color>', methods=['GET'])
def set_color(color):
servo_obj.set_color(color)
servo_obj.camera.get_colour_bound()
return "Successfully Done"
@app.route('/get_color', methods=['GET'])
def get_color():
return servo_obj.color
@app.route('/find_button', methods=['GET'])
def find_button():
found_coordinates = servo_obj.findAngle()
servo_obj.color_coordinates[servo_obj.color] = found_coordinates
return str(found_coordinates)
@app.route('/reset', methods=['GET'])
def reset():
servo_obj.robot.robot_coord((90, 120, 120, 30, 90, 90))
return "reset successful"
@app.route('/demo_side=<count>/<coordinates>/<color>', methods=['GET'])
def demo_side_button(count, coordinates, color):
servo_obj.set_color(color)
coordinate = coordinates.split(",")
found_coordinates=((int(coordinate[0])), (int(coordinate[1])), (int(coordinate[2])), (int(coordinate[3])), (int(coordinate[4])), (int(coordinate[5])))
alt_coordinates = (found_coordinates[0]-10, found_coordinates[1], found_coordinates[2], found_coordinates[3], found_coordinates[4], found_coordinates[5])
alt_coordinates_press = (found_coordinates[0]-10, found_coordinates[1]-7, found_coordinates[2], found_coordinates[3], found_coordinates[4], found_coordinates[5])
found_coordinates_press = (found_coordinates[0], found_coordinates[1]-7, found_coordinates[2], found_coordinates[3], found_coordinates[4], found_coordinates[5])
for i in range(0, int(count)):
servo_obj.robot.robot_coord(found_coordinates)
servo_obj.robot.robot_coord(found_coordinates_press)
servo_obj.robot.robot_coord(alt_coordinates)
servo_obj.robot.robot_coord(alt_coordinates_press)
servo_obj.robot.robot_coord(found_coordinates)
return "Done"
@app.route('/demo_down=<count>/<coordinates>/<color>', methods=['GET'])
def demo_down_button(count, coordinates, color):
servo_obj.set_color(color)
coordinate = coordinates.split(",")
found_coordinates=((int(coordinate[0])), (int(coordinate[1])), (int(coordinate[2])), (int(coordinate[3])), (int(coordinate[4])), (int(coordinate[5])))
alt_coordinates = (found_coordinates[0], found_coordinates[1], found_coordinates[2], found_coordinates[3]+ 7, found_coordinates[4], found_coordinates[5])
alt_coordinates_press = (found_coordinates[0], found_coordinates[1]-8, found_coordinates[2], found_coordinates[3]+7, found_coordinates[4], found_coordinates[5])
found_coordinates_press = (found_coordinates[0], found_coordinates[1]-7, found_coordinates[2], found_coordinates[3], found_coordinates[4], found_coordinates[5])
for i in range(0, int(count)):
servo_obj.robot.robot_coord(found_coordinates)
servo_obj.robot.robot_coord(found_coordinates_press)
servo_obj.robot.robot_coord(alt_coordinates)
servo_obj.robot.robot_coord(alt_coordinates_press)
servo_obj.robot.robot_coord(found_coordinates)
return "Done"
@app.route('/get_current_coord', methods=['GET'])
def get_current_coord():
return str(servo_obj.robot.get_current_coord())
@app.route('/get_color_coord', methods=['GET'])
def get_color_coord():
return str(servo_obj.color_coordinates)
@app.route('/set_angle=<coordinates>', methods=['GET'])
def set_angle(coordinates):
coordinate = coordinates.split(",")
servo_obj.robot.robot_coord(((int(coordinate[0])), (int(coordinate[1])), (int(coordinate[2])), (int(coordinate[3])), (int(coordinate[4])), (int(coordinate[5]))))
return "Success"
app.run(host="0.0.0.0", port=5000, use_reloader=False)