Есть два акселепрометра: Troyka 10 IMU (lis331dlh) и MPU6050 Оба в состоянии покоя показывают около 1G (MPU 0.9 g показывает) разложенные по осям. как это побороть? или я чего-то не понимаю. они же ускорение, а не направление ускорения свободного падения
в состоянии покоя на тело действует сила притяжения. но в то же время на него действует противоположнонаправленная и равная по модулю сила Fпротиводействия. Таким образом, когда плата акселерометра лежит на столе, то на акселерометр не действуют никакие силы( иначе плата двигалась равноускоренно в направлении результирующей силы). соответственно акселерометр должен показывать 0. Или я подзабыл физику?
Силы действуют, а сила F противодействия в данном случае это нормальная реакция опоры (буква N), а так как сила N и Fтяжести равны, и векторы этих сил направлены противоположно, то тело находится в состоянии покоя и не проваливается сквозь стол. Но эти силы действуют на тело. Если акселерометр в сумме показаний всех осей показывает 1G, и при этом показания разнонаправленных осей равны, то все нормально.
Ну так ускорение это производная скорости. И если скорость не меняется то ускорение должно быть нулевым.. И получается, если я хочу проинтегрировать ускорение, мне надо определить углы, вычесть проекции G и тогда уже интегрировать?
Почти всё так, но тут следует понимать принцип работы акселерометра. Реальное устройство не простое, но можно провести следующую аналогию: представьте пустотелый куб с шариком внутри, каждая грань куба -- это сенсор давления, при перемещении куба шарик внутри будет с определённым усилием давить не грань(ни) противоположную(ые) направлению перемещения (из-за того, что шарик имеет массу и соответственно инерцию), усилие с которым будет давить шарик на грань(ни) пропорционально ускорению куба при перемещении. Таким образом можно измерить ускорение.. И если такой куб оставить в состоянии покоя, то на шарик будет действовать сила тяжести, и соответственно шарик будет "давить" на нижнюю грань(ни) с этой силой. Думаю теперь понятно почему в состоянии покоя сумма векторов ускорений при любом положении MPU6050 будет равна 1G, т.е. силе тяжести.