Indholdsfortegnelse:
- Trin 1: Hvordan det kan gøres
- Trin 2: Afmonter tykkelsen
- Trin 3: Find de nødvendige puder til lodning af stikket
- Trin 4: Identificer Connector's Pin-out
- Trin 5: Omvendt konstruktion af kommunikationsprotokollen
- Trin 6: Lav en logisk konverter
- Trin 7: Arduino -kode
Video: Hacket Digital Vernier Caliper Brug af Arduino: 7 trin
2024 Forfatter: John Day | [email protected]. Sidst ændret: 2024-01-30 08:27
Så hvad med at lave nogle målinger med din Digital Vernier Caliper og få din Arduino til at arbejde med disse målinger? Måske gemmer vi dem, laver nogle baseret på beregninger eller tilføjer disse målinger til en feedback-loop fra din mekaniske enhed. I denne instruktive skal vi adskille en Digital Vernier Caliper, koble nogle ledninger til den og interface Caliper med Arduino til vise sine måleværdier på Arduino Serial Monitor.
Trin 1: Hvordan det kan gøres
Det viser sig, at nogle digitale kalibre er i stand til at transmittere de målte data, der vises på deres skærme, ved hjælp af forskellige protokoller, der skal bruges af andre enheder.
Der ER faktisk et sted til en interfacestik på tykkelsen, men intet er loddet på det.
Du kan bare glide det øverste dæksel ud på displayet (ikke batteridækslet), og du finder 4 puder, der skal have en stikkontakt på dem for at kommunikere med tykkelsen, men det er de ikke:(.
Denne kendsgerning blev opdaget for mange år siden på forskellige calipre, og denne instruktive fokuserer på den nøjagtige model af den kinesiske digitale vernier caliper, du kan se på billederne, så sørg for, at din er den samme model, da en anden model kan have forskellige protokoller til arbejde med, Derfor forskellige koder at bruge, men hovedideen er den samme blandt de fleste af disse kinesiske.
Vi skal til:
- Adskil kaliperen
- Find, hvor vi kan lodde en interfacestik til kortet
- Identificer Connector's pin-out
- Lod det og saml tykkelsen
- Omvendt konstruere de transmitterede data for at vide, hvordan protokollen fungerer
- Niveauskift Caliper -signaler, der passer til Arduino
- Upload koden og det er det:)
Det skal du bruge:
- En Digital Vernier Caliper
- Arduino (Enhver type vil gøre jobbet)
- Logic Converter Board (jeg vedlægger en skematisk for en)
- Et fint rent spidsloddejern
- Tynd loddetråd
- Nogle springtråde
Trin 2: Afmonter tykkelsen
- Først og fremmest fjern caliper batteriet fra dets klip.
- Til denne model finder du et sølv guidepapir på bagsiden, og du finder fire monteringsskruer under den. De holder sagen sammen, og vi skal skrue dem af med en Philips skruetrækker. Du kan bare gå din skruetrækker over papiret på siderne, og du vil se deres monteringshuller.
Derefter vil du se, at printet er monteret på frontpanelet med fire skruer. Du skal forsigtigt skrue dem af med en fin skruetrækker fra Philips
Vær forsigtig med ikke at ridse eller klippe sporene på begge printkortsider
- Efter at have fået alle skruerne ud og lagt dem et sikkert sted var de ikke gået tabt:),
- Du skal løfte printet forsigtigt, da displayet og de tre gummiknapper kan falde fra hinanden.
- På dette tidspunkt kan du trække displayet og knapperne fra printkortet og sætte dem med skruerne og fortsætte dit arbejde med det bare print.
Trin 3: Find de nødvendige puder til lodning af stikket
Når du nu ser på oversiden af printkortet, kan du let se, hvor datastikket skal monteres.
Du kan også se, at Generic pin headers ikke kan loddes uden meget tweaking, da stikhøjden er mindre end deres (pitch: afstand mellem midten af to tilstødende puder på stikket)
Pin headers pitch er 100 mil eller 2,54 mm, så du kan enten bøje dem lidt og få dem loddet, eller du kan finde en anden fatning.
Og her er, da min fulde kasse med bare at sidde omkring PCB'er kom godt til gode.
Jeg fandt et perfekt 4-pins flexkabelstik (FPC-stik) på en af de gamle cd-rom-drev-printkort og besluttede at bruge det med tykkelsen.
Du behøver ikke sige, at du skal være forsigtig, mens du aflodder PCB -stik, da deres plastikhus kan smelte.
Vær også forsigtig med, at enten du valgte at bruge stiftoverskrifter eller en særlig stikkontakt som stik, skal du bruge dette stik for mekanisk at kunne passe ind i åbningen til stikket i Caliper -displayet. (Du kan se billedet for mere afklaring)
Trin 4: Identificer Connector's Pin-out
Nu efter at have fundet de nødvendige pads, skal vi vide, hvad hver pude er forbundet til.
Nå, det er allerede fundet i andre omvendte ingeniørprojekter for disse kalipre, og de har for det meste den samme konfiguration (GND, DATA, CLOCK, VCC)
Sådan konfigureres det med dig selv:
Fjern batteriet
- indstil din multi-meter til summer tilstand (kontinuitetstest)
- Start med at tilslutte den ene sonde til Battery -VE terminalen (GND), og find hvilken pin på stikket der er forbundet til jorden ved hjælp af den anden sonde
- Gør det samme med batteri +VE -terminal
Du kan give de to andre pins, der er forbundet chippen, to navne (EX: D0 og D1), da vi kender deres funktioner senere i deres reverse engineering -trin
Hvis du ikke vil konfigurere pin-out'en, kan du estimere connector-pin-outen som:
(GND, DATA, CLOCK, VCC)
GND er den nærmeste pad til displayet
VCC er den nærmeste pad til printkortets kant
og begge større puder på kanten af stikket til stikmontering er forbundet til GND (du kan kontrollere dem med et multimeter)
Trin 5: Omvendt konstruktion af kommunikationsprotokollen
Efter at have undersøgt begge digitale output -pins signaler med et oscilloskop, ser det sådan her ud.
du kan se, at en af stifterne fungerer som et ur til synkronisering af datatransmission (CLK -linje), og den anden er datalinjen, så vi har at gøre med en synkroniseret datatransmissionsprotokol.
Det viser sig, at: - Data sendes i et logisk niveau på 1,5 volt (lyder logisk, da det er den samme spænding som vernierbatteriet) - Data sendes i 6 nibbles (6 x 4 bits) med i alt 24 bits - Der er 200 mS mellem slutningen af hver datapakke og begyndelsen på den anden
Jeg besluttede at prøve dataene ved den stigende kant af uret, så efter at have prøvet med forskellige målinger på måleren og ændret dens tilstand fra (mm til in) og også vist nogle negative værdier, fik jeg denne tabel (3. billeder) til mine testbetingelser og jeg begyndte at finde ud af kommunikationsprotokollen
Så efter at have studeret de indfangede data:
- i mm-tilstand: bits nr. 1 til 16 er den binære repræsentation for det viste tal på tykkelsen (ganget med 100)- i (tommer) -tilstand: bit nr. 2 til 17 er den binære repræsentation for det viste tal på tykkelse (ganget med 1000)
- bit nr. 21 repræsenterer det negative tegn (1 hvis det viste tal er negativt og 0 hvis det er positivt)
- bit nr. 24 repræsenterer måleenheden (1 hvis enheden er (i) og 0 hvis enheden er (mm))
- i (tommer) tilstand: bit nr. 1 repræsenterer segmentet på 0,5 mil (1 hvis det er tilføjet og 0 hvis det ikke er det)
Trin 6: Lav en logisk konverter
Nu er vi nødt til at flytte spændingsniveauet for tykkelsen data (1,5 volt er ikke egnet til at arbejde med Arduino, det er for lavt) Jeg har tilføjet en skematisk for den logiske konverter, jeg lavede til dette projekt, men som du kan se dataene nu ud over at blive flyttet til 5 volt logisk niveau vil det også blive omvendt, så vi skal kompensere det i koden.
Trin 7: Arduino -kode
Og nu er du klar til at forbinde den med Arduino. Du kan finde koden vedhæftet. Tilslut urstiften til pin 2 eller 3 på Arduino uno, nano eller pro-mini (du skal bruge en afbryder, der er i stand til at forbinde) tilslut datastift til enhver anden pin. Upload koden, og åbn den serielle skærm for at se de målte data
Koden kan automatisk registrere, hvilken tilstand caliper arbejder på ved at scanne den 24. databit
Anbefalede:
BlackJack (hacket IRig): 4 trin
BlackJack (hacket IRig): Jeg hadede den måde, jeg skulle bruge min iRig med den elektriske guitar og min smartphone, fordi der var for mange kabler !!!!!!! Grundlæggende fandt jeg to hovedproblemer med det originale design: 1. - Jeg vil ikke bruge et guitarkabel, fordi det er en anden ting
I2C / IIC LCD -skærm - Brug et SPI LCD til I2C LCD Display Brug SPI til IIC modul med Arduino: 5 trin
I2C / IIC LCD -skærm | Brug en SPI LCD til I2C LCD -skærmen Brug af SPI til IIC -modulet med Arduino: Hej fyre, da en normal SPI LCD 1602 har for mange ledninger at tilslutte, så det er meget svært at grænseflade det med arduino, men der er et modul på markedet, som kan konverter SPI -skærm til IIC -skærm, så du skal kun tilslutte 4 ledninger
Neopixel Ws2812 Rainbow LED Glød Med M5stick-C - Kører Rainbow på Neopixel Ws2812 Brug af M5stack M5stick C Brug af Arduino IDE: 5 trin
Neopixel Ws2812 Rainbow LED Glød Med M5stick-C | Kører Rainbow på Neopixel Ws2812 Brug af M5stack M5stick C Brug af Arduino IDE: Hej fyre i denne instruktion vil vi lære at bruge neopixel ws2812 LED'er eller led strip eller led matrix eller led ring med m5stack m5stick-C udviklingstavle med Arduino IDE, og vi vil lave et regnbuemønster med det
Vægtskala -data på Google Sheet [hacket]: 4 trin
Vægtskala -data på Google Sheet [hacket]: Dette er et hack, der blev kørt mod et almindeligt off -market vægtskala -produkt, der derefter blev brugt til at skubbe data til Google -ark for at holde styr på vægten overarbejde Processen er enkel som en bruger måler hans vægt ved at stå på vægten
Privacy Monitor hacket fra en gammel LCD -skærm: 7 trin (med billeder)
Privacy Monitor hacket fra en gammel LCD -skærm: Endelig kan du gøre noget med den gamle LCD -skærm, du har i garagen. Du kan gøre det til en fortrolighedsmonitor! Det ser helt hvidt ud for alle undtagen dig, fordi du er iført " magi " briller! Alt du virkelig skal have er en pa