Fórum témák

» Több friss téma
Fórum » AVR - Miértek hogyanok
 
Témaindító: pakibec, idő: Márc 11, 2006
Témakörök:
WinAVR / GCC alapszabályok:
1. Ha ISR-ben használsz globális változót, az legyen "volatile"
2. Soha ne érjen véget a main() függvény
3. UART/USART hibák 99,9% a rossz órajel miatt van
4. Kerüld el a -O0 optimalizációs beállítást minden áron
5. Ha nem jó a _delay időzítése, akkor túllépted a 65ms-et, vagy rossz az optimalizációs beállítás
6. Ha a PORTC-n nem működik valami, kapcsold ki a JTAG-et
Bővebben: AVR-libc FAQ
Lapozás: OK   780 / 837
(#) MATA hozzászólása Szept 11, 2017 /
 
Üdv mesterek!
Megépítettem ezt a kapcsolást http://www.instructables.com/id/How-to-Make-Universal-Battery-Charger/
a következő a gondom vele működik szabályoz de a szerző a fuse bitek beállításáról nem ír semmit így nem úgy megy a számláló ahogy kell! Értem ez alatt hogy ott a videóban 1 másodpercenként villog a led nálam meg kb 8 másodpercenként és így a kapacitás számolás sem jó! Nem tudom mire kellene állítani a dolgot? Előre is köszönöm a segítséget!
(#) zolee1209 válasza MATA hozzászólására (») Szept 11, 2017 /
 
Szia!

Fuse biteknél ki kell kapcsolni a CKDIV8-at.
(#) MATA válasza zolee1209 hozzászólására (») Szept 11, 2017 /
 
Hello! Köszönöm mindjárt megpróbálom!
(#) MATA válasza zolee1209 hozzászólására (») Szept 11, 2017 /
 
Köszönöm szépen ez volt a baj most már megy rendesen!
(#) Kovidivi hozzászólása Szept 17, 2017 /
 
Sziasztok!
A csatolt kapcsolási rajz és ütemterv szerint szeretnék egy h-hidat leprogramozni, ami csak N-csatornás FET-ekből áll, és bootstrap kondis a felső N-FET meghajtása.
A timer2-t használom Atmega8-nál, 8MHz/64-es előosztás, tehát 488Hz egy periódus, vagyis 2,05mS, egy lépése a timernek pedig 8uS-ként történik meg. Az ADC előosztója szintúgy 64, és 14 órajel kell neki egy méréshez, ami egyenlő 14db timer lépéssel, kijelenthetjük, hogy nem okoz gondot minden ciklusban mérni egyet. A h-híd kitöltési tényezőjét 0-~90% között lehet állítani, a maradék 10%-ban (vagy amennyit akarok) töltjük a felső oldali kondit. A képen látható ábrán csak az egyik irányba forgást ábrázolom. Jó az elképzelésem? Ahhoz, hogy AC kondi töltődni tudjon, a H-híd kikapcsolása, majd kis holtidő után, az Aa (Aalsó) FET-et kell bekapcsolnom kis időre, majd kikapcsolva már kapcsolhatom is be Af-t (Afelső) és Ba-t, vagyis a H-hidat. Ez a motor meghajtás már működőképes, de valamiért ha a felső oldali FET-et kapcsolom ki először, utána az alsót, máris töltött egy kicsit a kondiba. De honnan? Ha Af és Ba be volt kapcsolva, majd kikapcsolom Af-t, a motor Ba-n keresztül GND-n van, a motor forgása miatt a GND-hez képest a másik kivezetésén maximális sebességen -12V-ot kellene mérnem. Ez nem tölti a kondit sehova. A kondi csak akkor tölt, ha Aa be van kapcsolva, vagy álló motornál Ba (motor=rövidzár).
A motor backemf feszültségét is szeretném mérni. Ugye jól spekulálok, hogy mikor a CA kondi tölt, a motornak pont a megfelelő kivezetése van GND-re kapcsolva, így senseB-n már mérhetem is a 12V-ot maximális fordulatszámon?
Próbálom összehozni az interruptot, de ez a backemf mérés része valahogy nem akar jó lenni... Esetleg magában az alap koncepcióban lenne a gond? Köszi.
A hozzászólás módosítva: Szept 17, 2017

terv.jpg
    
(#) Kovidivi válasza Kovidivi hozzászólására (») Szept 17, 2017 /
 
Annyira már rájöttem, hogy a backemf-t a senseA-n kell mérnem, miközben Ba be van kapcsolva. Így lesz az előjel is megfelelő. Remélem emiatt nem kaptam megfelelő eredményt.
(#) Szasza9668 válasza MATA hozzászólására (») Szept 18, 2017 /
 
Szia!

Nincs véletlenül egy nyák rajzod hozzá?

Üdv!
(#) mcz76 hozzászólása Szept 18, 2017 /
 
Sziasztok.

Egy kis segítséget szeretnék kérni. Kezdő vagyok, kérlek nézzétek el, ha nagyon láma.

Adott egy STK500 (?), MCP2200-val. Az eszközkezelőben MCP2200 USB Serial port emulator-ként jelenik meg (vid_04d8&pid_00df) és a hozzá adott driverekkel nem tudom működésre bírni. Mit tegyek?

Más. ATMega162-t szeretnék írni. Melyik SW-t javasoljátok?

Előre is köszönöm.
A hozzászólás módosítva: Szept 18, 2017
(#) Massawa válasza Kovidivi hozzászólására (») Szept 19, 2017 /
 
Szerintem már az elvben is van némi gond. Szvsz igen nehéz lesz valamit kezdeni az igy mért backemf-l, mert valoban a senseA-n jelenik meg valami a GND-hez viszonyitva (azaz a Ba-nak vezetnie kell).
Csakhogy ilyenkor a motor terheletlen igy a backemf is meglehetösen instabil érték lesz (motor és fordulatfüggö).
Nem irod milyen motor, jobb kefés motor esetében akár 100 V is lehet 12V táp esetén. Ráadásul a motorban levö kefék ezt a feszültséget akár meg is szakithatják a mérés pillanatában.
Ráadásul, a FET-kben valoszinü, hogy vannak szabadonfuto diodák (D-S között) akkor viszont söntölik a motort, igy a backemf gyakorlatilag a diodákon keresztül a táp belsö ellenállásába dolgozik. Igy annak értéke megint a táp belsö ellenállásátol fog függeni.


A korábbi irásodban is van valami gubanc.

Ha az Af-t kikapcsolod a Ba meg még bekapcsolva marad, akkor a senseA-n biztosan nem mérhetsz -12V-t, hanem azt a feszültséget, amit a még forgo motor generál, az meg bármi lehet a fentiek szerint, nem beszélve mindenféle átmeneti jelenségekröl, amik akár fel is tölthetik a CA kondit.
A hozzászólás módosítva: Szept 19, 2017
(#) Kovidivi válasza Massawa hozzászólására (») Szept 19, 2017 /
 
A back emf értéke nem lehet nagyobb, mint a tápfeszültség. Van egy kis tüske, amikor kikapcsolom a FET-eket, de ha kivárom, amíg lecsillapodik, utána már a backemf értékét tudom mérni. Jót mondtál, erre nem gondoltam, a kefe meg tudja zavarni a mérést. Ezért kaptam néha rossz értéket... Egyébként már minimális terhelésen elég stabil a backemf, de engem csak az érdekel, hogy lecsökkent-e 0-ra (vagy valami alacsony értékre). Ha igen, akkor tudom, hogy megállt a motor.
Ahhoz, hogy rendes programot tudjak írni, rengeteget kellene mérnem szkóppal, motor méretétől hogyan függ a backemf, a terhelés értékétől, fékezéskor, milyen időtartamú a csúcs minden esetben. Ez legalább egy egész napos mérés lenne, nyugodt környezetben, úgyhogy várok még pár évet
Addig tökéletesen működik a dolog, hogy veszi a gázkar jelét, és a motorhoz ugyanezt elküldi. Nagy tömegű autónál és erős motornál ez veszélyes. Kisebb autóknál nem okoz gondot, tehát ilyen irányba indulok el. Nagyon érdekes egyébként, hogy ha nem kapcsolok be semmi FET-et, hogy töltse a bootstrap kondit, csak meghajtom simán a hidat, akkor is fel van töltve a kondi, számomra nem egyértelmű, hogy miért... A backemf mérésekor sem kell a túloldali FET-et gnd-re húzni, akkor is megfelelő értéket kapok. Van minden kimenetről egy feszültség osztó, kiloohm-os nagyságrendben, lehet, hogy ennyi elég a töltéhez és az ADC méréshez is.
Ha a FET-ek ki vannak kapcsolva, akkor nem folyik a diódákon semmi áram, ez biztos. Egyrészt, mert a soros izzó nem világít, másrészt ugyan olyan tempóban lassul a motor fordulatszáma, mintha csak levenném a h-hídról a motor vezetékét. Ha arra gondolsz, hogy azonnal lefékez a motor, azt észrevenném, mert a programba már implementáltam a fékezést, és 100%-on szinte azonnal megállt a motor. Ha csak lekapcsolom a hidat, szép lassan megáll. A motor jelenleg egy johnson motort hajt a tesztek alatt, 280mm átmérő, 400mm hosszú, de egy 360 átmérőjű motort terveztem hajtani.
A hozzászólás módosítva: Szept 19, 2017
(#) Massawa válasza Kovidivi hozzászólására (») Szept 19, 2017 /
 
Idézet:
„A back emf értéke nem lehet nagyobb, mint a tápfeszültség”


Erre miböl következtettél?

Probáld meg a motort egy furogéppel meghajtani és meglátod mennyi feszültséget tud generálni.


Amugy sajnos azt nem fogod tudni elkerülni, hogy ne méregess szkoppal stb., ha jora akarod csinálni.
(#) Kovidivi válasza Massawa hozzászólására (») Szept 19, 2017 /
 
Ha 12V-ról tud x fordulatszámot, akkor ha kívülről meghajtom a motort x fordulatszámmal, nem lesz sokkal nagyobb feszültség a kapcsain (hatásfok miatt pár %-kal nagyobb lehet).
Bővebben: Link: "The back EMF is only (nearly) equal to the supply when the motor is running at it's speed (for that given voltage).", Bővebben: Link a szkóp ábrákon is látszik.
Az előző hozzászólásban is írtam, a motor nem fékezett, amikor lekapcsoltam a h-hidat, és nem világított az akksival soros lámpa sem. Úgy lassult, mint amikor leveszem a vezetéket a motorról (szabadon forog).
A hozzászólás módosítva: Szept 19, 2017
(#) Massawa válasza Kovidivi hozzászólására (») Szept 19, 2017 /
 
Jo az elmélet, csak a valoság szokott más lenni, ezért jobb ha leméred. Mert az is elöfordulhat, hogy megfutamodik az autod, akkor mit tesz majd a motor?
Amit irtál, csak azt mondja, hogy nincsenek diodák a FETekben.

Igy azokott egy hid kinézni.
A hozzászólás módosítva: Szept 19, 2017

IMG_2685.PNG
    
(#) Kovidivi válasza Massawa hozzászólására (») Szept 19, 2017 /
 
P0803pd a FET (Bővebben: adatlap), és van benne dióda. Ha megfutamodik az autó, maximum az akkumulátor feszültségét fogom tudni a motor kapcsain mérni. Van egy kis tüske, de az gyorsan lecsillapodik. Itt nem szimpla induktivitásról van szó, hanem forgó mágneses mezőről és generátorról.
A hozzászólás módosítva: Szept 19, 2017
(#) Massawa válasza Kovidivi hozzászólására (») Szept 19, 2017 /
 
Idézet:
„Ha megfutamodik az autó, maximum az akkumulátor feszültségét fogom tudni a motor kapcsain mérni”


Ez miböl következik?
A bicikli dinamon nincs semilyen akku, mégis jol megráz, ha nincs rajta fogyaszto.
(#) Kovidivi válasza Massawa hozzászólására (») Szept 19, 2017 /
 
Belinkeltem neked 2 oldalt, két teljesen más módon megindokoltam, és még mindig az ellentétét bizonygatod. Mutass egy oldalt, ami szerint a backemf nagyobb, mint a tápfeszültség! Ne a tüskét, amit már 3x leírtam, hogy jelen van, és gyorsan csillapodik, hanem a backemf-ről legyen szó.
(#) Massawa válasza Kovidivi hozzászólására (») Szept 19, 2017 /
 
Most itt vitatkozni akarsz, vagy elöveszed a szkopot és megméred?
Én csak felhivtam a figyelmedet arra, hogy nem egészen vannak ugy a dolgok ahogy irod. De csak folytasd, már tönkretettél egy halom FET-t.
(#) Kovidivi válasza Massawa hozzászólására (») Szept 19, 2017 /
 
Nincs szükségem szkópra, hogy tudjam, mekkora a backemf maximálisan (egyébként AVR-rel mértem, minden pwm ciklusban, és nem volt nagyobb érték mint a tápfeszültség). Viszont te nem tudtál egy cikket sem linkelni, csak engem akarsz munkára fogni. Ha mutatnék egy szkópábrát, ami engem igazolna, ismét kitalálnál valamit. Fel kell vennem téged is a "felesleges válaszolni neki" listámra.
(#) Massawa válasza Kovidivi hozzászólására (») Szept 19, 2017 /
 
Ha csak a linkelésröl lenne szo, akkor linkelhetnék is, de minek, te mindent jobban tudsz.
Megépitettem sok tucat motoros hajtást, igy kb tudom mire megy ki a játék. Nekem nem igen sikerült egy FET-t sem tönkretennem. Ettöl akartlak megkimélni.

További jo szorakozást meg FET égetést.

(#) Topi válasza Kovidivi hozzászólására (») Szept 19, 2017 /
 
Mindenképpen szükséges oszcilloszkóppal mérni, egy olyan indok miatt, ami még nem hangzott el, de nélküle nem lehetséges rendes és csendes Back-EMF-et csinálni.
Mikromotorok, nagymotorok sokaságainak Back-EMF meghajtását készítettem már el HW és SW oldalon is. Leírom mi a folyamat, és látni fogod, mire kell a szkóp.

1. Futási szakasz (előző PID érték PWM-jén futtatjuk átellenes FET-eken)
2. Minden FET kikapcsolása, várakozás a negatív túllendülésre. (pár us-ms)
3. Iránynak megfelelő (azaz az előző) alsó FET bekapcsolása (átellenes felső tag értelemszerűen nem kell). Erről az alsó FET-től lesz meg a generátor üzemű kapocsfeszültséged földpontja.
4. Mérsz és átlagolsz bőven.
5. PID ciklust futtatod, korrigálsz, új PWM, majd újra 1. pont.

Nagyon-nagyon fontos a 2. és a harmadik pont között várni. De hogy mennyit, az ha csak így vezérelten dolgozol akkor mérni kell. Azt, ha nem várod ki, akkor elrontja a mérésedet a negatív túllendülés (rossz kifejezés, műszakilag pontatlan is, de) rásütése a mérésedre.
Tehát nem a BEMF feszültség miatt kell szkóp, az mindig alacsonyabb lesz mint a hídtápfesz (műszaki okokból nem lehet magasabb, mert energia veszteség van mindig amíg nincs feltalálva az örökmozgó), de az időzítés a motor induktivitása okozta szünet mérése szempont nagyon-nagyon fontos. Hagyni kell, hogy a motor kirúgja magát kicsit mielőtt mérsz. Utána csodaszép DC-t tud adni, minél nagyobb pólusszámú a DC motor.
(#) Kovidivi válasza Topi hozzászólására (») Szept 19, 2017 /
 
Köszönöm a tanácsod, megfogadom. Nem szeretném feladni. 488Hz-es (2.05mS) PWM-et használtam, és kb. 0.24mS-ot vártam a 2-es és 3-as szakasz között (ez a teljes periódus idő kb.12%-a, tehát tűrhető), de nagyon ritkán még így is jött hibás ADC érték.
Meg lesz szkópolva, amint lehetséges.
(#) cimopata válasza Kovidivi hozzászólására (») Szept 20, 2017 /
 
Fordulatszámmal arányos feszt akkor tudsz mérni a motoron ha már nincsen motor áram. Mindaddig diódák vezetni fognak és csak a tápfeszt méred.

Én a helyebben rendes félhíd meghajtót használnék pl valamilyen IR ic-t és mérném az áramot. Akkor amikor a motoráram 0 akkor mérhetsz EMF-et ezt a helyedben a hét félhíd pontból leosztott feszültség különbség méréséből végezném.
(#) cimopata válasza Kovidivi hozzászólására (») Szept 20, 2017 /
 
Az hogy mennyi idő alatt csökken nullára a motoráram az a belső induktivitásától és a kör soros ellenállásától függ. 1-10ms biztos van+.
(#) cimopata válasza Massawa hozzászólására (») Szept 20, 2017 1 / 1
 
Akármelyik témában olvasok mind összehordasz egy rakás baromságot.

1, Belső dióda nélküli MOSFEt nem létezik maximum a képzeletedben. Valójában a félvezető PN átmenetéből adódóan alakul úgy ahogy van.

2, Sosem lesz magasabb a motor fesz ( a belső diódákat és a kör drop feszültségét leszámítva) mint hidat tápláló feszültség egészen addig amíg az a H hídon keresztül az akkumlátorra kapcsolódik.

Amit te állítasz az szabadonfutó motornál van üresen rádobsz egy multimétert.

Gondold már át kérlek hova milyen hülyeséget írogatsz mert egy kicsit hozzáértő egyből kiszúrja de a kezdőket csak összezavarod.
(#) Kovidivi válasza cimopata hozzászólására (») Szept 20, 2017 /
 
Helló. Köszi a megerősítést. Jó lenne mérni az áramot, de engem a back emf jobban érdekelne, legfőképpen, mert 4$-ért komplett kapsz 30A-t kapcsolni képes 3db félhidat, nyákkal, Atmega8-cal, 7805-tel, ezt szeretném a kedvem szerint átformálni.
(#) Massawa válasza cimopata hozzászólására (») Szept 20, 2017 /
 
Nem kell ezzel foglalkozni.

1.Abbol a Morickarajzbol nem lehetett kiolvasni milyenek a tranzisztorok meg milyen a motor.
2. A motorja egy nagy modellautoba van beépitve ami gyorsulhat is. ( azaz a back EMF nem igen lesz viszonyban a vezérléssel.)
3. A back EMF arra valo, hogy az elektronika stabilizálja a motor fordulatát vezérlés közben, s nem igen fog müködni, ha lekapcsolja a vezérlést (ez irta), mert akkor pontosan az történik amit irsz, a motor szabadon fut.
4. Az lenne itt a feladat, hogy fékezni tudjon a vezérléssel, azaz a motort milyen feltételekkel tudja rövidrezárni. Eddig mindig elégtek a FETek.


semmi gond, ha egy hülyeséggel több van itt...föleg ha nem olvasod el a téma elejét és nem tudod mit akar a szerzöje, mert már az egy nagy hülyeség ilyen formában
A hozzászólás módosítva: Szept 20, 2017
(#) Topi válasza Massawa hozzászólására (») Szept 20, 2017 /
 
Idézet:
„4. Az lenne itt a feladat, hogy fékezni tudjon a vezérléssel, azaz a motort milyen feltételekkel tudja rövidrezárni”


De fontos, hogy ezt semmiképp se így valósítsa meg, ugyanis fékezni is gerjesztéssel kell. Akár ellenáramú gerjesztéssel, de semmiképp sem rövidrezárással. Nem blokkolni, és impulzusáramokkal szétverni a FET-et a cél, hanem megállni, fékezni ahogy a neve is mutatja.

Idézet:
„A motorja egy nagy modellautoba van beépitve ami gyorsulhat is.”

A BEMF-nél ilyen nem fordulhat elő. Két okból:
1. A mérési-futási ciklus annyira kicsi pár ms, hogy ezidő alatt teljesen kizárt, hogy a motor mechanikai tehetetlensége okán jelentékeny feszültség növekedést generáljon, hiszen ebben az üzemben még a hídtápfesz eléréséhez is már eleve a korábbinál jóval gyorsabban kell forgatni.
2. Amiért csak elméletben jöhet létre, az az, hogy ehhez az szükséges, hogy a mérés pár ms-os pillanatában a motor tengelyéről hirtelen leváljon (letörjön gyakorlatilag) a forgatott tömeg, és egy pillanatra szabadon fusson. De a motor inerciája kevesebb általában mint a forgatott egység, tehát ha szabadonfutó állapotban mérsz, a mechnika tehetetlensége nem fogja engedni, hogy a motor gyorsabban forogjon, még akkor sem, ha a kisautód vagy bármi dombnak lefelé gyorsul. Ha meg amúgy is üresjárásban gyorsabban forog a motor mint vezérelt állapotban az meg már nem is a BEMF része. MOSFET esetén pedig ha nyitva az alsó tag, a felső PN diódája előbb utóbb megfogja a motort, mert a felső tag diódája kinyit a hídtápfesz felé, így a motor újra terhelést kap.
A hozzászólás módosítva: Szept 20, 2017
(#) Topi válasza cimopata hozzászólására (») Szept 20, 2017 /
 
Amúgy így van, hídáramot figyelve is meg lehet állapítani, mikortól lehet BEMF feszültséget mérni. Általában nekem erre csak nagymotorok esetén volt szükség, meg ha sokféle motorhoz kell alkalmazni az adott HW-t. Más esetben (és talán Kovidivi jelenlegi alkalmazásában is), elégségesnek bizonyult időt mérni, és rátartással belekódolni ezt az időt mint kötelező várás.
(#) Massawa válasza Topi hozzászólására (») Szept 20, 2017 /
 
Igy van, csak azt is figyelembe kell venni ( saját tapasztalat), hogy a vezéŕlés gyakran "fékezi" a motort ami gyorsabban fordulna, mint azt a vezérlés hatására tenné. Ilyenkor szokott billenni a elv. ( függ a motortol meg az elektronikátol)
A BEMF eljárás olyan feladatokra jo, ahol a motor fordulatszáma állando kontroll alatt van - azaz nem futamodhat meg ( pl olyan a mechanizmus - a modellvasuton tökéletes a BEMF eljárás, mert a csiga nem engedni gyorsulni a motort) a motor vagy a hajtott szerkezet és állandoan van vezérlés, ami szinkronizálja a BEMF mintavételt.
Az adott esetben 30A, szabadonfuto mechanizmus a hidáram sokkal célravezetöbb lenne.
A hozzászólás módosítva: Szept 20, 2017
(#) cimopata válasza Massawa hozzászólására (») Szept 20, 2017 / 1
 
Idézet:
„1.Abbol a Morickarajzbol nem lehetett kiolvasni milyenek a tranzisztorok meg milyen a motor.”


Egy motorvezérlésnél alap hogy még ha bipoláris tranyós a híd akkor kell mellé párhuzamos dióda a szabadonfutó áram miatt.

Sokszor írnak hozzászólók, olyat hogy azért kell a dióda mert a motor back emf tüskéket/impulzusokat termel. Micsoda badarság ez. Az ilyenek vagy nem tanultak a induktivitás működéséről vagy valami nagyon nagy zavar van a fejben. És sajnos nagyon sokaktól látni efféle hozzászólást.

Idézet:
„semmi gond, ha egy hülyeséggel több van itt...föleg ha nem olvasod el a téma elejét és nem tudod mit akar a szerzöje, mert már az egy nagy hülyeség ilyen formában”


Meg ne haragudj de már hogyne lenne gond? Szerintem itt az emberek többsége tanulni tanácsot segítséget kérni jön ide. Teljesítményelektronikában nekem már nincs szükségem segítségre de van olyan téma amiben szoktam kérni segítséget pl programozás. Namármost ott én sem szeretnék olyan fas...okból "tanulni" amik felrevezetnek. Ezért vagyok szigorú ha valaki ilyet ír.

Azt kellene megjegyezni hogy hasonlóan ahogy a kondenzátorokban a feszültség nem csökkenhet 0-idő alatt nullára úgy fordítva a tekercsél az áram nem csökkenhet 0sec alatt 0A-re mert ehhez végtelen nagy ellenfeszültséget kellene indukálnia a tekercsnek a végpontjain.

Egy kezdő pedig emiatt hiheti el hogy márpedig a motorok/relék kb minden ami induktív micsoda ördögtől való mert úristen tüskéket termel. Ez csak az okozat. Tisztában kell lenni hogy ennek az oka hogy induktivitásnál mindig biztosítani kell az keringő induktív áram további útját ha azt megszakítjuk. Emiatt kellene a párhuzamos diódák.

Ezt most nem neked írtam hanem azoknak akiknek zavar lehet a fejben.
Következő: »»   780 / 837
Bejelentkezés

Belépés

Hirdetés
Lapoda.hu     XDT.hu     HEStore.hu
Az oldalon sütiket használunk a helyes működéshez. Bővebb információt az adatvédelmi szabályzatban olvashatsz. Megértettem