Spisu treści:
- Krok 1: Jak można to zrobić
- Krok 2: Zdemontuj zacisk
- Krok 3: Znajdź potrzebne podkładki do przylutowania gniazda
- Krok 4: Zidentyfikuj wyprowadzenie złącza
- Krok 5: Inżynieria odwrotna protokołu komunikacyjnego
- Krok 6: Tworzenie konwertera logicznego
- Krok 7: Kod Arduino
Wideo: Zhakowany cyfrowy suwmiarka z noniuszem przy użyciu Arduino: 7 kroków
2024 Autor: John Day | [email protected]. Ostatnio zmodyfikowany: 2024-01-30 11:29
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ć
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
- 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
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
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
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
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
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:
Potężny cyfrowy ściemniacz prądu przemiennego przy użyciu STM32: 15 kroków (ze zdjęciami)
Potężny cyfrowy ściemniacz prądu przemiennego przy użyciu STM32: Hesam Moshiri, [email protected] ładuje się z nami! Ponieważ są wszędzie wokół nas i przynajmniej sprzęt AGD jest zasilany z sieci. Wiele typów urządzeń przemysłowych jest również zasilanych napięciem jednofazowym 220V-AC
Cyfrowy zegarek na Arduino przy użyciu maszyny skończonej: 6 kroków
Cyfrowy zegarek na Arduino przy użyciu maszyny skończonej: Hej, pokażę ci, jak można stworzyć cyfrowy zegarek za pomocą YAKINDU Statechart Tools i uruchomić go na Arduino, który używa osłony klawiatury LCD. Oryginalny model cyfrowego zegarka zegarek pochodzi od Davida Harela. Opublikował artykuł na temat
Neopixel Ws2812 Rainbow LED Glow z M5stick-C - Uruchamianie Rainbow na Neopixel Ws2812 przy użyciu M5stack M5stick C przy użyciu Arduino IDE: 5 kroków
Neopixel Ws2812 Rainbow LED Glow z M5stick-C | Uruchamianie Rainbow na Neopixel Ws2812 Używając M5stack M5stick C Używając Arduino IDE: Cześć chłopaki, w tej instrukcji dowiemy się, jak używać neopikselowych ws2812 LED lub taśmy LED lub matrycy LED lub pierścienia LED z płytką rozwojową m5stack m5stick-C z Arduino IDE i zrobimy wzór tęczy z nim
Zegar cyfrowy przy użyciu 4026 i 4060: 5 kroków (ze zdjęciami)
Zegar cyfrowy przy użyciu 4026 i 4060: Tego lata wziąłem udział w kursie „Cyfrowa elektronika”; na mojej uczelni. Dowiedziałem się o klapkach, licznikach i wielu innych. Pomyślałem więc, że byłoby świetnie, gdybym zrobił projekt związany z elektroniką cyfrową, a stamtąd projekt zegar cyfrowy
DIY lutownica na gorące powietrze przy użyciu 12-18 woltów prądu stałego przy 2-3 amperach: 18 kroków (ze zdjęciami)
DIY lutownica na gorące powietrze przy użyciu 12-18 woltów prądu stałego przy 2-3 amperach: to moja pierwsza publikacja eva artykułu o majsterkowaniu w Internecie. Więc przepraszam za literówki, protokoły itp. Poniższe instrukcje pokazują, jak zrobić PRACOWĄ lutownicę na gorące powietrze odpowiednią do WSZYSTKICH zastosowań wymagających lutowania. To lutowanie gorącym powietrzem