Obsah:

Hacked Digital Vernier Caliper using Arduino: 7 Steps
Hacked Digital Vernier Caliper using Arduino: 7 Steps

Video: Hacked Digital Vernier Caliper using Arduino: 7 Steps

Video: Hacked Digital Vernier Caliper using Arduino: 7 Steps
Video: Digital read out (DRO) using an Arduino and a digital caliper 2024, Listopad
Anonim
Hacked Digital Vernier Caliper using Arduino
Hacked Digital Vernier Caliper using Arduino

Co tedy udělat nějaká měření s digitálním posuvným měřítkem a nechat si Arduino s těmito měřeními něco udělat? Možná je uložíme, provedeme nějaké založené na výpočtech nebo přidáme tato měření do zpětnovazební smyčky z vašeho mechanického zařízení. V tomto pokynu rozebereme digitální posuvný měřítko, připojíme k němu několik vodičů a propojíme posuvné měřítko s Arduinem zobrazte jeho naměřené hodnoty na sériovém monitoru Arduino.

Krok 1: Jak to lze provést

Jak to lze provést
Jak to lze provést

Ukazuje se, že některé digitální posuvné měřítka jsou schopny přenášet naměřená data zobrazená na jejich displejích pomocí různých protokolů, které mají používat jiná zařízení.

Ve skutečnosti NA třmenové desce je místo pro zásuvku rozhraní, ale nic na ní není připájeno.

Můžete jednoduše vysunout horní kryt na displeji (nikoli kryt baterie) a najdete 4 podložky, které mají mít na sobě zásuvku pro komunikaci s třmenem, ale nejsou:(.

Tato skutečnost byla objevena před mnoha lety na různých třmenech a tento návod se zaměřuje na přesný model čínského digitálního posuvného měřítka, který můžete vidět na obrázcích. Ujistěte se tedy, že ten váš je stejný model, protože jiný model může mít různé protokoly pracovat s, Proto různé kódy k použití, ale hlavní myšlenka je u většiny těchto čínských stejná.

Jdeme na:

  • Demontujte třmen
  • Zjistěte, kde můžeme k desce připájet zásuvku rozhraní
  • Identifikujte pin-out konektoru
  • Zapájejte jej a sestavte třmen
  • Zpětný inženýr přenesených dat, aby věděl, jak funguje jeho protokol
  • Posuňte signály posuvného měřítka tak, aby vyhovovaly Arduinu
  • Nahrajte kód a je to:)

Co budete potřebovat:

  • Digitální posuvné měřítko
  • Arduino (práci zvládne jakýkoli typ)
  • Logic Converter Board (k jednomu připojím schéma)
  • Páječka s jemnou čistou špičkou
  • Tenký pájecí drát
  • Nějaké propojovací vodiče

Krok 2: Demontujte třmen

Demontujte třmen
Demontujte třmen
Demontujte třmen
Demontujte třmen
Demontujte třmen
Demontujte třmen
  • Nejprve vyjměte baterii třmenu z její spony.
  • U tohoto modelu najdete na zadní straně stříbrný vodicí papír a pod ním najdete čtyři upevňovací šrouby. Drží pouzdro pohromadě a musíme je odšroubovat pomocí šroubováku Philips. Můžete jen projít šroubovákem po papíru po stranách a uvidíte jejich montážní otvory.

Poté uvidíte, že deska plošných spojů je připevněna k přednímu panelu pomocí čtyř šroubů, musíte je jemně odšroubovat pomocí šroubováku Philips s jemným hrotem

Dávejte pozor, abyste nepoškrábali ani nezařezali žádné stopy na obou stranách desky plošných spojů

  • Nyní, když jsme dostali všechny šrouby ven a uložili je na bezpečné místo, nemohly být ztraceny:),
  • PCB musíte opatrně nadzvednout, protože se displej a tři gumová tlačítka mohou rozpadnout.
  • V tomto okamžiku můžete vytáhnout displej a tlačítka z desky plošných spojů, nasadit je šrouby a pokračovat v práci s holým deskou plošných spojů.

Krok 3: Najděte potřebné podložky k pájení zásuvky

Najděte potřebné podložky k pájení zásuvky
Najděte potřebné podložky k pájení zásuvky
Najděte potřebné podložky k pájení zásuvky
Najděte potřebné podložky k pájení zásuvky
Najděte potřebné podložky k pájení zásuvky
Najděte potřebné podložky k pájení zásuvky
Najděte potřebné podložky k pájení zásuvky
Najděte potřebné podložky k pájení zásuvky

Nyní, když se podíváte na horní stranu desky plošných spojů, můžete snadno zjistit, kde by měl být namontován datový konektor.

Můžete také vidět, že obecné kolíkové záhlaví nelze pájet bez velkého vylepšení, protože rozteč konektoru je menší než jejich (rozteč: vzdálenost mezi středy dvou sousedních podložek na konektoru)

Rozteč kolíků je 100 mil nebo 2,54 mm, takže je můžete buď mírně ohnout a připájet, nebo můžete najít jinou zásuvku.

A tady se moje plná krabice pouhého posezení kolem desek plošných spojů dobře uplatnila.

Na jednom ze starých desek plošných spojů jednotky CD-ROM jsem našel perfektní 4pinový flex kabel (konektor FPC) a rozhodl jsem se jej použít s posuvným měřítkem.

Není třeba říkat, že byste měli být opatrní při odpájení konektorů DPS, protože jejich plastové pouzdro se může roztavit.

Dávejte si také pozor na to, že buď jste se rozhodli použít kolíkové hlavičky nebo speciální zásuvku jako konektor, který potřebujete, aby se tento konektor mohl mechanicky vejít do otvoru pro konektor ve vitríně Caliper. (Pro upřesnění můžete vidět obrázek)

Krok 4: Identifikujte pin-out konektoru

Identifikujte Pin-out konektoru
Identifikujte Pin-out konektoru
Identifikujte Pin-out konektoru
Identifikujte Pin-out konektoru
Identifikujte Pin-out konektoru
Identifikujte Pin-out konektoru

Nyní, když najdeme potřebné podložky, musíme vědět, k čemu je každá podložka připojena.

Bylo to již nalezeno v jiných projektech reverzního inženýrství pro tyto posuvné měřítka a většinu času mají stejnou konfiguraci (GND, DATA, CLOCK, VCC)

Chcete -li jej nakonfigurovat sami:

Vyjměte baterii

  • nastavit multimetr na stav bzučáku (test kontinuity)
  • Začněte připojením jedné sondy ke svorce baterie -VE (GND) a pomocí druhé sondy zjistěte, který kolík na konektoru je připojen k zemi
  • Totéž proveďte s terminálem Baterie +VE

Ostatním dvěma pinům připojeným k čipu můžete dát libovolná dvě jména (EX: D0 a D1), protože jejich funkce budeme znát později v jejich kroku reverzního inženýrství

Pokud nechcete konfigurovat pin-out, můžete odhadnout pin-out konektoru jako:

(GND, DATA, CLOCK, VCC)

GND je nejbližší podložka k displeji

VCC je nejbližší pad k okraji PCB

a obě větší podložky na okraji konektoru pro montáž konektoru jsou připojeny k GND (můžete je zkontrolovat multimetrem)

Krok 5: Reverzní inženýrství komunikačního protokolu

Reverzní inženýrství komunikačního protokolu
Reverzní inženýrství komunikačního protokolu
Reverzní inženýrství komunikačního protokolu
Reverzní inženýrství komunikačního protokolu
Reverzní inženýrství komunikačního protokolu
Reverzní inženýrství komunikačního protokolu

Po sondování signálů obou digitálních výstupů osciloskopem to vypadá, jak to vypadá.

můžete vidět, že jeden z pinů funguje jako hodiny pro synchronizaci přenosu dat (linka CLK) a druhý je datová linka, takže máme co do činění se synchronizovaným protokolem pro přenos dat.

Ukazuje se, že: - Data jsou odesílána v logické úrovni 1,5 voltů (zní to logicky, protože je to stejné napětí jako noniová baterie) - Data jsou odesílána v 6 nibblech (6 x 4 bity) s celkovým počtem 24 bitů - Existuje asi 200 mS mezi koncem každého datového paketu a začátkem druhého

Rozhodl jsem se vzorek dat na stoupající hraně hodin, takže po vyzkoušení různých opatření na posuvném měřítku a změně jeho režimu z (mm na in) a také zobrazení některých záporných hodnot jsem dostal tuto tabulku (3. obrázky) pro své testovací podmínky a začal jsem zjišťovat komunikační protokol

Takže po prostudování zachycených dat:

- v režimu mm: bity č. 1 až 16 jsou binární reprezentací pro zobrazené číslo na posuvném měřítku (vynásobeno 100)- v režimu (palce): bity č. 2 až 17 jsou binární reprezentace pro zobrazené číslo na třmen (vynásobený 1000)

- bit č. 21 představuje záporné znaménko (1, pokud je zobrazené číslo záporné, a 0, pokud je kladné)

- bit č. 24 představuje měřicí jednotku (1, pokud je jednotka (in) a 0, pokud je jednotka (mm))

- v režimu (palce): bit č. 1 představuje segment 0,5 mil (1, pokud je přidán, a 0, pokud není)

Krok 6: Vytvoření převaděče logiky

Výroba převaděče logiky
Výroba převaděče logiky
Výroba převaděče logiky
Výroba převaděče logiky

Nyní musíme posunout úroveň napětí dat posuvného měřítka (1,5 voltu není vhodné pro práci s Arduinem, je příliš nízké) Přidal jsem schéma pro logický převodník, který jsem pro tento projekt vytvořil, ale jak vidíte data nyní kromě toho, že bude posunut na logickou úroveň 5 voltů, bude také invertován, takže to musíme v kódu kompenzovat.

Krok 7: Arduino kód

Arduino kód
Arduino kód

A nyní jste připraveni jej připojit k Arduinu. Kód najdete v příloze. Připojte hodinový pin na pin 2 nebo 3 na Arduino uno, nano nebo pro-mini (budete potřebovat pin schopný přerušení) připojte datový pin na jakýkoli jiný pin. Načtěte kód a otevřete sériový monitor, abyste viděli naměřená data

Kód může automaticky zjistit, v jakém režimu třmen pracuje, skenováním 24. datového bitu

Doporučuje: