Ich versuche jetzt nochmal die Aufgabenstellung zusammenzufassen, so wie ich es verstanden habe: Sofern Deine Motordrehzahlüberwachung zuverlässig funktioniert, wird "normales" Anstoßen gegen Hindernisse zuverlässig erkannt (beide Motoren bleiben stehen). Der Zweck des Neigungssensors ist es, Störungen zu erkennen, bei denen beide Antriebsräder weiterlaufen. Das kann sein: Glatteis (schließen wir bei Indoorbetrieb aus) oder Auffahren auf Hindernisse mit dem Boden, so dass beide Antriebsräder mehr oder weniger in der Luft hängen (wenn ein Rad noch am Boden bleibt wird sich das k.T. solange drehen, bis entweder beide Räder hängen, oder es fährt sich frei oder es stößt beim Drehen an, so dass das Rad das noch am Boden ist blockiert, was die Drehzahlerkennung aktiviert).
Dein Ansatz ist, mit einem Beschleunigungs / Neigungssensor einerseits die Situation zu erkennen, in der sich das k.T. festfährt (Pendelausschlag durch die abrupte Verzögerung) oder andererseits das (hoffentliche) Schiefstehen des k.T. nach dem Festfahren zu erkennen.

Ich bin jetzt im Zweifel, ob der Ansatz überhaupt sinnvoll ist, längeres Schiefstehen mit gleichzeitiger Bewegung kann ja ein normaler Zustand sein (ein Rad auf Boden, das andere auf Teppich), wie soll das unterschieden werden? Das Anstoßen kann so weich geschehen, dass der Sensor gar nicht anders anspricht wie bei einem normalen Fahrmanöver. Wenn das Hindernis mittig unter dem k.T. ist, wird es vielleicht nicht einmal schief stehen.

Ein alternativer Ansatz zum Erkennen, ob ein Rad (oder beide) in der Luft hängen: Man verändert für kurze Zeit den Motorstrom und beobachtet wie schnell sich dabei die Motordrehzahl verändert. Fährt das k.T. normal, dann wird man nur eine langsame (oder keine) Änderung feststellen, weil die Schwungmasse des k.T. zu groß ist. Hängt das Rad in der Luft, dann ist die beschleunigte Masse klein und die Drehzahl wird sich schnell ändern. Die Drehzahl misst Du schon, also brauchst Du dafür nicht einmal einen zusätzlichen Sensor.