Introduction
Hello, and welcome to my first blog post for The Eye on Intelligence experimentation challenge! I am deeply honored to have been selected as a participant by element14, and I extend my heartfelt thanks to AMD for their invaluable support as the sponsor of this project, including the provision of the Arty Z7 development board.
In this challenge, I will embark on an exciting journey to develop a Monocular Visual SLAM (Simultaneous Localization and Mapping) System tailored for indoor navigation. My initial phase will involve an in-depth exploration of the Arty Z7’s robust features and capabilities, establishing a solid groundwork for the technical advancements to come. As the project unfolds, I will progressively share detailed insights into the technical methodologies employed, along with reflections on early accomplishments and the inevitable challenges encountered along the way.
Getting Started with the Sponsor's Kit
To begin my Monocular VSLAM project, I’ll first explore each component in the kit provided by AMD, starting with the Arty Z7 Development Board. Built around the AMD Zynq 7000 SoC, the Arty Z7 serves as the core of the system, combining the processing power of a CPU and the parallel capabilities of an FPGA. This versatility is crucial for handling the computational demands of real-time SLAM operations, such as feature extraction and mapping.
The kit also includes the MULTICOMP PRO Power Adapter, for ensuring a stable power supply, and the Pmod ALS Ambient Light Sensor, which will help the system adapt to varying light conditions for improved accuracy in indoor environments. Finally, the ZIQIAN HD 1080p Webcam will act as the primary visual input, capturing high-definition imagery for real-time processing.
In this post, I’ll delve into each component’s features and discuss how they contribute to the overall functionality of the VSLAM system. Together, these components provide a solid foundation to move forward with system integration and initial testing.
Arty Z7 Development Board
The Arty Z7 is a robust development platform built around the Zynq-7000 All Programmable System-on-Chip (AP SoC) from Xilinx, combining the power of a dual-core ARM Cortex-A9 processor with the flexibility of Xilinx 7-series FPGA logic. This architecture allows developers to create applications that leverage both software and hardware capabilities, making it suitable for a wide range of projects, from embedded systems to complex digital designs.
The Arty Z7 features a dual-core ARM Cortex-A9 processor operating at 650 MHz, integrated with the FPGA logic. It is equipped with 512 MB DDR3 memory on a 16-bit bus running at 525 MHz (1050 MT/s), providing ample memory for various applications. Additionally, it includes 16 MB Quad-SPI Flash for storage and a microSD slot for expandable storage options, allowing for flexible data management and application deployment.
Connectivity is a strong point of the Arty Z7, featuring USB 2.0 with a TUSB1210 transceiver that supports speeds up to 480 Mbps. It also includes Gigabit Ethernet PHY for network connectivity, HDMI ports for video input and output, and a PWM driven mono audio output through a 3.5 mm jack. The board supports two Pmod connectors for additional hardware integration and an Arduino/chipKIT Shield Connector that allows for up to 49 total FPGA I/O, enhancing its versatility for various projects.
The Arty Z7 provides a rich set of I/O options, including 2 slide switches, 4 push buttons, and 4 LEDs (including 2 RGB LEDs) for user interaction and status indication. The board supports both single-ended and differential analog inputs, with 6 single-ended and 4 differential inputs available to the XADC. This extensive I/O capability makes it suitable for applications requiring real-time data acquisition and control.
The board can be powered via USB or an external source, with a voltage range of 7V to 15V DC. It is designed to provide 500 mA on the 5V VBUS line, ensuring sufficient power for connected peripherals. The power management unit on the board generates necessary voltage levels (3.3V, 1.8V, 1.5V, 1.0V), making it adaptable to various power requirements in different applications.
The Arty Z7 is fully supported by Xilinx’s Vivado Design Suite, which facilitates both FPGA logic design and embedded ARM software development. It also supports Petalinux for running Linux on the Zynq processor and SDSoC for designing FPGA-accelerated applications in a C/C++ environment. The board can be programmed via JTAG, Quad-SPI flash, or microSD card, providing flexibility in development and deployment.
PYNQ Support
The Arty Z7 board is compatible with the PYNQ framework, which allows users to leverage Python for programming and interacting with the FPGA. This support enhances the usability of the board, making it accessible for those who prefer high-level programming languages while still benefiting from the underlying hardware capabilities.
Multicomp Pro MP001996 Power Supply
The Multicomp Pro MP001996 is a high-quality 24W external plug-in adapter that offers a reliable 12V DC output at 2A. This compact power supply boasts an impressive array of features that make it stand out in its category. Its universal input range of 90V to 264V AC and wide frequency tolerance of 47Hz to 63Hz ensure global compatibility, making it an excellent choice for powering up the Arty Z7. The adapter's efficiency is a significant highlight, with a minimum efficiency of 86.8% and compliance with stringent energy standards like CEC, DOE Level VI, and ErP Tier2.
Safety is a paramount concern addressed by this adapter, featuring multiple protection mechanisms including over-voltage protection set at 16V, overload protection at 3A, and short-circuit protection with auto-recovery. The device has passed rigorous safety tests, including a Hi-Pot rating of 3000V AC or 4242V DC, and boasts an impressive list of certifications such as UL, CUL, FCC, GS, CE, and RCM. These certifications not only ensure the adapter's safety but also its compliance with international standards, further emphasizing its global usability.
The output specifications of the MP001996 are tailored for precision and stability. It provides a consistent 12V DC output through a 2.1mm × 5.5mm × 12mm centre positive connector with a right-angle design for easy cable management. The line and load regulation of ±5% ensures stable output under varying conditions, while the low ripple voltage of 150mV peak-to-peak guarantees clean power delivery, crucial for sensitive electronics.
Physically, the adapter impresses with its compact dimensions of 80.6mm × 50mm × 31mm and lightweight design at just 130g. This makes it highly portable and easy to integrate without taking up much space. The switched-mode power supply technology employed in this adapter contributes to its efficiency and compact size.
The MP001996 also demonstrates consideration for environmental factors, with an operating temperature range of 0°C to +40°C and storage temperature range of -10°C to +70°C. It can function in humidity levels from 20% to 80%, showcasing its adaptability to different environmental conditions.
Pmod ALS: Ambient Light Sensor
The Digilent PmodALS is an advanced ambient light sensing module designed for seamless integration with FPGA and microcontroller development boards. This compact device incorporates the Vishay Semiconductor TEMT6000X01 ambient light sensor, which exhibits peak sensitivity at a wavelength of 570 nm and operates within a spectral range of 440 to 800 nm. The sensor's half sensitivity angle is ± 60°, enabling it to closely mimic human eye responsiveness.
The PmodALS also features the Texas Instruments ADC081S021, an 8-bit analog-to-digital converter capable of sampling rates up to 200 kSPS. This converter effectively transforms the analog output from the light sensor into a digital signal that can be processed by various digital systems. The module utilizes a 6-pin Pmod connector that supports the SPI protocol, facilitating straightforward communication with host devices.
Key Specifications
-
Light Sensor: Vishay Semiconductor TEMT6000X01
- Peak sensitivity wavelength: 570 nm
- Spectral range: 440 to 800 nm
- Angle of half sensitivity: ± 60°
- Package: Miniature transparent 1206 surface mount
-
Analog-to-Digital Converter: Texas Instruments ADC081S021
- Resolution: 8-bit
- Sampling rate: Up to 200 kSPS (kilo-samples per second)
- Input voltage range: 0 to VCC
-
Interface: 6-pin Pmod connector (SPI protocol)
- VCC, GND, CS, SDATA, SCLK, NC (Not Connected)
-
Power Supply: 3.3V (typical)
-
Follows the Digilent Pmod Interface Specification 2
-
Operating Temperature Range: -40°C to +85°C (limited by components)
ZIQIAN HD 1080p Webcam
The ZIQIAN HD 1080p Webcam is a high-performance digital imaging device designed for versatile use in video conferencing, streaming, and content creation. This webcam boasts a full HD resolution of 1920x1080 pixels, capturing crisp and clear video at 30 frames per second. It features a high-quality CMOS sensor that ensures excellent image quality even in varying light conditions. The webcam is equipped with a wide-angle lens, typically offering a 90-degree field of view, which is ideal for capturing more of the scene.
Connectivity-wise, the ZIQIAN webcam utilizes a USB 2.0 interface, ensuring broad compatibility with most computers and plug-and-play functionality without the need for additional drivers in many operating systems. The device supports the UVC (USB Video Class) protocol, making it compatible with a wide range of video conferencing and streaming software. In terms of physical design, the webcam features a compact and lightweight build, often weighing less than 100 grams. It typically comes with a flexible clip mount that can easily attach to laptops, desktop monitors, or tripods, providing versatility in positioning.
Here's the table summarizing my observations for the USB Webcam.
Max Frame Rate | 30 FPS |
Webcam Megapixels | 2.07 MP (FHD) |
Supported Resolutions |
QQVGA QCIF QVGA Video CD PAL VGA SVGA XGA HD FHD |
Aspect Ratio | 1.78 |
Bitrate (FHD Video) | 25.62 MB/s |