Sisukord:
2025 Autor: John Day | [email protected]. Viimati modifitseeritud: 2025-01-13 06:57
Mõiste:
Tegin lambi, mis vajab alati tähelepanu. See oli inspireeritud mu naisest. Olen aspirant, seega olen alati oma koolitööga hõivatud. Mu naine tahab minuga rääkida, kui ma koju tulen. Kui ma talle vähe tähelepanu pööran, muutub ta pahuraks ja ma kõnnin munakoortel. Panin sellesse lampi tema iseloomujooni. Lambi sisselülitamiseks peab kasutaja iga tunni tagant võtme üles keerama. Lamp kustub, kui taimer läheb 0 minutile.
Kui teete seda lampi, siis palun kohtlege seda hästi. (Tick-tock heli on teile boonus.)
Ostunimekirjad:
Arduino Nano (ATmega328P)
Põhiline laualamp
5V 5W USB -lamp
A -tüüpi USB -tüüpi naissoost pistikupesa
Metallist kella võtmed
Küpsetamise taimer
Halli efekti andur (A1301/A1302)
Magnetid (6 x 2 mm)
Lameda ristpea kruvi 6/32 (2-tolline)
Pähklid, 6/32
Samm: laseriga lõigatud alumine osa ja lamp lahti
Alumise osa jaoks kujundasin ja lõikasin akrüülpaneelid laserlõikamismasina abil.
Võtke lamp lahti.
Samm: sisestage magnetid ja andur / ühendage USB -lamp
1. Asetage halli magnetandur kereosasse, et tuvastada pöörleva osa magnet.
2. Ühendage USB -lamp, halli magnetandur ja Arduino Nano.
3. Sisestage magnetid aukudesse.
Samm: kood ja skeem
Skeem ^
Kood
/////// HALL EFFECT SENSOR ////////// #define NOFIELD 505L #define TOMILLIGAUSS 1953L
// LED (USB -pesa purunemisplaat) digitaalsele tihvtile 3
int led = 3;
// Halli efekti andur analoogpinnale 0
int saal = A0;
// Allpool olevad read on pärit Rob Tillaarti saidilt
int gauss;
int gaussX; int gauss2;
void setup () {pinMode (led, OUTPUT); pinMode (saal, INPUT); Seriaalne algus (9600); }
tühine DoMeasurement ()
{int raw = analogRead (saal); kaua kompenseeritud = toores - NOFIELD; // kohandada rakendamata välja suhtes pikk gauss = kompenseeritud * TOMILLIGAUSS / 1000; // skaala reguleerimine Gaussi järgi gaussX = piirata (gauss, 0, 500); gauss2 = kaart (gaussX, 0, 500, 0, 255); Seeria.println (gauss2); // Serial.println (toores);
analogWrite (led, gauss2);
}
tühine tsükkel ()
{DoMeasurement (); viivitus (100); }
4. samm: viimane samm
Valmis.