±5a ±20a ±50a, 5v/3.3v isolated current sensors (5 pages)
Summary of Contents for Aceinna IMU383 Series
Page 1
IMU383 Series User’s Manual IMU383 SERIES USER MANUAL Document Part Number: 7430-1398-01 Document Number: 7430-1398-01...
Page 2
IMU383 Series User’s Manual ACEINNA, Inc. email: info@aceinna.com, website: www.aceinna.com Document Number: 7430-1398-01...
Page 3
IMU383 Series User’s Manual Revision history Date Document Associated FW Description Author(s) Revision Version Aug 22, 2019 Rev. A v1.1.x Draft release of IMU383 manual Joseph Motyka Dec 9, 2019 Rev. B v1.1.x Updates to manual to describe fault Joseph Motyka...
Table of Contents Introduction ..........................9 1.1. Manual overview ....................... 9 1.2. Overview of the IMU383 Series Inertial Measurement Unit ..........9 Interface ..........................11 2.1. Electrical interface ......................11 2.1.1. Connector ........................11 2.1.2. Power and ground pins ....................12 2.1.3.
Page 5
IMU383 Series User’s Manual 4.4.2. Output data rate ......................31 4.4.3. Rate-Sensor scaling and Low-Pass filter ..............31 4.4.4. Axis orientation settings ..................... 33 4.4.5. Saving the configuration to EEPROM ............... 34 4.4.6. Sensor control registers ....................34 4.4.7. Fault detection control registers ................. 35 4.5.
Page 6
IMU383 Series User’s Manual 6.4. Output packets (polled or continuous) ................47 6.4.1. Scaled sensor data packet 0 ..................48 6.4.2. Scaled sensor data packet 1 (default IMU data packet)..........49 Advanced UART commands ....................51 7.1. Configuration fields ......................51 7.1.1.
Page 7
IMU383 Series User’s Manual 9.2.1. Boot mode registers ....................66 9.2.2. Boot mode status register (0x78) ................67 9.2.3. Boot command register (0x7A) .................. 68 9.2.4. Boot data register (0x7C) ................... 69 9.2.5. Boot loading sequence....................70 10. Warranty and support information ..................71 10.1.
Page 8
IMU383 Series User’s Manual About this Manual The following symbols are used to provide additional information. X NOTE Note provides additional information about the topic. ☑ EXAMPLE This symbol indicates an example that will help the reader understand the terminology.
Sample Packet Decoding 1.2. Overview of the IMU383 Series Inertial Measurement Unit This manual describes the use of ACEINNA’s IMU383 and is intended to be used as a detailed technical reference and operating guide. ACEINNA’s IMU383 Series products combine the latest in high-performance commercial MEMS (Micro-electromechanical Systems) sensors and digital signal processing techniques to provide a small, cost-effective alternative to existing IMU systems.
Page 10
It is designed for OEM applications. At the core of the IMU383 Series is a trio of rugged 6-DOF (Degrees of Freedom) MEMS inertial sensor clusters. Each 6-DOF MEMS inertial sensor cluster includes three axes of MEMS angular rate sensing and three axes of MEMS linear acceleration sensing.
IMU383 Series User’s Manual ________________________________________________________________________ 2. Interface 2.1. Electrical interface 2.1.1. Connector The unit main connector is a SAMTEC FTM-110-02-F-DV-P. The pin assignment defined in Figure 1 Figure 1: IMU383 interface connector Table 2: Interface connector pin definition IMU383 Pin Description (IMU383)
IMU383 Series User’s Manual ________________________________________________________________________ Reserved – factory use only Power VIN (3-5 VDC) Power VIN (3-5 VDC) Power VIN (3-5 VDC) Power GND Power GND Power GND Reserved – factory use only Reserved Reserved – factory use only Reserved Reserved –...
IMU383 Series User’s Manual ________________________________________________________________________ 2.1.4. Reserved – factory use only During normal operation of the unit no connection should be made to the Reserved – factory use only pins. 2.2. Mechanical interface The IMU383 mechanical interface is defined by the outline drawing in...
Measurement data packets are available at fixed continuous output rates or on a polled basis. As shown in the software block diagram, the IMU383 Series has a unit setting and profile block which configures the unit to user and application specific needs. This feature is one of the more...
Figure 5. As with many elements of the IMU383 Series, the coordinate system is configurable with either NAV-VIEW or by sending the appropriate serial commands over the UART port. These configurable elements are known as Advanced Settings. This section of the manual describes the default coordinate system settings of the IMU383 Series when it leaves the factory.
For example, if the IMU383 Series product is sitting on a level surface and you rotate it clockwise on that surface, this will be a positive rotation around the z-axis. The x- and y-axis rate sensors would measure zero angular rates, and the z-axis sensor would measure a positive angular rate.
IMU383 Series User’s Manual ________________________________________________________________________ routine continues to monitor the sensors until the part is deemed failed. The Fault Tolerant Time Interval (FTTI) for such a failure is set to 300 msec, however the actual detection time could be changed if needed. Contact the factory for more information.
Generally, there is no reason to change the low-pass filter settings on the unit or other IMU383 Series Inertial Systems. However, when an IMU383 Series product is installed in an environment with a lot of vibration, it can be helpful to reduce the vibration-based signal energy and noise prior to further processing on the signal.
Page 19
The over-range only applies to the rotational rate sensors. Because instantaneous acceleration levels due to vibration can exceed the accelerometer sensor range in many applications, none of the IMU383 Series products trigger over-range on accelerometer readings.
IMU383 Series User’s Manual ________________________________________________________________________ 4. SPI port interface definition The IMU383 has the option to communicate via SPI interface. This section of the user’s manual defines the unit register map, register control capabilities, and the data register reading and writing methodologies.
Page 21
IMU383 Series User’s Manual ________________________________________________________________________ Name Read/ Register Default Function Write Address Sensor control, chip2 0x1B 0xFF (All Control of active sensors for Sensor Chip 2 Sensor control, chip3 0x1C 0xFF (All Control of active sensors for Sensor Chip 3...
IMU383 Series User’s Manual ________________________________________________________________________ Single-register polled-read Figure 6 illustrates a polled-mode read of a single register (x-axis rate-sensor data), which is composed of two bytes, starting at register address 0x04. In this example, the SPI-master initiates a register read by clocking in the address followed by 0x00, i.e.
Page 24
IMU383 Series User’s Manual ________________________________________________________________________ Burst-read of standard data-packet The table below lists the data contained in a standard data packet. Table 7: Burst-mode output data packet Register Name Description STATUS System Status Word (same as in register 0x3C) X_RATE...
Page 25
IMU383 Series User’s Manual ________________________________________________________________________ contain reference information about the synchronization of the DMU383ZA to an external 1kHz clock signal. TIMESTAMP1 is a 16-bit value that represents the time (in µs) between the sensor sampling point and the main active edge of the external clock; TIMESTAMP2 is a 16-bit value representing the time (in µs) between the main active edge of the external clock and the active edge of DRDY signal.
IMU383 Series User’s Manual ________________________________________________________________________ Figure 8: Extended Burst Mode Timing Operational notes: It’s recommended to read data from the unit on the active edge of DRDY signal. In case of polled read – Send polled read command right after burst read is completed.
IMU383 Series User’s Manual ________________________________________________________________________ Name Read address Function DIAGNOSTIC_STATUS 0x3C Sensor self-test and over-range information (See section 4.2.5) MANUF_CODE 0x52 Product manufacturing code UNIT_CODE 0x54 Additional product manufacturing information PRODUCT_ID 0x56 Product ID 0x3830 SERIAL_NUMBER 0x58 Unique unit identification number...
IMU383 Series User’s Manual ________________________________________________________________________ Unused Fault detection settings unlocked (cleared after power cycle or reset) Last command failed or invalid (cleared after reading register 0x3C) 4.2.6. Sensors status registers For the IMU383, triple sensor redundancy (along each axis) has been introduced. Each of the axes of every sensor is individually calibrated.
IMU383 Series User’s Manual ________________________________________________________________________ 4.3. SPI register write methodology The SPI master can configure the unit by writing to specific registers. Unlike reads, writes are performed one register (8-bits) at a time. The specific registers that affect system configuration are listed in table below along with their addresses.
IMU383 Series User’s Manual ________________________________________________________________________ MOSI 0xB504 MISO Figure 9: Single register write to initiate Self-Test Note: As described in the Register reads (Section 4.2.1), a register read returns two bytes, in this case a read from register 0x34 returns data from registers 0x34 (LSB byte) and 0x35 (MSB byte).
IMU383 Series User’s Manual ________________________________________________________________________ For example, to select an orientation of (-Ux, +Uz, +Uy) the user must write 0x01 to 0x74 followed by 0x11 to 0x75. Note: this register does not require the user to swap bytes for the write to load the bytes properly, unlike other registers.
IMU383 Series User’s Manual ________________________________________________________________________ If a specific bit is set LOW, data from the corresponding sensor axis is excluded from the combined output value. Note: if the user excludes a sensor axis from the combined output but internally deemed good by the fault detection algorithm, it will continue to participate in the fault detection mechanism.
IMU383 Series User’s Manual ________________________________________________________________________ 4.5. Suggested operation conditions The following operational procedure and timing specifications should be adhered to while communicating with the IMU383unit via SPI to ensure proper system operation. These points are highlighted later in this section.
IMU383 Series User’s Manual ________________________________________________________________________ nSS setup time prior to clocking data nsec SU,NSS nSS hold time following clock signal nsec h,NSS Time after falling edge of previous clock-edge that MISO nsec V,MISO data-bit is invalid Data input setup time prior to rising edge of clock...
IMU383 Series User’s Manual ________________________________________________________________________ sampling points (see “Method 1) below). In the second method, the Timestamp registers (read via the Extended Burst Mode command) are used to determine the sampling points (see Method 2 below). Note that the inertial sensors are sampled at a nominal rate of 800Hz. The sensor readings then undergo antialiasing filtering at 800Hz and then decimated down to 200 Hz at which rate calibration is applied individually to every sensor axis.
CRC itself. Input packets with incorrect CRC’s will be ignored. • Each complete communication packet must be transmitted to the IMU383 Series inertial system within a 4 second period. 5.2. Number formats Number Format Conventions include: •...
IMU383 Series User’s Manual ________________________________________________________________________ Shifted 2’s Signed Short Shifted to specified Complement range 2’s Complement Signed Integer -2^31 to 2^31-1 Floating Point IEEE754 Single -1*2^127 to 2^127 Precision String ASCII 5.3. Packet format All Input and Output packets conform to the following structure: 0x5555 <2-byte packet type (U2)>...
Input messages are sent from the user system to the IMU383 Series inertial system and will result in an associated Reply Message or NAK message. Note that reply messages typically have the same <2-byte packet type (U2)>...
Page 42
IMU383 Series User’s Manual ________________________________________________________________________ ASCII <2-byte <payload byte- Description Type Mnemonic packet length (U1)> type (U2)> 0x4750 Get Packet Input Message Request 0x1515 Error Response Reply Message Output Messages: Status & Other, (Polled Only) 0x4944 Identification Output Message Data...
Page 43
IMU383 Series User’s Manual ________________________________________________________________________ ASCII <2-byte <payload byte- Description Type Mnemonic packet length (U1)> type (U2)> 0x4746 numFields*2+1 Get Fields Input Message Request 0x4746 numFields*4+1 Get Fields Reply Message Response Document Number: 7430-1398-01...
IMU383 Series User’s Manual ________________________________________________________________________ 6. Standard UART commands and messages This section describes the functionality and operation of the UART port. 6.1. Link test 6.1.1. Ping command Ping (‘PK’ = 0x504B) Preamble Packet Type Length Termination 0x5555 0x504B 0x00 <CRC (U2)>...
IMU383 Series User’s Manual ________________________________________________________________________ 6.2. Interactive commands Interactive commands are used to interactively request data from the IMU383 Series, and to calibrate or reset the IMU383 Series. 6.2.1. Get Packet request Get Packet (‘GP’ = 0x4750) Preamble Packet Type...
IMU383 Series User’s Manual ________________________________________________________________________ 6.3.1. Identification data packet Identification Data (‘ID’ = 0x4944) Preamble Packet Type Length Payload Termination 0x5555 0x4944 <ID payload> <CRC (U2)> This packet contains the unit serialNumber and modelString. The model string is terminated with 0x00.
IMU383 Series User’s Manual ________________________________________________________________________ buildNumber Build number 6.3.3. Test 0 (Detailed BIT and status) packet Test (‘T0’ = 0x5430) Preamble Packet Type Length Payload Termination 03.3x5555 0x5430 0x1C <T0 payload> <CRC (U2)> This packet contains detailed BIT and status information. The full BIT Status details are described in Section of this manual.
IMU383 Series User’s Manual ________________________________________________________________________ 6.4.1. Scaled sensor data packet 0 Scaled sensor data (‘S0’ = 0x5330) Preamble Packet Type Length Payload Termination 0x5555 0x5330 0x1E <S0 payload> <CRC (U2)> This packet contains scaled sensor data. The scaled sensor data is fixed point, 2 bytes per sensor, MSB first, for 13 sensors in the following order: accels(x,y,z);...
IMU383 Series User’s Manual ________________________________________________________________________ BITstatus Master BIT and Status 6.4.2. Scaled sensor data packet 1 (default IMU data packet) NOTE: Sensor data scaling is specific to the message or register being read. Please see scaling information for each sensor data read operation. Specifically, the sensor data in the SPI S0_BURST, the SPI S1_BURST, the UART S0 message and the UART S1 message are scaled differently than the scaling for reading the individual SPI sensor data registers.
Page 50
IMU383 Series User’s Manual ________________________________________________________________________ timer 15.259022 Free running fast counter 1s= 65535, captured at sampling BITstatus Master BIT and Status Document Number: 7430-1398-01...
IMU383 Series User’s Manual ________________________________________________________________________ 7. Advanced UART commands The advanced commands allow users to change the IMU383 Series settings. Section below describes all available configuration setting through UART interface and section below describes different ways to send command to read/write configuration settings.
IMU383 Series User’s Manual ________________________________________________________________________ Reserved 0x000A Sensor enable setting 0x0042 0x0 to 0x7(default) Enables sensors activation (requires restart for mode to take effect). Used to disable a sensor chip in case it introduces extra noise or crosstalk. Output select settings...
IMU383 Series User’s Manual ________________________________________________________________________ Table 29: Digital filter settings Function Field number FilterAccel 0x05 FilterGyro 0x06 7.1.5. Orientation field This field controls the orientation of the user-specified axes (+X, +Y, +Z) relative to the nominal factory-axes (+Ux, +Uy, +Uz). For the IMU383-200, the default coordinate frame is (+X, +Y, +Z)
Page 54
IMU383 Series User’s Manual ________________________________________________________________________ There are 24 possible orientation configurations listed in below table. Setting/Writing the field to anything else generates a NAK and has no effect. Table 31: Orientation fields Orientation field value X Axis Y Axis Z Axis...
IMU383 Series User’s Manual ________________________________________________________________________ 7.1.6. Sensor enable setting and Output select setting When communicating with the device using UART, field 0x42 controls the sensor enable function while field 0x43 controls which sensors are included in the combined sensor output (SPI...
IMU383 Series User’s Manual ________________________________________________________________________ Only sensor #2 included Sensors #1 and #2 included Only sensor #3 included Sensors #1 and #3 included Sensors #2 and #3 included All sensors included in output Section 3.2.1.2 describes example packet. 7.1.7. Fault-Detection status fields Fields 0x4C, 0x4d and 0x4E provide information about the cause of any faults triggered by the unit’s fault detection mechanism.
IMU383 Series User’s Manual ________________________________________________________________________ This command allows the user to change default power-up configuration fields. Writing the default configuration will not take effect until the unit is power cycled. NumFields is the number of words to be written. The field0, field1, etc. are the field IDs that will be written with the field0Data, field1Data, etc., respectively.
IMU383 Series User’s Manual ________________________________________________________________________ numFields*2 – Field… The last field ID written 7.2.3. Set Fields command Set Fields (‘SF’ = 0x5346) Preamble Packet Type Length Payload Termination 0x5555 0x5346 1+numFields*4 <SF payload> <CRC (U2)> This command allows the user to change unit’s current configuration (SF) fields immediately. The settings will be lost after unit power cycle or reset.
IMU383 Series User’s Manual ________________________________________________________________________ Byte Offset Name Format Scaling Units Description numFields The number of fields set field0 The first field ID set field1 The second field ID set … … More field IDs set Field… numFields*2 - 1 The last field ID set 7.2.5.
IMU383 Series User’s Manual ________________________________________________________________________ Byte Offset Name Format Scaling Units Description numFields The number of fields read field0 The first field ID read The first field ID’s data read field0Data field1 The second field ID read The second field ID’s data read field1Data …...
Page 61
IMU383 Series User’s Manual ________________________________________________________________________ 0x5555 0x4746 1+numFields*4 <GF Data> <CRC (U2)> The unit will send this packet in response to a get fields request if the command has completed without errors. GF payload contents Byte Offset Name Format Scaling...
(enabled by default) 8.2. Master BIT and Status (BITstatus) field The BITstatus field is the global indication of health and status of the IMU383 Series product (See Table 32). The LSB contains BIT information and the MSB contains status information.
IMU383 Series User’s Manual ________________________________________________________________________ SoftwareDataBIT field Bits Meaning Category calibrationCRCError 0 = normal, 1 = incorrect CRC on Hard calibration EEPROM data or data has been compromised by a WE command. Reserved 2:15 8.5. hardwareStatus field The hardwareStatus field contains flags that indicate various internal hardware conditions and alerts that are not errors or problems (see table below).
IMU383 Series User’s Manual ________________________________________________________________________ 9. Bootloader A bootloader function is available to upgrade the IMU383 firmware. The firmware can be updated over either the UART or SPI interface, as described in the following sections. 9.1. Updating firmware over UART interface A user can initiate the bootloader at any time by sending ‘JI ’command (see below command’s...
IMU383 Series User’s Manual ________________________________________________________________________ WA payload contents Byte Offset Name Format Scaling Units Description startingAddress bytes The FLASH word offset to begin writing data byteLength bytes The word length of the data to write dataByte0 FLASH data dataByte1 FLASH data …...
IMU383 Series User’s Manual ________________________________________________________________________ 9.2.2. Boot mode status register (0x78) The Boot Status register contains information about current unit status in Boot Mode. Table 39: Boot mode status register Bits Description System Busy 0: Ready, 1: Busy System Mode 0: Normal Mode, 1: Boot Mode...
IMU383 Series User’s Manual ________________________________________________________________________ 0x7800 0x0000 MOSI STATUS MISO NOTE: Data Ready signal will be HIGH when device is BUSY and LOW when device available for new transaction over SPI interface. 9.2.3. Boot command register (0x7A) The Boot Command register is dedicated to receiving Boot Mode related commands. The commands are provided in the below table.
IMU383 Series User’s Manual ________________________________________________________________________ MOSI 0xFA01 MISO DRDY NOTE: Data Ready signal will be HIGH when device is BUSY and LOW when device available for new transaction over SPI interface. NOTE: Each command message includes standard 16-bit CRC seeded by value 0xFFFF which covers first 16-bit command word and 32-bit data word.
IMU383 Series User’s Manual ________________________________________________________________________ NOTE: Status word will be sent back in second 16-bit word. It will reflect status of previous SPI transaction execution. NOTE: There should be delay at least 15 uS between fragment number word and data words.
Will it connect to NAV-VIEW 3.X? 10.3.2. Identification and protection If the equipment is to be shipped to ACEINNA for service or repair, please attach a tag TO THE EQUIPMENT, as well as the shipping container(s), identifying the owner. Also indicate the service or repair required, the problems encountered, and other information considered valuable to the service facility such as the list of information provided to request the RMA number.
Please write the words, “FRAGILE, DELICATE INSTRUMENT” in several places on the outside of the shipping container(s). In all correspondence, please refer to the equipment by the model number, the serial number, and the RMA number. 10.4. Warranty The ACEINNA product warranty is one year from date of shipment. Document Number: 7430-1398-01...
Setting up NAV-VIEW With the IMU383 Series product powered up and connected to your PC serial port, open the NAV- VIEW software application. 1. NAV-VIEW should automatically detect the IMU383 Series product and display the serial number and firmware version if it is connected.
IMU383 Series User’s Manual ________________________________________________________________________ Data recording NAV-VIEW allows the user to log data to a text file (.txt) using the simple interface at the top of the screen. Customers can now tailor the type of data, rate of logging and can even establish predetermined recording lengths.
IMU383 Series User’s Manual ________________________________________________________________________ 2. Selecting Playback mode will open a text prompt which will allow users to specify the location of the file they wish to play back. All three file formats are supported (Engineering, Hex, and Raw) for playback. In addition, each time recording is stopped/started a new section is created.
IMU383 Series User’s Manual ________________________________________________________________________ Figure 16: Raw data console Packet statistics view Packet statistics can be obtained from the “View” menu by selecting the “Packet Statistics” option (See Figure 17). This view simply provides the user with a short list of vital statistics (including Packet Rate, CRC Failures, and overall Elapsed Time) that are calculated over a one second window.
IMU383 Series User’s Manual ________________________________________________________________________ Unit configuration The Unit Configuration window (See Figure 18) gives the user the ability to view and alter the system settings. This window is accessed through the “Unit Configuration” menu item under the configuration menu. Under the “General” tab, users have the ability to verify the current configuration by selecting the “Get All Values”...
IMU383 Series User’s Manual ________________________________________________________________________ Figure 18: Unit configuration Advanced configuration Users who wish to access some of the more advanced features of NAV-VIEW and the IMU383 Series products can do so by selecting the “Advanced” tab at the top of the “Unit Configuration”...
IMU383 Series User’s Manual ________________________________________________________________________ Figure 19: Advanced settings Bit configuration The third and final tab of the unit configuration window is “Bit Configuration” (See Figure 20). This tab allows the users to alter the logic of individual status flags that affect the masterStatus flag in the master BIT status field (available in most output packets).
IMU383 Series User’s Manual ________________________________________________________________________ Figure 20: BIT configuration Read unit configuration NAV-VIEW allows users to view the current settings and calibration data for a given IMU383 Series unit by accessing the “Read Configuration” selection from the “Configuration” drop down...
Page 81
IMU383 Series User’s Manual ________________________________________________________________________ Figure 21: Read configuration Appendix A: Firmware Upgrade Step 1, select Firmware upgrade from configuration menu. Step 2, On pop-up window, select a new version binary file by clicking SELECT button, then click Upgrade button.
Page 82
IMU383 Series User’s Manual ________________________________________________________________________ Document Number: 7430-1398-01...
Page 83
IMU383 Series User’s Manual ________________________________________________________________________ Step 3, wait for the process ongoing until a successful or failure message pops up. Document Number: 7430-1398-01...
This appendix includes sample code written in ANSI C for parsing packets from data sent by the IMU383 Series Inertial Systems. This code can be used by a user application reading data directly from the IMU383 Series product, or perhaps from a log file. Check at https://github.com/Aceinna for other reference code.
IMU383 Series User’s Manual ________________________________________________________________________ Code listing #include <stdio.h> /* buffer size */ #define MAXQUEUE 500 * circular queue typedef struct queue_tag int count; int front; int rear; char entry[MAXQUEUE]; } QUEUE_TYPE; * ACEINNA packet typedef struct xbow_packet unsigned short packet_type;...
Page 86
IMU383 Series User’s Manual ________________________________________________________________________ if(Size(queue_ptr) <= 0) /* header was not found */ return 0; /* make sure we can read through minimum length packet */ if(Size(queue_ptr)<7) return 0; /* get data length (5th byte of packet) */ dataLength = peekByte(queue_ptr, 4);...
Page 87
IMU383 Series User’s Manual ________________________________________________________________________ startIndex is offset into buffer where to begin CRC calculation num is offset into buffer where to stop CRC calculation * RETURNS: 2-byte CRC *******************************************************************************/ unsigned short calcCRC(QUEUE_TYPE *queue_ptr, unsigned int startIndex, unsigned int num) { unsigned int i=0, j=0;...
Page 88
IMU383 Series User’s Manual ________________________________________________________________________ /******************************************************************************* * FUNCTION: DeleteQeue - return an item from the queue * ARGUMENTS: item will hold item popped from queue queue_ptr is pointer to the queue * RETURNS: returns 0 if queue is empty. 1 if successful...
Page 89
IMU383 Series User’s Manual ________________________________________________________________________ word = (queue_ptr->entry[firstIndex] << 8) & 0xFF00; word |= (0x00FF & queue_ptr->entry[secondIndex]); return word; /******************************************************************************* * FUNCTION: Pop - discard item(s) from queue * ARGUMENTS: queue_ptr is pointer to the queue numToPop is number of items to discard...
Need help?
Do you have a question about the IMU383 Series and is the answer not in the manual?
Questions and answers