Elektroda.pl
Elektroda.pl
X
Proszę, dodaj wyjątek dla www.elektroda.pl do Adblock.
Dzięki temu, że oglądasz reklamy, wspierasz portal i użytkowników.

Problem z działaniem czujnika Halla

13 Gru 2019 00:20 270 9
  • Poziom 4  
    Witam, zakupiłem na ailexpress dwa czujniki Halla z osprzętem na jednej płytce (https://www.aliexpress.com/item/32827718198.html?spm=a2g0s.9042311.0.0.12534c4dNWX6Th), jeden o max. prądzie 5A, drugi 10A. Po podłączeniu masy, zasilania 5V i wyjścia do Arduino, zapala się dioda informująca o działaniu czujnika, jednak gdy pod wyprowadzenia 1 i 2 wepnę szeregowo jakiekolwiek obciążenie, na wyjściu dostaje cały czas taki sam wynik - połowa napięcia zasilania który według chińskiego sprzedawcy oznacza brak mierzonego prądu. Czy możliwe iż czujniki są po prostu w jakiś sposób uszkodzone, czy może ja popełniam błąd w podłączeniu?
  • Poziom 35  
    Witam.

    Podaj symbol tego czujnika Halla.

    Dodano po 3 [minuty]:


    Ok juz widze ze to ACS712ELC czujnik analogowy

    info. https://cdn-reichelt.de/documents/datenblatt/A200/ACS712.pdf

    Cytat:
    Low-noise analog signal path▪Device bandwidth is set via the new FILTER pin▪5 μs output rise time in response to step input current▪80 kHz bandwidth▪Total output error 1.5% at TA= 25°C▪Small footprint, low-profile SOIC8 package▪1.2 mΩ internal conductor resistance▪2.1 kVRMS minimum isolation voltage from pins 1-4 to pins 5-8▪5.0 V, single supply operation▪66 to 185 mV/A output sensitivity▪Output voltage proportional to AC or DC currents▪Factory-trimmed for accuracy▪Extremely stable output offset voltage▪Nearly zero magnetic hysteresis▪Ratiometric output from supply voltage
  • Poziom 35  
    Za nim zacznie działać czujnik to polecam potrenować na potencjometrze standardowym analogowym podobnie działa i ma te same PINY. Potencjometr analogowy mozna podpiąć do Arduino i napisac program w IDE. Kręcąc potencjometrem mozna zobaczyć, czy będzie działać w srodowisku Arduino IDE a następnie zamisat potencjometra podpiąć czujnik Halla z magnesem neodymowym.

    1 ETAP
    3 PIN potencjometr (analogowy),

    2. ETAM
    Czujnik z magnesem neodymowym np. MP 6 X 2 X 2,5 / N38

    Potencjometr i czujnik Halla (analogowy)
    -------------
    VCC (+5V)
    Out -wyjscie na PIN (analogowy) na Arduino np A0
    GND -(Minus-masa)

    Code:

    int out = 0; //dane z potencjometru
     
    void setup() {
      Serial.begin(9600);
    }
     
    void loop() {
      out = analogRead(A0); //Wartosc z pinu out potencometru
      Serial.println(out); 
      delay(200); // mozna zmienić czas metodą prób i błedów 50 200
    }



    Teraz można po kompilacji kod-u uruchomić i zobaczyć zmiany podczas kręcenia potencjometrem. W IDE opcja Narzędzia >>-Szeregowy Monitor (wykaż liczbowy) oraz Narzedzia > Monitor portu szeregowego (wykres) tu zależy szybkość rysowania wykresu od czasu "delay".
  • Poziom 11  
    Jest szansa, że nie zrozumiałem Twojego opisu ale tam od jednej strony podpinasz arduino (ez-pz) ale jak ktoś tam napisał te 5A, 10A w aliex to na czuja gdzieś (np. na 1,2) powinieneś dać jakieś źrodło prądu razem z tym balastem o którym piszesz (całkiem prawdopodobnie do 5A albo i nawet 10A- zależnie który model kupiłeś..;) )

    W datasheet jaki mi się udało znaleźć Link)
    jest przykładowy schemat na pierwszej stronie i na pinach 1,2 (proszę - niech mnie ktoś poprawi albo przytaknie bo pewny nie jestem tego symbolu i zgaduje "na czuja" co to za cholera) to by oznaczało coś w stylu "źródło AC lub DC"

    Jak uważasz, że to trywialne to sorki - z Twojego opisu wynika, że mogłeś to przegapić a do pomiaru prądu - potrzebujesz..no... prądu; balast stanowi wisienkę, nie tort. Jak ten krok był tak trywialny, że nie wspomniałeś i pytanie dotyczyło odczytów czujnika, który jest wpięty i bez względu czy płynie czy nie płynie to pokazuje ten sam stan to zawsze jest szansa, że są uszkodzone i były do d-e od samego początku. Do arduino powinno to wchodzić pewnie na analog ale jak piszesz o połowie napięcia to albo zrobiłeś to dobrze albo mierzysz miernikiem i arduino w ogóle nie ma znaczenia. [edit] jak to co zaproponował Ci kiss39 jest dla Ciebie nowością to nie tylko warto przerobić to co zaproponował ale i najprawdopodobniej to w sofcie wysłanym do arduino siedzi Twój problem no.1 ;)

    ps - jak to ma być do baterii, paków akumulatorków itp. to powodzenia i baw się dobrze...
    ale jak planujesz to wpinać do kabli z "gniazdka" bo kombinujesz nad instalacją typu SmartHouse przy pomocy czujnika za dolar-,29 to nie wydaje mi się to ani dobrym pomysłem, ani "smart" ani bezpiecznym
  • Poziom 35  
    delay(); czas mozna dać od 10-200


    Monitor portu szeregowego
    Problem z działaniem czujnika Halla


    Szeregowy monitor
    Problem z działaniem czujnika Halla
  • Poziom 4  
    Arduino poprawnie odczytuje wartość analogową którą dostaje, jednak mimo podłączenia obciążania (oczywiście przez które płynie prąd ;) ). Przez czujnik prąd musi przepływa ponieważ po wpieciu go szeregowo w obwód prąd płynie. Dodam jeszcze że czujnik reaguje na przyłożenie do niego magnesu, i wynik widać w arduino. Jednak po wpieciu go w obwód nie żadnego efektu. Sprawdzałem przy prądzie 20mA oraz 0,5A.
  • Poziom 11  
    Mówią, że jeden obraz jest wart tysiące słów - weź to zepnij tak jak uważasz, że jest OK
    ... i zrób temu fotkę
  • Poziom 4  
    do_not_panic napisał:
    Mówią, że jeden obraz jest wart tysiące słów - weź to zepnij tak jak uważasz, że jest OK
    ... i zrób temu fotkę


    Ze zdjęciem może być kłopot bo układ jest powpinany pomiędzy inne, dlatego ciężko będzie coś zobaczyć, zrobiłem za to taki nietypowy schemacik pokazujący rzeczywiste podłączenie. Sekcja mierzona (górna na zdjęciu jest podłączona do zewnętrznego zasilacza, natomiast dolna część zasilająca czujnik do Arduino.

    Problem z działaniem czujnika Halla79827597_7...8448_n.jpg Download (31.93 kB)
  • Poziom 11  
    Dzięki za zdjęcie. Raczej stawiałem na to, że się zrozumieliśmy ale zawsze była szansa, że po prostu i po ludzku - nie.

    Mogę Ci podpowiedzieć co ja bym zrobił w tym miejscu ale bez jakiegoś miernika "to se ne da, pane". Strzelam, że posiadasz takowy ale jak nie - to jest to dobry moment...
    Nie musi to być Fluke albo coś na tą miarę - te "pomarańczowe" za około 50zł też się do tego nadadzą - marka nazywa się kemot. Oczywiście zawsze się znajdzie jakaś mądrala dla której brak dokładności co do pikovolta jest niewybaczalnym grzechem i totalną amatorką (a ile radości jak już sobie potem zmierzy czy akumulatorki AAA są "dobre" czy mu, kurde - padły...warte każdego wydanego grosza z tych kilku tyś zł).

    W tym pdf z datasheet ( link zamieściłem wcześniej) na stronie 4 znajduje się pierwszy przydatny tip:
    Output Resistive Load: RLOAD VIOUT to GND = 4.7 kΩ
    Dalej - str.6
    Jest tam seria rozwiązanych rebusów z cyklu "połącz kropki". Nas interesuje ten przedostatni na dole, lewa kolumna. Nagłówek to "Output Voltage versus Sensed Current" ( (napięcie na wyjściu vs. mierzone natężenie).
    Sprawdź, ile ten Twój balast zużywa jak nie dopasowałeś go do 5A tylko użyłeś innej wartości. Jak możesz -zrób sobie dodatkowy balast na 3 albo 2A (jak masz możliwość obu to jest to miły bonus, który poprawi wiarygodność całej zabawy).

    Jak już masz powyższe załatwione to
    krok nr1.
    sprawdź ile w Twoim ACS712 wynosi opór pomiędzy pinem V-out i GND - są możliwe 3 scenariusze
    -jak to 4.7 k Ohm-a to pełen wypas i patrz krok.2
    - dużo mniejszy opór to prawie na pewno nie jest - jakby było blisko zera to nieważne czy arduino zrobiło mu krzywdę czy ten sensor zrobił krzywdę arduno... jeśli działa to fajnie, że ma jeden analogowy pin wypalony zamiast w ogóle zdechnąć od smażenia).
    -jak jest to wartość o parę rzędów większa albo widzisz stan "otwarty" na mierniku - to ten sensor Hall'a możesz wyrzucić albo zasugerować sprzedawcy z AE polubowne załatwienie sprawy.

    krok 2
    to daj temu sensorowi balast z jednej strony, napięcie z 2giej (lepiej użyć tutaj zasilacza USB na pin Vcc niż pakować w to arduino ;) ), zrób pomiar napięcia pomiędzy Vi-out i GND, czynność powtórz dla tego 2giego balastu (albo i obu) i porównaj z tą tabelką - albo się to pokrywa (z tolerancją dosłownie kilku procent) albo i nie

    jak się pokrywa to gratuluje - Twój sensor jest sprawny i błąd siedzi zapewne w sofcie, który wgrywasz do Arduino...a przynajmniej ja nie mam więcej pomysłów

    ps - coś mi się pamięta, że majfrends z aliekspress-u potrafią mieć klony Arduino, przy zakupie których jesteś zmuszany aby się określić czy kupujesz 3V czy 5
    nie widziałem takiego na żywo ale zawsze jest cień szansy na to, że podkładasz 5V czujnik do czegoś co po prostu nie umie 5V i
  • Poziom 4  
    W jednym czujniku 21kOhm w drugim natomiast 6MOhm, czy jest szansa jakas szansa na odratowanie przynajmniej tego pierwszego?