Indholdsfortegnelse:
- Trin 1: Hardware påkrævet
- Trin 2: Hardware -tilslutning
- Trin 3: Kommunikation ved hjælp af I2C -protokol
- Trin 4: Programmering af modulet
- Trin 5: Oprettelse af fil og kørsel af koden
- Trin 6: Applikationer
- Trin 7: Ressourcer
Video: Hjemmeautomatisering med Raspberry Pi ved hjælp af relækort: 7 trin
2024 Forfatter: John Day | [email protected]. Sidst ændret: 2024-01-30 08:26
Et stort antal mennesker ønsker stor komfort, men til rimelige priser. Vi føler os dovne for at tænde husene hver aften, når solen går ned og næste morgen, slukke lyset igen Eller for at tænde/slukke for klimaanlægget/blæseren/varmeapparaterne, ligesom vejret eller stuetemperaturen var.
En billig løsning for at undgå dette ekstra arbejde med at slukke apparaterne, når det er påkrævet, er her. Det er at automatisere dine huse i forholdsvis meget lavere omkostninger ved hjælp af simple plug and play -produkter. Det fungerer som når temperaturen går op eller ned, det tænder henholdsvis klimaanlægget eller varmelegemet. Når det er påkrævet, hjælper det også med at tænde eller lyset i dit hjem uden at tænde dem manuelt. Og mange flere apparater kan styres. Automatiser verden. Lad os starte dit hjem.
Trin 1: Hardware påkrævet
Vi vil bruge:
Hindbær Pi
Raspberry Pi er en enslig board Linux -baseret pc. Denne lille pc giver et slag til at registrere strøm, der bruges som et stykke elektronikøvelser og pc -operationer som regneark, tekstbehandling, websurfing og e -mail og spil
I2C Shield eller I2C Header
INPI2 (I2C -adapteren) giver Raspberry Pi 2/3 en I²C -port til brug med flere I2C -enheder
I2C Relæ controller MCP23008
MCP23008 fra Microchip er en integreret portudvidelse, der styrer otte relæer gennem I²C -bussen. Du kan tilføje flere relæer, digital I/O, analog til digital omformere, sensorer og andre enheder ved hjælp af den integrerede I²C -udvidelsesport
MCP9808 Temperatursensor
MCP9808 er en temperatursensor med høj nøjagtighed, der leverer kalibrerede, lineariserede sensorsignaler i digitalt I²C-format
TCS34903 luminanssensor
TCS34903 er et farvesensorfamilieprodukt, der giver værdien af RGB -komponenten lys og farve
I2C tilslutningskabel
I2C-tilslutningskabel er et 4-kablet kabel, der er beregnet til I2C-kommunikation mellem to I2C-enheder, der er forbundet via det
Micro USB adapter
For at tænde Raspberry Pi skal vi bruge et Micro USB -kabel
12V strømadapter til relækort
MCP23008 Relæ controller fungerer på 12V ekstern strøm, og denne kan leveres med en 12V strømadapter
Du kan købe produktet ved at klikke på dem. Du kan også finde mere godt materiale i Dcube Store.
Trin 2: Hardware -tilslutning
De nødvendige forbindelser (se billederne) er som følger:
- Dette fungerer over I2C. Tag et I2C -skjold til Raspberry pi og tilslut det forsigtigt til GPIO -benene på Raspberry Pi.
- Tilslut den ene ende af I2C-kablet til indgangen på TCS34903 og den anden ende til I2C-skærmen.
- Tilslut MCP9808-sensorens in-pot til TCS34903's ud ved hjælp af I2C-kabel.
- Tilslut MCP23008's in-pot til MCP9808-sensorens udgang ved hjælp af I2C-kabel.
- Tilslut også Ethernet-kablet til Raspberry Pi. Wi-Fi-router kan også bruges til det samme.
- Derefter tændes Raspberry Pi ved hjælp af en mikro -USB -adapter og MCP23008 -relækort ved hjælp af 12V -adapter.
- Tilslut til sidst lyset med første relæ og en blæser eller varmelegeme med andet relæ. Du kan udvide modulet eller forbinde flere enheder med relæerne.
Trin 3: Kommunikation ved hjælp af I2C -protokol
For at gøre Raspberry Pi I2C aktiveret skal du fortsætte som nævnt nedenfor:
- I terminal skal du skrive følgende kommando for at åbne konfigurationsindstillingerne: sudo raspi-config
- Vælg "Avancerede indstillinger" her.
- Vælg "I2C" og klik på "Ja".
- Genstart systemet for at konfigurere det i henhold til de ændringer, der er foretaget ved hjælp af kommandoen genstart.
Trin 4: Programmering af modulet
Belønningen ved at bruge Raspberry Pi er, det vil sige giver dig fleksibiliteten til at vælge det programmeringssprog, som du vil programmere til at grænseflade mellem sensorenheden og Raspberry Pi. Ved at udnytte denne fordel ved Raspberry Pi demonstrerer vi her sin programmering i Java.
For at konfigurere Java -miljøet skal du installere “pi4j libraby” fra https://pi4j.com/1.2/index.html Pi4j er et Java Input/Output -bibliotek til Raspberry Pi. En let og mest foretrukken metode til at installere “pi4j bibliotek”er at udføre den undernævnte kommando direkte i din Raspberry Pi:
krølle -s get.pi4j.com | sudo bash
ELLER
curl -s get.pi4j.com
import com.pi4j.io.i2c. I2CBus; import com.pi4j.io.i2c. I2CDevice; import com.pi4j.io.i2c. I2CFactory; import java.io. IOException; klasse MCP23008 {public static void main (String args ) kaster undtagelse {int status, value, value1 = 0x00; // Opret I2C bus I2CBus bus = I2CFactory.getInstance (I2CBus. BUS_1); // Hent I2C -enhed, MCP23008 I2C -adresse er 0x20 (32) I2CDevice device = bus.getDevice (0x20); // Hent I2C -enhed, MCP9808 I2C -adresse er 0x18 (24) I2CDevice MCP9808 = bus.getDevice (0x18); // Hent I2C -enhed, TCS34903 I2C -adresse er 0x39 (55) I2CDevice TCS34903 = bus.getDevice (0x39); // Indstil ventetidsregister = 0xff (255), ventetid = 2,78 ms TCS34903.write (0x83, (byte) 0xFF); // Aktiver adgang til IR -kanal TCS34903.write (0xC0, (byte) 0x80); // Indstil Atime -register til 0x00 (0), maksimale tællinger = 65535 TCS34903.write (0x81, (byte) 0x00); // Tænd, ADC aktiveret, Vent aktiveret TCS34903.write (0x80, (byte) 0x0B); Tråd. Sover (250); // Læs 8 Bytes data med klare/ir data LSB første byte data1 = ny byte [8]; // Læs temperaturdatabyte data = ny byte [2]; status = device.read (0x09); // Konfigurerede alle pins som OUTPUT device.write (0x00, (byte) 0x00); Tråd. Sover (500); mens (sand) {MCP9808.read (0x05, data, 0, 2); // Konverter data int temp = ((data [0] & 0x1F) * 256 + (data [1] & 0xFF)); hvis (temp> 4096) {temp -= 8192; } dobbelt cTemp = temp * 0,0625; System.out.printf ("Temperatur i celsius er: %.2f C %n", cTemp); TCS34903.read (0x94, data1, 0, 8); dobbelt ir = ((data1 [1] & 0xFF) * 256) + (data1 [0] & 0xFF) * 1,00; dobbelt rød = ((data1 [3] & 0xFF) * 256) + (data1 [2] & 0xFF) * 1,00; dobbelt grøn = ((data1 [5] & 0xFF) * 256) + (data1 [4] & 0xFF) * 1,00; dobbeltblå = ((data1 [7] & 0xFF) * 256) + (data1 [6] & 0xFF) * 1,00; // Beregn belysningsstyrke dobbeltbelysning = (-0.32466) * (rød) + (1.57837) * (grøn) + (-0.73191) * (blå); System.out.printf ("Belysningsstyrke er: %.2f lux %n", belysningsstyrke); hvis (belysningsstyrke 30) {værdi = værdi1 | (0x01); } ellers {værdi = værdi1 & (0x02); } device.write (0x09, (byte) værdi); Thread.sleep (300); }}}
Trin 5: Oprettelse af fil og kørsel af koden
- For at oprette en ny fil, hvor koden kan skrives/kopieres, bruges følgende kommando: sudo nano FILE_NAME.javaEg. sudo nano MCP23008.java
- Efter oprettelse af filen kan vi indtaste koden her.
- Kopier koden, der blev givet i forrige trin, og indsæt den i vinduet her.
- Tryk på Ctrl+X og derefter "y" for at afslutte.
- Kompilér derefter koden ved hjælp af følgende kommando: pi4j FILE_NAME.javaEg. pi4j MCP23008.java
- Hvis der ikke er nogen fejl, skal du køre programmet ved hjælp af den undernævnte kommando: pi4j FILE_NAMEEg. pi4j MCP23008.java
Trin 6: Applikationer
Dette system giver dig mulighed for at styre enhederne uden at gå til vægkontakterne. Dette har omfattende muligheder, da tiderne for at tænde eller slukke for enhederne er automatisk planlagt. Der er en håndfuld anvendelser af dette modul fra huse til industrier, hospitaler, jernbanestationer og mange flere steder kan automatiseres på en overkommelig og let måde ved hjælp af sine plug-and-play-komponenter.
Trin 7: Ressourcer
For mere information om TSL34903, MCP9808 MCP23008 Relay Controller, tjek nedenstående links:
- TSL34903 Datablad
- MCP9808 Datablad
- MCP23008 Datablad
Anbefalede:
IR -hjemmeautomatisering ved hjælp af relæ: 6 trin (med billeder)
IR -hjemmeautomatisering ved hjælp af relæ: Infared Remote Home Automation System (Advarsel: Gentag projektet på egen risiko! Dette projekt involverer højspænding)
Sådan laver du en drone ved hjælp af Arduino UNO - Lav en quadcopter ved hjælp af mikrokontroller: 8 trin (med billeder)
Sådan laver du en drone ved hjælp af Arduino UNO | Lav en Quadcopter ved hjælp af mikrokontroller: Introduktion Besøg min Youtube -kanal En Drone er en meget dyr gadget (produkt) at købe. I dette indlæg vil jeg diskutere, hvordan jeg gør det billigt ?? Og hvordan kan du lave din egen sådan til en billig pris … Nå i Indien alle materialer (motorer, ESC'er
RF 433MHZ radiostyring ved hjælp af HT12D HT12E - Lav en RF -fjernbetjening ved hjælp af HT12E & HT12D med 433mhz: 5 trin
RF 433MHZ radiostyring ved hjælp af HT12D HT12E | Oprettelse af en RF -fjernbetjening ved hjælp af HT12E & HT12D med 433mhz: I denne instruktør vil jeg vise dig, hvordan du laver en RADIO -fjernbetjening ved hjælp af 433mhz sendermodtagermodul med HT12E -kode & HT12D -dekoder IC.I denne instruktive kan du sende og modtage data ved hjælp af meget meget billige KOMPONENTER SOM: HT
Trådløs fjernbetjening ved hjælp af 2,4 GHz NRF24L01 -modul med Arduino - Nrf24l01 4 -kanals / 6 -kanals sender modtager til Quadcopter - Rc Helikopter - Rc -fly ved hjælp af Arduino: 5 trin (med billeder)
Trådløs fjernbetjening ved hjælp af 2,4 GHz NRF24L01 -modul med Arduino | Nrf24l01 4 -kanals / 6 -kanals sender modtager til Quadcopter | Rc Helikopter | Rc -fly ved hjælp af Arduino: At betjene en Rc -bil | Quadcopter | Drone | RC -fly | RC -båd, vi har altid brug for en modtager og sender, antag at vi til RC QUADCOPTER har brug for en 6 -kanals sender og modtager, og den type TX og RX er for dyr, så vi laver en på vores
Enkel hjemmeautomatisering ved hjælp af Raspberry Pi3 og Android Things: 5 trin (med billeder)
Enkel hjemmeautomatisering ved hjælp af Raspberry Pi3 og Android Things: Ideen er at designe et “ smart HJEM ” hvor man kan styre husholdningsapparater ved hjælp af Android Things og Raspberry Pi. Projektet består af at styre husapparater som lys, blæser, motor osv. Påkrævede materialer: Raspberry Pi 3HDMI Ca