資料介紹
Table of Contents
ADXRS290 Gyroscope PMOD Demo
The EVAL-ADXRS290-PMDZ is a simple Pmod form-factor evaluation board for the ADXRS290, a high-performance MEMS pitch-and-roll (dual-axis in-plane) angular rate sensor (gyroscope) designed for use in stabilization applications.
The solution senses and digitizes the X-axis and Y-axis (also called roll and pitch) angular rates, producing a positive reading for clockwise rotation about the x-axis and y-axis.
The ADXRS290 provides an output full-scale range of ±100°/s with a sensitivity of 200 LSB/°/s. Its resonating disk sensor structure enables angular rate measurement about the axes normal to the sides of the package around an in-plane axis. Angular rate data is formatted as a 16-bit two's complement and is accessible through an SPI digital interface. The ADXRS290 exhibits a low noise floor of 0.004°/s/√Hz and features programmable high-pass and lowpass filters.
The ADXRS290 communicates via 4-wire SPI and operates as a peripheral (slave) device, with a maximum clock frequency of 12MHz.
The Digital communication on the EVAL-ADXRS290-PMDZ is accomplished using a standard expanded SPI PMOD port.
Connector P1 | |
---|---|
Description | Pin(s) |
SS | 1 |
MOSI | 2 |
MISO | 3 |
SCLK | 4 |
GND | 5, 11 |
IOVDD | 6, 12 |
SYNC | 7 |
Features
- Pitch and roll rate gyroscope
- Ultralow noise: 0.004°/s/√Hz
- High vibration rejection over a wide frequency range
- Power saving standby mode
- 80 μA current consumption in standby mode
- Fast startup time from standby mode: <100 ms
- Low delay of <0.5 ms for a 30 Hz input at the widest bandwidth setting
- Serial peripheral interface (SPI) digital output
- Programmable high-pass and low-pass filters
- 2000 g powered acceleration survivability
- 2.7 V to 5.0 V operation
- ?25°C to +85°C operation
- PMOD form factor
Device Driver Support
Two example device driver solutions are provided for controling the EVAL-ADXRS290-PMDZ PMOD using the no-OS device driver on the EVAL-ADICUP3029 platform and Linux device driver on the Raspberry Pi platform.
The Linux driver uses the Industrial Input/Output (IIO) framework, greatly simplifying the development of applicaiton code via the cross-platform Libiio library, which is written in C and includes bindings for Python, MATLAB, C#, and other languages. Application code can run directly on the platform board, communicating with the device over the local bakend, or from a remote host over the network or USB backends.
The ADICUP3029 example application uses the ADXRS290 no-OS driver, and emulates the Linux IIO framework through the tinyiiod daemon library. The application communicates with the host computer via the serial backend, over a USB-UART physical connection. This facilitates rapid application development on a host computer, independent from embedded code development.
Similarly, utility software (iio_info, IIO Oscilloscope, PyADI-IIO, etc.) can be used for both the EVAL-ADXRS290-PMDZ on Raspberry PI and on ADICUP3029
General Setup Using ADICUP3029
The EVAL-ADXRS290-PMDZ can be used with ADICUP3029.
Demo Requirements
The following is a list of items needed in order to replicate this demo. Hardware:
- EVAL-ADICUP3029
- EVAL-ADXRS290-PMDZ
- Mirco USB to USB cable
- PC or Laptop with a USB port
Software:
- Either: pre-built HEX file:
To build the project from source, follow the instructions in the no-os wiki.
Setting up the Hardware
- Connect EVAL-ADXRS290-PMDZ board at connector P8 of the EVAL-ADICUP3029.
- Connect a micro-USB cable to the P10 connector of the EVAL-ADICUP3029 and connect it to a computer. The final setup should look similar to the picture below.
Flashing the Firmware/Program
- Make sure the following switches are as shown from the table below:
- Connect the ADICuP3029 to the PC host via micro-USB cable as shown below.
- Simply extract the zip file then drag and drop the provided .hex file to the DAPLINK drive, and your ADICUP3029 board will be programmed. The DS2 (red) LED will blink rapidly.
- The DS2 will stop blinking and will stay ON once the programming is done.
- Disconnect then reconnect the EVAL-ADICUP3029 to the host computer.
General Setup Using Raspberry Pi
The EVAL-ADXRS290-PMDZ can be used with a Raspberry Pi.
Demo Requirements
The following is a list of items needed in order to replicate this demo.
- Hardware
- EVAL-ADXRS290-PMDZ Circuit Evaluation Board
- Raspberry PI Zero, Zero W, 3B+, or 4
- 16GB (or larger) Class 10 (or faster) micro-SD card
- 5Vdc, 2.5A power supply with micro USB connector (USB-C power supply for Raspberry Pi 4)
- Electrical connection hardware (choose one):
- 12x 15cm socket-to-socket jumpers such as these from Schmartboard
- User interface setup (choose one):
- HDMI monitor, keyboard, mouse plugged directly into Raspberry Pi
- Host Windows/Linux/Mac computer on same network as Raspberry Pi
- Software
Loading Image on SD Card
In order to control the EVAL-ADXRS290-PMDZ from the Raspberry Pi, you will need to install ADI Kuiper Linux on an SD card. Complete instructions, including where to download the SD card image, how to write it to the SD card, and how to configure the system are provided at Analog Devices Kuiper Linux.
Write the image and follow the system configuration procedure.
Configuring the SD Card
Follow the Hardware Configuration procedure under Preparing the Image: Raspberry Pi in the Analog Devices Kuiper Linux page, substituting the following lines in config.txt:
dtoverlay=rpi-adxrs290
Setting up the Hardware
To set up the circuit for evaluation, consider the following steps:
- Connect EVAL-ADXRS290-PMDZ board at male header connector of the Raspberry Pi.
- Burn the SD card with the proper ADI Kuiper Linux image. Insert the burned SD card on the designated slot on the RPi.
- Connect the system to a monitor using an HDMI cable through the mini HDMI connector on the RPi.
- Connect a USB keyboard and mouse to the RPi through the USB ports.
- Power on the RPi board by plugging in a 5V power supply with a micro-USB connector. The final setup should look similar to the picture below.
Software (both ADICUP3029 and Raspberry Pi)
Connection
To be able to connect your device, the software must be able to create a context. The context creation in the software depends on the backend used to connect to the device as well as the platform where the EVAL-ADXRS290-PMDZ is attached. Two platforms are currently supported for the ADXRS290: Raspberry Pi using the ADI Kuiper Linux and the ADICUP3029 running the ADXRS290 IIO demo project. The user needs to supply a URI which will be used in the context creation.
The iio_info command is a part of the libIIO package that reports all IIO attributes. Make sure that you have the libIIO package installed on your machine. Upon installation, simply enter the command on the terminal line to access it.
For RPI Direct Local Access:
iio_info
For Windows machine connected to Raspberry Pi:
iio_info -u ip:
Example:
- If your Raspberry Pi has the IP address 192.168.1.7, you have to use iio_info -u ip::192.168.1.7 as your URI
For Windows machine connected to ADICUP3029:
iio_info -u serial:
Examples:
- In a Windows machine, you can check the port of your ADICUP3029 via Device Manager in the Ports (COM & LPT) section. If your device is in COM4, you have to use iio_info -u serial:COM4 as your URI.
- In a Unix-based machine, you will see it under the /dev/ directory in this format “ttyUSBn”, where n is a number depending on how many serial USB devices attached. If you see that your device is ttyUSB0, you have to use serial:/dev/ttyUSB0 as your URI.
IIO Commands
There are different commands that can be used to manage the device being used. The iio_attr command reads and writes IIO attributes.
analog@analog:~$ iio_attr [OPTION]...
Example:
- To look at the context attributes, enter this code on the terminal:
analog@analog:~$ iio_attr -a -C
The iio_reg command reads or writes SPI or I2C registers in an IIO device. This is generally not needed for end applications, but can be useful in debugging drivers. Note that you need to specify a context using the -u qualifier when you are not directly accessing the device via RPI or when you are using the ADICUP3029 platform.
analog@analog:~$ iio_reg -u[ ]
Example:
- To to read the device ID (register = 0x02) of an ADXRS90 interfaced via RPI from a Windows machine, enter the following code on the terminal:
iio_reg -u ip:adxrs290 0x02
IIO Oscilloscope
- Once done with the installation or an update of the latest IIO-Oscilloscope, open the application. The user needs to supply a URI which will be used in the context creation of the IIO Oscilloscope and the instructions can be seen from the previous section.
- Press refresh to display available IIO Devices, once adxrs290 appeared, press connect.
Debug Panel
DMM Panel
Waveform Panel
The Waveform panel, also known as the Capture window, displays the real-time waveform of ADXRS290's response.
PyADI-IIO
PyADI-IIO is a python abstraction module for ADI hardware with IIO drivers to make them easier to use. This module provides device-specific APIs built on top of the current libIIO python bindings. These interfaces try to match the driver naming as much as possible without the need to understand the complexities of libIIO and IIO.
Install PyADI-IIO using one of the methods in PyADI-IIO.
The ADXRS290 example requires a number of packages to be installed before it can be used. To ensure that all required packages are present, we will be installing them in a virtual environment so that other python projects will not be affected by this added configuration. Make sure that virtualenv has been installed before proceeding.
Creating a Virtual Environment
- Open a command prompt and navigate to the pyadi-iio directory.
- Create a virtual environment by entering the following command:
D:/pyadi-iio>python -m venv adxrs290
Note that the last argument adxrs290 is just the name of the virtual environment to be created. It can be replaced by any other name or identifier that you prefer. In case the code above does not work, try:
D:/pyadi-iio>virtualenv adxrs290
- Input the following command to activate the virtual environment:
D:/pyadi-iio>adxrs290/Scripts/activate
Installing the Packages
Upon activation of the virtual environment, enter the following commands:
(adxrs290) D:/pyadi-iio>pip install -r requirements.txt (adxrs290) D:/pyadi-iio>pip install -r examples/requirements_adiplot.txt (adxrs290) D:/pyadi-iio>python setup.py install
Running the Example
- Connect the ADXRS290 to the device platform you've chosen.
- If interfaced via RPI, connect your laptop to the same network as the ADXRS290 and take note of its IP address. For ADICUP3029, take note of the serial port used.
- On the source code, go to the examples folder and open adxrs290.py. Provide the necessary context in order to detect the device. Make sure that only one context source is active and the other one is commented out depending on whether you are using the RPI board or the ADICUP3029.
- Run the example by typing this line on the command prompt:
D:/pyadi-iio/examples>python adxrs290.py
Below is a copy of the python script:
adxrs290.py
Schematic, PCB Layout, Bill of Materials
Additional Information and Useful Links
Reference Demos & Software
- ISL290xxiroz-evalz, ISL29xxxeval1z 用戶指南
- 基于EVAL-ADXRS290Z-M加速計的
- 基于ADXRS290_Typical Application加速計的
- 用于EVAL-MST-ISEB的ADXRS290評估軟件
- UG-783:在ADXRS290上使用EVAL-ADXRS290Z-M慣性傳感器評估系統
- UG-780:ADXRS290超低噪聲雙軸MEMS陀螺評估板
- UG-150:ADXRS622評估板用戶指南
- ADT7420 pmod硬件用戶指南
- ADT7420 pmod軟件用戶指南
- AD7124-8 pmod軟件用戶指南
- AD7124-8 pmod硬件用戶指南
- EVAL-ADXRS290Z-S原理圖
- ADXRS290 Evaluation Software for EVAL-MST-ISEB
- EVAL-ADXRS290Z -S Layout
- EVAL-ADXRS290Z-S Schematic
- 如何使用Basys3板創(chuàng)建一個簡單的示波器 7899次閱讀
- digilent適配器上的DIP模塊介紹 1665次閱讀
- digilent轉Pmod標準適配擴展板簡介 1414次閱讀
- digilentPmod專用線套件(6)介紹 1171次閱讀
- digilentPmod MicroSD: microSD 卡槽介紹 2794次閱讀
- digilent chipKIT Pmod Shield - Uno R3標準轉Pmo擴展板介紹 2133次閱讀
- 沒有直接可用的Pmod驅動怎么辦?教你一招 2267次閱讀
- 74ls90和74ls290的區(qū)別是什么? 2.5w次閱讀
- 74ls290構成60進制計數器電路 2.7w次閱讀
- 74ls290計數器電路大全(六種進制計數器電路) 11.9w次閱讀
- 74ls290典型應用電路(內含四款電路圖) 2.3w次閱讀
- 74ls290引腳圖及功能表 主要參數及邏輯電路圖 15.3w次閱讀
- 74ls290構成31進制計數器電路圖文詳解 1.9w次閱讀
- 無驅動問題的Zynq搭配Pmod開發(fā)解決方案 1830次閱讀
- ADI ADXRS624:完整的陀螺儀傳感方案 1446次閱讀
下載排行
本周
- 1HFSS電磁仿真設計應用詳解PDF電子教程免費下載
- 24.30 MB | 128次下載 | 1 積分
- 2雷達的基本分類方法
- 1.25 MB | 4次下載 | 4 積分
- 3電感技術講解
- 827.73 KB | 2次下載 | 免費
- 4從 MSP430? MCU 到 MSPM0 MCU 的遷移指南
- 1.17MB | 2次下載 | 免費
- 5有源低通濾波器設計應用說明
- 1.12MB | 2次下載 | 免費
- 6RA-Eco-RA2E1-48PIN-V1.0開發(fā)板資料
- 35.59 MB | 2次下載 | 免費
- 7面向熱插拔應用的 I2C 解決方案
- 685.57KB | 1次下載 | 免費
- 8愛普生有源晶體振蕩器SG3225EEN應用于儲能NPC、新能源
- 317.46 KB | 1次下載 | 免費
本月
- 12024年工控與通信行業(yè)上游發(fā)展趨勢和熱點解讀
- 2.61 MB | 763次下載 | 免費
- 2HFSS電磁仿真設計應用詳解PDF電子教程免費下載
- 24.30 MB | 128次下載 | 1 積分
- 3繼電保護原理
- 2.80 MB | 36次下載 | 免費
- 4正激、反激、推挽、全橋、半橋區(qū)別和特點
- 0.91 MB | 32次下載 | 1 積分
- 5labview實現DBC在界面加載配置
- 0.57 MB | 21次下載 | 5 積分
- 6在設計中使用MOSFET瞬態(tài)熱阻抗曲線
- 1.57MB | 15次下載 | 免費
- 7GBT 4706.1-2024家用和類似用途電器的安全第1部分:通用要求
- 7.43 MB | 14次下載 | 免費
- 8AD18學習筆記
- 14.47 MB | 8次下載 | 2 積分
總榜
- 1matlab軟件下載入口
- 未知 | 935113次下載 | 10 積分
- 2開源硬件-PMP21529.1-4 開關降壓/升壓雙向直流/直流轉換器 PCB layout 設計
- 1.48MB | 420061次下載 | 10 積分
- 3Altium DXP2002下載入口
- 未知 | 233084次下載 | 10 積分
- 4電路仿真軟件multisim 10.0免費下載
- 340992 | 191360次下載 | 10 積分
- 5十天學會AVR單片機與C語言視頻教程 下載
- 158M | 183329次下載 | 10 積分
- 6labview8.5下載
- 未知 | 81578次下載 | 10 積分
- 7Keil工具MDK-Arm免費下載
- 0.02 MB | 73804次下載 | 10 積分
- 8LabVIEW 8.6下載
- 未知 | 65985次下載 | 10 積分
評論
查看更多