Fórum témák
» Több friss téma |
A klónok CH340 Soros-USB illesztőjének drivere (Letöltés)
A következőképpen müködhet ? (ugyanaz az időzitő, csak más értékkel)
A hozzászólás módosítva: Márc 19, 2024
A végfokozat megvan és müködik, nem az a kérdés. A hiddal valamivel több energiát tudok átadni mint triakkal és a berendezés akár akkurol, egyenáramrol is müködik.
A hozzászólás módosítva: Márc 19, 2024
Nem a triak-ra gondoltam, hanem a szoftver megoldásra! Az időzítőkre, a triakokat csak úgy mellesleg említettem
A hozzászólás módosítva: Márc 19, 2024
Én is egy idözitön gondolkodom. Na mindegy delután megirok valamit meglátom mire jutok.
Szia!
Gondolkodtam rajta, három timerrel megoldható, egyszerűbben. Két timerrel megoldható, kicsit nehezebben. 1 timerrel megoldható sokkal bonyolultabban, és pofon egyszerűen is, épp ahogy mondod. A delay-t nem is használva micros-al és while-okkal megoldható. De a delay microsec is jó lehet ide. Én kipróbálnám, hogy az interrupt függvényben egyszerűen microssal megvárnám, míg d4 magas, utána d4 alacsony d5 magas majd egy másik while, ami után a d5-t alacsony. (while-al és a microssal mérném az időt) De! H-hídnál kell egy kis késleltetés, hogy a tranzisztorok ne nyissanak szembe! Oda meg betennék egy kis while-t micros időméréssel, így d4 lekapcsol de d5 kis időkéséssel kapcsol csak be. Megpróbálom szimulátoron és küldöm az elképzelésemet forráskódba, de szerintem épp erre gondoltál te is. A hozzászólás módosítva: Márc 19, 2024
De nem lenne jobb tisztán szinuszos alapjelet előállítani és azt erősíteni? Mert arra kis plusz munkával könnyedén rá lehetne ültetni DC komponenst is. Persze ehhez nem H-híd kellene erősítő fokozatnak.
Elméletileg lehetne, kb 10 A kellene ugy 18-20 V körül a maximális szinten. Ez ugye kb 200 W és ennyit el is kellene disszipálni, ha csak 5-6 V lenne a kimeneten.
Ok, értem. Csak azért kérdeztem, hogy nem jobb a gépnek a tisztán szinuszos? Mert ha az jobb lenne, akkor is lehetne szerintem játszani kicsit. De még gondolkodom. Amúgy a sima várakozás megoldja amit szeretnél. Elvileg meg is csináltam, sokkal könnyebben is meg lehetne csinálni, de nem tudom tesztelni.
Csináld meg ahogy elsőként gondoltad, nem jó irányban kezdtem gondolkodni, bocsánat!
A H hiddal ne nagyon foglalkozz annak van a bemenetén egy proci ami kezeli a H hid müködését ( védelmét is stb) utovégre 40 A 50V-ra lett tervezve.
Csak 2 TTL bemenete van az egésznek. Azt hiszem van ott valami késleltetési beállitás is, de eddig nem kellett vele foglakoznom. Kösz szépen a segitséget. Mint irtam sima 555 meg 2 TTL áramkörrel már müködik részben, de ott nem lehet a DC tartományt kialakitani meg nem stabil a frekije. ( valtozik a PWM-mel). Az nem baj ha a hid mindkét fele egy szinten van, söt az ki is használom mert söntöli/fékezi a motort. Mindenképen microst kell használnom mert a DELAY csak ms felbontást tud azaz a 10 ms-s félperiodusban csak 10 lépést tudna ami egy kicsit kevés.
Ennyit pakoltam össze 10 perc alatt a wokwi-n, nem tudom most tesztelni.
Ezek mezei motorok meg relék, amit amugy is gyakran PWMmel hajtanak. Azon még gondolkodok hogy azt a két relét amit mechanikusan blokkolnak a váltoáram esetében lehet, hogy egy LP filterrel szürni kell, mert a négyszögjelre eléggé összevissza megy az egyik a másik jobban viselkedik. De ez most másodlagos elöbb a motorokat kell tudni vezérelni.
És is elöbb szinuszra gondoltam. Szereztem is egy 150W digitális erösitöt,, de az habár 12 V-rol van táplálva belül felemelik a feszültséget kb 40 V-ra ami szintén nem jo.
Ez csak valamiféle kód, nem tesztelt, de szerintem ennyi is elég lehet. Több timer meg egyéb csak tovább bonyolítaná az egészet. Azt kell biztosítani, hogy ez tutira 20ms alatt fusson le. Én azt tenném, hogy ezt a függvényt más néven elmenteném, az interruptot nem engedném és a setup-ban hasonló módin lemérném, hogy mennyi idő alatt fut le. Ha tuti, akkor mehet az interruptba.
Kösz kiprobálom csak most elromlott valami a házban a nejem nem tud dolgozni.
Még ez nem jó, mert a <> sem jó, az irány ez, ezen még kalapálni kell kicsit!
Hali!
Mintha hiányozna a timerAlarmEnable(...); ezt is olvasd el, itt írtak valamit... https://electronics.stackexchange.com/questions/657658/ac-dimmer-es...oom32d nem próbáltam, nem vagyok benne, csak partszélről belevau, a napokban olvastam, eltettem...
Tovább gondolva én ilyet már csináltam is, igaz szimulációban. PWM állíthatná elő a szinusz jel pillanatnyi értékét, a szinusz jel amplitúdóját lehetne szabályozni. Így esetleg nem lenne olyan sok a disszipáció, mert a FET-ek mindig teljesen nyitva vagy teljesen zárva lennének, természetesen +12V-ot adnának csúcsban, de a PWM értéke (átlagolt) lehetne a kívánt max amiltudójú szinusz jel pillanatnyi értéke. De ez csak álmodozás, épp ilyet nem csináltam, de dsPIC-ben szinuszt PWM-el igen. Persze ekkor igen nagy felbontású PWM kell elég magas frekvencián. Erre az Arduino nem lenne elég szerintem. dsPIC simán vitte, de nem emlékszem már pontosan mekkora volt a frekvencia. Nekem KHz-ek kellettek, ezért másképpen oldottam meg.
De mielőtt álmodnék nagyot, le kellene programozni HELYESEN amit küldtem...
Rossz helyre ment! Bocsi!
A hozzászólás módosítva: Márc 19, 2024
Na most itt vagyok de ma mar ne hiszem, hogy programozni fogok. Kösz szépen az ötleteidet, jol használhatok. Persze nekem még be kell kombinálnom a potit ( állitani a idöket) meg a kapcsolot ami változtatja a DC szintet.
Lehet én sem, de azért holnap összerakom és valós környezetben szkóppal ránézek, mert tuti nem jó amit küldtem. Az csak iránymutatásképp van! Erre azért figyelni kell. A másik gondolatommal is eljátszok kicsit.
Kösz holnap talán lesz több idöm.
Ezt dobtam össze, szerintem jobb, mintha a timer-el lenne megoldva, mert ha abban csak 1 utasításhoz tartozó időtúllépés lenne, akkor az hibát okozna. A kód így csak 160 microsec-el lépi túl a 20 ms-ot, szerintem az még elfogadható. A függvény utolsó while-ja illeszti az eltelt időt a 20ms-hez. Csatolok pár szkóp felvételt is.
Szerintem így is jó lehet neked, és szerintem stabilabb is lehet.
A digital write helyett lehetne port manipulációval állítani a lábakat, mert az sokkal gyorsabb.
Kösz délután kiprobálom.
Helló
Én is pont ezzel foglalkozom,kitettek a szaldóból és nyáron van havi kb. 1000 kWh,ősszel 5-600,télen párszáz kWh felesleg,amit nem akarok betáplálni.Én is a hőenergia tárolást szeretném megvalósítani,az akku csak 1-2 nap,a hőmennyiségből sokkal több tárolható,de sokkal bonyolultabb,mint a programozás.Megjöttek az Ali-ról a JSY194 szenzorok,ezekkel fogom megállapítani,pillanatnyilag mennyi fűthető el az egyéb fogyasztások mellett,de én inkább a közvetlen napelem DC-t terhelném IGBT-vel kapcsolva a fűtő elemeket.Nekem úgy tűnik egyszerűbb a vezérlés és az invertereket is csak a ház belső fogyasztása veszi igénybe,valamint kisebb a veszteség is.
Én is ezen agyalok hogy és miként lehet eltárolni az energiát. Te mire jutottál? Nekem egy nem visszatermelős rendszerem van amit bőviteni szeretnék még 8-9kw-al amit csak fűtésre szeretnék használni. Első sorban kiegészítő fűtés lenne időzítve. Mielőtt hazaérek menne 1-2 órát. Napi 12-13 óra távolét. Elektromos tömegkályha is gondoltam már rá. 400-600C° melegítve
ATMega328-on ha teljesen pontos időzítésű, de folyton változó időtartamú négyszögjeleket kell kiadni, akkor van az a trükk, hogy a compare regiszterre való reakciót mindig újraprogramozzuk, hogy magasba vagy alacsonyba vigye a kimenetet a következő compare-rel való egyezésnél. Plusz mindig nullázzuk is a számlálót, és ISR-ben egyből újrakonfiguráljuk a rendszert, akkor tetszőleges mintát ki lehet adni vele. Ha a két jelváltás közötti időbe belefér az ISR kiszolgálás ideje, akkor soha nem hibázó tűpontos vezérlést lehet csinálni vele. Meg lehet azt is csinálni, hogy főprogram egy ringbuffer-be írja az időtartamokat, és az ISR csak végrehajtja, így lesz az ISR a legrövidebb és legegyszerűbb talán. A főprogram pedig tetszőleges mintát pakolhat kevésbé real time követelmények mellett.
Egy példa az AltSoftSerial megvalósítása: https://github.com/PaulStoffregen/AltSoftSerial/blob/master/AltSoft...p#L155
Kösz egyelöre probalom a Koblog kolléga verzioját csak nem volt idöm még összerakni a hardwaret. A kodot már egy kicsit átirtam talán holnap le is tesztelem.
Ezt tetszik, mert ez lenne a korrekt megoldás, ennyire nem másztam bele az Arduino processzorába, azonban az általad javasolt megoldással lehetséges két pin-re kitenni a jelet? Itt két külön pin van, de ekkor gondolom vagy két folyton változó PWM -kell, (PIC-ben ez meg van oldva), vagy a kimenetet kell változtatni, miközben a PWM compare értékét is változtatjuk?
Volna egy kis kódod erről? Azért tudom, hogy kis kód, mert ha jól sejtem sokkal rövidebb lenne az enyémnél. dsPIC-ben csináltam hasonlót, a regiszterekkel operálva rövidebb lehet a kód. Massawa: Ha működik is a kódom, vagy az átalakított kódod, akkor is meg kellene nézni/fontolni asch javaslatát is. Már ha van rá időd/kedved. Nekem lenne kedvem kipróbálni.
Adatlapon kívül ez is hasznos, kezem érteni ezt a rendszert is, kipróbálom!
Bővebben: Link Valójában a "Arduino Timer Interrupts Example (COMPA+COMPB)" fejezetben meg is oldja a feladatot. A hozzászólás módosítva: Márc 21, 2024
|
Bejelentkezés
Hirdetés |