|
1 | | -AD-PQMON-SL kit no-OS Example Project |
| 1 | +AD-PQMON-SL Kit no-OS Example Project |
2 | 2 | ===================================== |
3 | 3 |
|
4 | | -## Overview |
| 4 | +Overview |
| 5 | +-------- |
5 | 6 |
|
6 | | -The [AD-PQMON-SL](https://www.analog.com/en/resources/evaluation-hardware-and-software/evaluation-boards-kits/ad-pqmon-sl.html) provides a complete software and hardware platform for prototyping and evaluating high performance class S polyphase energy quality monitors. The design incorporates the ADE9430 high performance, polyphase energy monitoring IC that has an advanced metrology feature set (total and fundamental active power, volt amperes reactive (VAR), volt amperes (VA), watthour, VAR hour, VA hour, total and fundamental IRMS and VRMS, power factor) and the MAX32650 ultralow power ARM cortex-M4 with FPU-based microcontroller with 3 MB flash and 1 MB SRAM. The ADE9430 enables accurate energy monitoring over a wide dynamic range through its superior analog performance and digital signal processing (DSP) core. The ADE9430 simplifies the implementation and certification of energy and power quality monitoring systems by providing tight integration of acquisition and calculation engines. This solution can be used on a 3-phase system or up to three single-phase systems. |
| 7 | +The :adi:`AD-PQMON-SL` provides a complete software and hardware platform for |
| 8 | +prototyping and evaluating high performance class S polyphase energy quality |
| 9 | +monitors. The design incorporates the ADE9430 high performance, polyphase |
| 10 | +energy monitoring IC that has an advanced metrology feature set (total and |
| 11 | +fundamental active power, volt amperes reactive (VAR), volt amperes (VA), |
| 12 | +watthour, VAR hour, VA hour, total and fundamental IRMS and VRMS, power |
| 13 | +factor) and the MAX32650 ultralow power ARM cortex-M4 with FPU-based |
| 14 | +microcontroller with 3 MB flash and 1 MB SRAM. The ADE9430 enables accurate |
| 15 | +energy monitoring over a wide dynamic range through its superior analog |
| 16 | +performance and digital signal processing (DSP) core. The ADE9430 simplifies |
| 17 | +the implementation and certification of energy and power quality monitoring |
| 18 | +systems by providing tight integration of acquisition and calculation engines. |
| 19 | +This solution can be used on a 3-phase system or up to three single-phase |
| 20 | +systems. |
7 | 21 |
|
| 22 | +Preliminary requirements |
| 23 | +------------------------- |
8 | 24 |
|
9 | | -## Preliminary requirements |
| 25 | +The licensed software library that works in conjunction with the ADE9430 IC |
| 26 | +can be obtained from `here <https://form.analog.com/form_pages/softwaremodules/SRF.aspx>`__. |
10 | 27 |
|
11 | | -The licensed software library that works in conjunction with the ADE9430 IC can be obtained from [here](https://form.analog.com/form_pages/softwaremodules/SRF.aspx). |
| 28 | +After obtaining the libraries, the following files need to be added to the |
| 29 | +project: |
12 | 30 |
|
13 | | -After obtaining the libraries, the following files need to be added to the project: |
| 31 | + pqlib_dir |
| 32 | + | libadi_pqlib_cm4_gcc.a |
| 33 | + └───include |
| 34 | + | ade9430.h |
| 35 | + | adi_pqlib_debug.h |
| 36 | + | adi_pqlib_error.h |
| 37 | + | adi_pqlib_memory.h |
| 38 | + | adi_pqlib_profile.h |
| 39 | + | adi_pqlib_version.h |
| 40 | + | adi_pqlib.h |
| 41 | + └───config |
| 42 | + └───adi_pqlib_cfg.h |
14 | 43 |
|
15 | | -```console |
16 | | -pqlib_dir |
17 | | -| libadi_pqlib_cm4_gcc.a |
18 | | -└───include |
19 | | - | ade9430.h |
20 | | - | adi_pqlib_debug.h |
21 | | - | adi_pqlib_error.h |
22 | | - | adi_pqlib_memory.h |
23 | | - | adi_pqlib_profile.h |
24 | | - | adi_pqlib_version.h |
25 | | - | adi_pqlib.h |
26 | | - └───config |
27 | | - └───adi_pqlib_cfg.h |
28 | | -``` |
| 44 | +It can be integrated into the project by defining the ``PQLIB_PATH`` to point |
| 45 | +to the ``pqlib_dir`` path. |
29 | 46 |
|
30 | | -It can be integrated into the project by defining the `PQLIB_PATH` to point to the `pqlib_dir` path. |
| 47 | +Choose interface |
| 48 | +---------------- |
31 | 49 |
|
| 50 | +The firmware application can communicate with clients via several interfaces. |
| 51 | +In order to use the preferred connection type, set ``INTERFACE`` to the |
| 52 | +desired value: |
32 | 53 |
|
33 | | -## Choose interface |
| 54 | +* ``INTERFACE=usb`` (Default value) |
| 55 | +* ``INTERFACE=serial`` (Used for 485 communication. Half-duplex communication |
| 56 | + must be handled by user) |
| 57 | +* ``INTERFACE=ethernet_t1l`` (Used for communication over T1L) |
| 58 | +* ``INTERFACE=ethernet`` (Used for standard Ethernet communication via W5500 |
| 59 | + controller) |
34 | 60 |
|
35 | | -The firmware application can communicate with clients via several interfaces. In order to use the preferred connection type, set `INTERFACE` to the desired value: |
| 61 | +.. note:: |
36 | 62 |
|
37 | | -* ```INTERFACE=usb``` (Default value) |
38 | | -* ```INTERFACE=serial``` (Used for 485 communication. Half-duplex communication must be handled by user) |
39 | | -* ```INTERFACE=ethernet_t1l``` (Used for communication over T1L) |
40 | | -* ```INTERFACE=ethernet``` (Used for standard Ethernet communication via W5500 controller) |
| 63 | + In case one builds firmware multiple times with different interfaces, make |
| 64 | + sure to delete the ``build`` directory before the new compilation. |
41 | 65 |
|
42 | | -NOTE: In case one builds firmware multiple times with different interfaces, make sure to delete the `build` directory before the new compilation. |
| 66 | +.. note:: |
43 | 67 |
|
44 | | -NOTE 2: For T1L connection the deffault ip for the device is `192.168.97.40`. For network configuration on client side, use the following steps: [network configuration steps](https://wiki.analog.com/resources/no-os/misc_guides/static_ip_setting?rev=1715173602). |
| 68 | + For T1L connection the default ip for the device is ``192.168.97.40``. For |
| 69 | + network configuration on client side, use the following steps: `network |
| 70 | + configuration steps |
| 71 | + <https://wiki.analog.com/resources/no-os/misc_guides/static_ip_setting?rev=1715173602>`__. |
45 | 72 |
|
46 | | -NOTE 3: For standard Ethernet connection, the default IP for the device is `192.168.1.110`. Make sure your network environment is configured appropriately to communicate with this IP address. |
| 73 | +.. note:: |
47 | 74 |
|
48 | | -## Build and run |
| 75 | + For standard Ethernet connection, the default IP for the device is |
| 76 | + ``192.168.1.110``. Make sure your network environment is configured |
| 77 | + appropriately to communicate with this IP address. |
49 | 78 |
|
50 | | -The project is based on a [MAX32650](https://www.analog.com/en/products/max32650.html) microcontroller. It can be built and run by running the following script: |
| 79 | +Build and run |
| 80 | +------------- |
51 | 81 |
|
52 | | -```bash |
53 | | -# remove build directory |
54 | | -make reset |
55 | | -# select platform |
56 | | -export PLATFORM=maxim |
57 | | -# select controller type |
58 | | -export TARGET=max32650 |
59 | | -# select interface |
60 | | -export INTERFACE=usb |
61 | | -# build and flash the code |
62 | | -make PQLIB_PATH=<path_to_library> run |
63 | | -``` |
| 82 | +The project is based on a :adi:`MAX32650` microcontroller. It can |
| 83 | +be built and run by running the following script: |
64 | 84 |
|
65 | | -The `iio_info` of the device should look like the following: |
| 85 | + # remove build directory |
| 86 | + make reset |
| 87 | + # select platform |
| 88 | + export PLATFORM=maxim |
| 89 | + # select controller type |
| 90 | + export TARGET=max32650 |
| 91 | + # select interface |
| 92 | + export INTERFACE=usb |
| 93 | + # build and flash the code |
| 94 | + make PQLIB_PATH=<path_to_library> run |
66 | 95 |
|
67 | | -```console |
68 | | -IIO context has 3 attributes: |
| 96 | +The ``iio_info`` of the device should look like the following: |
| 97 | + |
| 98 | +.. code-block:: console |
| 99 | +
|
| 100 | + IIO context has 3 attributes: |
69 | 101 | uri: serial:/dev/ttyACM0,115200,8n1n |
70 | 102 | serial,port: /dev/ttyACM0 |
71 | 103 | serial,description: MAX32650 CDC-ACM |
72 | | -IIO context has 1 devices: |
| 104 | +
|
| 105 | +IIO context has 1 device: |
| 106 | + |
| 107 | +.. code-block:: console |
| 108 | +
|
73 | 109 | iio:device0: pqm (buffer capable) |
74 | 110 | 11 channels found: |
75 | 111 | current0: ia (input, index: 1, format: be:U16/16>>0) |
@@ -229,4 +265,9 @@ IIO context has 1 devices: |
229 | 265 | No trigger on this device |
230 | 266 |
|
231 | 267 |
|
232 | | -``` |
| 268 | +Additional Resources |
| 269 | +--------------------- |
| 270 | + |
| 271 | +The complete User Guide for the AD-PQMON-SL solution is available at |
| 272 | +`AD-PQMON-SL GitHub Page |
| 273 | +<https://analogdevicesinc.github.io/documentation/solutions/reference-designs/ad-pqmon-sl/index.html>`__. |
0 commit comments