winIDEA SDK
fnet_power_sense.py
1# This script is licensed under BSD License, see file LICENSE.txt.
2#
3# (c) TASKING Germany GmbH, 2023
4
5"""
6This example shows basic FNet Power Sense controller initialization and usage (using AIN).
7"""
8
9import isystem.connect as ic
10
11
12# connect to last winIDEA
13
14winidea_id = ''
15
16
17connMgr = ic.ConnectionMgr()
18connMgr.connect(ic.CConnectionConfig().instanceId(winidea_id))
19
20sessionCtrl = ic.CSessionCtrl(connMgr)
21
22# initialize FNet Controllers
23fnetCtrl = ic.CFNetController(connMgr)
24
25powerSenseCtrl = fnetCtrl.createPowerSenseController('ADIO.AIN1')
26
27powerSenseCtrl.cfg().setAveraging(ic.AInAverage_AVG_16)
28powerSenseCtrl.cfg().setShuntValue(ic.PowerSenseShunt_SHUNT_1_OHM)
29powerSenseCtrl.cfg().enablePowerSense(True)
30
31# apply configuration with load symbols
32sessionCtrl.begin_reset()
33
34values = ic.PowerSenseParameters()
35powerSenseCtrl.ctrl().getVoltageCurrentPower(values)
36print(f"Power values: {values.voltage} V, {values.current} A, {values.power} W")
37
38power = powerSenseCtrl.ctrl().getPower()
39print(f"Power: {power} W")
40