Industriële fabricage
Industrieel internet der dingen | Industriële materialen | Onderhoud en reparatie van apparatuur | Industriële programmering |
home  MfgRobots >> Industriële fabricage >  >> Manufacturing Technology >> Productieproces

Arduino-gebaseerde Verjaardagherinnering: 50 Jaar Betrouwbaarheid

Onderdelen en benodigdheden

OnderdeelAantalOpmerking
Arduino Nano R31Chinese clones met ATmega168P-AU
Intersil ISL1208 RTC1
Renata CR2450N Muntcel1
CP2102 USB-naar-Serieel Module1
USBasp Programmeerder1
32.768 kHz Kristal1
SPST Schakelaar1
SMD LEDs1
Duidelijke LED-koepel1
4" x 4" Schakelaarsdoos1Of 3D-print een behuizing
Perfboard1
Berg Connectors (M & V)1
Weerstand 4.75k ohm3
Weerstand 10k ohm2

Benodigde tools en machines

  • Dremel
  • Solderbout (generiek)

Apps en online diensten

  • ProgISP (voor fuse-bits en flash)
  • Arduino IDE

Over dit project

Deze Arduino-aangedreven verjaardagsalarm draait op een enkele CR2450 muntcel en kan 50 jaar lang elk jaar op de verjaardag een felicitatie tonen (knipperende LED + seriële boodschap). Gemiddelde stroomverbruik: ~1,22 µAh (inclusief zelfontlading), wat neerkomt op >50 jaar op een CR2450N (540 mAh).

Kenmerken

  • ~1,22 µAh gemiddeld (608 nA zonder zelfontlading)
  • Levensduur: >29 jaar (CR2023), >50 jaar (CR2450N), >64 jaar (CR2477N)
  • Verjaardag instelbaar via seriële monitor (USB)
  • Speciale tijd-instelschakelaar voor tijd instellen/wijzigen
  • Open source: alle ontwerpbestanden en code op GitHub

Stap 1: Arduino Nano aanpassen

Verwijder van een Nano-clone (CH340G): USB-serieel IC, Schottky-diode, twee 1k weerstanden (TX/RX), RX/TX/PWR LEDs, AMS1117 5V regelaar. Kortsluit de regelaar-pads. Houd de kristal tijdelijk voor fuse-bits.

Stap 2: Fuse-bits ATmega168P wijzigen

Met USBasp en ProgISP: interne 8MHz oscillator met divide-by-8 → 1MHz, BOD uitschakelen, WDT uitschakelen. Alleen de 'P'-versie (picoPower) ondersteunt deze modi. Let op: ATmega328P verbruikte meer stroom in tests.

Stap 3: Compileren en uploaden

Voeg een custom board definitie toe aan boards.txt voor "Arduino Pro Mini (3.3V, 1 MHz) w/ ATmega168". Compileer, exporteer gecompileerde binary (Ctrl+Alt+S), flash de hex-zonder-bootloader via USBasp/ProgISP.

Stap 4: Intersil ISL1208 I2C RTC

Zeer lage stroom RTC (400 nA op VBAT). Heeft maand-dag alarmregisters – essentieel voor jaarlijkse verjaardag. Interrupt-pin (250 ms laag) wekt MCU uit slaap. Breakout-board gemaakt voor SMD-versie.

Stap 5: CR2450N Muntcel

3V, 540 mAh, <1% zelfontlading/jaar, werkt -40 tot +85°C.

Stap 6: Schema

I2C pull-ups (4.7k) op SDA/SCL. Pull-ups (10k) op interrupt-pinnen D2 (alarm) en D3 (tijd-instel). CP2102 RX/TX op Arduino RX/TX. Belangrijk: niet de +5V van USB verbinden met hoofd-VCC.

Stap 7: Hoe het werkt

  1. Tijd instellen via seriële monitor (schakelaar AAN → pin 3 laag).
  2. Commando's: t (tijd tonen), a (alarm tonen), c (annuleren).
  3. Tijd formaat: TYYMMDDhhmmssp# (bijv. T1801050835120# voor 5 jan 2018 08:35:12 AM).
  4. Alarm formaat: AMMDDhhmmssp# (geen jaar).
  5. Na instellen schakelaar UIT → MCU slaapt na 6 sec.
  6. Op verjaardag: RTC interrupt wekt MCU → LED knippert 19 sec, seriële boodschap, weer slapen.
  7. Tijd controleren/wijzigen: schakelaar AAN → MCU wakt, seriële prompt.

Stap 8: Code

Volledige, goed gecommentarieerde code op GitHub: Birthday-Alarm (MIT licentie). Belangrijke functies: setup(), loop(), sleepNow() (diepe slaap met SLEEP_MODE_PWR_DOWN), interrupt handlers, BCD↔decimaal conversie, seriële communicatie beheer.

Stap 9: Testen en stroommeting

Gemeten met Fluke 87 (0,1 µA precisie). Slaapstroom ATmega168P @1MHz: ~0,2 µA. ISL1208 op VBAT (VDD losgekoppeld, LPMOD=0): 400 nA. Totaal slaapstroom: 0,6 µA. Actieve stroom (1 LED): 3 mA. Gemiddeld: 608 nA (zonder zelfontlading) → theoretisch >100 jaar. Met 1% zelfontlading: ~1,22 µAh → ~50 jaar werkelijke levensduur.

Stap 10: Bouwen

Alles op perfboard gesoldeerd met Berg connectors. Behuizing: 4"x4" schakelaarsdoos, gaten voor schakelaar en USB, LED-koepel van goedgekochte lamp, geverfd met zilver spray.

Stap 11: Verbeterideeën

  • Nokia 5110 LCD (laag stroom) voor tekstuele felicitatie.
  • PC-software (Processing) voor automatische tijdsync.
  • Leeftijdsindicatie via knipperpatroon.
  • Eigen PCB-ontwerp (Eagle).
  • Optokoppler voor AC-alarm/muziek/licht.

Code

GitHub repository: Birthday-Alarm

Schema's

Schema van de Arduino-clone.

Productieproces

  1. Koud monteren van uw lagers: Expert tips voor veilige, nauwkeurige installatie
  2. Industry 4.0 & IoT: Belangrijkste markttrends de komende twee jaar
  3. Hoe COVID-19 cybercriminaliteit blijft aansteken: thuiswerken, vaccin-toeleveringsketens en spionage
  4. 7 Belangrijke Indicatoren Dat Het Tijd Is Om Uw Generator Te Upgraden
  5. Drie Rode Vlaggen Die Signaliseren Dat Uw Motor Herwinding Nodig Heeft
  6. Foutloze PCB-Montage Beheersen: Sleutelpraktijken
  7. Van Fabrieken Naar Labs: De Vielzijdige Kracht van Industriële Robots
  8. NVIDIA Jetson Nano: een 5-W, 472 GFLOPS AI-computer die makers en enterprises empowert
  9. Kontron lanceert CP6940: Robuuste 40 GbE Switch voor Extreme Omgevingen
  10. 10 cruciale factoren voor het selecteren van de perfecte schakelaar voor uw toepassing
  11. Ultra-dunne Nano Coatings: Precieze Kleurcontrole Via Sub-20 nm Lagen