This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revisionNext revision | Previous revisionNext revisionBoth sides next revision | ||
resources:eval:user-guides:circuits-from-the-lab:cn0548 [16 Aug 2021 18:09] – [PyADI-IIO] Harvey John De Chavez | resources:eval:user-guides:circuits-from-the-lab:cn0548 [24 Nov 2021 03:14] – [PyADI-IIO] Harvey John De Chavez | ||
---|---|---|---|
Line 1: | Line 1: | ||
===== EVAL-CN0548-ARDZ Shield Overview ===== | ===== EVAL-CN0548-ARDZ Shield Overview ===== | ||
- | Testing and evaluating power systems in industrial and communications settings often requires multiple voltage and current measurements. Individual supplies may be referenced to different grounds, have either positive or negative polarity, or may be galvanically isolated with respect to other power domains. Such scenarios necessitate either individual floating multimeters, | + | \\ |
- | The circuit shown in figure 1 is a complete, isolated current and voltage measurement system for industrial, telecommunications, | + | Testing and evaluating power systems in industrial and communications settings often requires multiple voltage and current measurements. Individual supplies may be referenced to different grounds, have either positive or negative polarity, or may be galvanically isolated with respect to other power domains. Such scenarios necessitate either individual floating multimeters, |
- | The current input range is +/-10 amps, and voltage input range is selectable between +/-16V and +/-80V. Both voltage and current inputs feature 16-bit resolution with adjustable output data rate and signal bandwidth, including modes that reject both 50Hz and 60Hz line noise. | + | |
- | CN0548 is compatible with 3.3V and 5V Arduino form-factor platform boards. Isolation circuitry includes both digital data and power; no additional power source is required from the circuit being measured. The digital interface is SPI (Serial Peripheral Interface) with options for remapping the CS (chip select) signal for compatibility with additional stacked Arduino shields. | + | |
- | When paired with the ADICUP3029 and open-source firmware example, application software can easily communicate with the CN0548 over the industry-standard Industrial Input/ | + | |
+ | {{: | ||
+ | \\ \\ \\ \\ | ||
+ | The EVAL-CN0548-ARDZ is a complete, isolated current and voltage measurement system for industrial, telecommunications, | ||
- | {{: | + | ==== Features ==== |
- | {{: | + | * Absolute maximum input rating of 80V, 20A |
+ | * Configurable voltage and current setting | ||
+ | * 16-bit ADC resolution with adjustable output data rate | ||
+ | * Serial peripheral interface (SPI) digital output | ||
+ | * Galvanic isolation | ||
+ | * 3.3V and 5V compatible | ||
+ | * Arduino form factor | ||
+ | * Chip Select (CS) remappable (can be stacked with other shields) | ||
- | ===== EVAL-CN0548-ARDZ | + | \\ |
- | {{: | + | ==== Simplified Block Diagram ==== |
+ | {{: | ||
+ | \\ \\ \\ | ||
+ | ------------ | ||
+ | ===== Onboard Configuration ===== | ||
+ | {{: | ||
+ | \\ \\ \\ | ||
+ | ==== Configuring the Input Voltage Polarity and Current Direction ==== | ||
+ | Before using the CN0548, the user must know the expected inputs and configure the board accordingly. The polarity as well as the direction of the inputs is an important aspect that should be noted by the user. Below is a table showing the maximum input rating depending on the configuration. \\ | ||
- | ====General Setup==== | + | {{ : |
- | Equipment needed | + | Jumper connections P12 and P13 configure the input current setting while jumpers P7 and P14 configure the input voltage setting. For a unipolar and unidirectional setting, the jumpers should be shorted to the GND pin. On the other hand, it should be connected to the 2.048V pin for a bipolar and bidirectional setting, |
- | * [[adi> | + | \\ |
- | * [[adi> | + | {{ : |
- | * Multimeter | + | |
- | * Bench top Variable power supply source ( ex. Agilent e3631) | + | |
- | * USB CABLE micro Type B to Type A | + | |
- | * 3 pieces banana to banana jack | + | |
- | {{: | + | \\ |
+ | ==== Configuring the Absolute Input Voltage Range ==== | ||
+ | The CN0548 is equipped with a precision wide voltage range gain selectable attenuating difference amplifier allowing it to have an adjustable input voltage range feature. The onboard jumpers P1, P3, P10, P8, P9, P11 should be configured accordingly to the desired maximum voltage range for a finer voltage resolution. | ||
+ | \\ \\ {{ : | ||
+ | \\ Shown here is guide on how to configure the gain jumpers. Using this guide, it can be inferred that the above sample jumper configuration corresponds to a maximum input voltage range of 16V. | ||
+ | {{ : | ||
+ | \\ | ||
+ | ==== Chip Select ==== | ||
+ | As mentioned in the Features section earlier, the CN0548 has a remappable Chip Select feature allowing the board to be stacked with other shields. By default, jumper P15 is shunted but this can be modified accordingly depending on the shields stacked and the user's application. \\ | ||
- | ====firmware for .hex file and CNO548 GUI applicatiom for basic reading task of voltage sensing and current sensing==== | + | {{ : |
+ | \\ | ||
+ | ------------ | ||
+ | =====Demo Requirements===== | ||
- | 1. Connect the USB micro cable to EVAL-ADUCM3029 to PC. Unzipped the provided file folder “ad7799_prj.zip” and navigate to firmware “EVAL_CN0548_ARDZ.hex. Drag and drop the firmware on the DAPLINK folder. | + | A sample code for the board is already provided. The following is the list of items needed in order to run the given script. |
- | + | ||
- | + | ||
- | ===Zip folder | + | |
- | + | ||
- | {{: | + | |
- | + | ||
- | * {{ : | + | |
- | + | ||
- | | + | |
- | + | ||
- | {{: | + | |
- | + | ||
- | {{: | + | |
- | + | ||
- | 3.Place all the shunt jumpers connected to GND, headers P12, P13, P14 and P7 as default position for measurements in unipolar mode. Refer to the figure below for correct jumper settings. | + | |
- | {{: | + | |
- | + | ||
- | 4. Referring to step 1, where you uploaded the .hex file firmware to ADICUP3029. Now run the executable GUI “ad7799_py_new.exe” located inside “ad7799_app” folder. It will take for about a minute before the CN0548 app will show up on your PC display. Please see figure 6 for CN0548 GUI upon start. Once the application is running, determine the comport at your device manager window and type it in the “COMPort “ number. See figure below for device manager comport number. Then input the correct comport number then press “connect” button see figure 8 for successful connection. | + | |
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | ====Demo Requirements==== | + | |
- | + | ||
- | The following is the list of items needed in order to replicate this demo. | + | |
Hardware: | Hardware: | ||
Line 62: | Line 58: | ||
Software: | Software: | ||
- | * Pre-build HEX file | + | * Pre-built HEX file |
* Python 3.7 or later versions | * Python 3.7 or later versions | ||
- | | + | * No Python installed? [[https:// |
+ | * Some recommended IDEs: | ||
+ | * [[https:// | ||
+ | * [[https:// | ||
+ | * [[https:// | ||
+ | | ||
\\ | \\ | ||
==== Setting up the Hardware ==== | ==== Setting up the Hardware ==== | ||
Line 72: | Line 73: | ||
\\ | \\ | ||
==== Flashing the Firmware/ | ==== Flashing the Firmware/ | ||
- | The easiest way for you to get started with the CN0548 board is by using the pre-built hex file for the EVAL-ADICUP3029. Follow the steps provided: | + | The easiest way to get started with the CN0548 board is by using the pre-built hex file for the EVAL-ADICUP3029. Follow the steps provided: |
- Make sure that the on-board switches of the EVAL-ADICUP3029 are configured as shown on the table below: {{ : | - Make sure that the on-board switches of the EVAL-ADICUP3029 are configured as shown on the table below: {{ : | ||
- Connect the ADICUP3029 to the PC host via micro-USB cable. | - Connect the ADICUP3029 to the PC host via micro-USB cable. | ||
- | - From your PC, open My Computer and look for the DAPLINK drive, if you see this then the drivers are complete and correct. {{ : | + | - From the PC, open //My Computer// and look for the DAPLINK drive, if you see this then the drivers are complete and correct. {{ : |
- Download the .hex file from the provided link below. Simply drag and drop the .hex file to the DAPLINK drive in order to upload the program to the ADICUP3029. The DS2 (red) LED will blink rapidly. It will stop blinking and will stay ON once the uploading is done. | - Download the .hex file from the provided link below. Simply drag and drop the .hex file to the DAPLINK drive in order to upload the program to the ADICUP3029. The DS2 (red) LED will blink rapidly. It will stop blinking and will stay ON once the uploading is done. | ||
- Disconnect then reconnect the EVAL-ADICUP3029 to the host computer. | - Disconnect then reconnect the EVAL-ADICUP3029 to the host computer. | ||
Line 86: | Line 87: | ||
<WRAP round 80% download> | <WRAP round 80% download> | ||
Prebuilt CN0548 Hex File | Prebuilt CN0548 Hex File | ||
- | * [[https:// | + | * {{ :resources: |
Complete CN0548 Source Files | Complete CN0548 Source Files | ||
- | * [[|CN0548 CCES Project]] | + | * [[repo> |
</ | </ | ||
Line 97: | Line 98: | ||
[[/ | [[/ | ||
- | Install | + | ===Installing and Setting up the PyADI-IIO |
- | + | - There are minimal variations | |
- | ===Cloning the Repository and Setting up the PyADI-IIO Enviroment=== | + | - Upon performing |
- | - Clone the pyadi-iio master repository. Create a folder where you want to clone the repository, navigate to this folder using a terminal (command prompt for Windows) and enter the following command:< | + | |
- | - Navigate into the // | + | |
- | - Lastly, finish the environment setup by invoking the setup.py file. < | + | |
< | < | ||
\\ | \\ | ||
- | ===Running the Example === | + | ====Running the Example |
The sample code provided already comes with a number of useful features for the convenience of the user. Upon startup, it will provide a simple graphic aid in order to help the user configure the board jumpers for the user's desired specification. Aside from displaying the numerical readings of the board, the sample code already has built-in data logging and real-time plot features. It also has a memory feature that allows the user to reuse the configuration of the previous session and immediately start sensing data. \\ \\ | The sample code provided already comes with a number of useful features for the convenience of the user. Upon startup, it will provide a simple graphic aid in order to help the user configure the board jumpers for the user's desired specification. Aside from displaying the numerical readings of the board, the sample code already has built-in data logging and real-time plot features. It also has a memory feature that allows the user to reuse the configuration of the previous session and immediately start sensing data. \\ \\ | ||
- | ==Starting a new session == | + | ===Starting a new session |
- | - Download the given python script | + | - Download the given python script |
- Upon running the script, some general reminders regarding the board usage will be displayed. Make sure to read these reminders before proceeding. Press the //Enter// key to proceed. {{ : | - Upon running the script, some general reminders regarding the board usage will be displayed. Make sure to read these reminders before proceeding. Press the //Enter// key to proceed. {{ : | ||
- | - As mentioned earlier, the board has a memory feature that allows the user to quickly configure the sample code using the configuration from the last session. The user can decide whether to reuse the previous setting or set up a new configuration. {{ : | + | - As mentioned earlier, the board has a memory feature that allows the user to quickly configure the sample code using the configuration from the last session. The user can decide whether to reuse the previous setting or set up a new configuration. The next items will discuss the program flow given that no session record file is found i.e. first run of the sample code. {{ : |
- | - In a separate window, the program will first create a simple jumper map that corresponds to the jumpers on the board --- this might take a few seconds depending on the user's machine. The program will then prompt the user for the voltage and current modes to be used. The user will be asked to specify | + | - The user will be asked to specify the expected |
- After the board jumper configuration guide, the program will now begin its software configuration related queries. The table below shows the aspects that the user must configure. {{ : | - After the board jumper configuration guide, the program will now begin its software configuration related queries. The table below shows the aspects that the user must configure. {{ : | ||
- Lastly, the sample code will ask the user for the port where the ADICUP3029 is connected. If the port is found, the sample code is now ready to parse readings from the board. Press //Enter// key to start board operation. \\ {{ : | - Lastly, the sample code will ask the user for the port where the ADICUP3029 is connected. If the port is found, the sample code is now ready to parse readings from the board. Press //Enter// key to start board operation. \\ {{ : | ||
- | ==Data Logging== | + | < |
- | The data logging feature allows the user to log all measurements into a csv file. If enabled, the csv file will be created in the same folder where the sample code is located and will follow the naming scheme // | + | Do note that the plot windows are created using the matplotlib package of python. Hence, you have the option to save a copy of the displayed waveform at any point in time. This comes in handy when an unexpected noteworthy event happens and the data logging feature was not enabled. |
- | When the plot is disabled, new data measurements | + | </ |
+ | ===Data Logging=== | ||
+ | The data logging feature allows the user to log all measurements into a csv file. If enabled, the csv file will be created in the same folder where the sample code is located and will follow the naming scheme // | ||
+ | ===Memory Feature=== | ||
+ | {{ : | ||
+ | \\ | ||
+ | ==== Video Guides ==== | ||
+ | \\ | ||
+ | === Unboxing === | ||
+ | Soon. | ||
+ | \\ | ||
+ | === Running the Sample Script === | ||
+ | Soon. | ||
+ | \\ | ||
+ | ------------ | ||
+ | ===== Schematic, Layout, Bill of Materials ===== | ||
+ | <WRAP round 80% download> | ||
+ | |||
+ | * {{ : | ||
+ | * {{ : | ||
+ | * {{ : | ||
+ | * {{ : | ||
+ | |||
+ | </ | ||
+ | \\ | ||
+ | ------------ | ||
+ | ===== Registration ===== | ||
+ | <WRAP round tip 80% > | ||
+ | Receive software update notifications, |