Encoder Motor

Uit RobotMC.be
Ga naar: navigatie, zoeken

Motor met encoder voor 10 € !

JH encoder1.jpgJH data motor.pngJH encoder4.jpg

Deze motor kan je vinden bij chinese aanbieders. Ik betaalde 10.68€, verzending gratis. De specificaties zien er eigenlijk vrij goed uit : Spanning 12 VDC, overbrenging 1:34, A/B encoder met Hall elementen, 11 poolparen op de motoras. Dit geeft dan 342 counts/rev van de uitgaande as. Encoders geschikt voor 3.3 VDC. Toerental onbelast bij 12VDC : 330 t/min aan de uitgaande as. Onder belasting zal dit dan zakken naar 280 tot 310 t/min. Met een wiel van 70 mm halen we dan een snelheid van 1.1 m/seconde. De motor laat zich vrij goed regelen : hij start reeds met draaien vanaf 1 VDC, bij het terug omlaag regelen blijft de motor dan draaien tot aan 700 mV. Ook de stroom onbelast zit een stuk onder de 200 mA, ik heb 140 mA gemeten bij 12 VDC. Volgens de documentatie zou de stall current zelfs 5.5 A bedragen, maar dit heb ik niet getest. Een mogelijke H-brug is de L298, alhoewel deze misschien iets te licht is. Op de flens vooraan (as-zijde) zijn 2 tapgaten voorzien M3 op een steek van 17 mm. Hiermee kan je de motor bevestigen.

Link : Bij dx.com, 12 V versie

Ook in 6V te vinden, maar met andere overbrenging : Bij dx.com, 6V versie

Bij banggood, 6 V versie 6V versie met keuze overbrenging

Encoder signaal

3.3VDC Voeding3 VDC Voeding

In deze figuren zie je het encodersignaal bij 3.3VDC voedingsspanning, en bij 3VDC voeding. Het is duidelijk dat bij 3V het signaal volledig onbetrouwbaar is. Ik heb dit getest bij 2 motoren, en dit gaf hetzelfde beeld. De absolute minimale spanning is 3.2 VDC ! Dit is natuurlijk problematisch voor als je deze encoders wil gebruiken in combinatie met een STM32 Discovery bordje. Immers, daar is de normale spanning slechts 3 Volt. De reden is dat hier steeds een diode na de spanningsregelaar is voorzien. Hierover valt ongeveer een verliesspanning van 0.3 Volt. Een workaround is een externe spanningsregelaar van 3.3 V voorzien, of de bewuste diode overbruggen (SMD bat 60 diode). Ook kan men 5V gebruiken, bepaalde ingangen van de STM32 zijn 5V tolerant (analoge ingangen NIET !).

Het stroomverbruik van de encoders bij 3.3 VDC bedraagt ca 5.5 mA. Een rode LED op het encoderprintje signaleert de aanwezigheid van de voedingspanning. Bij 5V stijgt het stroomverbruik tot 9 mA. Ik vond nergens de maximaal toegelaten spanning van de encoder, maar ik vermoed wel dat deze 5V tolerant zijn.

Het faseverschil tussen kanaal A en B bedraagt ongeveer 65° (ideaal = 90°). Dutycycle van A en B is ca 55 % (ideaal = 50%). De magneetring heeft 11 poolparen, er zijn dus 44 flanken per omwenteling van de motoras. De vertraging bedraagt ongeveer 1 op 34, dus dit geeft dan 1496 flanken per wielomwenteling (indien je alle flanken kan uitwaarderen met je µ). Met een wiel van 70 mm is de afstand dan 0.149 mm/flank. Een goed bruikbare waarde om odometrie toe te passen.

Snelheid in functie van PWM

Een goede H-brug voor deze motor is de DRV8801 (Polulu)[1]. Dit is een moderne H-brug met Fets, nominale stroom 1 A, piekstroom tot 2.8 A. De brug is relatief goedkoop (5 €), maar ik vond ze niet in het verre oosten, dus verzendkosten zal je rekening mee moeten houden. Ik heb ze hier gekocht :[2]. De brug kan naar keuze "Hard" of "Zacht" aangestuurd worden. De harde aansturing vereist slechts 2 stuursignalen : PWM en DIR. Je kan zowel 5V als 3V logica gebruiken. De gemeten snelheden in functie van de PWM waarden waren verbazingwekkend goed : perfect lineair, en voor beide motoren vrijwel identiek. Ook in het onderste bereik (stickslip), waren beide motoren vrijwel identiek (draairichting van motor1 was invers aan die van motor2) Voedingsspanning 11.5 VDC, PWM freq was 16 kHz, 500 = 100% duty cycle.

JH drv8801.jpg

JH pwm1.pngJH pwm2.pngJH pwm3.png

Deze motoren in mijn discovery robot

Hieronder kan je een een video zien waarbij deze motoren gebruikt worden in mijn discovery robot. Dankzij de encoders kan je odometrie toepassen, de positie van de robot wordt elke 100 ms geplot op het beeldscherm.