BLDC 'gillend' geluid bij blokkeren

Hi,

Ik heb een hub motor 200W 24V met hall sensoren welke ik aanstuur vanuit mn eigen bldc controler. dit met 6 stap commutatie.
Nu gaat het aandrijving op zich goed tot de motor onder 'zware' belasting moet starten. Als deze dan niet op gang kan komen begint de motor te brommen en 'gillen'. Dit wanneer ik een vaste duty cycle aanhoud ivm Imax (2A) e.d. Wanneer ik op de hall sensoren kijk zie ik ook dat er hele korte pulsen binnenkomen en er dus heel snel gecommuteerd word tussen de hall signaal pulsen en dus eigenlijk valse sector indicatie.

Nu heb ik een RC filter op de hall sensoren met serie 100R en 100nF naar gnd. intern met de pullups van de dspic naar 3.3V. dit filterd wat spikes eruit maar lost het niet op. Als ik op de scoop kijk heb ik pulsen van zo'n 200usec.
De hall sensoren zitten op de input capture pinnen vande dspic. en bij iedere hall interrupt doe ik nu een commutatie.

Is dit probleem te verhelpen met hardware? of moet ik een debounce in de software maken?

Alvast bedankt voor de tips!

Is de belasting niet gewoon te zwaar ?

24V en 2A is 48W en nog niet de 200W watt de motor max aan kan.

Op 29 januari 2020 15:38:04 schreef benleentje:
Is de belasting niet gewoon te zwaar ?

24V en 2A is 48W en nog niet de 200W watt de motor max aan kan.

Ik stuur een 20% duty aan. dit om de snelheid en koppel laag te houden. Wanneer het karretje waar de motor op zit vastloopt mag deze blijven duwen zonder dat er iets kapot gaat.
In dit geval begint de motor soms dus te gillen.

Als de motor vastloopt, is het gevraagde vermogen waarschijnlijk veel hoger als 200W...

Arco - "Simplicity is a prerequisite for reliability" - hard en software ontwikkeling: www.arcovox.com
Hensz

Golden Member

In geval van overbelasting, wat dit is, kun je van alles verwachten.
Als je wilt dat je motor heel blijft, lijkt het me zaak om te detecteren dat het ding te langzaam of niet meer draait, vóór dat de boel in rook opgaat.
Met 20% duty cycle zit je ws aan de redelijk veilige kant, maar de motor zal toch minstens lekker warm worden met die 48W die nergens heen gaat.

Don't Panic!

Het 'vastlopen' word gedetecteerd en na een seconden of 10 verholpen door bijvoorbeeld de draairichting om te draaien.
Ik zal opwarming monitoren maar wil wel graag dat er met dit koppel deze 10 seconden 'geduwd' wordt.

Zelf dacht ik er net aan om misschien de tijd tussen de input capture interrupts bij te houden en dat als deze onder ntb tijd is de ic interrupt als glitch te beschouwen en dus niet te commuteren.

Zal dit werken? Puur als oplossing om het brommen/ gillen te voorkomen.

Dat vermogen kun je er alleen uit halen bij het nominale toerental!

100nF en 100R geeft 10us RC tijd, en pulsen van 200us lijken me erg lang voor een EMC probleem.

Op het moment van de commutatie zakt het koppel in, omdat de hoek tussen de rotor en stator velden op dat punt het meest ongunstig is, en je nog moet beginnen met het opbouwen van de stroom in de spoel die je net ingeschakeld hebt. Met een beetje flexibiliteit in het systeem draait de motor dan terug naar de vorige stap, waardoor de commutatie weer veranderd.

Je zou dit kunnen voorkomen door na elke stap voor korte tijd te voorkomen dat je een stap in de tegengestelde richting maakt; zodra de stroom in de nieuwe spoel na de stap op gang is, en de rotor een stukje is verdraaid, neemt het koppel weer toe, en val je geen stap terug.

Zolang je de stroom beheerst, mag zo'n motor in principe voor onbepaalde tijd een groot deel van zijn nominale stroom voeren. Het is iets minder, omdat bij een draaiende motor wat lucht verplaatst wordt dat helpt bij de koeling, en de dissipatie gelijk wordt verdeeld over 3 spoelen, terwijl een stilstaande motor de stroom constant door 2 van de 3 spoelen voert.

[Bericht gewijzigd door SparkyGSX op 29 januari 2020 21:00:23 (20%)]

Een manager is iemand die denkt dat negen vrouwen in één maand een kind kunnen maken

Zo een beetje elke motor begint geluid te maken als deze koppel moet leveren terwijl toerental 0 blijft. OP zich is daar dus niets vreemds aan de hand. Als je wilt dat de motor gaat draaien zal de stroom toch omhoog moeten of de belasting is gewoon te groot.
Een motor word niet warm van enkel de stroom want in een draaiende motor word Tegen EMK opgewekt en daarom is het product van spanning maal stroom kleiner dan bij een motor die blokkeert

10 Seconden lijkt me in deze toepassing niet overdreven maar als de motor in die tijd toch te warm word is het raadzaam om de tijd korter te maken.

Sorry, maar allebei je stellingen zijn gewoon onzin. Met een constante stroom gaat een DC motor met of zonder borstels gewoonlijk niet trillen, ze leveren een constant koppel als ze stilstaan, of een koppel met wat rimpel (afhankelijk van het ontwerp, aantal poolparen, etc.) als de draaien, vanwege de variatie in de hoek tussen de rotor en statorvelden.

De motorstroom is vrijwel altijd de dominante factor in de opwarming, er zijn natuurlijk nog ijzerverliezen en wrijvingsverliezen in de lagers (veel meer in de borstels als de motor die heeft). De tegen-EMK is niet relevant voor de opwarming, die is relevant voor het geleverde mechanisch vermogen. Bij een gelijke stroom zijn de I^2*R verliezen gewoon gelijk.

Als je een vaste spanning aanlegt wordt een geblokkeerde motor natuurlijk wel heet; de stroom wordt immers veel groter. Motor control gaat over current control, een constante spanning aanleggen is vrijwel nooit een goed idee, tenzij de motor altijd gemakkelijk op gang kan komen, waardoor de stroom binnen de perken blijft, of de inschakelduur zodanig kort is dat hij niet de tijd krijgt om oververhit te raken.

Een manager is iemand die denkt dat negen vrouwen in één maand een kind kunnen maken

De enige gillende motoren die ik ben tegengekomen waren 15kW ventilatoren met het schoepenrad zonder overbrenging rechtstreeks op de as.
Bij het aanlopen schreeuwden die een 5tal seconden als een zwaar slippende auto-alternatorriem die steeds meer en meer grip krijgt.
Mijn verklaring was dat je hier de slip 'hoorde' door de zware aanloop in combinatie met slecht 1 poolpaar (3000RPM)
.
Misschien vind uw probleem zijn oorsprong bij een bldc met ook maar 1 poolpaar
Als bij geblokkeerde motor het draaiveld snel blijft rondgaan gilt hij het uit
Waarom niet met de juiste aansturing en max stroom de volgende stap proberen te bereiken?

Op 29 januari 2020 20:57:45 schreef SparkyGSX:
Dat vermogen kun je er alleen uit halen bij het nominale toerental!

100nF en 100R geeft 10us RC tijd, en pulsen van 200us lijken me erg lang voor een EMC probleem.

Op het moment van de commutatie zakt het koppel in, omdat de hoek tussen de rotor en stator velden op dat punt het meest ongunstig is, en je nog moet beginnen met het opbouwen van de stroom in de spoel die je net ingeschakeld hebt. Met een beetje flexibiliteit in het systeem draait de motor dan terug naar de vorige stap, waardoor de commutatie weer veranderd.

Je zou dit kunnen voorkomen door na elke stap voor korte tijd te voorkomen dat je een stap in de tegengestelde richting maakt; zodra de stroom in de nieuwe spoel na de stap op gang is, en de rotor een stukje is verdraaid, neemt het koppel weer toe, en val je geen stap terug.

Mmmm interessant SparkyGSX. De motor is een hub motor. 20 polig met vertraging van 4.3:1. Hier zit een behoorlijke backlash in en de opbouw van het geheel is niet heel netjes.
Zou deze combinaties dus voor de situatie die jij schetst kunnen zorgen?

Ik heb nu kleine software debounce in de sectorovergang en voorkom hiermee het ongeldig commuteren. gillen en brommen is hiermee verholpen.

Sorry, maar allebei je stellingen zijn gewoon onzin.

IS wel handig als je dan even mijn naam erbij zet nu is het wat verwarrend. Maar ik zie nu ook dat het niet helemaal klopt wat ik zeg. Ik had ook meer in gedachten een motor met eigen koelventilator.