Motorstyrning

Elektronikrelaterade (på komponentnivå) frågor och funderingar.
syltkaka
Inlägg: 188
Blev medlem: 9 december 2006, 18:55:09
Ort: Göteborg

Motorstyrning

Inlägg av syltkaka »

Hej

Ska driva en dc-motor (12V 2A obelstad). Det ska vara PWM och dessutom ska jag kunna byta riktning samt bromsa. Visst vore en maffig h-brygga med tillhörande feta FETar passande!? Men det tycker jag blir lite dyrt. Vill ha en enkel och billig lösning som jag dessutom kan förstå mig på. De flesta komponenter finns redan hemma.

Så, direkt till mitt förslag: schema

Tänkte kort förklara hur jag tänkt, därefter komma med några frågor.
Reläna är växlande och har 5V spole. Över spolen sitter en frihjulsdiod. Jag väljer funktion med A och B (A=B=1 --> framåt, A=B=0 --> bakåt, resten ger bromsverkan) och PWMar med PWM. Spänningsmatningen kommer fårn ett 12 batteri. Samma batteri kommer försörja en annan 7805 som jag använder till min AVR. Det jag är mest osäker på är inkopplingen av gaten.

1. Att frihjulsdioden hanterar någon spänningsspik vet jag men hur uppstår denna och vart tar den vägen (efter att ha passerat dioden)?

2. Skulle jag kunna använda samma 7805 till både AVR och relä eller kommer det generera mer störningar än om jag har två olika 7805?

3. Kan kopplingen i övrigt generera oönskade störningar?

4. Fungerar inkopplingen av gaten?

5. Finns det någon farlig kombination som gör att det kommer bli väldigt varmt eller gå sönder?

Slutligen. Tillägas bör att jag aldrig har ritat ett schema förut. Kalaset ska styras av en AVR, såklart. Datablad till HEXFET, här.
v-g
EF Sponsor
Inlägg: 7875
Blev medlem: 25 november 2005, 23:47:53
Ort: Kramforce

Inlägg av v-g »

Länken fungerar inte.

Edit:Det gör den visst.
Användarvisningsbild
$tiff
Inlägg: 4941
Blev medlem: 31 maj 2003, 19:47:52
Ort: Göteborg
Kontakt:

Inlägg av $tiff »

1. Spiken uppstår eftersom du slutar driva en ström genom spolen i reläet. En spoles primära magiska egenskap är att den gör vad den kan för att hålla strömmen konstant. Bryter du tillförseln av ström så är enda alternativet att försöka fortsätta driva en ström att generera en spänningsspik.

2. Ja, det bör gå bra om reläna inte är onödigt stora och om du avkopplar korrekt.

3. Ja, du kommer få problem med att drivningen av motorn kommer att få din AVR att bete sig (o)lustigt; omstart, hängning, omotiverat programhopp. Du måste bygga ett _bra_ filter mellan batteri och 7805. Åtminstoen en diod och en ganska stor konding.

4. Nja, jag tror du behöver en pullup/-down för att definiera späningsnivåerna när transistorerna inte leder.

5. Var försiktig med att kortsluta motorn (kallas ibland dynamisk bromsning), vilket du åstakommer när reläerna står i motsatt läge relativt varandra. Motorn kan ta stryk, och det går väldigt mycket ström genom kablar och reläer.
FETen kommer bli glad om du kompletterar med en flyback-diod över den precis som i fallet med reläerna. FETen har förvisso en integrerad som klarar belastningen i detta fallet...

6. Lycka till! :tumupp:
syltkaka
Inlägg: 188
Blev medlem: 9 december 2006, 18:55:09
Ort: Göteborg

Inlägg av syltkaka »

Tack för ett bra svar!

Det största problemet verkar vara att min AVR kommer få hicka. Är 1000µF för lite? Var ska dioden sitta?

Bromsen är mycket viktig och kommer att användas flitigt. Motorn är en skruvdragarmotor som har broms, så för motorn bör det vara okej. Reläna ska förmodligen sitta på ett kretskort och jag kan ju förtenna ledningsbanorna. Angående reläna. Tål de inte ganska mycket så länge som man inte bryter mitt i ett högt strömuttag?

Som sagt så är bromsfunktionen absolut nödvändig. Fungerar det inte såhär så får jag hitta på något annat.

Angående fly-backdioden (=frihjulsdiod?), ska den sitta som D3 här eller är jag helt tappad?

EDIT: En fråga till. Är detta det enklaste sättet att koppla in nFETen på (utan att just byta ut FETen)?
syltkaka
Inlägg: 188
Blev medlem: 9 december 2006, 18:55:09
Ort: Göteborg

Inlägg av syltkaka »

Okej. Då har jag hunnit testa lite och två problem är ur vägen men ett är kvar som jag inte får kläm på. Jag har inga problem med reläna och AVRen hickar inte till.

Mitt problem är att MOSFETen blir varm när man kör motorn med en dutycycle <90%. Min PWMfrekvens är 3.8kHz och min inkoppling är enligt följande schema.

R1 - 1800Ω
R3 - 3300Ω
Q5 - BC337
Q4 - IRFZ44N
PWM är kopplad till OC0A på min AVR

MOSFETen har suttit i en skruvdragare och där blir den inte alls varm oavsett om du belastar motorn eller ej. I skruvdragarn PWMas MOSFETen med en frekvens mellan 2,5 - 3,3 kHz. Har provat några olika värden på R1 och R3 men resultatet är det samma. Ge mig tips på vad som kan vara fel. Ska försöka att felsöka med ett oscilloskop men jag vet inte riktigt vad jag ska titta efter, tips?

MVH Martin
Användarvisningsbild
$tiff
Inlägg: 4941
Blev medlem: 31 maj 2003, 19:47:52
Ort: Göteborg
Kontakt:

Inlägg av $tiff »

Det låter som att din drivning är för svag och att FETen får jobba i det linjära området allt för länge. Har du ett oscilloskop så mät på gaten till FETen, det ska vara så nära fyrkantsvåg som möjligt.

R1 ska vara så lång som möjligt om du ska använda detndär metoden som drivning, men 1800 låter som det borde räcka om din motor bara käkar 2 A, jämfört med vad jag själv provat en gång i tiden.
Mindmapper
Inlägg: 7122
Blev medlem: 31 augusti 2006, 16:42:43
Ort: Jamtland

Inlägg av Mindmapper »

Ditt problem är att transistorn ej bottnar riktigt.
Tycker att din första ritning hade bättre förutsättning att få transistorn att bottna, men det behövs resistorer som begränsar strömmen.

Den här tråden har en del matnyttigt för dig.
http://elektronikforumet.com/forum/view ... fet#203322
Millox
Inlägg: 559
Blev medlem: 10 december 2005, 22:10:43
Ort: Östhammar

Inlägg av Millox »

Gateladdningen är 63nC enligt databladet. Detta ger:

t = R .* Q ./ V = 9.45 µs switchtid. (Fast den blir mindre eg, men bra att börja där.)

3.8 kHz ger 1 mW förlust i motståndet, så det är ok.

Approximera linjärt avtagande spänning och ökande ström =>

12 V och 2 A ger 60µJ per switchperiod vilket då ger 0.228 W switchförluster i transistorn. Slutsatsen är alltså att din bipolära transistor sannolikt leder under längre tid än den borde. Testa också att köra med ett 600 Ω motstånd istället för ditt 1800 och se om det blir bättre. Det bästa är att köra med en totempåle av 2 bipolära transistorer en pnp från 12 V och en npn från jord, då kan du nästan skippa motståndet till gaten helt, eller iaf köra med 10 Ω istället.
syltkaka
Inlägg: 188
Blev medlem: 9 december 2006, 18:55:09
Ort: Göteborg

Inlägg av syltkaka »

Hej. efter en lång natt och många försök så har jag gjort/kommit fram till följande:

Endast NPN som jordar eller totempåle gör ingen stor skillnad. Min våg på gaten är mkt fin och mkt lik en fyrkantvåg. Vi gjorde ett litet filter till drivningen av gaten vilket gör att den såg ännu finare ut men fortfarande blev den mkt varm. Vi satte en diod mellan drain och source (vad det nu ska vara bra för) men det hjälpte inte. Men sedan monterade vi en diod tvärs över motorn (såklart!) vilket gjorde MOSFETen sval. Men nu blev istället dioden jättevarm om vi belastade den motorn (strecket på dioden mot plus).

Så min slutsats är kanske att en diod över motorn gör oss glada men antagligen måste jag ha *rätt* diod som klarar motorns spikar? Jag har provat med en vanlig likriktardiod (IN4004) vilken man lätt eldar upp om man "stallar" motorn. Vilken typ av diod ska jag använda och vad ska den klara?

Tror ni detta är lösningen eller är det egentligen något annat som är galet?

Fråga om något är oklart i mina beskrivningar!
Mindmapper
Inlägg: 7122
Blev medlem: 31 augusti 2006, 16:42:43
Ort: Jamtland

Inlägg av Mindmapper »

Självklart, såklart. Trodde det var åtgärdat efter $tiff's inlägg, missade att du ritat D3 fel i schemat.
Har för mig att någon sagt att minst lika stor ström som motorströmmen.
Lägg på lite kostar inte så mycket i de här storlekarna på strömmen.
Likriktardioder är nog egentligen inte så bra. De är mera gjorda för långsamma 50-100Hz återkommande förlopp, de klarar stötströmmar, men repetiva snabba förlopp är inte deras grej. Beror även lite på hur snabbt du switchar.
Schottkydioder tycker jag är mera lämpade.
syltkaka
Inlägg: 188
Blev medlem: 9 december 2006, 18:55:09
Ort: Göteborg

Inlägg av syltkaka »

Har jag verkligen ritat D3 fel i detta schema? Det är iaf så jag kopplat den nu men det är kanske fel? Funderade på om en 70-140-87 skulle funka. Om man på drain sätter en sån här transientdiod kortsluten ner till jord (givetvis i backriktningen) så kanske den skulle ta hand om alla elaka spikar som motorn orsakar. Jag letade nämligen på elfa efter dioder som skulle tåla högström och då hittade jag inga shottkydioder.

Är jag inne på rätt spår? Likriktardioderna som jag använt bli riktigt varma. Är det hög spänning eller ström som orsakar detta?
Mindmapper
Inlägg: 7122
Blev medlem: 31 augusti 2006, 16:42:43
Ort: Jamtland

Inlägg av Mindmapper »

Jag såg fel i schemat, D3 är rätt inkopplat, tyckte den såg ut att bara vara inkopplad i bara ett läge på reläerna. Ursäkta, blir så ibland när man är jäktad.

Osäker hur transientskyddsdioder fungerar i denna tillämpning. Skulle ta SR504 istället
http://www.elfa.se/elfa-bin/setpage.pl? ... _70_140_87 Har sovit dåligt och känner att tankeverksamheten inte riktigt fungerar. Har du en 3A likriktardiod skulle jag prova den först även om den inte är optimal. 1N5408 är alltid bra att ha hemma.
syltkaka
Inlägg: 188
Blev medlem: 9 december 2006, 18:55:09
Ort: Göteborg

Inlägg av syltkaka »

Ja. Jag har IN4004 vilka klarar 1A. Satsar nog på SR504 som du sa. Får hoppas att det blir bra helt enkelt.

Tack för all hjälp sålänge. Uppdaterar när jag provat.
Skriv svar