WT901C Digital Attitude Sensor Specification
Model: WT901C (TTL) / WT901C(232)
Description: Nine-axis digital attitude sensor with shell.
Production Standard:
- Enterprise quality system standard: ISO9001:2016
- Sensor production standard: GB/T191SJ 20873-2016
- Criterion of detection: GB/T191SJ 20873-2016
Revision date: 2017.10.19
Version | Update content | Author | Date |
---|---|---|---|
V1.0 | Release | Kelsey | 20171019 |
1 Description
The module integrates high-precision gyroscopes, accelerometer, geomagnetic sensor, high-performance microprocessors, and an advanced dynamic Kalman filter algorithm to accurately determine the module's real-time attitude. It utilizes advanced digital filtering technology to reduce measurement noise and improve accuracy. The integrated gesture solver, with the dynamic Kalman filter algorithm, provides accurate attitude in dynamic environments, achieving precision up to 0.05 degrees with high stability, outperforming some professional inclinometers. The module features an onboard voltage stabilization circuit, operating from 3.3V to 5V, with pin-level compatibility for 3.3V and 5V embedded systems. It supports UART (TTL) or UART (232) serial ports for flexible connection. The serial port rate is adjustable from 2400kbps to 921600 kbps (default 9600). The maximum data output rate is 200Hz, with selectable input content and an output rate adjustable from 0.1 to 200Hz (default 10Hz).
2 Features
- Model: WT901CTTL, WT901C232
- Input voltage: 3.3V-5V
- Consumption current: <40mA
- Volume: 51.3mm x 36mm x 15mm
- Measuring Axes:
- Acceleration: X, Y, Z
- Angular Velocity: X, Y, Z
- Magnetic field: X, Y, Z
- Attitude angle: X, Y, Z
- Range:
- Acceleration: ±2/4/8/16g (optional)
- Angular velocity: ±250/500/1000/2000°/s (optional)
- Attitude angle range: X Z (-180°, 180°), Y (-90°, 90°)
- Precision: Angle: 0.05°
- Data output: Time, acceleration, angular velocity, angle, magnetic field, port status, quaternion.
- Data output frequency: 0.1Hz to 200Hz (default: 10Hz)
- Data Interface: UART(TTL) or UART(232)
- Baud rate: 2400, 4800, 9600 (default), 19200, 38400, 57600, 115200, 230400, 460800, 921600.
Visual Description: An image shows the WT901C module, a small rectangular circuit board with connectors and labels like VCC, RX, TX, GND, X, Y, Z. Another image shows the module's dimensions: 51.3mm length, 36mm width, and 15mm height.
3 Pin Description
Pin | Function |
---|---|
VCC | Power supply, 3.3V-5V input |
RX | Serial data input, TTL/232 level |
TX | Serial data output, TTL/232 |
GND | Ground |
4 Axial Direction
The module's coordinate system is defined with the X-axis pointing upwards, the Y-axis to the left, and the Z-axis outward from the vertical face. Rotation direction is determined by the right-hand rule: the thumb indicates the axial direction, and the fingers show the direction of rotation around the axis.
5 Hardware Connection
5.1 Serial (TTL) Connection
To connect to PC software, a USB-TTL module is required. The module's VCC, TX, RX, and GND pins connect to the serial module's +5/3.3V, RX, TX, and GND pins, respectively. Note that TX and RX pins must be crossed (module's TX to serial module's RX, and module's RX to serial module's TX).
Visual Description: An illustration shows a USB-TTL adapter connected to a computer and the WT901C module. Another diagram shows a USB-TTL serial module with labeled pins (VCC, TXD, RXD, GND).
5.2 232 Level Connection
For a USB-232 connection, a USB-232 module is needed. The connection involves the module's pins (e.g., RED:5V, YELLOW:TXD, GREEN:RXD+) connecting to the corresponding pins on the USB-232 adapter.
Visual Description: A diagram illustrates the wiring for a 232-level connection, showing connections for POWER (5V), TXD, RXD, and GND between an 'Inclinometer' and a 'POWER 5V' source.
6 Software Methods
Note: Download the PC software and install .NET Framework 4.0 if not already present. After connecting the module to the computer via a serial module, install the serial module driver. The corresponding serial number can be queried in Device Manager.
Visual Description: A screenshot of Windows Device Manager is shown, highlighting a detected serial port (e.g., Silicon Labs CP210x USB to UART Bridge (COM9)). Another screenshot shows the MiniIMU software interface with data plots and a compass. A third screenshot shows the MiniIMU software with menus for selecting the product model (e.g., JY901) and baud rate (e.g., 9600).
Software Usage:
- Connect the module to the PC using a USB-TTL or USB-232 adapter.
- Install the serial driver.
- Open the MiniIMU software.
- Select the correct COM port in Device Manager and then in the software's 'Serial Port' selection menu.
- Select the product model (e.g., JY901) from the model menu.
- Set the baud rate (e.g., 9600) in the software to display data.
- Data acquisition and 3D visualization are available within the software.
Visual Description: Screenshots show the MiniIMU software interface displaying real-time data charts (Acceleration, Angular Velocity, Angle) and a 3D model of the module's orientation. Instructions indicate clicking 'Record' and 'Start' to save data, and clicking '3D' to view posture.
6.2 Restore Factory Setting
Two methods are available: Short Circuit Method and Instruction Method.
- Short Circuit Method: Open the case, short the D2 pin to the VCC pin, then power on the module. The LED will light up for about two seconds and then turn off, indicating successful restoration.
- Instruction Method: Connect the WT901C to a PC via a USB-serial port module. In the software's 'Settings' tab, click 'Recovery'. After restoring factory settings, restart the module. This method requires knowing the module's baud rate.
Visual Description: A diagram on a PCB shows the short-circuit method: ① Short D2 and VCC, ② Power on, ③ After about 2s, LED off, OK.
6.3 Module Calibration
Reminder: Calibration and configuration should be performed online (indicated in the bottom-right corner of the software). Offline status means the PC software is not controlling the module. Calibration is required before use. This includes Accelerometer calibration and Magnetic calibration.
6.3.1 Accelerometer Calibration
This process removes zero bias errors from the accelerometer. After manual calibration, measurements become accurate.
- Keep the module stationary and horizontal. In the software's 'Config' section, click 'Acceleration' to open the calibration interface.
- Check the 'Auto Calculate' option. The software will automatically calculate the zero bias value.
- Click 'Write parameter' to save the calibration.
Visual Description: A screenshot shows the 'AccCal' window within the software, with fields for X, Y, Z values and an 'Auto Calculate' checkbox, along with 'Read parameter' and 'Write parameter' buttons. Another screenshot shows the 'JY9Config' interface with the 'Acceleration' tab selected.
Note: When the module is horizontal, the acceleration value should indicate approximately 1G of gravitational acceleration.
6.3.2 Magnetic Calibration
This removes zero deviation from the magnetic field sensor, which can cause measurement errors, especially affecting the heading angle.
- Connect the module to the computer and place it at least 20cm away from magnetic interference sources (iron, etc.). Open the PC software.
- In the 'Setting' page, click the 'Magnetic field' button under the calibration bar to enter 'MagCal' mode. Click 'Start Calibrate'.
- Slowly rotate the module around its three axes to draw data points in three planes. Continue rotating until regular ellipses are formed. Click 'Write parameters' to save.
Visual Description: Screenshots show the 'MagCal' window with chartXZ, chartYZ, and chartXY plots displaying data points. Calibration parameters like Current Value, Offset, and Range are visible. A calibration video link is provided: https://youtu.be/C1g59WFHuCI.
6.3.3 Z axis To 0
Reminder: This function is primarily for JY61P. For WT901C, the z-axis angle is absolute. This feature calibrates the z-axis to relative 0 degrees, useful if drift occurs. When powered on, the Z axis typically returns to 0 automatically.
Method: In the software's 'Config' menu, select 'Zero Z Angle' while the module is horizontal. The z-axis angle in the data column will reset to 0.
Visual Description: A screenshot of the 'JY9Config' interface shows the 'Zero Z Angle' option selected.
6.3.5 Gyroscope Automatic Calibration
This calibrates the angular velocity. The sensor calibrates automatically, but this can only be removed if the module rotates at a constant speed.
6.4 Set Return Content
Users can customize the returned data content by selecting desired options in the 'Config' bar. The default for JY901 includes acceleration, angular velocity, and magnetic field. GPS time, if connected, is used, but it is 8 hours ahead of Beijing time.
Visual Description: A screenshot of the 'JY9Config' interface shows the 'Content' section with checkboxes for Time, Acceleration, Velocity, Euler angle, Magnetism, Port, Pressure, Latitude, Longitude, Ground velocity, Quaternion, Positioning accuracy, and GPS original.
6.5 Set Return Rate
The 'retrieval rate' can be set from 0.1Hz to 200Hz. The default is 10Hz (10 packets/second, 33 bytes per packet). If return content is high and baud rate is low, the module may reduce frequency. Default baud rate is 115200.
6.6 Set Baud Rate
The module supports multiple baud rates, with 9600 as the default. Change the baud rate in the software and click 'Change'. The change takes effect after re-powering the module.
6.7 Data Recording
The sensor module does not have internal memory; data is recorded and saved via the software. Click 'Record' and 'Start' to save data to a file (e.g., Data.tsv). The file contains columns for Time, ax, ay, az (acceleration), wx, wy, wz (angular velocity), AngleX, AngleY, AngleZ (angle), and hx, hy, hz (magnetic field).
Visual Description: A screenshot shows the MiniIMU software's data recording interface with a graph and controls. Another screenshot displays a Notepad window with sample data from a .tsv file.
6.8 Installation Direction
The default installation is horizontal. For vertical installation, rotate the module 90 degrees around the X-axis and select the 'Vertical' option in the software's 'Config' menu. Calibration is recommended after setup.
Visual Description: A diagram illustrates the vertical installation of the module, showing its orientation relative to a wall and ground.
6.9 Sleep/ Wake up
The module can enter a low-power sleep state by selecting the 'Sleep' option in the software. Clicking 'Sleep' again releases it from standby. The module defaults to a working state.
6.10 Set Bandwidth
The measurement bandwidth can be set in the 'Config' menu. Data outside this bandwidth is filtered. The default setting is 20Hz.
6.13 Six axis/ Nine axis Algorithm
JY61P uses a 6-axis algorithm (z-axis angle based on angular velocity integral). WT901C (JY901) uses a 9-axis algorithm (z-axis angle based on magnetic field, preventing drift). If magnetic field interference occurs, the 6-axis algorithm can be used. The algorithm can be changed to 'Axis6' in the PC configuration bar, followed by calibration. WT901C supports algorithm conversion; JY61P does not.
Visual Description: A screenshot of the 'JY9Config' interface shows the 'Algorithm' dropdown menu with options like 'Axis 9' and 'Axis 6'.
7 Serial Communication Protocol
Level: TTL level (use RS232 level with caution to avoid module damage).
Baud rate: 2400, 4800, 9600 (default), 19200, 38400, 57600, 115200, 230400, 460800, 921600. Stop bit and parity bit are 0.
7.1 Module to PC Software
Data is transmitted in hexadecimal format, with each data point consisting of a low byte and a high byte, combined into a short type. Formulas are provided for calculating Time, Acceleration, Angular Velocity, Angle, and Magnetic field values from the raw data bytes.
- Time Output: Includes Year, Month, Day, Hour, Minute, Second, and Millisecond.
- Acceleration Output: Calculates ax, ay, az values in g, and temperature.
- Angular Velocity Output: Calculates wx, wy, wz values in °/s, and temperature.
- Angle Output: Calculates Roll (X-axis), Pitch (Y-axis), and Yaw (Z-axis) angles in degrees. Attitude angle coordinate system is Northeast sky.
- Magnetic Output: Calculates Hx, Hy, Hz magnetic field values, and temperature.
Visual Description: Tables show the data frame structure for each output type, including hex codes, byte names, and calculation formulas.
7.2 PC Software to Module
Reminder: Factory settings are serial port, 9600 baud rate, 10Hz frame rate. Configurations are stored after power down.
Data format for PC to Module: 0xFF, 0xAA, Address, DataL, DataH.
7.2.1 Register Address Table
A comprehensive table lists register addresses (e.g., 0x00 to 0x54) with their corresponding symbols and meanings, covering settings like Save, Calibration, Baud rate, Bias offsets, modes, PWM settings, IIC address, LED control, GPS baud rate, date/time components, sensor readings (Acceleration, Velocity, Angle, Magnetic, Temperature), status, pressure, height, GPS data, and Quaternions.
7.2.2 Save Configuration
Command: 0xFF, 0xAA, 0x00, SAVE, 0x00. Options: 0 (Save current configuration), 1 (Set to default setting).
7.2.3 Calibrate
Command: 0xFF, 0xAA, 0x01, CALSW, 0x00. Options: 0 (Exit calibration), 1 (Accelerometer calibration), 2 (Magnetic calibration), 3 (Set height to 0).
7.2.4 Set Installation direction
Command: 0xFF, 0xAA, 0x23, DIRECTION, 0x00. Options: 0 (Horizontal installation), 1 (Vertical installation).
7.2.5 Sleep/ Wake up
Command: 0xFF, 0xAA, 0x22, 0x01, 0x00. Sends instruction to enter sleep state; sending again releases from standby.
7.2.6 Algorithm transition
Command: 0xFF, 0xAA, 0x24, ALG, 0x00. Options: 0 (Set to 9-axis algorithm), 1 (Set to 6-axis algorithm).
7.2.7 Gyroscope automatic calibration
Command: 0xFF, 0xAA, 0x63, GYRO, 0x00. Options: 0 (Set to gyroscope automatic calibration), 1 (Remove gyroscope automatic calibration).
.2.8 Set return content
Defines which data packs are output. For example, 0x50 pack is time, 0x51 is acceleration, 0x52 is angular velocity, 0x53 is angle, 0x54 is magnetic, etc. Each pack can be enabled (1) or disabled (0).
7.2.9 Set return rate
Command: 0xFF, 0xAA, 0x03, RATE, 0x00. Sets the data output rate (e.g., 0x01: 0.1Hz, 0x06: 10Hz (default), 0x0b: 200Hz).
7.2.10 Set baud rate
Command: 0xFF, 0xAA, 0x04, BAUD, 0x00. Sets the communication baud rate (e.g., 0x00: 2400, 0x02: 9600 (default), 0x06: 115200).
7.2.11 Set X axis Acceleration bias
Command: 0xFF, 0xAA, 0x05, AXOFFSETL, AXOFFSETH. Sets the X-axis acceleration bias. The output value is the sensor output minus the bias.
7.2.12 Set Y axis Acceleration bias
Command: 0xFF, 0xAA, 0x06, AYOFFSETL, AYOFFSETH. Sets the Y-axis acceleration bias.
7.2.13 Set Z axis Acceleration bias
Command: 0xFF, 0xAA, 0x07, AZOFFSETL, AZOFFSETH. Sets the Z-axis acceleration bias.
7.2.14 Set X axis Angular velocity bias
Command: 0xFF, 0xAA, 0x08, GXOFFSETL, GXOFFSETH. Sets the X-axis angular velocity bias.
7.2.15 Set Y axis Angular velocity bias
Command: 0xFF, 0xAA, 0x09, GYOFFSETL, GYOFFSETH. Sets the Y-axis angular velocity bias.
7.2.16 Set Z axis Angular velocity bias
Command: 0xFF, 0xAA, 0x0a, GXOFFSETL, GXOFFSETH. Sets the Z-axis angular velocity bias.
7.2.17 Set X axis magnetic bias
Command: 0xFF, 0xAA, 0x0b, HXOFFSETL, HXOFFSETH. Sets the X-axis magnetic bias.
7.2.18 Set Y axis magnetic bias
Command: 0xFF, 0xAA, 0x0c, HXOFFSETL, HXOFFSETH. Sets the Y-axis magnetic bias.
7.2.19 Set Z axis magnetic bias
Command: 0xFF, 0xAA, 0x0d, HXOFFSETL, HXOFFSETH. Sets the Z-axis magnetic bias.
8 Application Area
The WT901C sensor is suitable for a wide range of applications, including:
- Agricultural machinery
- Internet of Things (IoT)
- Solar energy systems
- Power monitoring
- Medical instruments
- Construction machinery
- Geological monitoring
Visual Description: Images depict examples of these applications: a combine harvester, networked devices icon, solar panels, a power line tower, an MRI machine, a warehouse racking system, and a geological monitoring device.
Contact Information
WitMotion Shenzhen Co., Ltd
TEL: (+86) 755-33185882
E-mail: wit@wit-motion.com
Website: www.wit-motion.com
Aliexpress: https://witmotion.aliexpress.com
Alibaba: https://witmotion.en.alibaba.com
Wit-wiki: https://wiki.wit-motion.com/english
Address: Honghai building 1306 Songgang town Baoan District Shenzhen, Guangdong Province China