Prechádzať zdrojové kódy

uprava py skiptu pre viac modulov slave

Juraj Ďuďák 1 rok pred
rodič
commit
cb4b1dd889
1 zmenil súbory, kde vykonal 65 pridanie a 46 odobranie
  1. 65 46
      test/app.py

+ 65 - 46
test/app.py

@@ -7,7 +7,8 @@ import numpy as np
 
 def show_data(data):
     fig, ax = plt.subplots()
-    ax.plot(data_acc)
+    for d in data:
+        ax.plot(data[d])
     ax.grid()
     plt.show()
 
@@ -16,9 +17,17 @@ if __name__ == "__main__":
 
     nbus = NbusSystem(False)
     s1_adr = 5
+    s2_adr = 6
+    adrs = [s1_adr, s2_adr]
     slave1 = nbus.create_slave(ImuSlave, s1_adr)
+    slave2 = nbus.create_slave(ImuSlave, s2_adr)
 
     if nbus.get_slave(s1_adr).cmd_echo([97, 98, 99, 100]) == 0:
+        print("Slave 1 not found")
+        sys.exit()
+
+    if nbus.get_slave(s2_adr).cmd_echo([97, 98, 99, 100]) == 0:
+        print("Slave 2 not found")
         sys.exit()
 
     # app.cmd_reset()
@@ -34,67 +43,77 @@ if __name__ == "__main__":
 
     # !!!! slave1.cmd_set_param(1, PARAM_SAMPLERATE, 10)
     # !!!! slave1.cmd_set_param(2, PARAM_SAMPLERATE, 10)
-    for s in range(1):
-        sr = nbus.get_slave(s1_adr).cmd_get_param(s + 1, PARAM_SAMPLERATE)
-        r = nbus.get_slave(s1_adr).cmd_get_param(s + 1, PARAM_RANGE)
-        lpf = nbus.get_slave(s1_adr).cmd_get_param(s + 1, PARAM_FILTER)
-        ee = nbus.get_slave(s1_adr).cmd_get_param(s + 1, PARAM_GAIN)
-        print(sr, r, lpf, ee)
+    for adr in adrs:
+        for s in range(1):
+            sr = nbus.get_slave(adr).cmd_get_param(s + 1, PARAM_SAMPLERATE)
+            r = nbus.get_slave(adr).cmd_get_param(s + 1, PARAM_RANGE)
+            lpf = nbus.get_slave(adr).cmd_get_param(s + 1, PARAM_FILTER)
+            ee = nbus.get_slave(adr).cmd_get_param(s + 1, PARAM_GAIN)
+            print(sr, r, lpf, ee)
 
-    sr = nbus.get_slave(s1_adr).cmd_get_param(1, PARAM_SAMPLERATE)
+        sr = nbus.get_slave(adr).cmd_get_param(1, PARAM_SAMPLERATE)
 
-    nbus.get_slave(s1_adr).cmd_set_param(1, PARAM_RANGE, 1)
-    print(nbus.get_slave(s1_adr).slave_params)
+        nbus.get_slave(adr).cmd_set_param(1, PARAM_RANGE, 1)
+        print(nbus.get_slave(adr).slave_params)
 
     nbus.cmd_start()
     time.sleep(0.1)
-
-    # nbus.cmd_stop()
-    # sys.exit()
-    pocet = nbus.get_slave(s1_adr).cmd_sensor_cnt()
-    # sys.exit()
-    print("pocet senzorov=", pocet)
-
-    data_acc = []
-    for i in range(164):
-        acc = nbus.get_slave(s1_adr).cmd_sensor_get_data_IMU(1)
-        # gyr = nbus.get_slave(s1_adr).cmd_sensor_get_data_IMU(2)
-        data_acc.append(acc)
-        # print(gyr)
-        print(".", end=" ")
+    #nbus.cmd_stop()
+    #sys.exit()
+
+    pocet = {}
+    for adr in adrs:
+        pocet[adr] = nbus.get_slave(adr).cmd_sensor_cnt()
+        # sys.exit()
+        print("pocet senzorov=", pocet)
+
+    #sys.exit()
+
+    data_acc = {}
+    for adr in adrs:
+        data_acc[adr] = []
+    print(data_acc)
+    for i in range(64):
+        for adr in adrs:
+            acc = nbus.get_slave(adr).cmd_sensor_get_data_IMU(1)
+            # gyr = nbus.get_slave(adr).cmd_sensor_get_data_IMU(2)
+            data_acc[adr].append(acc)
+            # print(gyr)
+            print(".", end=" ")
     nbus.cmd_stop()
     show_data(data_acc)
 
     # sys.exit()
 
-    for i in range(pocet):
-        d = nbus.get_slave(s1_adr).cmd_sensor_get_data(i + 1)
-        print("Data", i + 1, ":\t", d)
+    for adr in adrs:
+        for i in range(pocet[adr]):
+            d = nbus.get_slave(adr).cmd_sensor_get_data(i + 1)
+            print("Data", i + 1, ":\t", d)
 
-    print("Sensor type")
-    for i in range(pocet):
-        print(nbus.get_slave(s1_adr).cmd_sensor_type(i + 1))
-    print("Sensors type")
-    print(nbus.get_slave(s1_adr).cmd_sensors_type(pocet))
+        print("Sensor type")
+        for i in range(pocet[adr]):
+            print(nbus.get_slave(adr).cmd_sensor_type(i + 1))
+        print("Sensors type")
+        print(nbus.get_slave(adr).cmd_sensors_type(pocet[adr]))
 
-    par = nbus.get_slave(s1_adr).cmd_get_params(1)
-    print(par)
+        par = nbus.get_slave(adr).cmd_get_params(1)
+        print(par)
 
-    r = nbus.get_slave(s1_adr).cmd_module_info(0xE1)
-    print('NAME:', r)
-    r = nbus.get_slave(s1_adr).cmd_module_info(0xE2)
-    print('TYPE', r)
+        r = nbus.get_slave(adr).cmd_module_info(0xE1)
+        print('NAME:', r)
+        r = nbus.get_slave(adr).cmd_module_info(0xE2)
+        print('TYPE', r)
 
-    r = nbus.get_slave(s1_adr).cmd_module_info(0xE4)
-    print('FW', r)
+        r = nbus.get_slave(adr).cmd_module_info(0xE4)
+        print('FW', r)
 
-    r = nbus.get_slave(s1_adr).cmd_module_info(0xE5)
-    print('HW', r)
+        r = nbus.get_slave(adr).cmd_module_info(0xE5)
+        print('HW', r)
 
-    r = nbus.get_slave(s1_adr).cmd_module_info(0xE3)
-    print("UUID", r)
+        r = nbus.get_slave(adr).cmd_module_info(0xE3)
+        print("UUID", r)
 
-    r = nbus.get_slave(s1_adr).cmd_module_info(0xE6)
-    print("MEM ID", r)
+        r = nbus.get_slave(adr).cmd_module_info(0xE6)
+        print("MEM ID", r)
 
     nbus.finish()