Obejście problemu zawieszania się czujnika odległości HC-SR04
Dzisiaj przyszła do mnie paczka od majfrienda z klonem Arduino UNO i kilkoma czujnikami, w tym z czujnikiem odległości HC-SR04. Okazało się, że mój egzemplarz ma poważnego buga, który jak później doczytałem może występować w tanich chińskich klonach. Jeżeli wycelujemy zbugowany czujnik w przedmiot oddalony (w moim przypadku) o ponad 150 cm to czujnik potrafi nie odebrać wysłanego sygnału mierzącego odległość. Wystarczy jeden nieodebrany sygnał aby czujnik się zawiesił na stałe i ciągle pokazywał dystans 0. Nie pomaga reset płytki, trzeba odłączyć i podłączyć zasilanie.
Trochę pogrzebałem w sieci i obejście problemu okazało się całkiem proste - jest opisane na forum arduino.cc. Link do kodu, który stanowi obejście problemu (od 28 do 37 linijki):
Dzisiaj przyszła do mnie paczka od majfrienda z klonem Arduino UNO i kilkoma czujnikami, w tym z czujnikiem odległości HC-SR04. Okazało się, że mój egzemplarz ma poważnego buga, który jak później doczytałem może występować w tanich chińskich klonach. Jeżeli wycelujemy zbugowany czujnik w przedmiot oddalony (w moim przypadku) o ponad 150 cm to czujnik potrafi nie odebrać wysłanego sygnału mierzącego odległość. Wystarczy jeden nieodebrany sygnał aby czujnik się zawiesił na stałe i ciągle pokazywał dystans 0. Nie pomaga reset płytki, trzeba odłączyć i podłączyć zasilanie.
Trochę pogrzebałem w sieci i obejście problemu okazało się całkiem proste - jest opisane na forum arduino.cc. Link do kodu, który stanowi obejście problemu (od 28 do 37 linijki):
Dziś pod lupę trafił do mnie czytnik kart RFID MFRC522.
Jest to tani(w tym momencie 2.28$) chiński czytnik RFID działający na częstotliwości 13.56 MHz.
Pełny opis i kod źródłowy znajduje się na moim blogu:
http://blog.gczernatowicz.pl/2015/10/24/czytnik-kart-rfid-mfrc522-podlaczenie-do-arduino/
W przykładowym programie wykorzystuję bibliotekę MFRC522, bez której w tym przypadku byłoby naprawdę ciężko odczytać cokolwiek z tego czytnika. Dokumentacja jest dosyć obszerna, mechanizmy