-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathsensor_library.py
101 lines (73 loc) · 2.82 KB
/
sensor_library.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
92
93
import requests
def request_handle_udp(
sensor_address:str,
client_port:int,
client_address:str = '192.168.1.50',
watchdog:str = 'off', # Whether or not to use watchdog (on/off)
watchdog_timeout:int = 60000, # Timeout in ms if using watchdog
packet_type:str = 'A',
start_angle:int = -1800000,
max_num_points_scan:int = 0,
skip_scans:int = 0,
) -> dict:
params = {
'address': client_address,
'port': client_port,
'packet_type': packet_type,
'watchdog': watchdog,
'watchdogtimeout': watchdog_timeout,
'start_angle': start_angle,
'max_num_points_scan': max_num_points_scan,
'skip_scans': skip_scans,
}
REQUEST_HANDLE_UDP = requests.get(f'http://{sensor_address}/cmd/request_handle_udp', params=params)
r = REQUEST_HANDLE_UDP.json()
return r
def set_scanoutput_config(
sensor_address:str,
handle:str,
watchdog:str = 'off', # Whether or not to use watchdog (on/off)
watchdog_timeout:int = 60000, # Timeout in ms if using watchdog
packet_type:str = 'A',
start_angle:int = -1800000,
max_num_points_scan:int = 0,
skip_scans:int = 0,
) -> dict:
params = {
'handle': handle,
'watchdog': watchdog,
'watchdogtimeout': watchdog_timeout,
'packet_type': packet_type,
'start_angle': start_angle,
'max_num_points_scan': max_num_points_scan,
'skip_scans': skip_scans,
}
REQUEST_SET_PARAMS = requests.get(f"http://{sensor_address}/cmd/set_scanoutput_config", params=params)
r = REQUEST_SET_PARAMS.json()
return r
def start_scanoutput(
sensor_address:str,
handle:str,
) -> dict:
params = {
'handle': handle,
}
REQUEST_START_SCANOUTPUT = requests.get(f"http://{sensor_address}/cmd/start_scanoutput", params=params)
r = REQUEST_START_SCANOUTPUT.json()
return r
def stop_scanoutput(
sensor_address:str,
handle:str,
) -> dict:
params = {
'handle': handle,
}
REQUEST_STOP_SCANOUTPUT = requests.get(f"http://{sensor_address}/cmd/stop_scanoutput", params=params)
r = REQUEST_STOP_SCANOUTPUT.json()
return r
def get_parameters(
sensor_address:str,
) -> dict:
REQUEST_GET_PARAMS = requests.get(f"http://{sensor_address}/cmd/get_parameter")
r = REQUEST_GET_PARAMS.json()
return r