Spisu treści:

Zhakowany cyfrowy suwmiarka z noniuszem przy użyciu Arduino: 7 kroków
Zhakowany cyfrowy suwmiarka z noniuszem przy użyciu Arduino: 7 kroków

Wideo: Zhakowany cyfrowy suwmiarka z noniuszem przy użyciu Arduino: 7 kroków

Wideo: Zhakowany cyfrowy suwmiarka z noniuszem przy użyciu Arduino: 7 kroków
Wideo: Jak działa elektroniczna suwmiarka? [RS Elektronika] #238 2024, Listopad
Anonim
Zhakowany cyfrowy suwmiarka z noniuszem przy użyciu Arduino
Zhakowany cyfrowy suwmiarka z noniuszem przy użyciu Arduino

A co z wykonaniem niektórych pomiarów za pomocą suwmiarki z noniuszem cyfrowym i wykonaniem przez Arduino pewnej pracy z tymi pomiarami? Może ich zapisanie, wykonanie pewnych obliczeń lub dodanie tych pomiarów do pętli sprzężenia zwrotnego z urządzenia mechanicznego. wyświetlać zmierzone wartości na Arduino Serial Monitor.

Krok 1: Jak można to zrobić

Jak można to zrobić
Jak można to zrobić

Okazuje się, że niektóre suwmiarki cyfrowe są w stanie przekazywać dane pomiarowe pojawiające się na ich wyświetlaczach za pomocą różnych protokołów, które mogą być używane przez inne urządzenia.

Właściwie na płytce zacisku jest miejsce na gniazdo interfejsu, ale nic na nim nie jest wlutowane.

Wystarczy wysunąć górną pokrywę w wyświetlaczu (nie pokrywę baterii) i znajdziesz 4 pady, które mają mieć na sobie gniazdo do komunikacji z zaciskiem, ale nie są:(.

Fakt ten został odkryty wiele lat temu na różnych suwmiarkach, a ta instrukcja koncentruje się na dokładnym modelu chińskiej suwmiarki cyfrowej, którą można zobaczyć na zdjęciach, więc upewnij się, że twój jest ten sam model, ponieważ różne modele mogą mieć różne protokoły pracuj z, dlatego różne kody do użycia, ale główna idea jest taka sama w przypadku większości tych chińskich.

Mamy zamiar:

  • Zdemontuj zacisk
  • Znajdź gdzie możemy przylutować gniazdo interfejsu do płytki
  • Zidentyfikuj wyprowadzenia złącza
  • Przylutuj i zamontuj suwmiarkę
  • Przeprowadź inżynierię wsteczną przesyłanych danych, aby dowiedzieć się, jak działa jego protokół
  • Poziom przesuwa sygnały Caliper, aby pasowały do Arduino
  • Prześlij kod i to wszystko:)

Co będziesz potrzebował:

  • Cyfrowa suwmiarka noniuszowa
  • Arduino (każdy typ wykona zadanie)
  • Płytka konwertera logiki (do jednego schematu dołączę)
  • Dobra czysta końcówka lutownicy
  • Cienki drut lutowniczy
  • Niektóre przewody połączeniowe

Krok 2: Zdemontuj zacisk

Zdemontuj zacisk
Zdemontuj zacisk
Zdemontuj zacisk
Zdemontuj zacisk
Zdemontuj zacisk
Zdemontuj zacisk
  • Przede wszystkim Wyjmij baterię zacisku z zacisku.
  • W przypadku tego modelu z tyłu znajduje się srebrny papier prowadzący, a pod nim znajdują się cztery śruby mocujące. Trzymają obudowę razem i musimy je odkręcić śrubokrętem Philipsa. Możesz po prostu przesunąć śrubokręt po papierze po bokach, a zobaczysz ich otwory montażowe.

Następnie zobaczysz, że płytka PCB jest przykręcona do panelu przedniego czterema śrubami, które należy delikatnie odkręcić za pomocą śrubokręta Philips z cienką końcówką

Uważaj, aby nie zarysować ani nie przeciąć żadnych śladów po obu stronach płytki drukowanej

  • Teraz po wykręceniu wszystkich śrubek i odłożeniu ich w bezpieczne miejsce, gdzie nie można ich zgubić:),
  • Należy ostrożnie podnieść płytkę drukowaną, ponieważ wyświetlacz i trzy gumowe przyciski mogą się rozpaść.
  • W tym momencie możesz wyciągnąć wyświetlacz i przyciski z PCB i włożyć je za pomocą śrub i kontynuować pracę z gołą płytką PCB.

Krok 3: Znajdź potrzebne podkładki do przylutowania gniazda

Znajdź potrzebne podkładki do przylutowania gniazda
Znajdź potrzebne podkładki do przylutowania gniazda
Znajdź potrzebne podkładki do przylutowania gniazda
Znajdź potrzebne podkładki do przylutowania gniazda
Znajdź potrzebne podkładki do przylutowania gniazda
Znajdź potrzebne podkładki do przylutowania gniazda
Znajdź potrzebne podkładki do przylutowania gniazda
Znajdź potrzebne podkładki do przylutowania gniazda

Teraz, gdy spojrzysz na górną stronę płytki drukowanej, możesz łatwo zauważyć, gdzie należy zamontować złącze danych.

Możesz również zobaczyć, że Generic pin headers nie może być lutowany bez większych poprawek, ponieważ rozstaw złącza jest mniejszy niż ich (rozstaw: odległość między środkami dwóch sąsiednich padów na złączu)

Rozstaw główek pinów wynosi 100 mil lub 2,54 mm, więc możesz je lekko zgiąć i przylutować, lub możesz znaleźć inne gniazdo.

I oto, kiedy moje pełne pudełko po prostu siedzenia wokół płytek drukowanych przyniosło dobry użytek.

Znalazłem idealne 4-pinowe złącze kabla elastycznego (złącze FPC) na jednej ze starych płytek PCB napędu CD-ROM i zdecydowałem się użyć go z suwmiarką.

Nie trzeba mówić, że należy uważać podczas wylutowywania złączy PCB, ponieważ ich plastikowa obudowa może się stopić.

Należy również uważać, aby wybrać użycie listw pinowych lub specjalnego gniazda jako złącza, które jest potrzebne do mechanicznego dopasowania tego złącza do otworu na złącze w gablocie Caliper. (Możesz zobaczyć zdjęcie, aby uzyskać więcej wyjaśnień)

Krok 4: Zidentyfikuj wyprowadzenie złącza

Zidentyfikuj wyprowadzenie złącza
Zidentyfikuj wyprowadzenie złącza
Zidentyfikuj wyprowadzenie złącza
Zidentyfikuj wyprowadzenie złącza
Zidentyfikuj wyprowadzenie złącza
Zidentyfikuj wyprowadzenie złącza

Teraz po znalezieniu potrzebnych padów musimy wiedzieć, do czego jest podłączony każdy pad.

Cóż, zostało to już znalezione w innych projektach inżynierii odwrotnej dla tych zacisków i przez większość czasu mają taką samą konfigurację (GND, DATA, CLOCK, VCC)

Aby skonfigurować go samemu:

Wyjmij baterię

  • ustaw multimetr na stan brzęczyka (test ciągłości)
  • Zacznij od podłączenia jednej sondy do zacisku akumulatora -VE (GND) i znajdź, który pin na złączu jest podłączony do masy za pomocą drugiej sondy
  • Zrób to samo z zaciskiem akumulatora + VE

Możesz nadać pozostałym dwóm pinom podłączonym do chipa dowolne dwie nazwy (EX: D0 i D1), ponieważ poznamy ich funkcje w późniejszym etapie inżynierii odwrotnej

Jeśli nie chcesz konfigurować wyprowadzenia, możesz oszacować wyprowadzenie złącza jako:

(GND, DANE, ZEGAR, VCC)

GND to najbliższy pad do wyświetlacza

VCC to podkładka najbliżej krawędzi PCB

a obie większe podkładki na krawędzi złącza do montażu złącza są podłączone do GND (można je sprawdzić multimetrem)

Krok 5: Inżynieria odwrotna protokołu komunikacyjnego

Inżynieria odwrotna protokołu komunikacyjnego
Inżynieria odwrotna protokołu komunikacyjnego
Inżynieria odwrotna protokołu komunikacyjnego
Inżynieria odwrotna protokołu komunikacyjnego
Inżynieria odwrotna protokołu komunikacyjnego
Inżynieria odwrotna protokołu komunikacyjnego

Po zmierzeniu oscyloskopem obu cyfrowych pinów wyjściowych, oto jak to wygląda.

widać, że jeden z pinów pracuje jako zegar do synchronizacji transmisji danych (linia CLK), a drugi to linia danych, mamy więc do czynienia z protokołem synchronizowanej transmisji danych.

Okazuje się, że: - Dane są przesyłane na poziomie logicznym 1,5 V (brzmi logicznie, bo to takie samo napięcie jak bateria noniusza) - Dane przesyłane są w 6 półbajtach (6 x 4 bity) łącznie 24 bity - Jest około 200 ms między końcem każdego pakietu danych a początkiem drugiego

Postanowiłem próbkować dane na rosnącej krawędzi zegara, więc po wypróbowaniu różnych pomiarów na suwmiarkach i zmianie jej trybu z (mm na cale), a także wyświetlaniu niektórych wartości ujemnych, otrzymałem tę tabelę (3. zdjęcia) dla moich warunków testowych i zacząłem zastanawiać się nad protokołem komunikacyjnym

Więc po przestudiowaniu przechwyconych danych:

- w trybie mm: bity nr 1 do 16 są binarną reprezentacją wyświetlanej liczby na suwmiarkach (pomnożone przez 100) - w trybie (cale): bity nr 2 do 17 są binarną reprezentacją wyświetlanej liczby na suwmiarkach suwmiarka (pomnożona przez 1000)

- bit nr 21 reprezentuje znak ujemny (1 jeśli wyświetlana liczba jest ujemna i 0 jeśli jest dodatnia)

- bit nr 24 reprezentuje jednostkę miary (1 jeśli jednostką jest (in) i 0 jeśli jednostką jest (mm))

- w trybie (cale): bit nr 1 reprezentuje segment 0,5 mil (1, jeśli jest dodany i 0, jeśli nie jest)

Krok 6: Tworzenie konwertera logicznego

Tworzenie konwertera logicznego
Tworzenie konwertera logicznego
Tworzenie konwertera logicznego
Tworzenie konwertera logicznego

Teraz musimy przesunąć poziom napięcia danych suwmiarki (1,5 V nie nadaje się do pracy z Arduino, jest za niskie) Dodałem schemat konwertera logicznego, który zrobiłem dla tego projektu, ale jak widać teraz dane oprócz tego, że zostanie przesunięty na poziom logiczny 5 V, zostanie on również odwrócony, więc musimy to skompensować w kodzie.

Krok 7: Kod Arduino

Kod Arduino
Kod Arduino

A teraz jesteś gotowy, aby połączyć go z Arduino. Możesz znaleźć załączony kod. podłącz pin zegara do pinu 2 lub 3 w Arduino uno, nano lub pro-mini (potrzebny będzie pin obsługujący przerwania) podłącz pin danych do dowolny inny pin. Prześlij kod i otwórz monitor szeregowy, aby zobaczyć zmierzone dane;

Kod może automatycznie wykryć, w jakim trybie pracuje suwmiarka, skanując 24 bit danych

Zalecana: