Smart test
6-axis sensor module-FSP200 calibration and test introduction
FSP200 module factory calibration process
The simple calibration system includes a single set of fixtures, motors, motor drivers, starting position sensors, motor button boards and power control boxes, as shown in Figure 1.
Before starting the calibration, make sure that the FSP200 simple calibration system is in a horizontal state, as shown in Figure 2.
figure 2
1: Start calibration: press CAL Button:
The green LED starts to flash, indicating that the module is in "calibration" mode.
2: Calibration movement (rotate the motor 180 degrees):
Press S2 (green button) on the motor button board. The motor will move 180 degrees counterclockwise. Wait for the motor to rotate 180 degrees before proceeding to the next step.
3: Complete calibration:
Press the CAL button again to end the "calibration" mode. The calibration result depends on the red and green LED display status: if the module passes the calibration, the green LED will turn green; if the module fails to calibrate, the red LED will turn red.
4: Verify calibration function:
Press the RST button on the FSP200 fixture board to ensure that the display shows the heading of the module (should be close to 0.00 degrees), press the S3 button (blue button) on the motor button board, move the motor clockwise 180 degrees, and wait The motor stops, check the display. The verification heading reading should be 180+/-0.45° (179.55 to 180.45°).
As shown in Figure 3:
image 3
Calibration is not successful:
If at any time during the calibration process, the “result” red LED lights up, there is a failure.
If the "Result" indicator does not light up, it may be a connection problem or a power supply problem.
If the value displayed in the verification step exceeds the specified acceptable range, the module calibration fails.
If any of these failures occur, remove the module from the fixture and install it back on the fixture, and try again.
If the fault occurs repeatedly, the module is bad; if the module passes, then the module is good.
R&D application test process example
In order to achieve the performance effect of the sweeping robot navigation, in addition to the calibration error of the sensor itself in the factory, we also need to do a lot of testing to reduce the error in the initial stage of the actual application research and development: by appropriately implementing the recommended operations to minimize the error , Can improve the heading error estimation.
The estimated heading error will change due to the length of time, in the short term due to the gyroscope scale (or sensitivity) error, and in the long term due to the gyroscope offset (ZRO, zero rate offset). It can be learned from the following calculations:
Estimated heading error = scale error x unremoved rotation + zero velocity offset x time
FSP200 provides three kinds of interfaces:
UART-RVC (PS0=0, PS1=1 as shown in Figure 4)
UART-SHTP (PS0=1, PS1=0)
UART-RVC-DEBUG (PS0=0, PS1=0)
When the hardware is designed, it is compatible with these three interface modes, which is convenient for switching and testing.
Figure 4
The mass production of the sweeper uses the UART-RVC mode, and the performance of the module is tested in interactive software testing and non-interactive testing. Two test procedures for improving ZRO are introduced as follows:
1) HOST does not use interactive software testing procedures as follows:
1: After the FSP200 RVC mode is calibrated on the test stand, connect the serial port to the PC, use motionStudio2 to open and view the RVC data, but this data has been changing, so it is recorded through the general serial port tool to record the start and turn back to 0 after 180 degrees. The value of the end point of degrees (total 360 degrees), and then open LOG to take out the two hexadecimal data RAW values and divide by 180 degrees. If the percentage is less than 25%, it will meet the requirements. The smaller the better.
(data-the initial data is generally 0 after reset)/180 <25%, which means the module is well calibrated.
2: Pick out 5 to 10 modules with visual module errors, place them on the sweeper, fix the glue, power on in RVC mode, and charge the sweeper for half an hour. After the charging is completed, reset the module and save the module's self-learning current temperature mode. If a module does not turn off after charging, you can run on the sweeper directly without resetting. Proceed to the next test.
3: Move the sweeper to the site, mark the starting position, wait for 2 seconds after the module is powered on, and the module is connected to the computer at the same time, use motionStudio2 to open and view the RVC real-time data, let the sweeper start running the I-line for 20 minutes and then stop, move back to start recording Position, check the RAW angle, and calculate the 20-minute average error. Then reset the module and save the data learned by the module in just 20 minutes. As shown in Figure 5:
Figure 5
4: Change the PS1 and PS0 of the learned module to SHTP mode, connect to the computer, Run "sh2_ftdi_logger.exe test.dsf -raw -calibrated -uncalibrated -mode=all"? , Take out the DSF file to analyze and view the error of the actual DCD test module.
5: Change the module number, record the error, and change the module to RVC mode. The smaller the error, the better the module performance. Pick the module with good performance and enter the sweeper cleaning test stage, and then perform the module consistency test, high and low temperature test, and judgment The overall effect of the module, dynamic calibration effect with temperature changes.
2) HOST uses interactive software to test the process as follows:
1: After getting the factory-calibrated module, FSP200 needs to be set to RVC_Debug PS0=0, PS1=0 mode at the beginning of research and development.
Through the PC software ftdi_binary_logger_RVC_Debug, connect the serial port of the module to obtain the LOG of the sweeper stationary for 2 to 3 minutes. For BIN data, the sweeper software needs to set the fan and rolling brush action that are static only on the spot, and analyze the LOG. The BIN data is used to determine how long the subsequent HOST end software sets to execute the dynamic calibration command.
2: There are four types of notifications from Host to FSP200 about the expected movement of the device: 0 is the assumed initial state of the sensor hub, 1 is static and no vibration, 2 is static fan roller brush vibration, and 3 is normal cleaning. Each time a state is switched, the corresponding state command is sent to FSP200, and the feedback information of FSP200 is read to determine whether to execute the dynamic calibration command. After the software is set up, connect the FSP200 module flying leads (VCC, GND, RX, TX) to the PC serial port. It should be noted that the module needs to be fixed in the machine. Turn on the computer and turn on the ftdi_binary_logger_RVC_Debug software to obtain the sweeper from the beginning to the end of the cleaning area. The exercise data of the implementation is automatically saved as LOG. BIN file, through LOG. BIN file to analyze whether the interactive software settings on the HOST end are correct.
3: If the interactive software is set correctly, switch the FSP200 RVC-DEBUG mode to RVC PS0=0, PS1=1 mode, perform a cleaning test of multiple machines, and record the position and angle error of the machine running for 1 hour. The smaller the error, the module performance The better, the module consistency test, high and low temperature test, judge the overall effect of the module, and dynamically calibrate the effect with temperature changes.