|Product Performed to Expectations:||10|
|Specifications were sufficient to design with:||10|
|Demo Software was of good quality:||10|
|Product was easy to use:||10|
|Support materials were available:||10|
|The price to performance ratio was good:||8|
|TotalScore:||58 / 60|
Many thanks for the element14 and Digilent guys for choosing me to do a review for this development board. This board features a SPARTAN-7 FPGA embedded in the latest version of Digilent's ARTY boards. The Xilinx's SPARTAN-7 in an SRAM-based FPGA built on TMSC's high performance and low power (HPL) 28 nm process with a high-k metal gate (HKMG), and it offers the best performance/watt ratio being optimized for low cost, high performance and low power. More details regarding this FPGA family can be found here: 7-series FPGAs Datasheet: Overview.
Courtesy of Digilent the following 2 pictures highlights the ARTY-S7 board and its hardware description:
The main features of this development board are listed below:
More information can be found in the reference manual.
Being an roadtest+ review, I decided to make a complex project to test the capabilities of this board. In the following lines a custom application for driving and monitoring a brushed DC motor will be presented. All the controls commands and the monitoring are done with a LabVIEW-based graphical user interface (GUI).
This roadtest+ project aims to present a 2-Quadrant Drive Application for a Brushed DC Motor using the Arty-S7 FPGA Board. The DC Motor is driven using a low RDS-on NMOS H-Bridge while its power is monitored using a high speed 16-bit SAR ADC, LTC 2374-16. The ARTY-S7 board is used to control the H-Bridge circuit, hence the DC motor, by generating a 12-bit PWM signal and the necessary control signals. Apart from controlling the DC motor, the ARTY-S7 board embeds a custom SPI master controller used to readout the ADC, hence the power monitoring.
The ARTY-S7 communicates with a a LabVIEW-based GUI via a custom UART controller from which are sent all the control commands and where the measurements data are displayed.
This application allows to:
The hardware and its connections used to control and monitor the brushed DC motor are shown in the following photos.
THE BRUSHED DC MOTOR (24 V DC, L= 913 uH, R=4.86 Ω)
THE H-BRIDGE CIRCUIT (IR2110 + IRF3205) TOP SIDE
THE H-BRIDGE CIRCUIT (IR2110 + IRF3205) BOTTOM SIDE
A CLOSE-UP of the TEST BENCH (Coffee mug included)
For power monitoring the following architecture was implemented:
A DC motor can be modeled as a LR series filter as described below:
Knowing the DC motor parameters (e.g. L and R) I was able to estimate the proper PWM frequency need to control this DC using a basic formula. Please note that in order to have a good resolution control, the calculations are a little bit more complex. Hence the PWM frequency can be roughly estimated by using the following formula:
Given the results, a 1KHz PWM frequency has been chosen to be used to drive the brushed DC motor.
The FPGA firmware has been developed using XILINX's VIVADO environment and using VHDL language. The project has been designed to be modular as described below:
ARTY-S7 FIRMWARE ARCHITECTURE
ARTY-S7 RESOURCE UTILIZATION
SCOPE PRINT SCREENS DURING TESTING THE PWM CORE
Using LabVIEW, a GUI has been designed to monitor and control the brushed Dc motor. Its architecture is based on a event-based state machine, while all the data is readout and displayed at a 100 Hz rate. From the GUI the user can spin the motor in both directions and also can perform electronic brake to stop it almost instantaneously by using one of the 3 buttons (one at time). The GUI can be seen in the following image:
For testing, I decided to start with some several basic tests like spinning the motor in both ways and monitor its starting current.
The FORWARD MODE
The BACKWARD MODE
The following video shows a full control mode of the brushed DC motor:
This board, the ARTY-S7, is a low cost and very powerful tool to develop medium to complex FPGA-based applications. However, I still think that the main drawback of this board compared with the ARTY-7 is the absence of the Ethernet interface while their price are very similar. It is quite nice to write firmware for it, and all the resources concerning schematic, I/O pins are available on the vendor site, Digilent.
Hence, I highly recommend this board for students who want to start learning programming FPGAs, as well as for the advanced FPGA guys.
"Keep those motors spinning! :-)" ---Dave Wilson, Texas Instruments
PS: I am very sorry that I have not submitted the review in time, but I have had some unexpected issues with my PhD thesis, and that has high priority for me (it is also based on systems with FPGAs).