Run the Demonstration Remotely via Ethernet (AD7768‐1) - ArrowElectronics/data-storm-daq GitHub Wiki
In addition to the DataStorm DAQ development kit running in standalone hardware configuration, it can also run while connected to computer remotely via an Ethernet cable.
Configuration for remote IIO Oscilloscope access via ethernet
The AD7768-1® Evaluation Platform in this configuration is comprised of the following components:
- Analog Devices EV-AD7768-1FMCZ (also Known As EVAL-AD7768-1) data converter board
- DataStorm DAQ (Trenz Intel Cyclone V SoC TEI0022 Development Board) (includes 12VDC power supply)
- Host Windows PC with IIO Oscilloscope and Digilent WaveForms App installed
- Ethernet Cable
- Micro USB cable
- Digilent Analog Discovery 2 Signal Generator with dual outputs
- Digilent Discovery BNC adapter board
- Two (2) BNC Male to SMB Female Cables
Configure BOOTSEL DIP Switches
Select the SD card as the boot source for the processor.
Configure FMC_VADJ DIP Switches
The FMC_VADJ power rails provide power to the EV-AD7768-1FMCZ via the FMC interface. This is an adjustable voltage. It must be set to 3.3V. Modify the VID_SW DIP switch settings to select 3.3V.
Assemble the Hardware
Follow the steps in the order shown below.
- Insert the Micro SD card into the SD card slot
- Insert the EV-AD7768-1FMCZ FMC connector into the FMC mating connector on the DataStorm DAQ board
- Attach PC via ethernet cable
- Attach the Micro USB cable
- Connect the Signal Generator to the EV-AD7768-1FMCZ SMA connectors (channel 0)
- Ensure that Jumper VINSEL is in position B on the EV-AD7768-1FMCZ board, for it to be powered via the FMC connector.
- Connect the power supply to the DataStorm DAQ
- Plug the AC-DC adapter into an AC outlet
Signal Source
A signal generator with 2 outputs is used to generate the differential signals driving the AD7768-1 inputs. The AD7768-1 expects the input signals to swing between AVSS and AVDD1 (+5V on the EV-AD7768-1FMCZ board). This means that the user is expected to provide a true differential input centered at VCOM (AVDD1-AVSS)/2 (as in yellow tag #5 below)
Install (if not already done) the Digilent WaveForms App.
Open the WaveForms App and Click on Wavegen in the left margin which opens a waveform window
Click on Channels and select 2
Select Type as Sine
Select Frequency or Period
Set Amplitude to 2V
Set Offset (Common Mode Voltage) to 2.5V
For Channel 2, Match the Channel 1 settings
Select the Phase to 180 degrees for Inverse signal
Click on No synchronization and select Synchronized
Click Run All
Run the Demonstration Remotely
Software for remote IIO Oscilloscope access via ethernet
There are a few software components that need to be installed in order to run this demo successfully:
- IIO Oscilloscope™
- A SW terminal like Tera Term VT or Putty
IIO Oscilloscope™
IIO Oscilloscope™ is a tool developed by Analog Devices. It can be downloaded from this web site: https://github.com/analogdevicesinc/iio-oscilloscope/releases/download/v0.13-master/adi-osc-setup.exe (Download and install v0.13)
Define the host PC IP address
A wired ethernet point-to-point connection between the host PC and the embedded target is required. Use this link for instructions on how to assign a static IP address to the host Ethernet adapter. Set the following values
-
IP address : 192.168.0.1
-
Subnet mask : 255.255.255.0
-
No entries required for the other fields
Connect to the target terminal
- A wired Micro USB serial port connection between the host PC and the embedded target is required
- Launch a terminal program (like Tera Term VT or Putty) and connect using serial port
- Select 115200 baud
- Select the appropriate target COM port
Define the target IP address
Type the following at the terminal prompt to set the target IP address
- $ ifconfig eth0 192.168.0.2 up
Launch IIO Oscilloscope
Double click the IIO Oscilloscope application icon on the host Windows PC.
Note: IIO Oscilloscope creates a .osc_profile.ini file in the Users/UserName/Appdata/Local directory. The next time IIO Oscilloscope is opened, the existence of this file delays connection to the target. It is recommended to delete the .osc_profile.ini (if it exists) prior to launching IIO Oscilloscope.
Connect to the target
- Select the Discoverable/Scan option and click the Refresh button..
- A successful connection results in discovery of the IIO devices. Press OK to continue.
Enable voltage0 ADC channel
Select a Plot Channel to be displayed in IIO Oscilloscope. Click on the check box in the Plot Channel window adjacent to voltage0. Right click on ad7768-1 in the Plot Channels window. Select voltage0 .
Capture Time Domain Signals
Press the Capture / Stop button to begin the capture process.
Capture Frequency Domain Signals with Frequency Markers enabled
Change the capture mode to Frequency Domain. Select an FFT Size and Average. Press the Capture / Stop button to begin the capture process.
Right click in the IIO Oscilloscope plot area. Select Single Tone markers. Press the Capture / Stop button to begin the capture process with markers.
Note the information in the Marker window. This capture shows a signal source of 10 kHz with harmonic components.
Software for the Python demonstration
There are a few software components that need to be installed in order to run this demonstration successfully:
Install Python 3.7
-
Download Python 3.7 and run the installer
-
A typical installation location will be C:\Users\username\AppData\Local\Programs\Python
-
Edit the Windows System PATH environment variable to add the path to the Python directory
-
Edit the Windows System PATH environment variable to add the path to the Python\Scripts directory
Install PIP
- Use the following instructions to install PIP
Install LibIIO - API library for IIO
- Download and run the LibIIO installer from the GitHub releases page here
Install PyADI-IIO and matplotlib
-
Open a Windows CMD shell.
C:\Users\myuser> pip install pyadi-iio C:\Users\myuser> python -m pip install -U matplotlib
Download Python source code
-
Download the python source code from the github repository
-
Run the Python source code. Open a Windows CMD shell
C:\Users\myuser\pyadi-iio\examples> python ad7768evb-1.py
This capture shows a signal source of 10 kHz with harmonic components.
Software for the C demonstration
NOTE: The C examples provided are only tested on a Linux environment as mentioned here. The following example is demonstrated using the Arrow Ubuntu-64bit VM provided in the build prerequisites here.
There are a few software components that need to be installed in order to run this demonstration successfully:
Install LibIIO - API library for IIO
- Follow this tutorial to directly install LibIIO dependencies on the host machine.
Run the C programs
-
Download the C source code from the github repository
-
Compile the C source code (Use -liio flag to dynamically link the LibIIO libraries)
$ gcc ad7768-1-iiostream.c -o ad7768-1-iiostream -liio
-
Run the C executable (use your relevant target IP address here)
$ ./ad7768-1-iiostream ip:192.168.0.2
Software for the MATLAB demonstration
NOTE: This demonstration requires a licensed version of MATLAB and Simulink along with the Communication Toolbox installed.
There are a few software components that need to be installed in order to run this demonstration successfully:
Install MATLAB
- Follow these instructions to install MATLAB and Simulink
- Use Add-On Manager to install Communication Toolbox in MATLAB
Install LibIIO - API library for IIO
- Download and run the LibIIO installer from the GitHub releases page here
Run MATLAB
-
Download the MATLAB source from the github repository
-
Open the Simulink model DAQ7768_1.slx file
- Double click on the system object block of ad7768-1. Set your relevant target IP Address in the "IP Address".
- Set your preferred stop time and run the simulation to see waveforms
This capture shows a signal source of 10 kHz with harmonic components.
Shutting down the demo
-
Power down the target. Type the following at the terminal prompt
$ poweroff
-
Wait until the linux terminal shows
$ reboot : System Halted
-
Close out IIO Oscilloscope and all associated windows