Indholdsfortegnelse:
- Trin 1: Materialer
- Trin 2: Tilslutning af Arduino til skærmen
- Trin 3: Koden
- Trin 4: Montering af den i en æske
2024 Forfatter: John Day | [email protected]. Sidst ændret: 2024-01-30 08:28
Næsten alle med en moderne smartphone har et højhastighedskamera, der kan bruges til at lave spektakulære slowmotion-videoer. Men hvis du vil måle, hvor lang tid det faktisk tager, at den sæbeboble springer eller vandmelonen eksploderer, kan det være svært at vise tiden på dine videoer: et stopur har et meget lille display og har en præcision på kun 1/100 sekund. Hvis du vil foretage kvantitative målinger, fandt jeg ud af, at den offentliggjorte billedhastighed for et kamera ikke er noget, du kan stole på!
Heldigvis er det virkelig let at konstruere et ur med ms-præcision og lyse store cifre ved hjælp af en Arduino og et 4-cifret 7-segment display. Desuden matcher de 12 ben fra et standard 0,56”display nøjagtigt pin-layoutet på Arduino Nano og kan loddes direkte på det.
Der er ingen start/stop/nulstilling på denne timer. Det begynder bare at køre, når du tænder det og flyder over efter 10 sekunder. Ideen er, at for at måle varigheden af en bestemt proces måler vi alligevel tidsforskellen mellem slutningen og begyndelsen.
Trin 1: Materialer
- En Arduino Nano uden overskrifter loddet på den.
- Et 0,56”4-cifret 7-segment display. Både fælles-anode eller fælles-katode er OK
Hvis du vil lægge den i en robust æske og være batteridrevet på 2 AA-batterier, tilføj:
- En 60x100x25 elektronisk projektboks
- En 2xAA batteriholder
- Et trin-up modul
- En vippekontakt på 10x15 mm
Værktøjer påkrævet
Loddekolbe
Sådan monteres den i en kasse:
- Et roterende værktøj til råskære hullerne til displayet og kontakten
- Hånd-filer til at finskære hullerne
- En varmlimpistol til fastgørelse af komponenterne på plads.
Trin 2: Tilslutning af Arduino til skærmen
Overraskende nok matcher stifterne på en standard 4-cifret 7-segment skærm layoutet på en Arduino Nano på en sådan måde, at alle 12 ben på skærmen forbinder til IO-ben på Arduino. Dette gør det muligt at lodde skærmen direkte på Arduino uden at skulle bruge et printkort, stik eller kabler.
Lod de nederste ben på skærmen (genkendes fra decimalprikkerne og printet) til de analoge ben A0-A5. Lod de øverste ben på skærmen til de digitale stifter D4-D9.
Røde lysdioder har et spændingsfald på kun 2V, så det er normalt ikke en god idé at tilslutte dem til en 5V, og der bruges normalt en seriemodstand for at begrænse strømmen. Men måske på grund af indfletningen fandt jeg ud af, at det fungerer OK uden seriemodstande. Hvis ikke, her er en detaljeret instruktion om, hvordan du tilføjer seriemodstande direkte på Arduino Nano
Trin 3: Koden
Upload den vedhæftede skitse til Arduino Nano. Den nuværende kode er til et display med fælles anoder, men linjerne for fælles katode kan ikke kommenteres.
Når koden er uploadet, bør timeren begynde at køre hver gang Arduino startes. Du kan stoppe her eller se i det næste afsnit et eksempel på, hvordan du monterer det i en robust kasse og gør det batteridrevet.
Nogle kommentarer om koden:
Tiden er taget fra mikro () -funktionerne i stedet for millis () -funktionen af to gode grunde: Arduino -implementeringen af millis () er forfærdelig: de øges hver 1.024 ms, og en gang imellem springes et millisekund over at kompensere! Ikke alle Arduinos har krystaller med høj præcision. Hvis du opdager, at du er slukket med mere end en permille, kan du justere skillelinjen i linjen "unsigned long t = micros ()/1000;" for at få uret til at gå hurtigere eller langsommere.
Cifrene er indflettet, hvilket betyder, at der kun tændes et ciffer på et bestemt tidspunkt. Når du ændrer segmenterne i et ciffer, er alle cifre slukket, så der ikke vises noget skraldeciffer på noget tidspunkt. Jeg målte opdateringsfrekvensen for cifrene til 750 mikrosekunder, så hvert ciffer bliver opdateret mindst en gang i hvert millisekund!
Jeg har ikke for alvor optimeret uret til hastighed, da den nuværende hastighed er god nok til at vise millisekunder. Jeg tror, at Arduino kunne få to cifre mere (svarende til 100 og 10 mikrosekunder), men det ville kræve
- Deaktivering afbryder og bruger timerne direkte
- Direkte portmanipulation
- Tilslutning af alle segmenter til en enkelt port og cifrene til en anden port
- Undgå eksplicit beregning af cifferværdier, men brug trin i stedet (division og moduloperationer er langsomme)
Hvis jeg kunne få fat i et slowmotion-kamera med> 1000 fps, kunne jeg prøve det, for nu er jeg glad for ms-præcision.
Trin 4: Montering af den i en æske
En billig 100x60x25mm elektronisk projektboks, ikke vandtæt, passer let til denne timer sammen med batterier, et trin-up-modul og en tænd/sluk-kontakt. Til batteridrift giver en kombination af 2 AA-batterier med et trin-up-modul en sikker og stabil 5V spænding til Arduino. Ved at sætte en tænd/sluk-knap direkte på batteriet (i stedet for på trin-out-output) påvirkes batterierne ikke af lækage fra stup-up-modulet og kan vare i år, hvis det bruges sporadisk.
Step-up-modulet, som jeg brugte, havde et hun-USB-stik, som jeg fjernede med en tang, for at kunne lodde ledninger til udgangen. Alternativt kan du bruge en regulerbar step-up og indstille den til 5V output.
Start med at skære de to huller ud, der svarer til displayet og tænd/sluk -knappen. Jeg tegnede de omtrentlige huller med en blyant, skar derefter hullerne lidt for små ud med et roterende værktøj og arkiverede dem derefter med håndfiler til den nøjagtigt matchende størrelse.
Skær nogle af det flerstrengede fleksible røde og sorte kabel af batteriboksen, og slut dem til trinmodulet, enten med det positive eller det negative afbrudt af en tænd/sluk-kontakt. Derefter fra trinmodulet direkte til GND og +5V eller Arduino.
Jeg brugte varm lim til at holde alle elementer på plads: batterikassen, trinmodulet og rundt om skærmens sider.
Slutresultatet er en timer i en robust boks med en døds-enkel betjening!
Anbefalede:
Billig NMEA/AIS Hub - RS232 til Wifi Bridge til brug ombord: 6 trin
Billig NMEA /AIS Hub - RS232 til Wifi Bridge til brug ombord: Opdater 9. januar 2021 - Tilføjet ekstra TCP -forbindelse og genbrug sidste forbindelse, hvis flere klienter opretter Opdatering 13. december 2020 - Tilføjet ingen konfigurationsversion af koden til både med eksisterende routere Introduktion Denne NMEA / AIS RS232 til WiFi -bro er
LoRa Messenger til to enheder til distancer Op til 8 km: 7 trin
LoRa Messenger til to enheder til afstande Op til 8 km: Tilslut projektet til din bærbare computer eller telefon, og chat derefter mellem enhederne uden internet eller SMS ved hjælp af bare LoRa.Hey, hvad sker der gutter? Akarsh her fra CETech. I dag skal vi lave et projekt, der kan forbindes til din smartphone eller en hvilken som helst
1A til 40A nuværende BOOST -konverter til op til 1000W DC -motor: 3 trin
1A til 40A Current BOOST-konverter til op til 1000W DC-motor: Hej! I denne video lærer du, hvordan du laver et strømforstærkerkredsløb til dine høj ampere DC-motorer op til 1000W og 40 ampere med transistorer og en center-tap-transformer. Selvom, strømmen ved udgangen er meget høj, men spændingen bliver r
Overbevis dig selv om bare at bruge en 12V-til-AC-line inverter til LED-lysstrenge i stedet for at genoprette dem til 12V .: 3 trin
Overbevis dig selv om bare at bruge en 12V-til-AC-line inverter til LED-lysstrenge i stedet for at genoprette dem til 12V .: Min plan var enkel. Jeg ville skære en væg-drevet LED-lysstreng i stykker og derefter genkoble den til at køre 12 volt. Alternativet var at bruge en strømomformer, men vi ved alle, at de er frygtelig ineffektive, ikke? Ret? Eller er de det?
12v til USB Adapter 12v til 5v Transformer (fantastisk til biler): 6 trin
12v til USB Adapter 12v til 5v Transformer (fantastisk til biler): Dette viser dig, hvordan du laver en 12v til USB (5v) adapter. Den mest oplagte anvendelse af dette er til 12v biladaptere, men hvor som helst du har 12v kan du bruge det! Hvis du har brug for 5v til andet end USB, skal du blot springe trinene om tilføjelse af USB -porte over