Fórum témák
» Több friss téma |
Fórum » PIC - Miértek, hogyanok haladóknak
Jó lenne látni egy fényképet az áramkörről.
Honnan táplálod a relék tekercsét? A stabilizált tápról, vagy a stabilizátor előttről?
Hogyan van összekötve a relék tekercse a PIC kimenetével?
Kösz a gyors reakciót. Hirtelen ilyen képet tudtam csinálni. A relék tápját a feszstab előtt veszem le.
Úgy gondoltam, hogy a relék áramait a digitális részével a kondi - lábára folyatom össze, továbbá a digitális részeket egy kicsit előtte közösítem (nem tudom, hogy ez mennyire korrekt megoldás). Arra törekedtem, hogy a relének a vezetékei közel és párhuzamosan fussanak. A képen a sárgával jelöltem az SMD kondikat, mert nem látszanak jól. Azt hangsúlyozom, hogy nem vagyok profi nyáktervező, úgyhogy lehet, hogy nagy baromságok vannak a képen.
A másik oldaláról itt van egy kép, de ez szerintem nem valami beszédes. Az 5 tüske a pickit2 csatlakozó, a 3 tüskével lehet jumperelni, hogy a pickit2 adja a tápot a programozáshoz, vagy a feszstabról jöjjön, illetve a 2 tüske rövidzárban a földre köti az mclr-t, hogy ne lebegjen.
Nekem tetszik az eredmény, kár, hogy nem úgy működik, ahogy szeretnéd
Annak van valami jó oka, hogy az MCLR-t földre kötötted (és kikapcsoltad), ahelyett, hogy bennhagytad volna, és a tápra kötnéd egy ellenállással? Amit megpróbálnék: a 2200uF, és a kis kondik + LD33 közé egy diódát rakni, és az LD33 oldalára még egy kisebb (mondjuk 100µF körüli) elkót. Így a relék nem tudnák elrángatni a stabilizátor betápját. Illetve ami még érdekes: a trafóra 1.11A van írva, van ott 8 relé, tuti elbír a trafó ennyi relét? Meg kéne nézni szkóppal, hogy mekkorát ránt a tápon egy-egy ki-bekapcsolás, időben és feszültségben.
A MCLR azért van így, mert nem akartam bajlódni a táp odavezetésével (bár most így elnézve pofonegyszerű lett volna), szóval az sima lustaság (meg persze bíztam benne, hogy jól meg van oldva a felhúzás a lapkán belül).
A relék 12V-on 44,4mA-t vesznek fel (tehát összesen kevesebb, mint fél amper), plusz a trafó szekunderén van egy 1A biztosíték, tehát van egy kis tartalék benne. Sajnos szkóp híján nem tudom megmérni a tüskéket. A diódás-kondis ötletedet kipróbálom a holnapi nap folyamán, remélem sikerül új nyák legyártása nélkül elvégezni az operációt.
Esetleg kapcsolasi rajz volna rola?. Ezt a PK2-sajat tap jumperelest teljesen felesleges csinalni, mert a PK2 felismeri, ha mashonnan van megtaplalva, es egyszeruen nem ad tapot. Meg annyit lehetne csinalni a dolgon, hogy a stablernek egy kulon diodaval levalasztott elkot tenni, ezzel levalasztanad a relek taplalasat.
Itt a táp kapcsolási rajza, remélem, nem böktem el semmit (sietve rajzoltam, néhány alkatrész típusa nem az, ami az áramkörben van). Átalakítottam diódás-kondisra a stab előtti tápszakaszt, beégettem a reléket sorban bekapcsoló programot, de a 3. relé bekapcsolása után jön a reset. Fura, mert kikapcsolás nincs, tehát a tekercs visszarúgása itt még nem jelentkezik, a PIC-et megtáplálja egy 1000u-s kondi (100u nem volt itthon), ráadásul azt sem értem, hogy miért nem az első relé bekapcsolása után jön a reset.
Az áramkör többi részét hamarosan küldöm. szerk: a csillagpontozást nem rajzoltam bele a kapcsolási rajzba A hozzászólás módosítva: Szept 18, 2012
Kösd ki a relét, úgy is reset? Lehet, valami zárlat is a relé meghajtó körül.
A graetz speciel fordítva van és a stabIC kimenetén nincs puffer. Egy 10...100µF elkélne oda.
Kiforrasztottam a 7. és 8. relét, és beégettem egy olyan programot, hogy a végéről elkezdi bekapcsolgatni őket. Ebben az esetben is a 3. relé bekapcsolásánál dobja el magát, pedig az első két helyen ki van forrasztva. Kiforrasztom a következő relét, és akkor kiderül, hogy a relé miatt resetel (gondolom ekkor egy relé kattanását sem fogom hallani) vagy túljut a 3 relés dolgon, és a 4-nél resetel.
Vicsys: igazad van, a hidat elböktem a rajzon, és beforrasztok egy 10u-s kondit. Mondjuk nekem rémlik, hogy még évekkel ezelőtt Watt azt mondta nekem ebben a topicban, hogy nem nagyon szokás 10u nagyságrendű kondit rakni a stab kimenetére.
Na bejött, amit az előbb írtam, resetelt, mielőtt a 4. relét kapcsolhatta volna, szóval a problémát máshol kell keresni (vagy összetettebb, mint gondoltam/gondoltuk). A program így néz ki:
A relék bekapcsolása eredetileg ciklusban volt csökkenő iterátorral, de átalakítottam ilyenre, mert ebben nincs annyi hibalehetőség.
Zárlat valamelyik kimenetnél, vagy a tranzisztornál? A kimenet bekapcsolásakor túlterheli a tápot, mire resetel az egész.
Összemértem mindent a relés rész környékén, ami közel van egymáshoz, plusz a PIC lábait, de sehol nem sípolt. Ha egy relé meghajtásának zárlata okozná a problémát, akkor szerintem a jelenség nem nézne ki ugyanúgy, ha az egyik illetve a másik oldalról kapcsolom be sorban a reléket.
szerk: ami most eszembe jutott: vannak bemenetek, amiket egyelőre nem használok. Úgy vannak megoldva, hogy a PIC-re kötött oldala el van húzva tápfeszre, és a bemenet szakadás-rövidzár jellegű. Ha a CCS kimenetté konfigurálja ezeket a lábakat, akkor ez talán bonyodalmat okozhat. Mindjárt ki is próbálom. A hozzászólás módosítva: Szept 18, 2012
Szia!
Tanárként kifogtam egyszer egy hasonlót, egy pár percig néztem a tökéletes programot, amit a megbeszéltek szerint csinált a srác, mégiscsak 3 LED ment a futófényből --> bekapcsolva hagyta WatchDog-ot ! Az pont ennyi időnél csinálta a hülyeséget, Neked véletlenül nem ez a problémád ?! Steve
A WDT ki van kapcsolva, a kettővel ezelőtti mellékelt kód 3. sorában, szóval nem hiszem. Most átírtam a kódot, hogy kézzel állítgassa a tris regisztert, és a még beforrasztott relék irányából kezdje a bekapcsolást:
Továbbra is resetel a 3. relé bekapcsolása után. A hozzászólás módosítva: Szept 18, 2012
Itt a teljes kapcsolás, graetz javítva, 10u a stab kimenethez hozzáadva. Remélem, most nem rontottam el.
Jól értem, a 3. relé nincs bennt és még is resetel? Akkor nem a relé zavarjele okozza a problémát, ahogy sejtettem, mert akkor mindegyik relénél gond lett volna.
A PIC 3-as relé kimenetét be kéne kapcsolnod, és mérni a feszt. Nem kell semmi más a programba. Nézd meg az ellenállást, lehet, hogy 4R7... A hozzászólás módosítva: Szept 19, 2012
A 6-7-8 relé nincs benn azért, mert 3 db relé meghúzása után jöttek a gondok, és így láthatom, hogy tényleg a relé miatt resetel (visszafelé haladva képes meghúzni az 5. számú relét) vagy már resetel, mielőtt eljutna ide. Az utóbbi történik, tehát valóban nem a relé (vagy nem egyedül a relé) okozza a bajt.
A feszek rendesen megjelennek a relék vezérlésénél. Amikor a 8-tól visszafelé kiadja a vezérlőjelet, akkor a 8. vezérlésén folyamatosan kinn van a fesz (logikus, mert reset után nincs ideje lefutni 0V-ra, máris eljut a program a meghúzásig), a 7-nél reset után 1 másodperccel jelenik meg, ahogy kell neki, a 6-nál meg 2 másodperccel, de csak rövid ideig, mert gondolom jön a reset, ezért a 6-7 lefut 0V-ra. Az ellenállást megmértem, 4k7.
Csak offban mert tippem van csak, nem ismerem a PIC-ek belsejét, de watchdog nem maradt bekapcsolva? Ha ígyis- úgyis a harmadik reléig jut csak a program...
Szerk.: Olvasni arany! Most olvastam a fentebbit, nem szóltam... A hozzászólás módosítva: Szept 19, 2012
Szia!
Olvasd ki a kontroller tartalmát a PICKit2 kezelő programjával, írd meg ide a konfigurációs regiszterek tartalmát (hexadecimális formában) és hasonlítsd össze az adatlap értelmezésével.
Te vagy a nyertes (meg mindenki, aki a WDT-t tette felelőssé). A fenti #fuses direktívák ellenére bekapcsolva maradt a WDT. Átírtam a #fuses WDT_NOSL-t WDT_SW-re, és a main-ben setup_wdt(WDT_OFF) függvénnyel szoftverből hatástalanítottam. Így már sorban kattognak a relék.
Bocs mindenkitől, hogy egy ilyen kezdő hibáért ment a cirkusz, úgy tűnik, több évnyi PICezés után is hajlamos vagyok ilyesmit elkövetni. Szóval kösz a segítséget, mindenki kap tőlem egy virtuális sört, aztán ha megint van valami nyűgöm, akkor elsírom nektek. Idézet: „Bocs mindenkitől, hogy egy ilyen kezdő hibáért ment a cirkusz, úgy tűnik, több évnyi PICezés után is hajlamos vagyok ilyesmit elkövetni.” Vagy csak le kellene szokni az CCS-ről
Na épp ezaz, hogy már rég az xc compilereket használom, de egy most egy CCS-ben megkezdett projektet kell folytatnom.
Bővebben: Link engem ez győzött meg.
A hozzászólás módosítva: Szept 20, 2012
Mondok még egyet: a mikrokontrollerekhez a gyártónak van dokumentációja, amiben le vannak írva a regiszterek, meg azok működése. A regisztereknek van a gyártó által adott neve, az egyes biteknek is sokszor van elnevezése. A doksi ezekre hivatkozik.
A CCS nem ezekkel a nevekkel hivatkozik az egyes regiszterekre, bitekre. Ez egyfelől összezavarja a kezdő felhasználókat, másrészt megnehezíti a dokumentáció használatát. Idézet: „Na épp ezaz, hogy már rég az xc compilereket használom” Erdemes. Mint minden fordito, ez is tartalmaz kulonos dolgokat. Elo kell venni az eszkozhoz tartozo inc eszkozleirot, es abban le vannak irva a pontos elnevezesek. A hozzászólás módosítva: Szept 20, 2012
|
Bejelentkezés
Hirdetés |