Fórum témák
» Több friss téma |
Automatán ez esetleg úgy működhet, ha egyszerre max. 1 csere van !
Minden megoldható, de sokat kell programozni....
Adott számú érzékelő esetén egyszerre egy érzékelő cserét valahogy így lehetne megvalósítani: Figyelni kell az érzékelők kommunikációját. Ha egy érzékelő (kellő ideig) hibásan válaszol vagy nem válaszol, meg kell jegyezni az azonosítóját. Ha valamelyik érzékelőnél a komminikáció "minőségében" változás van, le kell futtatni a ROM Search eljárást. Ha a ROM Search nem találja a "megjelölt" érzékelőt, de helyette talál egy újat, az újat be lehet tenni a "megjelőlt" helyére. Vannak azért problémák: Vezeték szakadása / rövidzár félreviszi az adminisztrációt. Egy menüpont mindenképen kell, hogy csak akkor "cseréljen", ha engedélyezett a csere. Ha már sok vezeték megy, akkor miért nem két vezetékes I2C. Az érzékelőnél a helyi bekötés adja a címet.
Köszönöm. átforgattam...betöltöttem.de nem csinál semmit. Azt tudni kell, hogy nem tudok programot írni...szerintem ilyen vén fejjel..már nagyon nem is fogok megtanulni Hi!De igyekszem azért követni benneteket..!
Ezt most nem értem. USBasp -vel töltöm be...erre gondolsz? Mert a betöltés /égetés/ jó.
Ahogy az előttem szólók írták. A teljes "plug and play" nem megoldható! Mindenképp kelleni fog emberi beavatkozás, a feltanításhoz, és sorrendbe rendezéshez, ha egy vezetéken lesznek. De a szenzorcserét sem érdemes teljesen automatikusra írni.
A másik dolog amit aggodalmasnak tartok: Busz szakadás esetén a szakadás utáni szenzorok nem lesznek elérhetők, viszont zárlat esetén a teljes busz működése megszűnik! Célszerű lenne szakaszolni.
Nem, arra gondolok hogy egy soros debuggal kellene figyelned hogy mi történik mert ez a program részlet csak soros porton küldi az adatokat. Vagy csak lcd-n tudod nézni ?
Este bele tudom tenni az lcd-t is. Most sajna mennem kell hidraulikát szerelni
Az jó dolog...de még jobb, egy harckocsi forgózsámolya alatt áram átalakítót cserélni. De köszi előre is! Jó munkát!
gfj Idézet: „Ha már sok vezeték megy, akkor miért nem két vezetékes I2C.” Ezt hogy érted? Az I2C rövid távra való, ha ott lenne előtte az asztalon, akkor nem lenne gond a cserével és újraprogramozással, hogy melyik hova került.
Szia.
Értem, köszi. Viszont ez jó ötlet, a csere megoldása tetszik, automatikusan helyettesíthető a szenzor a megfelelő helyre. Busz szakadás és rövidzárlat szerintem már olyan nagyságrendű probléma, ami hibaüzenetet kíván, és onnantól már hozzáértőnek kell kijavítania a hibát. 1 szenzor esetén a busz hiba automatikusan javítódik a szenzor csere metódussal ( viszont ha ugyanazt a ROM kódot kapom vissza, akkor lehet szólni, hogy gond van a kábelekkel), ha pedig egynél több szenzor tűnik el egyszerre, akkor én nem is tennék semmit a programból, hanem szólnék az LCD-n keresztül, hogy javítani kell. Vicces, hogy két szenzor esetén be lehetne rakni egy gombot, amit megnyomva felcserélődik a két érzékelő, de akkor már ugyanott vagyunk, mint ha minden szenzornak külön lába lenne a mikrovezérlőn. 4 szenzorhoz 1 csere gombot nyomkodva 2^4-en, vagyis 16 lehetőség van a cserére, az már túl sok. De még programból is leprogramozni egy ilyen cserélő menüt nem kis feladat. Talán tényleg csak úgy oldható meg, ha legelső indításnál lesz egy szenzor felismerő rész, ami kéri, hogy egyesével legyenek csatlakoztatva a szenzorok a megfelelő sorrendben. A kábeleken meg kell hogy legyen egy kis cédula, hogy honnan is való. Talán így a legegyszerűbb.
Én úgy csináltam meg (4szenzor, 1 lábon, egyedi ID küldéssel,amit EEPROM-ban tárolok) hogy van 4 digitális tanító bemenet (jumperrel vagy kódkapcsolóval) a betanításhoz.(Ekkor csak 1 szenzor van a buszon.)Program elején beolvasom az ID-t, majd lekérdezem a digitális bemenetekt.Amelyik jumper zárt,attól függően a megfelelő EEPROM címen eltárolom a kiolvasott ID-t.(Felülírom).Újraindítás után az EEPROM-ból már az új ID-t olvassa be,tehát betanulta.
Ha 4 lábat felhasználtál a jumperekhez, akkor azokra rakhattad volna a DS-eket is. Ha analóg bemenetre feszültségosztókkal választod ki a négyet, az már lábspórolósabb.
Tehát betanításkor 1 szenzor lehet feldugva, a jumperrel meg kiválasztod, hogy melyik eeprom helyre mentse?
Sok szenzornál érdemesebb egy számítógépes kapcsolat kiépítése. UART esetén 2, USB esetén 3 (a Vusb miatt) láb felhasználásával a PC -n lehet a beállításokat elvégezni...
Idézet: Igen.„Tehát betanításkor 1 szenzor lehet feldugva, a jumperrel meg kiválasztod, hogy melyik eeprom helyre mentse?” Nálam pont az a lényeg, hogy 1 lábon legyenek, így nem kell 25méterről több kábelt/eret vinni. Lehet hexadecimális kódkapcsolót is berakni, az 3 lábon már 8 kombináció, 4-en már 16. Általában inkább nagyobb lábszámú kontrollert használok, pont az ilyenek miatt.
Miért kell minden egyes eprom helynek külön kapcsolóval bállított kód? Nem elég egy nyomógombbal kiválasztani/léptetni menüben a megfelelőnek a helyét. Tehát betanítás menü, a megfelelő epromhelyhez nyomogatni a gombot és jöhet az id kérés....
Bármeddig lehet fejleszteni, itt cél volt hogy "hardweresen" lehessen cserélni.
Értem. Tehát kellett a 2, max. 3 ér, amit el kell vinni. 25méteren már nem mindegy valóban, hogy 3, vagy 6 ér kell.
Hát ez egy emelőkosaras autó és egy zárlatos szolenoid szelep szívatta meg a kollégát úgy hogy 300km re nem tudta összecsukni a kocsit. Mehettem utána hogy valahogy össze csukjam, most meg kerestem a hibát mert egy nagy gányolás volt az egész elektronika benne. Egyik fele 12V másik fele 24V, DC/DC konverter ami közben kifeküdt....stb...
Ahogy ígértem átírtam az előző programodban szereplő LCD és szenzor bekötésekhez. Össze is raktam a egy próbapanelen, és gyönyörűen viszi a 4 szenzort. Először ki írja hogy teszt majd letörli és kiírja a 1-es, 2-es majd a 3-as, 4-es széria számát. Eztán a 4 hőfokot. Üdv. A hozzászólás módosítva: Jan 13, 2016
Most épp amivel kipróbáltam az 2 db eredeti dalas, és 2db kínai ebay-es.
Amúgy ebay/dx/ali ilyesmi occcó. Működik már ? A hozzászólás módosítva: Jan 14, 2016
Betöltöttem. Be is vette...el is indult. De nem ismert fel egyet sem a 12db itthon lévő DS18B20 közül sem. Bevágtam magam az autóba...bekocsikáztam Fehérvárra, és vettem 4 db-t. Beletettem...és nem ismert fel egyet sem. Átnéztem mindent de semmi hiba. Fogtam és beletöltöttem a mellékelt két érzékelős változatot. Abban a pillanatban felismerte a szenzorokat..külön,külön és mérte a hőmérsékletet..ahogy kellett. Végigpróbáltam mind a 16 db Dallast. Mindegyikkel működött! Most már nagyon tele van vele a hócipőm...teljes LÁMA mivoltommal sem értem, hogy miért ismeri fel ez a program a szenzorokat...mert ahogy nézem laikus szemmel..a lekérdezés ugyan az! Nagyon,nagyon..."nyugodt" vagyok!!!!!!!!!!!
Tuti időzítés/ órajel gond!
Hát akkor valaki időzítsen-legyen szíves- mert ahhoz már végképp nem konyítok...Vagy magyarázza el, hogy mit mennyivel írjak át a négyes változatban...és , hogy miért jó a kettes változat...legalább megértem...a trükkjét!
Amikor lefordíttatod a programot, kurzor a legelejére, a programozói ablakban a fuse bitek re menj és csinálj egy write prg. Amit beírt, tedd fel ide. Ez elvileg megmondja mire van állítva a chip, vagy csak másold ide a fusebit ablakot.
A hozzászólás módosítva: Jan 14, 2016
Érdekesség-képpen beírtam a 3-ast 4-est az eredeti 2-es programodba, kipróbálni nem tudom, mert nincs chipem, de ha már minden mindegy kipróbálhatod.
köszönöm...megpróbálom...de valami ilyet kutyultam magam is és nem ment..megnézem a tiedet
Szóval...így már nem ismeri fel! csak 0 jönnek vissza!
|
Bejelentkezés
Hirdetés |