Masz tu dokument z Texasa na temat zalet i wad różnych sposobów łączenia takich czujników: http://www.ti.com/europe/downloads/2-%20...
Witam, można po 1-wire bez problemu, przetwornica z 12V DC na 5v DC, masa może być ta sama. Nie będzie to zakłócało pracy alarmu, w kwestii przewodowej, jak dobrze zamkniesz obudowę to nie będzie sabotażu ;)
To się robi na dwa sposoby: masz wyjście typu otwarty dren, albo wyjście trzeba przestawić w Input przed odpowiedzią DS-a. W obu przypadkach potrzebny jest pull-up.
Witam. Poczytaj tutaj http://akademia.nettigo.pl/ds18b20/#podl...
WItam Najlepiej zrób tak: linie DQ podłącz do pinu procka i podciagnij ją rezystorkiem 4,7kohm do +5V a mase do masy. Nie podłączaj zasilania czujnika. Ja miałem takie problemy własnie gdy wykorzystałem techlogię 2wire taka jak ty. Gdy zmieniłem tak jak Ci napisałem wszytko było już ok. Pozdrawiam Shevu
No niezupełnie, dla ujemnych temperatur to nie zadziała, a dla dodatnich dość pokręcone. [syntax=c]int16_t temp = data[1] << 8 | data[0]; if (temp < 0) { znak = '-'; temp = -temp; } else znak = '+'; ulamek = (temp & 0xf) * 5 / 8; temp >>= 4;[/syntax]
Może ja wyjaśnię jaśniej. Generujesz przerwanie od timera np. co 800ms, czy 1s. I w przerwaniu wykonujesz operacje: 1. Odczyt temperatury do zmiennej 2. Komenda Convert_T Odpowiadając na Twoje pytanie - 750ms to MINIMALNY czas między CONVERT_T a odczytem (dla 12-bit). Więc odczyt po 1, 2, 3600 sekundach po CONVERT_T nie jest błędem. Dzięki takiej metodzie...
Nikt nie jest w stanie mi pomóc? nie wie wiem dla czego kontroler nie porównuje wartości Rozumiem że jesteś początkujący , ale nawet Ty powinieneś wiedzieć , że nie porównuje się zmiennej binarnej(Us) ze stringiem (Tmp) :( To tak , jak byś porównywał kilogram z czerwonym :D Poza tym , ten program jest niezwykle pamięciożerny(Fusing,Single). Jeśli ten...
W moich ramkach udało się zrobić to o wiele bardziej dyskretnie: http://obrazki.elektroda.pl/9686671100_1... http://obrazki.elektroda.pl/8869006400_1... http://obrazki.elektroda.pl/9916695300_1... http://obrazki.elektroda.pl/2156467800_1...
Tak, do masy po stronie Uno.
Mozliwe. Dodales rezystor? Jeszcze masz taka zmienna err w bascomie, poczytaj troche o niej.
Udało mi się znaleźć bardzo ciekawy [url=http://www.atmel.com/dyn/resources/... Atmela. Przeczytaj go dokładnie i wykonaj wszystko tak jak tam opisano. Myślę, że pomiędzy podanym w tym dokumencie buforze (strona 3), a zaemulowanym RS232 nie koniecznie musi być konwerter poziomów - MAX232. Pokazany tam bufor wzbogaciłbym o...
No nic dziwnego, w ustaw_czas robisz call do wys_czas który wbrew obiegowej opinii wyświetla temperaturę;] i... ustawia kursor kilka spacji za *C :) a potem sobie reta do ustaw_czas gdzie już jak widać LCD "Ustaw czas" :) Ot i tajemnica;] Pozdro ;] Dodano po 1 PS lowerline sux, ja bym używał locateów na twoim miejscu ;-) Poza tym funkcje są fajnejsze...
Moje doświadczenia z wifi, tymi modułami i gotowymi bibliotekami nie są zbyt dobre. Natomiast popinguj sobie, zobacz też czy z poziomu access pointa widzisz utratę połączenia (włącz może jakiś dodatkowy poziom logowania). Jest sporo kart wifi zasilanych z USB, więc i to powinno dać radę. A jak chcesz żeby ktoś oglądał kod, to wrzuć go w "syntax" wraz...
Poprzez RS232 lub USB? W czym problem? Przy USB możesz wykorzystać z FTDI, np FT232, lub kupić AVR z wbudowanym USB i skorzystać z LUFA. To drugiej jest zdecydowanie dla nieco bardziej zaawansowanych osób.
Jesteś jednym z pionierów bo sprzęt drogi i mało popularny, więc sam musisz sprawdzić co się dzieje. Pierwsze co bym sprawdził, czy piny IO działa OK - miganie LED, potem kup sobie jakiś analizator Saleae (klony na Allegro kilkadziesiąt PLN), w programie Saleae Logic masz dekoder 1-Wire, możesz podejrzeć co się dzieje na magistrali, czy to Arduino nie...
Witam Na forum też są te informacje, np. tu: http://www.elektroda.pl/rtvforum/topic68... Wyszukiwarka forum jest słaba, lepiej szukaj przez google, dopisz na końcu: site:www.elektroda.pl
... i tu moje pytanie co można w tym programie zoptymalizować może deklaracje czujnikó próbowałem za pomoca czegos takiego ale mi nie wychodzi: 1wwrite adr adr: data tu numer seryjny czujnika Numer ID DS-a wystarczy umieścić w pamięci programu , tak jak zamierzałeś. 'jest 1wwrite Id(1) , 8 '... 'popraw na For x=0 to 7 y=Lookup(x,adr)...
Witam, Dawno nie korzystałem z BASCOM'a, więc nie pamiętam już składni, ale algorytm jest następujący: 1) zapisujesz sobie w zmiennej temperaturę w stopniach 2) wykonujesz dzielenie całkowite temperatury przez 10 -> otrzymujesz cyfrę dziesiątki, zapisz do zmiennej x 3) wykonujesz dzielenie modulo temperatury (reszta z dzielenia) przez 10 -> otrzymujesz...
Nie definiuj F_CPU w kodzie programu z tych powodów: http://mikrokontrolery.blogspot.com/2011...
nie wiem czy coś ze mną nie tak czy z tym forum, ale piszę tą odpowiedź drugi raz, albo odpowiedziałem w innym temacie ... użyj tej funkcji, u mnie działa to jest dla DS18 S 20 (niepotrzebnie wkleiłem , ale niech już zostanie) float zamien_temp(unsigned char MSB,unsigned char LSB) { float ftmp; if(MSB==0x00)//dodatnia,lub 0 {...
Uściślijmy jeszcze czy w kodzie który działa też nie masz wartości $framesize, $swstack i $hwstack? Rzeczy należy eliminować sukcesywnie. Dopisałbym te brakujące rzeczy od razu zamiast je podejrzewać... !EDIT! Zapomniałem o tym a już się w tej sprawie kontaktowałem kiedyś z Supportem :D Słowo Hbyte jest słowem używanym przez wewnętrzne procedury Bascom....
No i teraz zasilanko że "mucha nie siada" ;) Ale dopiero teraz zauważyłem :( .... zastanów się co robisz z nie używanymi liniami LCD .... może zerknij tutaj a potem zrób jak uważasz: http://mirekk36.blogspot.com/2012/04/lcd... Dodano po 7 A to po to żeby uniknąć niszczenia styków przez prądy zwarciowe z kondensatora podczas wciskania...
Przy 1 urządzeniu na 1Wire nie ma potrzeby używać ani SearchROM, ani MatchROM, ani ReadRom, tylko wystarczy SkipROM. 1. Reset1Wire 2. Jeśli Reset poprawny to SkipROM (0xCC) i ConvertT (0x44) 3. Odczekanie czasu na konwersję 4. Reset1Wire 5. Jeśli Reset poprawny to SkipROM (0xCC) i ReadScratchpad (0xBE)
problem tkwi w tym, że program masz do obsługi układu DS1820, a podpięty masz DS18 B 20 (różnią się one rozdzielczością i sposobem zapisu temperatury w rejestrach). W internecie znajdziesz masę programów pod BASCOM i nie tylko obsługujących ten termometr.
Aby kod łatwo było analizować używaj znaczniki SYNTAX: [syntax=c] tu wklej Twój kod [/syntax] Plik : HD44780.c Plik : HD44780.h Dodano po 25 Ja połączyłem je w ten sposób ale pewnie źle bo wystąpiły błędy w kompilacji. Proszę o pokazanie mi sposób połączenia tych dwóch plików w prawidłowy sposób. Pierwsze uwagi: - te dwa pliki to tylko...
Opis magistrali 1Wire masz w helpie. Poniżej kod na obsługę dallasa DS18B20. Config 1wire = P1.0 'konfiguracja magistrali 1wire Config Lcd = 16 * 1a 'konfiguracja wyswietlacza Deflcdchar 1 , 4 , 10 , 4 , 32 , 32 , 32 , 32 , 32 'znak stopnia Dim T1 As Single Dim T2 As Single Dim B1 As Byte , B2 As Byte , R As Byte Dim Tmp As String * 6 Dim Znak As String...
Ale jak pisałem ten projekt Duch ma błędy i forumowicze mają same problemy. W Twoim przypadku było kilka błędów które się na siebie nałożyły. 1. to nadpisywanie zmiennej ss string as 6(za krótka) powinna być 7 lub 8 2. złe pozycjonowanie napisów na LCD 3. złe podłączenie DSów (zasilanie) to że u innych działa to nie znaczy że jest dobrze) jeśli miałbyś...
Przepraszam, że dopiero teraz ale jestem w delegacji. Minęły dwa dni a Twój termometr nie działa... Możesz słuchać każdego. Ja proponuję takie rozwiązanie które zajmuje dosłownie dwie minuty jeśli robiło się to wczesniej. Sprawa jest w pełni odwracalna. To nie ślub z kobietą :D Więc co szkodzi spróbować? Kiedyś może sam komuś pomożesz. Należy zacząć...
Polecam lm75 - ma 3 bitowy adres (8 układów na jednej magistrali), programowane parametry: rozdzielczość, alarm przekroczenia parametru, histereza. Niska cena. Oczywiście trzeba się liczyć z parametrami elektrycznymi I2C.
A ja sugeruję, poczytać dwa tematy 1. Ten projekt nie spełni wymogów producenta mikrokontrolera od strony podłączenia niezbędnych pinów: http://mikrokontrolery.blogspot.com/2011... 2. Podobnie z częścią zasilającą: http://mikrokontrolery.blogspot.com/2011...
EEPROM na 1W to DS2431, jakby Ci to miało coś ułatwić.
Podejrzewam, ze jest jakis bład w algorytmie interpretacji odczytanych ajtów z termometru. Z ciekawosci wlazlem na http://pdfserv.maxim-ic.com/en/ds/DS18B2... i jest tam tabelka przykładowych wskazań dla wybranych temperatur. Nie znając programu niemożliwe jest powiedzenie czegos wiecej. pozdrawiam
hexen2k, z tego co przeanalizowałem, to ten fragment dokumentacji, który przytoczyłeś jest zrealizowany w moim kodzie (?): Zgadza się :) michalko12 ma rację, sprawdzasz za późno: http://obrazki.elektroda.pl/2352154200_1... 3us na krótkiej lini powinno zadziałać, jednak przy dłuższych magistralach może być problem. IMHO lepiej sprawdzać...
Tutaj masz gotowy przykład bez użycia float-ów (oszczędność pamięci): http://mikrokontrolery.blogspot.com/2011...
https://obrazki.elektroda.pl/3874188600_... Zgodnie z propozycją (at)pkaczmarek2 postaram się podzielić tutaj kilkoma pomysłami na rozszerzenia i funkcje firmware OpenBeken IoT, zaczynając "zgodnie z życzeniem" ;-) od rozszerzonego sterownika DS18(B)20. Kod znajduje się w typedef uint8_t DeviceAddress[8]; // wir müssen die...
Sorki ze późno coś internet nie chodził Masz poprawiony schemat
Nie to sprawdzałem. Wygląda to jakby procedury odczytu DS-a działały bo ta temperatura wyświetlana -0.1 o tym świadczy. DS jest zasilany z 3,3V i wyczytałem że przy takim zasilaniu rezystor podciągający linie DQ ma mieć około 2k i taki mam. Ale z rezystorem 4,7k też nie działało. Gdzie to wyczytałeś? Datasheet nic na ten temat nie mówi, poza "Can be...
wg helpa bascoma masz: Gosub podprogram 'wywołanie .... .... a oznaczenie podprogramu podprogram: .... .... Return sub wymaga wcześniejszej deklaracji i wywołania poprzez call poza tym możesz mieć kłopoty ze zmiennymi oznaczonymi samymi cyframi w załączniku masz termometr który zrobiłem dla koleżanki (robiony na szybko więc nie jest specjalnie zoptymalizowany)...
Coś chyba źle robie... Tak , nie myślisz ;) Na 100% , argumentem dla lcd_puts jest wskaźnik na (tablicę)char , a i ostatni argument w dtostrf , to też ten sam typ ;) Piotrek
Gdy temperatura będzie wahać się 26,5 *C - 27*C zawór będzie wariował. Jak to można usprawnić? Zastosuj histerezę. [syntax=c]if ( temperaturaAktualna >= tempzanizona) { digitalWrite(zawor, HIGH); Serial.print("zawor otwarty"); } else if ( temperaturaAktualna < tempzanizona - jakasStalaWartosc) { digitalWrite(zawor, LOW); Serial.print("zawor zamkniety");...
Ja zawsze tak robię i to niezależnie czy czujniki są podpięte w trybie parasite czy normalnie. To oczywiście działa bez najmniejszych problemów i jak pisze kolega wyżej tak wręcz powinno się robić ;)
Tak jak wyżej napisał kolega Szyszkownik Kilkujadek oba czujniki zamontuj obok siebie, być może niewielka odległość oddalenia czujników wpływa na inny odczyt temperatury. Możesz też wykonać następny termometr i badać temperaturę ! Potem następny i następny. Jednak najpierw " wspólna kołderka".
No być powinien :) Zobacz w schemacie do swoeje płytki ZL2AVR tam masz na 100% taki rezystor podciągający magistralę 1-wire do zasilania pozdr KN
U mnie najczęstszym powodem awarii tych czujników była awaria przewodu. Przewody były co prawda bardzo narażone na uszkodzenia mechaniczne. Ciężko przy tak częstym uszkodzeniu przewodu wywnioskować, czy przy którymś razie nie był to czujnik. Ale u mnie pracowały one w trudnych warunkach. /CIACH/ Skrętki nie stosowałem, Stosowałem z tego co pamiętam...
Zbytnio mi ta odpowiedź nie pomogła... To chyba niezbyt dokładnie przeczytałeś(zrozumiałeś) dokumentację DS18B20 :cry: Przypatrz się tabelce i zobacz, gdzie znajduje się rejestr konfiguracyjny, w którym zapisane jest, z jaką rozdzielczością ma "pracować" nasz DS. http://obrazki.elektroda.net/29_12275171... Zakładając, że nie znamy wartości...
Na temat fuse bitów był osobny temat wałkowany i to dobrze ale narazie ich nie ruszaj bo "uwalisz" procka. DS-y są "wyczulone" na czas w którym następuje konwersja i jesli bedzie nieodpowiedni(wg noty 750ms) to DS moze wariowac i w ogole nie mierzyc(nie zdarzy wykonac konwersji). Jesli chodzi o ADC to w zasadzie różnica jest taka ze przy standardowym...
A może tak: Dim Temp As Integer Dim Disp As String * 5 Temp = 366 'odczytana wartość temperatury Disp = Str(Temp) Disp = Format(Disp , " 0.0") Locate 1 , 1 Lcd Disp Pozdrawiam...
Dołącz i edytuj plik config.h z folderu, w którym są źródła tego przykładu. W tym pliku jest zdefiniowany port i pin. Ustaw odpowiednio dla Twojego układu.
Zacząłbym od tego: Otrzymujesz wartość zmiennej temperatura równą np. 1871819,25. Jak przemnożysz to przez 16 to okaże się, że wyrażenie (temp1 + (temp2*256)) zwraca wartość 29 949 108. Teoretycznie zmienne temp1 i temp2 nie powinny przyjmować wartości większych od 255, więc wartość maksymalna wyrażenia (temp1 + (temp2*256)) = (255 + (255*256)) = 65535....
Witam Mam zbudowane obecnie dwa termometry na DS18B20 i delikatnie mowiac zaczynam sie irytowac. Oba mocno zanizaja temperature (o jakies 3 st C) Sprawa jest o tyle denerwujaca ze np w dni kiedy nie ma mrozu i temperatura jest na poziomie 1-1.5 st C czujnik pokazuje - 1.8 do -2.2 st C Czy tylko mi sie trafily takie "super" dallasy czy ten typ tak ma...
Zabralem sie za termometr ds18b20. Wczesniej korzystalem z niego, wartosc temperatury wyswietlalem na LCD'ku i wszystko dzialalo. Teraz powrocilem do ukladu z ta roznica ze wart. temperatury wyrzucam szeregowo na kompa. Problem polega na tym ze w hyper terminalu wyswietla mi caly czas jedna wartosc (88). Kiedy wyciagam, w czasie pracy, procka uklad,...
Hi. Sklecilem sobie w ramach testow i zabaw termometr z DS18B20, i ogolnie mierzy w porzadku poza dziwnymi zachowaniami.. 1. Wskazuje 23,5 stopnia. (co jest mozliwe). przykladam do radiatorka... kolejno wskazuje: 8, 9,12,16,20,32,38 st... Odejmuje od radiatorka wskazuje kolejno : 38,37, 32,14,12,11,11,10,10,9,9,9,8,8,8, 23.8 Ktos wie skad sie to moze...
Witam Z racji wolnego dnia postanowiłem jeszcze dokładniej poznać budowę DS18B20 (czasem trzeba sobie co nieco przypomnieć). Odpalam program który zawsze działał i tu niespodzianka... DS działa prawnie do 32 stopni a jeśli temperatura przekroczy ten próg bez względu na to co jest wyświetla 85 stopni aż temperatura nie zjedzie poniżej tego progu. Problem...
Witam właśnie uruchamiam urządzenie z powyższym układem. U mnie w domu temperatura powietrza jest ustawiona około 20*C, na biurku pod lampą i blisko komputera może być oczywiście cieplej. Mam kilka sztuk tego układu, dwa z "nowej" serii i jeden "antyk". Żaden z nich nie był nigdy lutowany. Wszystkie 3 sztuki pokazują temperaturę od około 27*C do prawie...
na pcozatku mam pytanie czy czujnik DS18B20 ma jakies rejestry ktore nie są zerowane po wylaczeniu zasilania. Pytam bo kupilem 2 czujniki na allegro(cena 3,50) i wogole nie wiadomo co z nich odczytuje.... kazdy inaczej pokazuje. Poszedlem do kolegi, pozyczyl mi na chwile swoj czujnik i pokazuje dobrze temeperature na moim sofcie i sprzecie. Wiec kupilem...
Witam wszystkich! Bawię się czujnikiem temperatury DS18B20 i po odczytaniu wartości temperatury stwierdziłem, że jest ona 3 st. wyższa niż na normalnym termometrze cyfrowym, który mam w pokoju. Jak już gdzieś na forum przeczytałem - zdarzają się poprostu takie egzemplaże i tyle. Spróbowałem jednak mimo odczytania określonej wartości z czujnika na wyswietlaczu...
Witam wszystkich przeczytałem wszystkie tematy związane z tym czujnikiem a i tak do końca nie wiem jak sie go odczytuje chcial bym by ktos na podstawie tego krotkiego programiku mogl mi wyjasnic co i jak Do Wait 1 //czekanie 1s 1wreset //inicjalizacja transmisji 1wwrite &HCC // wiem ze tak musi byc ale nie wiem do końca co to oznacza 1wwrite &HBE //jak...
Witam, DS18B20 mierzy mi dokładnie od 0 do ok 15'C a powyżej tego zawyża temperaturę - maksymalnie o ok. 3,5'C. Podejrzewam że to jakaś wada fabryczna, czujnik kupiony na allegro. Co robić? Może ktoś sprawdzi u siebie te czujniki z allegro? Pozdrawiam
Witam wiem że temat pewnie był już wiele razy wałkowany ale proszę o pomoc. Próbuję odczytać temperaturę z DS18B20 i zawsze mam wartość 16,1 nawet jak jest czujnik odłączony proszę o pomoc gdzie jest błąd w kodzie :cry: #define WE 0 #define PORT_1wire PIND #define SET_1wire DDRD &=~ _BV(WE) #define CLEAR_1wire DDRD |= _BV(WE) //Resetowanie...
Kupiłem ostatnio na giełdzie RTV w Krakowie 3 szt DS 18B20 i mam big problem - albo gościu sprzedaje jakieś odrzuty( w budynku giełdy na Balickiej) ,albo ten termometr jest gówno warty !. Dwa z nich w miare dokładnie pokazują dodatnią temperature -ale trzeci kłamie w góre. Natomiast jak je razem zamroże to każdy pokazuje inną temperature.Różnica to...
Zrobiłem sobie termomentr na AVR 2313 i czujniku Dallasa 18b20. Do pewenego czasu działał dobrze, ale od niedawna(nic nie grzebałem w układzie, tylko w programie) jes cos nie wporządku. Podłaczam termometr do napiecia pojawia temperatura 85C i zaczyna wzrastac najpierw 40C potem 50C i tak dalej. Niewiem co mam zrobic, czy jest mozliwe ze, czujnik poszedł...
Witam. Zauważyłem niepokojące zachowanie czujników DS18B20 przy pomiarze temperatur bliskich zeru i ujemnych. Moje spostrzeżenie jest następujące: przy pracy czujnika jego temperatura nieznacznie wzrasta i to nawet ponad 1'C ! Zbudowałem termostat. Po wejściu do menu nastaw czujniki nie są odczytywane i w tym czasie (tak mi się wydaje) ich temperatura...
Witam serdecznie! Mam problem z odczytaniem Temperatury z DS 1820. program do odczytu nie jest mojego autorstwa lecz Zbyszka Raabe żywcem wzięty z Bascom College. Więc nie wiem skąd ten problem. zamiast 21 pokazuje 26 a zakres pomiarowy kończy się na 60. Czy DS 1820 może być uszkodzony? Pomocy! Procedura odczytu $baud = 57600 Config 1wire = P1.0 Dim...
Witam. Dostałem 4 sztuki ds18b20 w samplach i konstruuję termometr do szkoły. Napisałem program,udało mi się połączyć z czunikami i wyświetlić temperaturę na LCD,wszystko było ok. Oba czujniki miałem zamontowane na płytce prototypowej(mam na niej zmontowany cały układ). Po pierwszych testach przylutowałem do jednego czujnika skrętkę o długości ok 30...
w sieci natknąć się można na wiele algorytmów liczenia teperatury tych czyjniuków poniżej przedstawiam dwa z nich niech ktoś wytłumaczy mi o co w tym wszystkim chodzi bo na DS18B20 mam o ok. 4 stC temperaturę za niską. wykorzystuję dwa czyjniki podpięte tylko przez linię danych i masę, i oczywiście rezystor 4.7 k. VCC do masy. na obydwu podobny przekłamany...
WITAM! MAM SZYBKIE PYTANIA: CZY PRZY ODCZYCIE TEMP. Z DS18B20 TEZ CO KTORYS POMIAR MACIE 85 ST. (CZYLI BRAK POMIARU)?? DA SIE TO JAKOS WYELIMINOWAC (WYDLUZANIE CZASU KONWERSJI NIE POMAGA) - NIE CHODZI MI O ROZWIAZANIE TYPU "IF(TEMP!=85)......"?? Z GORY DZIEKUJE I POZDRAWIAM!
Witam. Złożyłem sobie termometr na tym sławnym czujniku. Wszytko chodziłoby ok, gdyby nie to, że powyżej temperatury 34 stopnie wszystko zaczyna wariować. Zaczyna pokazywać na zmianę dobrą temperaturę i podwojoną -zmienia się co kilka sekund i nie zawsze w tym samym odstępie czasowym. Czujnik jest podłączony w ten sposób: http://obrazki.elektroda.pl/1761690900_1...
Cześć! Myślałem, że z Dallasem nie będę mieć problemów. Jest pełno przykładów pod BascomaAVR aby ATmega rozmawiała z 18b20 i wszystkie praktycznie identyczne. Niestety u mnie na wyświetlaczu widnieje ciągle temperatura 24,6C mimo podgrzewania i oziębiania czujnika. Czemu akurat taka skoro się nie komunikują? Jak myślicie?? ... sub Read1820 ' reads sensor...
ds18b20 czujnik temperatury czujniki temperatury ds18b20 ds18b20 odczyt temperatury
leadtek winfast sumowanie napięcia praca palnik
silver crest pozytywka uszkodzona sprężyna
Metabo Elektra Beckum TKHS 315 Table Saw Brake Types: Mechanical vs Electronic DC Plik ZIP nie jest rozpoznawany jako ZIP - przyczyny i rozwiązania