Calibrated IMU Data and Mavlink (scaled vs raw)

Hello everyone, I am a developer of autonomous quadrotor, currently using ArduCopter 4.5.7 on a CUAV V5+ flight controller. I want to get accurate IMU data from Ardupilot for my SLAM algrothim, but I encountered some issues.

  1. The difference between raw_imu scaled_imu2 and scaled_imu3
    I want to know the difference about there 3 protocols. Why does ArduPilot send raw data for IMU1, but scaled data for IMU2 and IMU3?

  2. Does the Ardupilot firmware have an interface to get calibrated and fused IMU data?
    I am using CUAV V5 handware, which includes 3 IMU, and the x-axis offset of ALL MY 3 IMU is around 0.6 m/s². When I use Ardupilot firmware, ALL 3 IMU data I get from MAVLink is raw data (around 0.6m/s²). the SCALED2_IMU and SCALED3_IMU messages don’t seem to be adjusted.
    However, when I use PX4 firmware, PX4 adjusts this offset for me, so the data I get from MAVLink (along HIGHRES_IMU protocol, 105 message of MAVLink) is close to zero. I want to know if there is a port I can get the data after calibrtion from Ardupilot using MavLink. What’s more, PX4 seems to fuse the data from 3 IMU and send it by MavLink (though I’m not entirely sure), I’m wondering if I can get fused data from Ardupilot too.

Thanks for your help!!!