1
2
3
4
5
6
7
8
9
10
11
12
13
14
15import isystem.connect as ic
16from isystem.connect import IConnectDebug
17import sys
18
19
20if __name__ == '__main__':
21 winidea_id = ''
22
23
24 cmgr = ic.ConnectionMgr()
25 cmgr.connect(ic.CConnectionConfig().instanceId(winidea_id))
26
27 debugCtrl = ic.CDebugFacade(cmgr)
28 debugCtrl.download()
29 debugCtrl.deleteAll()
30 debugCtrl.runUntilFunction('main')
31 debugCtrl.waitUntilStopped()
32 debugCtrl.run()
33
34
35 daqCtrl = ic.CDAQController(cmgr)
36
37
38 daqInfo = daqCtrl.info()
39
40 if daqInfo.getMaxItems() == 0:
41 print('No DAQ items exist!')
42 sys.exit()
43
44 print('MaxItems = ', daqInfo.getMaxItems())
45
46 daqVariables = ic.DAQConfigVector()
47
48
49 daqVariables.append(ic.CDAQConfigItem(4, 0, 0x400001a8, ic.CDAQController.daqSample1s))
50
51
52 daqVariables.append(ic.CDAQConfigItem('main_loop_counter'))
53
54 daqCtrl.configure(daqVariables)
55
56
57 daqTimeStart = daqCtrl.status().getTime()
58
59
60 daqCtrl.enableGlobal(True)
61
62 counter = 0
63 while True:
64 daqStatus = daqCtrl.status()
65
66 if daqStatus.getNumSamplesAvailable() > 0:
67 print('Max DAQ acquisition time = ', str(daqStatus.getLastLoopTime()))
68 if daqStatus.getOverflow():
69 print('SAMPLING OVERFLOW!')
70
71
72 daqSamples = ic.DAQSampleVector()
73 daqCtrl.read(daqSamples)
74
75 print('Number of samples = ', str(daqSamples.size()))
76 for daqSample in daqSamples:
77
78 print(' index =', str(daqSample.getIndex()),
79 ' data =', hex(daqCtrl.getDataValue(daqSample).getLong()),
80 ' time =', str((daqSample.getTime() - daqTimeStart)))
81
82 counter += 1
83
84 if counter > 100:
85 break