Innholdsfortegnelse:

Hacket Digital Vernier Caliper ved hjelp av Arduino: 7 trinn
Hacket Digital Vernier Caliper ved hjelp av Arduino: 7 trinn

Video: Hacket Digital Vernier Caliper ved hjelp av Arduino: 7 trinn

Video: Hacket Digital Vernier Caliper ved hjelp av Arduino: 7 trinn
Video: 150 мм штангенциркуль обзор электронного и недорогого измерительные приборы 2024, Juni
Anonim
Hacket Digital Vernier Caliper ved hjelp av Arduino
Hacket Digital Vernier Caliper ved hjelp av Arduino

Så hva med å gjøre noen målinger med Digital Vernier Caliper og få Arduino til å jobbe med disse målingene? Kanskje du lagrer dem, gjør noen beregninger basert på det eller legger disse målingene til en tilbakemeldingssløyfe fra den mekaniske enheten. I denne instruksen skal vi demontere en Digital Vernier-tykkelse, koble noen ledninger til den og koble til måleren med Arduino til vise måleverdiene på Arduino Serial Monitor.

Trinn 1: Hvordan det kan gjøres

Hvordan det kan gjøres
Hvordan det kan gjøres

Det viser seg at noen digitale kalipre er i stand til å overføre de målte dataene som vises på skjermene ved hjelp av forskjellige protokoller som skal brukes av andre enheter.

Det ER faktisk et sted for et grensesnittuttak på tykkelsen, men ingenting er loddet på det.

Du kan bare glide ut det øvre dekselet i displayet (ikke batteridekselet), og du finner 4 pads som skal ha en stikkontakt på dem for å kommunisere med tykkelsen, men det er de ikke:(.

Dette faktum ble oppdaget for mange år siden på forskjellige kalipere, og denne instruksive fokuserer på den eksakte modellen til den kinesiske digitale vernierkaliperen du kan se på bildene, så sørg for at din er den samme modellen som en annen modell kan ha forskjellige protokoller for arbeid med, Derfor forskjellige koder å bruke, men hovedideen er den samme blant de fleste av disse kinesiske.

Dro til:

  • Demonter tykkelsen
  • Finn hvor vi kan lodde et grensesnittuttak til brettet
  • Identifiser kontaktens pin-out
  • Lodd den og sett sammen tykkelsen
  • Omvendt konstruere de overførte dataene for å vite hvordan protokollen fungerer
  • Nivåskift Caliper -signalene for å passe til Arduino
  • Last opp koden og det er det:)

Dette trenger du:

  • En digital Vernier -tykkelse
  • Arduino (Enhver type vil gjøre jobben)
  • Logic Converter Board (jeg legger ved en skjematisk for en)
  • Et fint rent spissloddejern
  • Tynn loddetråd
  • Noen hoppetråder

Trinn 2: Demonter tykkelsen

Demonter tykkelsen
Demonter tykkelsen
Demonter tykkelsen
Demonter tykkelsen
Demonter tykkelsen
Demonter tykkelsen
  • Først av alt Fjern caliper -batteriet fra klemmen.
  • For denne modellen finner du et sølvførende papir på baksiden, og du finner fire festeskruer under den. De holder saken sammen, og vi må skru dem av med en skrutrekker fra Philips. Du kan bare gå din skrutrekker over papiret på sidene, og du vil se monteringshullene deres.

Etter det vil du se at kretskortet er montert på frontpanelet med fire skruer. Du må skru dem forsiktig av med en Philips -skrutrekker med fin spiss

Vær forsiktig så du ikke klør eller kutter noen av sporene på begge PCB -sidene

  • Etter å ha fått ut alle skruene og satt dem på et trygt sted, kan de ikke gå tapt:),
  • Du må løfte kretskortet forsiktig ettersom displayet og de tre gummiknappene kan falle fra hverandre.
  • På dette tidspunktet kan du trekke displayet og knappene fra kretskortet og sette dem med skruene og fortsette arbeidet med det bare kretskortet.

Trinn 3: Finn de nødvendige putene for å lodde kontakten

Finn de nødvendige putene for å lodde kontakten
Finn de nødvendige putene for å lodde kontakten
Finn de nødvendige putene for å lodde kontakten
Finn de nødvendige putene for å lodde kontakten
Finn de nødvendige putene for å lodde kontakten
Finn de nødvendige putene for å lodde kontakten
Finn de nødvendige putene for å lodde kontakten
Finn de nødvendige putene for å lodde kontakten

Når du ser på oversiden av kretskortet, kan du enkelt se hvor datakontakten skal monteres.

Du kan også se at generiske pinnehoder ikke kan loddes uten mye finjustering, ettersom kontakten er mindre enn deres (stigning: avstand mellom sentrene til to tilstøtende pads på kontakten)

Pinhodene er 100 mil eller 2,54 mm, så du kan enten bøye dem litt og få dem loddet, eller du kan finne en annen stikkontakt.

Og her er da min fulle boks med å bare sitte rundt PCB ble godt brukt.

Jeg fant en perfekt 4-pinners flexkabelkontakt (FPC-kontakt) på en av de gamle CD-ROM-stasjonene og bestemte meg for å bruke den med tykkelsen.

Du trenger ikke å si at du bør være forsiktig mens du lodder PCB -kontakter da plasthuset kan smelte.

Vær også forsiktig med at enten du valgte å bruke pinnehoder eller en spesiell kontakt som en kontakt som du trenger denne kontakten for å kunne passe mekanisk i åpningen til kontakten i Caliper -displayet. (Du kan se bildet for mer avklaring)

Trinn 4: Identifiser kontaktens pin-out

Identifiser kontaktens pin-out
Identifiser kontaktens pin-out
Identifiser kontaktens pin-out
Identifiser kontaktens pin-out
Identifiser kontaktens pin-out
Identifiser kontaktens pin-out

Etter å ha funnet de nødvendige putene, må vi vite hva hver pute er koblet til.

Vel, det har allerede blitt funnet i andre omvendte ingeniørprosjekter for disse kaliprene, og de har for det meste samme konfigurasjon (GND, DATA, CLOCK, VCC)

Slik konfigurerer du det med deg selv:

Ta ut batteriet

  • sett multimåleren på summerstatus (kontinuitetstest)
  • Start med å koble den ene sonden til Battery -VE -terminalen (GND) og finn hvilken pinne på kontakten som er koblet til bakken ved hjelp av den andre sonden
  • Gjør det samme med batteri +VE -terminal

Du kan gi de to andre pinnene som er koblet til brikken to navn (EX: D0 og D1), ettersom vi vil kjenne funksjonene deres senere i omvendt konstruksjonstrinn

Hvis du ikke vil konfigurere pin-out, kan du estimere pin-out-kontakten som:

(GND, DATA, CLOCK, VCC)

GND er den nærmeste puten til skjermen

VCC er den nærmeste puten til PCB -kanten

og begge større pads på kanten av kontakten for kontaktmontering er koblet til GND (du kan kontrollere dem med et multimeter)

Trinn 5: Reverse Engineering kommunikasjonsprotokollen

Reverse Engineering kommunikasjonsprotokollen
Reverse Engineering kommunikasjonsprotokollen
Reverse Engineering kommunikasjonsprotokollen
Reverse Engineering kommunikasjonsprotokollen
Reverse Engineering kommunikasjonsprotokollen
Reverse Engineering kommunikasjonsprotokollen

Etter å ha undersøkt begge de digitale utgangspinnene med et oscilloskop, ser det slik ut.

du kan se at en av pinnene fungerer som en klokke for synkronisering av dataoverføring (CLK -linje) og den andre er datalinjen, så vi har å gjøre med en synkronisert dataoverføringsprotokoll.

Det viser seg at: - Data sendes i logisk nivå på 1,5 volt (høres logisk ut som det er samme spenning som vernierbatteriet) - Data sendes i 6 nibbles (6 x 4 bits) med totalt 24 bits - Det er omtrent 200 mS mellom slutten av hver datapakke og begynnelsen på den andre

Jeg bestemte meg for å prøve dataene ved stigende kant av klokken, så etter å ha prøvd med forskjellige målinger på tykkelsen og endret modus fra (mm til in) og også vist noen negative verdier, fikk jeg denne tabellen (tredje bilder) for mine testforhold og jeg begynte å finne ut kommunikasjonsprotokollen

Så etter å ha studert de fangede dataene:

- i mm-modus: bits nr. 1 til 16 er den binære representasjonen for det viste tallet på tykkelsen (multiplisert med 100)- i (tommer) -modus: bitene nr. 2 til 17 er den binære representasjonen for det viste tallet på tykkelse (multiplisert med 1000)

- bit nr. 21 representerer det negative tegnet (1 hvis det viste tallet er negativt og 0 hvis det er positivt)

- bit nr. 24 representerer måleenheten (1 hvis enheten er (in) og 0 hvis enheten er (mm))

- i (tommer) -modus: bit nr. 1 representerer segmentet på 0,5 mil (1 hvis det er lagt til og 0 hvis det ikke er det)

Trinn 6: Lag en logisk omformer

Lag en logisk omformer
Lag en logisk omformer
Lag en logisk omformer
Lag en logisk omformer

Nå må vi forskyve spenningsnivået for tykkelsesdataene (1,5 volt er ikke egnet til å jobbe med Arduino, det er for lavt) Jeg har lagt til en skjematisk for logikkomformeren jeg laget for dette prosjektet, men som du kan se dataene nå i tillegg til å bli flyttet til 5 volt logisk nivå vil det også bli invertert, så vi må kompensere det i koden.

Trinn 7: Arduino -kode

Arduino -koden
Arduino -koden

Og nå er du klar til å koble den til Arduino. Du kan finne koden vedlagt. Koble klokkestiften til pinne 2 eller 3 på Arduino uno, nano eller pro-mini (du trenger en avbrytbar pin) koble datapinnen til hvilken som helst annen pin. Last opp koden og åpne den serielle skjermen for å se de målte dataene

Koden kan automatisk oppdage hvilken modus kaliperen jobber med ved å skanne den 24. databiten

Anbefalt: