Fórum témák

» Több friss téma
Fórum » Modulrendszerű, grafikus PIC programozás
Lapozás: OK   141 / 177
(#) Peticilin válasza dcsabi hozzászólására (») Jan 23, 2014 /
 
Olvasgattam az infrakapuk után. Jól gondolom,hogy az adó infraledet 30kHZ körül kell járatni? Ezt érzékeli a fotodióda,ezt a frekit tudjuk detektálni róla,amit aztán kapcsoló jellé tudunk alakítani.
A programban úgy gondoltam,hogy az infraledet egy PWM modullal lehetne meghajtani,aminek a frekvenciáját a programban be lehetne állítani. A vevővél a bejövő jelet számlálóval lehetne kielemezni és kapcsoló jellé alakítani a programban.
Jó a logikai menetem? Ha úgy gondolod így lehet belőle valami,akkor nekiállok kísérletezni vele.
(#) dcsabi válasza Peticilin hozzászólására (») Jan 23, 2014 /
 
Létezik ez az út is. Én biztosan nem bonyolítanám meg ennyire. Tehát: a szivattyú forgását akarod detektálni, Erre nem biztos, hogy 30Khz kéne a PIC részéről. Értem én ezalatt, hogy ez a ms harmada. A parsic progival ezt nem igen tudod előállítani... Sima kapu kellene amelynek a frekije maximum a forgásjeladó "frekije". Most én is benne vagyok egy nagyobb projektben és nem tudok részletesebben segíteni.
(#) Szammer válasza Peticilin hozzászólására (») Jan 23, 2014 /
 
Szia!
Nem engem kérdeztél, de:
Ha az infra kapudnak viszonlag kis távolságot kell áthidalni 3-4cm (max), a meghajtásra simán elelgendő a fix egyenáramú meghajtás (20mA/adó). Ekkor nem kell kiértékelned a vevő jelét, elég csak detektálni. Nálam több alkalmazásban működik.
Ha nem túl erős a külső megvilágítás, stabil bemenő jelet kapsz a PIC-nek.
(#) Peticilin válasza dcsabi hozzászólására (») Jan 23, 2014 /
 
Köszönöm válaszod.
(#) Peticilin válasza Szammer hozzászólására (») Jan 23, 2014 /
 
Köszönöm neked is a tanácsot,akkor valószínű,hogy a fix meghajtással fogok majd próbálkozni.
(#) kaqkk válasza dcsabi hozzászólására (») Jan 23, 2014 /
 
Szia Csabi ! Szerinted ezek közül valamelyik működne ? És ha igen kb milyen frekvenciát tudna produkálni ? Azt tudjuk hogy az eredeti ütemadó 2ms alatt nem dolgozik, evvel nem lehetne megkerülni ezt a "bug-ot"?
A hozzászólás módosítva: Jan 23, 2014
(#) proli007 válasza kaqkk hozzászólására (») Jan 23, 2014 /
 
Hello! Ez nem "bug", hanem szerintem így működik. (Akárcsak egy PLC létraprogramja.) Nézd meg egyszer az ASM listában hogy működik az One-Shot, vagy egy kapu. Akkor meglátod. A program 2ms-onként végigrohan a sorokon és az számított eredményt egy adattárolóba írja. Majd 2ms múlva ismét nekiáll. Vagy is adatváltozás, kimeneten vagy belül csak 2ms-onként lehetséges.
Átverni úgy lehet, hogy pld. 20MHz-es kavicsot teszel bele, és azt hazudod neki, hogy 4MHz-es van benne. Ekkor minden ötször gyorsabban fog végrehajtódni. De ezt minden időzítésnél figyelemebe kell venni. LCD vezérlésnél lesz pld. a gáz, mert inicializáláskor vannak belső időzítések. üdv!
(#) kaqkk válasza proli007 hozzászólására (») Jan 23, 2014 /
 
Tehát akkor ez az ötlet nem életképes, a trükköt amit írtál azt ismerem de arra gondoltam hátha megkerülhető az időalap, programon belül is és nem csak "átveréssel"
(#) dcsabi válasza kaqkk hozzászólására (») Jan 25, 2014 /
 
Szia, Bocs egy ideje nem jártam itt. Mindent nem biztos, hogy meg lehet csinálni. jeleztem az illetőnek anno, hogy szükség van-e a 30Khz, folyamatos küldésére? Az a helyzet, hogy én egy feladatot a rendelkezésre álló eőforrások szerint fogalmazok meg. Lehet még INC filet is írni hozzá, esetleg a megszakítás rutint kivenni INC-re és átvariálni...stb. Volt, már rá példa, hogy a program annyira bonyolult volt, hogy bizonyos feladathoz tartozó "gyári modul" instabilitást okozott a rendszeren. Az adott feladathoz tartozó modult INC-ben újra megirtam egy kicsit másképpen és egy btfss utasítással meghívtam...stb. A modulos rajzolgatás mögé tekingetve, el lehet sajátítani a klasszikus ASM kódu programozáshoz is egy-két dolgot.
A hozzászólás módosítva: Jan 25, 2014
(#) 5geri5 hozzászólása Jan 27, 2014 /
 
Üdv.

Elég sokat keresgettem, de nem nagyon találtam konkrét leírást arra, hogy a Parsic nevű programban az Uart-ot hogyan kell használni. Már jó pár dolgot csináltam benne, de most kicsinek tűnik a PIC memóriája. Egy változót tovább szeretnék vele vinni egy másik PIC-be. Esetleg valaki tud ebben segíteni? Előre is köszönöm.
(#) dcsabi válasza 5geri5 hozzászólására (») Jan 27, 2014 /
 
A topic elején kb 10. oldalig, elég sok működő projektet tettem fel. Van Uart-os is.
Mindenekelőtt készíts két PIC-es áramkört LCD-vel. Mert a változókat elég nehéz a "fekete műgyanta mögött meglátni". A szimulációban nem minden jelenik meg. Egyébként pofon egyszerű... A gyári példa és van rá 2x3db...A PIC-ek Rx lábát az ellenoldal TX lábával kösd össze, és fordítva ugyanígy. Az adatsebességek 4Mhz Quartz-ra vonatkoznak.
A hozzászólás módosítva: Jan 27, 2014
(#) 5geri5 hozzászólása Jan 28, 2014 /
 
Megtaláltam köszi
(#) Peticilin hozzászólása Jan 31, 2014 /
 
Sziasztok!

Bocsánat az alapvető kérdésért,lehet hogy már kérdezték...
A 16F628A-nak elvileg van 4 analóg bemenete ( RA0/AN0 - RA3/AN3 ),de a parsic és fordításnál az mplab is nyafog,hogy nincs. A 16F 877-nél ugyanezek a lábak vannak és ott gond nélkül fordít. Miért van ez?

Válaszotokat előre is köszönöm.
(#) Peticilin válasza Peticilin hozzászólására (») Jan 31, 2014 /
 
Megtaláltam a választ itt egy kicsit visszább. Sajnos nincs neki,csak a 876-nak. Csak a " kis" feladathoz nem akartam 28 lábas picet. De ha csak ennek van analóg bemenete...
(#) Hp41C válasza Peticilin hozzászólására (») Jan 31, 2014 /
 
A 16F628 -nak csak komparátora van, A/D nincs benne. Esetleg a 16F819 vagy 16F88 18 lábú és rendelkezik A/D -vel.
(#) Czindi hozzászólása Feb 2, 2014 /
 
Sziasztok!

Még új vagyok itt a fórumon,de lenne egy nagy kérdésem! Szeretnék építeni egy 0-250 fokig állítható hőfokszabályzót egy pic 16f877a segítégével. Meg tudom e valahogy oldani parsicban a programozást? Milyen módon csatlakoztassam a PIc-hez a hőelemet (J vagy PT100, még nincs eldöntve, amelyik az egyszerűbb)? Nem kell nagy tudás csak kijelezze a beállítótt értéket és annál a hőfoknál kapcsoljon az egyik kimenet. A válaszokat előre is köszönöm!!!
(#) kaqkk válasza Czindi hozzászólására (») Feb 2, 2014 /
 
Kezdd el olvasni a témát, az elején találsz több hőmérő megoldást .. A pt100 hoz és a hőelemhez is nagy valószínűséggel kell majd egy előerősítő ami a pici feszültség változást 0-5v közé konvertálja
A hozzászólás módosítva: Feb 2, 2014
(#) dcsabi válasza Czindi hozzászólására (») Feb 2, 2014 /
 
Gondolom füstöt akarsz mérni (?) Ebből az utcából már megfordultam. A PT100 olyan sérülékeny magasabb hőmérsékleten, hogy nem érdemes vele foglalkozni. Hőelem az nem megy tönkre. K a legolcsóbb, a J is gyakori...Keresni kell egy előerősítő példát a neten, és analógbemeneten mérni a PIC-el. Ha ragaszkodsz a teljes pontossághoz, akkor egy táblázatban átkonvertálhatod az értékeket, ugyanis nem lineáris a hőmérséklet és thermo feszültség karaktarisztika. Parsic, tab és call modul...
A hozzászólás módosítva: Feb 2, 2014
(#) Isti69 hozzászólása Feb 2, 2014 /
 
Sziasztok!
Van egy kérdésem. Analóg bemenetnél a kijelző nem tudja pontosan megjeleníteni az értéket.
Pl.: 6-ról 7-re váltásnál 8-at mutat aztán beáll 7-re. Ez egy hőfokmérő lenne 16 bites beállításnál
0-100 fokot kellene neki kijelezni. Valójában a szimulácíó tökéletes de a PIC-be befordítva ez a jelenség jön létre. Van valami ötletetek a hibára?
A hozzászólás módosítva: Feb 2, 2014

anga.PIC
    
(#) dcsabi válasza Isti69 hozzászólására (») Feb 2, 2014 /
 
Feltételezem a kijelző frissítése túl gyors...vagy sok a timer és a késleltetés. Pl nem értem minek a nyomógombra 50ms késleltetés, amikor az oneshot mindent megold...
A hozzászólás módosítva: Feb 2, 2014
(#) dcsabi válasza Isti69 hozzászólására (») Feb 2, 2014 /
 
Továbbá helyezz el a főprogramba a "kijelzést kezelő legfontoasabb" modulok elé és végére BCF INTCON,GIE és BSF INTCON,GIE párokat. Ehhez nyísd meg az Mplabot és oda írd bele és onnét fordítsd tovább...
A hozzászólás módosítva: Feb 2, 2014
(#) Isti69 válasza dcsabi hozzászólására (») Feb 2, 2014 /
 
A második oldalon van a kijelző vezérlése. Digitálisan állított értékeknél tökéletes, Timer is csak 1van. A késleltetés a nyomógomb prellegése miatt van.
A hozzászólás módosítva: Feb 2, 2014
(#) dcsabi válasza Isti69 hozzászólására (») Feb 2, 2014 /
 
Helyesbítek: Timer és bármilyen idő alapú modul, késleltetés, impulzus hossz, stb. A Parsicnak nem a legjobb a hétszegmens kijelző kezelője. néhány társunk javított már rajta. keress rá. vagy használj lcd-t van 2x8 soros is...Vagy a már említett megszakítás kezelést...
A hozzászólás módosítva: Feb 2, 2014
(#) Czindi válasza dcsabi hozzászólására (») Feb 3, 2014 /
 
Köszi a választ! Egy jó előerősítőre találtam mintát. Pic- be volna egy kis gondom hogy hogyan is kezeljem le. Esetleg egy egyszerű mintát ha fel tudnátok tenni akkor már az alapján meg tudom csinálni. A pontosság az jó lenne ha olyan 1 fok volna.
(#) kaqkk válasza Czindi hozzászólására (») Feb 4, 2014 /
 
Tessék 0-100c
A hozzászólás módosítva: Feb 4, 2014

king2.PIC
    
(#) dcsabi válasza Czindi hozzászólására (») Feb 4, 2014 /
 
Ha igazán pontos hőmérőt akarsz, akkor használj ds18B20-t. Létezik 1-2-3-5m-es vezetékes "vízhatlan kivitel" ez Pl 0,0625 felbontású. (ha van időd kivárni a szállítást, free shipping 3$...stb) Kb 2 hét:Érzékelő_beszerzés Ha van rá igény majd publikussá teszem az INC fájlokat egy példa keretében.
(#) Czindi válasza dcsabi hozzászólására (») Feb 4, 2014 /
 
A ds18b20-t már néztem én is csak az a baj hogy mindössze 125 fokig jó. sütőbe lenne a hőfokszabályzó, a J hőelem az megvan már. Az erősítés részén gondolkodom még, meg persze a pic programon. Sajnos még nem vagyok annyira profi a parsicban, kijelzőkezelés és ennél bonyolultabbakat még nem csináltam. Pár programot már csináltam vele, működött is beégetve. Mintáknak illetve magyarázatoknak is nagyon örülnék.
(#) dcsabi válasza Czindi hozzászólására (») Feb 4, 2014 /
 
Értem már. A hőfokszabályozást egyszerű módon egyetlem modullal meg lehet oldani. A fontosabb rész az a hőelem hiteles felerősítése. Én K hőelemet használtam hasonló célra, ahhoz van kompenzált előerősítő SPI busz kimenettel (max 6675). nem akarlak megtéveszteni. csak jelzem a lehetőségeket. A j hőelem táblázat is nyílván megtalálható a neten. Minden hőfok értékhez tartozik egy mV (uV) érték. Egy sima műveleti erősítővel felerősítve az analóg bemenetre juttatva, a már fentebb említett modulokkal korrigálni lehet a görbét. Erősítsd fel, mérd meg multiméterrel. A 300C körüli érték legyen egyenlő 5V-al. Ez csak egy példa...Vagy éppen 512C legyen 5V ez könnyen kezelhető..stb
(#) kaqkk válasza Czindi hozzászólására (») Feb 4, 2014 /
 
Én ezt a programot lm35 érzékelővel használtam tökéletes 1c pontossággal
A hozzászólás módosítva: Feb 4, 2014
(#) Isti69 válasza dcsabi hozzászólására (») Feb 5, 2014 /
 
Köszi a segítséget majd megpróbálom. Amúgy a kijelző rész tökéletesen működik csak az analóg bemeneten csinálja a fent leírt hibát. Ha analóg bemenetre egy potit teszek 0-5V közé akkor a számváltásnál így jelzi ki az értéket. A tápfesz /0-5V/ ugrálása miatt lehet? Bár tettem az analóg bemenetre kondit is szűrésnek. Akkor is ilyen volt.
Következő: »»   141 / 177
Bejelentkezés

Belépés

Hirdetés
XDT.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