Innholdsfortegnelse:

CLEPCIDRE: a Cider Bottles Digital Clock: 8 Steps (med bilder)
CLEPCIDRE: a Cider Bottles Digital Clock: 8 Steps (med bilder)

Video: CLEPCIDRE: a Cider Bottles Digital Clock: 8 Steps (med bilder)

Video: CLEPCIDRE: a Cider Bottles Digital Clock: 8 Steps (med bilder)
Video: Edhe doktorët u habitën: Vëndoseni këtë përbërës në këmbët tuaja dhe nuk do të keni myk në thonj 2024, Juli
Anonim
CLEPCIDRE: a Cider Bottles Digital Clock
CLEPCIDRE: a Cider Bottles Digital Clock
CLEPCIDRE: a Cider Bottles Digital Clock
CLEPCIDRE: a Cider Bottles Digital Clock
CLEPCIDRE: a Cider Bottles Digital Clock
CLEPCIDRE: a Cider Bottles Digital Clock

Før jeg dykker ned i objektbeskrivelsen, må jeg forklare konteksten den er designet og bygget i. Min kone er kunstner og jobber i utgangspunktet med leire, som keramiker, men også med andre materialer som tre, skifer eller glass. I de fleste kunstverkene hennes prøver hun å vise sporene etter tiden på gjenstander, og hun inkorporerer ofte materialer som finnes i naturen som trebiter på stranden, for å "gi et nytt liv til brukte gjenstander". Hennes søster og svoger pleide å lage sin egen cider (i Normandie) og har fremdeles hundrevis av ciderflasker som sover under et tykt lag med støv i den gamle pressen. Det var mer enn nok til å utløse min kones neste skapelsesidé: "en ciderflaskeklokke". Koblingen med tiden er tydelig: disse flaskene har hatt en strålende fortid og skulle nå være et vitne til tiden som gikk og sammen danne en klokke. Så for ett år siden spurte hun meg: "Darling kan du lage meg en klokke med lamper under 12 ciderflasker? Jeg skal flate flaskene i ovnen min selv, og du bryr deg om resten: trestøtten, -en pall-, lampene og alle elektroniske kretser! Jeg vil vise tiden, men ikke alltid, lysdiodene bør også blinke tilfeldig, er det mulig? Du bør også finne løsningen for å fikse flaskene på pallen ". Klokken skal være klar innen en måned …

"Kallenavnet" på dette kunstverket er "CLEPCIDRE" som står (på fransk) for "Circuit Lumineux Electronique Programmé sous bouteilles de CIDRE", det er et nikk til navnet "CLEPSYDRE" som betegner en vannklokke oppfunnet av egypterne. Min kone kaller det "Les Bouteilles de Ma Soeur" (min søsters flasker).

Bilde 1: Lager av ciderflasker til min svigerinne

Bilde nr. 2: Det originale spesifikasjonsdokumentet

Bilde 3 til 6: visninger av klokken

CLEPCIDRE har blitt vist under to utstillinger i fjor, den første i "Greniers à Sel" i Honfleur (Calvados, Normandie, Frankrike) i april 2019 (bilde #6) og den andre i Touques (Calvados, Normandie, Frankrike) i juni 2019.

Rekvisita

  • Tolv ciderflasker (du kan prøve andre typer flasker: champagne, musserende vin, … men uten garanti)
  • En keramisk ovn (vi brukte en 5kVA topplastet sylindrisk ovn)
  • En pall (kant-til-kant-brett, dimensjoner: +/- 107cmx77cmx16cm)
  • Noen treplater (for å lukke pallesidene)
  • 24 hvite lysdioder med høy effekt på 10 mm i diameter (f.eks.
  • Et Arduino -brett: Uno eller Leonardo OK, mindre brett kan være OK, Mega er litt overkill
  • To strømforsyninger (5V for Leds og 12V for Arduino og RTC-kort, selv om 5V for Arduino burde være OK, men ikke testet)
  • Et RTC-kort (jeg har brukt en Adafruit DS1307, men jeg vil anbefale en mer nøyaktig temperaturkompensert RTC basert på DS3231; DS1307 skifter 2-3 sekunder hver dag og trenger regelmessig omjustering)
  • 4 skiftregistre 74HC595 enten som individuelle gjenstander (16-pins DIL CMOS IC) eller allerede brettmontert (f.eks. SparkFun Shift Register Breakout-74HC595 ref BOB-10680)
  • Epoxy testplater (50*100 mm, hull i gruppe på 3 og universalplater med lineære kobberbånd)
  • Diamantbor (6 eller 8 mm) og treplugger (6 eller 8 mm)
  • 24 1/4 W motstander (220 Ω)
  • Festekrage for mekanisk flaskeplugg (finnes i jernvarehandel eller internett)
  • Lim, ledninger, varmekrympemuff, verktøy,.., skruer,.., loddejern (18W OK)

Trinn 1: Det enkleste: Lukk pallens sider

Det enkleste: å lukke pallens sider
Det enkleste: å lukke pallens sider

Prøv å finne en trepall (jeg fant en på omtrent 107 cm*77 cm). Det bør ikke være noe gap mellom treplatene.

Fest 4 treplater med skruer, en på hver side. Skjær de 4 brettene fra lager for å få de riktige dimensjonene.

Siden det kan være (og sannsynligvis vil det være) fotbrett, anbefaler jeg å kutte dem som vist på bildet, dette vil frigjøre tilgangen til de nederste brettene og tillate boring av hull for lysdiodene.

Senere, når posisjonene til lysdiodene skal ha blitt merket, vil det være nødvendig å bore i to trinn, først hullet med diameter på ledningen (9 - 10 mm) og deretter det større hullet (si 2 cm) for å oppnå tykkelsen tilsvarer høyden på LED -en (tykkelsen på treplaten er sannsynligvis større enn LED -høyden)

Bilde 1: Pallen sett nedenfra med ledede hull allerede boret

Trinn 2: Flatt ciderflaskene

Flatt ciderflasker
Flatt ciderflasker
Flatt ciderflasker
Flatt ciderflasker
Flatt ciderflasker
Flatt ciderflasker

Ovnens kapasitet tillater oppvarming av 6 flasker om gangen på 3 nivåer. Når du plasserer flaskene, må du kontrollere at flaskene ikke er i kontakt med hverandre, verken med ovnsveggene eller søylene.

Du kan være kreativ og legge til for eksempel glassperler eller skjell eller små steiner i flaskene. Du kan også sette inn en terrakottastøtte under flaskene, sistnevnte vil ta formen av støtten under oppvarming.

Det viktigste i denne prosessen er å la flaskene avkjøles veldig sakte og ikke åpne ovnen for tidlig, selv om du tror at ovntemperaturen er lik rommets, bør du vite at glasstemperaturen forblir høyere enn ovn en i løpet av en viss tid, og ethvert temperatursjokk, selv en liten, kan forårsake glassbrudd. Vi har fått flasker til å gå i stykker en eller to dager etter oppvarmingen, og jeg anbefaler å ta +/- 30% av tapet i betraktning (forvent 16 til 18 flasker for å få 12 på slutten, for ikke å snakke om de du ikke vil bli fornøyd med av).

Temperaturprofilen som er oppgitt her, bør betraktes som et eksempel og gjenspeiler bare egenskapene til ovnen vår. Du bør utføre noen tester med ditt eget utstyr for å finne den mest passende sluttemperaturen. Hvis du varmer for mye får du helt flate flasker, og hvis du varmer for lite, blir flaskene ikke flat nok.

Bilde 1: Ovnen, generelt syn

Bilde 2: To flasker flatet (jeg har ikke noe bilde av flaskene i ovnen før oppvarmingen akkurat nå)

Bilde 3: Typisk temperaturprofil

Trinn 3: Finn flasker og lysposisjoner

Finn flasker og lysposisjoner
Finn flasker og lysposisjoner
Finn flasker og lysdioder
Finn flasker og lysdioder
Finn flasker og lysdioder
Finn flasker og lysdioder
Finn flasker og lysdioder
Finn flasker og lysdioder

I klokkeutformingen skal jeg forklare senere, det er to lysdioder under hver flaske, de "eksterne" som viser timene (0 til 11 og 12 til 23) og de interne som viser minuttene med trinn på 5 (0, 5,… 55). Først må du plassere flaskene rundt pallen. For det trenger du først å strekke strenger mellom en sentral trykknål og 12 stifter rundt pallen, "diametralt motsatt" hvis mulig. 4 posisjoner er åpenbare og enkle å finne: 0, 3, 6 og 9 timer (strengene blir med på midten av hver side, to og to). De fire andre linjene er litt mer vanskelige. Du må orientere strengene slik at det er nok plass til hver flaske (flasker er justert to og to med aksen deres tilsvarende strengen) og flasken gir inntrykk av å bli likt fordelt. Dette trinnet krever litt prøving og feiling. Vær også oppmerksom på at siden de ikke er like, må du velge hvor hver flaske skal gå (dette er et spørsmål om "kunstnerisk følelse"). Når stedet for hver flaske er valgt, ikke glem å feste en etikett med nummeret til hver flaske og sette et merke på pallen for bunnen av midten av hver flaske (se videre). Disse punktene og strengene vil bli brukt senere for å lokalisere hullene på festeduplene.

Deretter må de to lysdiodene plasseres relativt til hver flaske, og posisjonene overføres deretter til pallen.

For det har jeg bygget en eske med to "mobile" brett (se bildet), den første vinkelrett på flaskeaksen og den andre, som er skrudd på den første i midten, slik at den kan roteres, er justert på den aksen. I dette andre brettet boret jeg to hull (9 eller 10 mm diam.) Ett av dem i form av et knapphull, slik at en ledning kan beveges langs akseretningen. Jeg bruker 5V på hver LED, plukket fra et Arduino -kort eller en annen kilde. VÆR FORSIKTIG! Lysdioder med høy lysstyrke kan være skadelige hvis du ser på dem direkte, så det anbefales på det sterkeste å legge et bånd med gjennomsiktig tape over lysdiodene.

Plasser hver flaske på toppen av esken og flytt de to brettene og den "mobile" ledningen til du er fornøyd med effekten (husk at du kan ha satt inn glassperler i noen flasker og plassering av lysdioder under slike perler forsterker lyseffekten), måle posisjonene til lysdiodene relativt til bunnen av flasken og aksen, og overfør disse punktene til pallen med blyant. Når alle 24 punktene er merket på pallen, borer du hull (2-3 mm i diameter).

Merk: det siste bildet viser den første strengposisjonen som var basert på en fast 30 ° vinkel mellom dem, men, som man kan se, var dette ikke kompatibelt med plassen som flaskene trengte; Jeg måtte justere strengene på flaskene på nytt.

Bilde 1: Tegning som viser lysdiodene og deres betydning

Bilde 2: Spesialboksen for å finne lysdiodenes posisjon under hver flaske

Bilde 3: Den samme boksen med en flaske

Bilde 4: Plassering av flaskene (og strengene) på pallen

Trinn 4: Borehull for lysdiodene

Borehull for Leds
Borehull for Leds

Ved å bruke styrehullene i forrige trinn, bør du nå bore hullene til lysdiodene, men ettersom tykkelsen på pallbrettet sannsynligvis er større enn lysdiodenes høyde, bør du redusere tykkelsen ved å bore et større hull (for eksempel med en 2 cm trebor). Bor først det større hullet (dybden må være slik at "ikke-boret" tykkelse tilsvarer høyden på ledningen) og deretter lysdiodenes hull. Juster om nødvendig slik at toppen av lampen er i flukt med treets overflate.

Merk hvert hull med Hx og Mx etiketter (H for timer og M for minutter, x = 0, 1,..11).

Dette illustreres av bildet.

Trinn 5: Bore hull i flasker for festedubler

Borehull i flasker for festedubler
Borehull i flasker for festedubler

Hvordan du borer hull i glass finner du på dette nettstedet:

Finn hullposisjonen på flaskeaksen slik at den ikke overlapper en ledning, ca 2-3 cm fra bunnen av flasken bør være OK. Bor et hull (8 mm diameter) på undersiden, men på halv tykkelse (ikke bor gjennom hele tykkelsen på flasken!). Merk det samme punktet på oversiden av pallen og bor et hull med samme diameter (gjennom hele tykkelsen OK). Hullposisjonen måles på snoren fra bunnen av flasken som du burde ha merket mens du plasserte dem.

Fest pluggene på hver flaske i hullet med sterkt lim (to komponenter) og la limet tørke.

Så snart pluggene er fikset, kan du plassere flaskene på den (horisontale) pallen ved å sette pluggene i hullene. Flaskene må plasseres fra topp til hale, den første (12t) med halsen vendt utover.

Fjern flaskene (dra forsiktig pluggen ut av treet).

Du kan nå sette lysdiodene inn i hullene, justere hullene som er for små. For de som er for store, må du blokkere lysdioden med et lite treverk skrudd under den.

Jeg la merke til at lyset fra lysdiodene var for sterkt, selv gjennom flaskene, og jeg malte dem i lysegult.

Bilde 1: Glassborematerialet (merk: jeg brukte en gummimatte under flasken)

Trinn 6: Den elektroniske delen

Den elektroniske delen
Den elektroniske delen
Den elektroniske delen
Den elektroniske delen
Den elektroniske delen
Den elektroniske delen

Den grunnleggende ledede kommandokretsen er vist på det første bildet (merk at RTC -kortet ikke er vist på dette diagrammet, men det er enkelt og godt dokumentert å koble det til Arduino, i de fleste tilfeller er et bibliotek levert av RTC -produsenten). I den endelige versjonen har brødbrettene blitt erstattet av PCB.

Jeg bestemte meg for å skille timegrensesnittet fra minuttgrensesnittet for å gjøre programmet litt enklere. Hvert grensesnitt er basert på to 74HC595 skiftregistre serielt tilkoblet. Alle utganger fra det første registeret brukes (0 til 7), mens bare de fire første er nødvendige for det andre (8 til 11).

For det endelige systemet opprettet jeg to separate grensesnitt ved å bruke 5 cm x 10 cm testbrett (hull gruppert med 3). Jeg har brukt to typer 74HC595, den første er native 16-pins DIL IC som jeg monterte på to 16-pins støtter, loddet på brettet og den andre var to små brett som jeg kjøpte fra Sparkfun, med en 74HC595 overflate montert på hver (bilde #7).

Da jeg hadde det travelt, kunne jeg ikke vente på produksjon av trykte kretser, så jeg laget kretskortet selv med testkort, men kretskortdiagrammene er nå tilgjengelige for begge grensesnittene (se PCB -bilder). Vær oppmerksom på at du har valget mellom enten bare en type eller blandingen av de to typene, dette er opp til deg. Vær også oppmerksom på at jeg ikke har testet det produserte kretskortet ennå (Fritzing -filer kan ikke lastes opp her, men jeg kan gi dem hvis forespurt).

RTC -justering: første gang Arduino er koblet til RTC, må du stille klokken riktig. Til slutt er denne justeringen nødvendig igjen for å kompensere RTC-skiftingen (2-3 sekunder per dag).

Denne innstillingen finner sted i oppsettet () forutsatt at følgende instruksjon ikke er kommentert:

//#definere RTC_ADJUST true // Hvis definere, vil RTC-justering finne sted i oppsettet

Hvis linjen ovenfor blir kommentert, vil oppsett () justere RTC med verdiene til følgende konstanter (ikke glem å initialisere disse konstantene med gjeldende verdier, dvs. verdiene i øyeblikket for kompilering og nedlasting av program til Arduino)

// Ikke glem å justere konstanten nedenfor hvis RTC_ADJUST er definert !!#definere DEF_YEAR 2019 // Standardåret som ble brukt i den første RTC -justeringen

#define DEF_MONTH 11 // Standardmåneden som ble brukt i den første RTC -justeringen

#define DEF_DAY 28 // Standarddagen som ble brukt i den første RTC -justeringen

#define DEF_HOUR 11 // Standardtimen som brukes i den første RTC -justeringen

#define DEF_MIN 8 // Standardminutten som ble brukt i den første RTC -justeringen

#define DEF_SEC 0 // Standard -sekunden som ble brukt i den første RTC -justeringen

Også viktig: Når justeringen fant sted, ikke glem å kommentere linjen på nytt og laste ned programmet til Arduino

//#definere RTC_ADJUST true // Hvis definere, vil RTC-justering skje i oppsettet

ellers ville RTC-justeringen finne sted med feilverdier hver gang programmet starter på nytt (oppstart eller tilbakestilling av Arduino). Det skjedde under testene mine !! (Jeg glemte å kommentere den linjen på nytt og forsto ikke hva som foregikk …).

La oss nå se på selve klokkefunksjonaliteten.

I utgangspunktet er det to visningsmoduser:

  1. CLOCK -modus (se bilde #9)

    1. timen som tilsvarer gjeldende time er PÅ
    2. minutt -LED -en som tilsvarer det nåværende multiplumet på 5 minutter er PÅ (denne lysdioden forblir PÅ i 5 minutter)
    3. hvert minutt led, annet enn det som er PÅ, blinker i løpet av 5 sekunder (hvilken led er avledet fra den "andre" verdien som er lest fra RTC)

RANDOM -modusen (se bilde nr. 10)

    alle lysdioder slås PÅ og AV tilfeldig, bortsett fra gjeldende "time" og "minutt"

Tiden et minutt led er PÅ varer i 5 minutter, men i løpet av den tiden går det "virkelige" minuttet frem. For eksempel, når det nåværende minuttet blir 15, vil den "østlige" LED -lampen slås PÅ i løpet av 5 minutter, men det virkelige minuttet vil være 15, 16, 17, 18 og 19 i løpet av de 5 minuttene (vi kaller dette "5 minutter syklus")

Programmet gjør tre ting:

  1. Den beregner forskjellen mellom det "virkelige" minuttet og det som vises, og gir 5 verdier: 0, 1, 2, 3 og 4
  2. Den beregner hvor lenge tilfeldig modus skal vare ved å multiplisere tallet som er funnet like ovenfor med 6 sekunder, noe som fører til 5 verdier: 0, 6, 12, 18 og 24 (sekunder) for tilfeldig modus og forskjellen mellom disse verdiene og 30 for klokkemodus (30, 24, 18, 12 og 6 sekunder)
  3. Den gjentar denne inter-modus fordelingen to ganger i hvert minutt (totalen av begge modusene er alltid 30 sekunder)

Denne "5 -minutters syklusen" brukes igjen og igjen hver gang den neste "minutt -LED" slås PÅ (som skjer hvert 5. minutt).

Bemerkning: man kan utlede det virkelige minuttet bare ved å telle hvor lenge tilfeldig modus varer og dele denne varigheten med 6; for eksempel hvis du teller 18 sekunder for tilfeldig modus og "25" minutter er PÅ, betyr dette at det virkelige minuttet er 28 (18/6 = 3 og 25+3 = 28)

På denne videoen kan man først se klokkemodus (nåværende tid er mellom 10h25 og 10h29) deretter tilfeldig modus (som varer i 6 sekunder, noe som betyr at gjeldende minutter er 26) og deretter klokkemodus igjen. Legg merke til at pallen her er plassert på bakken og at "midnatt" -flasken er til høyre. Siden denne første utstillingen er klokken nå presentert vertikalt på et stativstøtte (Bilde #11)

Legg også merke til at dagens (10t) og minutt (25m) leds ikke påvirkes av tilfeldig modus.

Merknader om PCB -diagrammer

Første kretskort (native 74HC595: bilde #4):

  • U1 og U2 er 74HC595 IC -er
  • Pin -layout finner du på bilde #6 (se også pinnen som ble brukt i Arduino i den variable deklarasjonen av programmet)

Andre kretskort (Sparkfun 74HC595 breakout boards: bilde #5)

Pin -layout finner du på bilde #7

Jeg har brukt mannlige pinhoder loddet på begge grensesnittkortene, slik at alle ledningeres kontakter er hunn.

Trinn 7: Fest flaskene på pallen og koble til lysdiodene

Feste flaskene på pallen og koble til lysdiodene
Feste flaskene på pallen og koble til lysdiodene
Feste flaskene på pallen og koble til lysdiodene
Feste flaskene på pallen og koble til lysdiodene
Feste flaskene på pallen og koble til lysdiodene
Feste flaskene på pallen og koble til lysdiodene

For hver flaske etter tur:

  • Finn halsen på pallen (sett flasken på plass, merk halsen og fjern flasken)
  • Skru en festekrage med skruen i midten og i midten av halsen (merket på pallen). Jeg brukte gipsskruer med automatisk boring. Du kan bore et pilothull i kragen hvis du synes dette er lettere.
  • Sett flaskens plugg inn i hullet i pallen
  • Lukk kragen rundt halsen på flasken, flasken skal nå festes på pallen

Det er det! (ikke glem å fjerne strengene og flasketikettene på slutten).

For hver led:

Koble begge ledben til + og GND -ledningene. + Kommer fra den riktige utgangspinnen på grensesnittkortet og GND fra et av de mellomliggende "GND -distribusjonstavlene"; disse brettene er ganske enkelt testplater (+/- 2cm x 5cm) med lineære bånd der du lodder mannlige pinhoder med alle pinnene loddet på det samme båndet, en pinne er koblet til en tilgjengelig GND-pinne; Hvis du mangler GND -pinner, kobler du bare båndet til et annet og kobler dem sammen. Jeg anbefaler å isolere de loddede led-tilkoblingene med en varmekrympende hylse (blå for GND og rød for led-signal, "+")

Fest alle brettene på pallen nedenfor, og koble dem sammen med hunkontakter-ledninger (Arduino til grensesnittkort, 6 signaler + GND, strømforsyninger til Arduino og grensesnittkort og RTC, RTC til Arduino, grensesnittkort til 24 lysdioder (12 på ett grensesnittkort). Ikke glem å koble GND til alle brett.

Fest strømforsyningene på det ene vertikale trebordet, koble AC-kabelen til den første og daisy-chain til den andre (vær forsiktig, plugg bare AC-kabelen når tilkoblingene er gjort!).

Videoen nedenfor viser de tre første minuttene på en 5 minutters syklus. Den nåværende tiden er nesten 4h55 og videoen starter like før "50min" LED -en bytter til "55min" (først de siste sekundene i 24sec tilfeldig modus, 6sek av klokkemodus og deretter byttet til 55min led). I løpet av det første minuttet (16h55) vises bare klokkemodusen (60 sekunder), i løpet av det andre minuttet (16h56) starter hvert trinn på 30 sekunder med 6 sekunder tilfeldig modus og deretter følger 24 sekunder klokkemodus i løpet av det tredje minuttet (16h57), 12 sekunder tilfeldig og 18 sekunder klokke (to ganger)

Trinn 8: Merknader, utvidelser og forbedringer

Merknader, utvidelser og forbedringer
Merknader, utvidelser og forbedringer

Merknader:

  • Når programmet starter, venter det til neste "hele minutt" (dvs. RTC-sekunder = 0) før LED-visning starter
  • Noen parametere i programmet tillater

    • Velg en annen retning for "midnatt" -lysdioden
    • Fordel de to modusene på ett helt minutt i stedet for to ganger 30 sekunder
  • Pallestøtten og ciderflaskene er ikke absolutt nødvendige. Du kan finne opp andre typer displaystøtter, for eksempel en sukkerboks, som vist på bildet

Utvidelser:

  • Jeg tilpasset programmet og lagde en "borddrevet" versjon som muliggjør underavdeling av klokke/tilfeldige moduser basert på en timingstabell i stedet for på en forhåndsdefinert regel
  • En "kalenderavhengig" tabell (dato, start-time, stopp-time) tillater kontroll av start- og stopptid for klokken, slik at den kan slås på når utstillingen er stengt om kvelden (den vil automatisk stopper displayet og starter om morgenen uten manuell handling)
  • Programmet har en versjon der visningen utløses av en besøkendes tilstedeværelsesdeteksjon og stopper 5 minutter etter fravær av besøkende.

Forbedringer:

  • RTC: en mer stabil versjon kan erstatte 1307 som er brukt så langt
  • En manuell RTC -justering kan legges til (for eksempel ved å legge til to roterende kodere, for eksempel https://wiki.dfrobot.com/Rotary_Switch_Module_V1_… og en trykknapp for å bekrefte de nye time- og minuttinnstillingene)

Anbefalt: