De zaak van de intermitterende misstap van de JGB37-520-encodermotor
Een 72-uurs onderzoek naar de oorzaak
Een 72-uurs onderzoek naar de oorzaak
Auteur: University RoboMaster ECU Team
Datum: 14 juli 2025
Datum: 14 juli 2025
-
Symptoom
20 december 2024, tijdens het afstemmen van onze 2025 RoboMaster infanterie robot:
• Bij 1,5 m/s sprint in rechte lijnen dreef de robot elke 3,5 m 3 ̊5 cm recht.
• Bij drijven, de rechter JGB37-520 (12 V, 30:1, AB-encoder) snelheid daalde met 15%; linker wiel normaal.
• Het opnieuw opstarten van de STM32F407-master verborg het probleem voor ~ 30 s, waarna het terugkwam.
• Motortemperatuur 35 °C, stroomvoorziening 12,1 V, geen over- of onderspanningsalarm. -
Aanvankelijke controles
Stap. Actie. Resultaat. Conclusie.
Ik wil dat je meegaat. Ik wil dat je meegaat.
1 Swap links/rechts motoren Drift richting volgt motor motor specifieke kwestie
2 A/B golfvormen. 03.3 V vierkante golven schoonmaken. Encoder hardware OK.
♫ 3 ♫ Loop in open lus (encoder losgekoppeld) ♫ Geen drift ♫ Probleem in gesloten lus
4 PID wordt onmiddellijk verzadigd met 100% vals doel niet bereikt -
Analyse van de oorzaak
-
Ground-bounce in gedeelde bedrading
De motor en de encoder GND delen een 30 cm lange lintkabel (motor AWG20, encoder AWG28). -
MCU-filter te smal
STM32 TIM-invoerfilter ingesteld op 0,1 μs → spike edges geteld als geldig → 2 ¢ 3 extra pulsen → PID vermindert PWM → echte stilstand. -
Triggertoestand
Gebeurt alleen bij PWM > 80% en motorstroom > 1,2 A; bij tests bij lage snelheden is dit nooit weergegeven. -
Fixes
-
Herkabelen.
• Scheid 24 AWG-twisted pair voor encoder 5 V & GND, fysiek weggeleid van stroom.
• 100 μF + 0,1 μF ontkoppeling aan de motorterminal om de grondbounce te elimineren. -
MCU-parameters
• TIM-filter uitgebreid tot 1 μs.
• Activeer 3 uur digitale storing. -
Beveiliging van software
• Om de 1 ms wordt gecontroleerd impulsverhoging × versnellingsverhouding snelheid; afwijking > 5% flag encoderfout terugkeren naar open lus gedurende 50 ms en vervolgens opnieuw synchroniseren. -
Verificatie
• 100 m heen en weer met 2 m/s onder volle lading: nul drift.
• 48 uur burn-in (willekeurig 80-100% PWM): geen foutgetallen.
• Zeven wedstrijdwedstrijden, in totaal 3,6 km: geen sprint drift. -
Lessen geleerd
-
De encoder ziet er goed uit ≠ de signaalketen is goed ≠ de grondbounce is de stille moordenaar.
-
Bij PWM > 80% kan de JGB37-520 1,5 A trekken.
-
Voeg altijd software escape toe: gesloten-loop systemen hebben sensor lost open-loop safe logica nodig.
Het ECU-team heeft deze oefening omgezet in de JGB-Series Wiring Checklist V2.1, nu verplicht voor elke toekomstige bot.



