Bosch Sensortec Community

    cancel
    Showing results for 
    Search instead for 
    Did you mean: 

    Calculating the angle between two BNO055 IMU sensors

    msprauve
    New Poster

    Calculating the angle between two BNO055 IMU sensors

    Hello

    We are developing a wearable that will use 2 BNO055 sensors mounted on the body (i.e thigh and calf) and we need to determine the angle between the two parts as the user goes through a series of movements. Is this possible and if so, can someone provide us with example code or at least a starting point on how to do the calculations.

    Thanks

     

    Tags (1)
    4 REPLIES 4
    rex
    Member

    Re: Calculating the angle between two BNO055 IMU sensors

    First calculate the right angle of the two sensors, and then calculate the angle between the two sensors

    Vincent
    Community Moderator

    Re: Calculating the angle between two BNO055 IMU sensors

    I agreed with Rex's comment.  it is totally possible to calcualte the relative position with two BNO055 output.  

    Actually there are two ways: 

    1. use the Euler angle / Quaternion output from each sensor to calculate the relative angle for those two sensor

    2. use the accel sensor output to calculate the relative angle. 

     

    MathiasHedegaar
    Occasional Visitor

    Re: Calculating the angle between two BNO055 IMU sensors

    Hej Vincent

    I am also trying to calculate the relative angle between two sensors on the upperarm and forearm. I have the problem that the axis does not align with the axis in the body and therefore the angle is not correct. How can I align the axis of the absolute quaternion with the body axis? 

    Best regards 

    Mathias  

     

    Vincent
    Community Moderator

    Re: Calculating the angle between two BNO055 IMU sensors

    Did you try the axis remapping feature written in datasheet chapter 3.4 on page 26?  

    For your application,  i will have the following recommand: 

    1. before testing, ask tester to stand for a while with arm down and keep arm straight position.  this will help to calibration the position 

    2. then user can move arm and you can read sensor data to calculate the relative position. 

    Icon--AD-black-48x48Icon--address-consumer-data-black-48x48Icon--appointment-black-48x48Icon--back-left-black-48x48Icon--calendar-black-48x48Icon--center-alignedIcon--Checkbox-checkIcon--clock-black-48x48Icon--close-black-48x48Icon--compare-black-48x48Icon--confirmation-black-48x48Icon--dealer-details-black-48x48Icon--delete-black-48x48Icon--delivery-black-48x48Icon--down-black-48x48Icon--download-black-48x48Ic-OverlayAlertIcon--externallink-black-48x48Icon-Filledforward-right_adjustedIcon--grid-view-black-48x48IC_gd_Check-Circle170821_Icons_Community170823_Bosch_Icons170823_Bosch_Icons170821_Icons_CommunityIC-logout170821_Icons_Community170825_Bosch_Icons170821_Icons_CommunityIC-shopping-cart2170821_Icons_CommunityIC-upIC_UserIcon--imageIcon--info-i-black-48x48Icon--left-alignedIcon--Less-minimize-black-48x48Icon-FilledIcon--List-Check-grennIcon--List-Check-blackIcon--List-Cross-blackIcon--list-view-mobile-black-48x48Icon--list-view-black-48x48Icon--More-Maximize-black-48x48Icon--my-product-black-48x48Icon--newsletter-black-48x48Icon--payment-black-48x48Icon--print-black-48x48Icon--promotion-black-48x48Icon--registration-black-48x48Icon--Reset-black-48x48Icon--right-alignedshare-circle1Icon--share-black-48x48Icon--shopping-bag-black-48x48Icon-shopping-cartIcon--start-play-black-48x48Icon--store-locator-black-48x48Ic-OverlayAlertIcon--summary-black-48x48tumblrIcon-FilledvineIc-OverlayAlertwhishlist