Innehållsförteckning:
- Steg 1: Hårdvara krävs
- Steg 2: Hårdvaruanslutning
- Steg 3: Kommunicera med I2C -protokoll
- Steg 4: Programmering av modulen
- Steg 5: Skapa fil och köra koden
- Steg 6: Applikationer
- Steg 7: Resurser
Video: Hemmautomation med Raspberry Pi med hjälp av reläkort: 7 steg
2024 Författare: John Day | [email protected]. Senast ändrad: 2024-01-30 12:38
En stor mängd människor vill ha stor komfort men till rimliga priser. Vi känner oss lata för att lysa upp husen varje kväll när solen går ner och nästa morgon, släcka lamporna igen Eller för att slå på/stänga av luftkonditioneringen/fläkten/värmare som var vädret eller rumstemperaturen.
En billig lösning för att undvika detta extra arbete med att stänga av apparaterna när det behövs finns här. Det är att automatisera dina hus till relativt mycket lägre kostnader med hjälp av enkla plug and play -produkter. Det fungerar som när temperaturen går upp eller ner, det slår på luftkonditioneringen respektive värmaren. Vid behov hjälper det också att slå på eller lamporna i ditt hem utan att manuellt slå på dem. Och många fler apparater kan styras. Automatisera världen. Låt oss starta ditt hem.
Steg 1: Hårdvara krävs
Vi kommer att använda:
Raspberry Pi
Raspberry Pi är en ensam Linux -baserad PC. Den här lilla datorn har en kraftfull effekt när det gäller att registrera kraft, som används som elektronikövningar och PC -operationer som kalkylblad, ordbehandling, webbsurfing och e -post och spel
I2C Shield eller I2C Header
INPI2 (I2C -adaptern) tillhandahåller Raspberry Pi 2/3 en I²C -port för användning med flera I2C -enheter
I2C Relästyrenhet MCP23008
MCP23008 från Microchip är en integrerad portexpander som styr åtta reläer via I²C -bussen. Du kan lägga till fler reläer, digital I/O, analog till digital omvandlare, sensorer och andra enheter med hjälp av den integrerade I²C expansionsporten
MCP9808 temperatursensor
MCP9808 är en temperatursensor med hög noggrannhet som ger kalibrerade, lineariserade sensorsignaler i digitalt I²C-format
TCS34903 luminanssensor
TCS34903 är en produkt med färgsensorfamiljer som ger värdet av RGB -komponenten ljus och färg
I2C -anslutningskabel
I2C-anslutningskabel är en 4-trådad kabel som är avsedd för I2C-kommunikation mellan två I2C-enheter som är anslutna via den
Micro USB -adapter
För att starta Raspberry Pi behöver vi en Micro USB -kabel
12V nätadapter för reläkort
MCP23008 Relästyrenhet fungerar på 12V extern ström och detta kan levereras med en 12V nätadapter
Du kan köpa produkten genom att klicka på dem. Du kan också hitta mer bra material på Dcube Store.
Steg 2: Hårdvaruanslutning
De nödvändiga anslutningarna (se bilderna) är följande:
- Detta kommer att fungera över I2C. Ta en I2C -sköld för Raspberry pi och anslut den försiktigt till GPIO -stiften på Raspberry Pi.
- Anslut den ena änden av I2C-kabeln till ingången på TCS34903 och den andra änden till I2C-skärmen.
- Anslut MCP9808-sensorns in-pot till TCS34903 ut med I2C-kabel.
- Anslut MCP23008: s in-pot till MCP9808-sensorns utgång med I2C-kabel.
- Anslut också Ethernet-kabeln till Raspberry Pi. Wi-Fi-routern kan också användas för samma.
- Slå sedan på Raspberry Pi med en mikro -USB -adapter och MCP23008 reläkort med en 12V -adapter.
- Slutligen, anslut ljuset med första relä och en fläkt eller värmare med andra relä. Du kan utöka modulen eller ansluta fler enheter till reläerna.
Steg 3: Kommunicera med I2C -protokoll
För att göra Raspberry Pi I2C aktiverad, fortsätt enligt nedan:
- I terminalen skriver du följande kommando för att öppna konfigurationsinställningarna: sudo raspi-config
- Välj "Avancerade alternativ" här.
- Välj "I2C" och klicka på "Ja".
- Starta om systemet för att konfigurera det enligt de ändringar som gjorts med kommandot omstart.
Steg 4: Programmering av modulen
Belöningen för att använda Raspberry Pi är, det vill säga ger dig flexibiliteten att välja ett programmeringsspråk där du vill programmera för att ansluta sensorn med Raspberry Pi. Med denna fördel med Raspberry Pi demonstrerar vi här dess programmering i Java.
För att konfigurera Java -miljön, installera "pi4j libraby" från https://pi4j.com/1.2/index.html Pi4j är ett Java Input/Output Library för Raspberry Pi. En enkel och mest föredragen metod för att installera "pi4j bibliotek”är att köra det undernämnda kommandot direkt i din Raspberry Pi:
curl -s get.pi4j.com | sudo bash
ELLER
curl -s get.pi4j.com
importera com.pi4j.io.i2c. I2CBus; importera com.pi4j.io.i2c. I2CDevice; importera com.pi4j.io.i2c. I2CFactory; importera java.io. IOException; klass MCP23008 {public static void main (String args ) kastar undantag {int status, värde, värde1 = 0x00; // Skapa I2C -buss I2CBus -buss = I2CFactory.getInstance (I2CBus. BUS_1); // Skaffa I2C -enhet, MCP23008 I2C -adress är 0x20 (32) I2CDevice device = bus.getDevice (0x20); // Skaffa I2C -enhet, MCP9808 I2C -adress är 0x18 (24) I2CDevice MCP9808 = bus.getDevice (0x18); // Skaffa I2C -enhet, TCS34903 I2C -adress är 0x39 (55) I2CDevice TCS34903 = bus.getDevice (0x39); // Ställ in väntetidsregister = 0xff (255), väntetid = 2,78 ms TCS34903.write (0x83, (byte) 0xFF); // Aktivera åtkomst till IR -kanal TCS34903.write (0xC0, (byte) 0x80); // Ställ in Atime -registret till 0x00 (0), maxantal = 65535 TCS34903.write (0x81, (byte) 0x00); // Power ON, ADC enabled, Wait enabled TCS34903.write (0x80, (byte) 0x0B); Tråd. Sover (250); // Läs 8 byte med data med tydliga/ir -data LSB första byte data1 = ny byte [8]; // Läs temperaturdatabyte data = ny byte [2]; status = device.read (0x09); // Konfigurerade alla stift som OUTPUT device.write (0x00, (byte) 0x00); Tråd. Sover (500); medan (true) {MCP9808.read (0x05, data, 0, 2); // Konvertera data int temp = ((data [0] & 0x1F) * 256 + (data [1] & 0xFF)); om (temp> 4096) {temp -= 8192; } dubbel cTemp = temp * 0,0625; System.out.printf (“Temperaturen i celsius är: %.2f C %n”, cTemp); TCS34903.read (0x94, data1, 0, 8); dubbel ir = ((data1 [1] & 0xFF) * 256) + (data1 [0] & 0xFF) * 1,00; dubbel röd = ((data1 [3] & 0xFF) * 256) + (data1 [2] & 0xFF) * 1,00; dubbel grön = ((data1 [5] & 0xFF) * 256) + (data1 [4] & 0xFF) * 1,00; dubbelblå = ((data1 [7] & 0xFF) * 256) + (data1 [6] & 0xFF) * 1,00; // Beräkna belysningsstyrka dubbelbelysning = (-0.32466) * (röd) + (1.57837) * (grön) + (-0.73191) * (blå); System.out.printf ("Belysningsstyrka är: %.2f lux %n", belysningsstyrka); if (belysning 30) {värde = värde1 | (0x01); } annat {värde = värde1 & (0x02); } device.write (0x09, (byte) värde); Tråd. Sover (300); }}}
Steg 5: Skapa fil och köra koden
- För att skapa en ny fil där koden kan skrivas/kopieras kommer följande kommando att användas: sudo nano FILE_NAME.javaEg. sudo nano MCP23008.java
- Efter att ha skapat filen kan vi mata in koden här.
- Kopiera koden från föregående steg och klistra in den i fönstret här.
- Tryck på Ctrl+X och sedan "y" för att avsluta.
- Kompilera sedan koden med följande kommando: pi4j FILE_NAME.javaEg. pi4j MCP23008.java
- Om det inte finns några fel, kör programmet med kommandot som nämns nedan: pi4j FILE_NAMEEg. pi4j MCP23008.java
Steg 6: Applikationer
Detta system låter dig styra enheterna utan att gå till väggbrytarna. Detta har omfattande funktioner eftersom tiderna för att slå på eller av enheterna schemaläggs automatiskt. Det finns en handfull tillämpningar av denna modul från hus till industrier, sjukhus, järnvägsstationer och många fler platser kan automatiseras på ett prisvärt och enkelt sätt med sina plug-and-play-komponenter.
Steg 7: Resurser
För mer information om TSL34903, MCP9808 MCP23008 Relay Controller, kolla nedanstående länkar:
- TSL34903 Datablad
- MCP9808 Datablad
- MCP23008 Datablad
Rekommenderad:
4CH reläkort styrt med tryckknappar: 4 steg
4CH reläkort styrt med tryckknappar: Mitt mål är att uppgradera min Anet A8 3D-skrivare genom att lägga till en strömförsörjningskontroll via Octoprint-gränssnittet. Ändå vill jag också kunna starta " manuellt " min 3D-skrivare, vilket betyder att jag inte använder webbgränssnittet utan bara trycker på en knapp
Hemmautomation med Raspberry Pi Matrix Voice och Snips (del 2): 8 steg
Hemmautomation med Raspberry Pi Matrix Voice och Snips (del 2): Uppdatering av hemautomation med Raspberry Pi Matrix Voice och Snips. I denna PWM används för att styra externa lysdioder och servomotor Alla detaljer som ges i del 1https: //www.instructables.com/id/Controlling-Light
Hemmautomation Steg för steg Användning av Wemos D1 Mini med PCB -design: 4 steg
Hemmautomation Steg för steg Användning av Wemos D1 Mini Med PCB -design: Hemautomation Steg för steg med Wemos D1 Mini med PCB -design För några veckor sedan publicerade vi en självstudie “Hemmautomation med hallon Pi” på rootsaid.com som blev väl mottagen bland hobbyister och College studenter. Sedan kom en av våra medlemmar
Hur man gör reläkort för Arduino: 3 steg
Hur man gör relä kretskort för Arduino: Ett relä är en elektriskt manövrerad omkopplare. Många reläer använder en elektromagnet för att mekaniskt styra en omkopplare, men andra driftsprinciper används också, till exempel halvledarreläer. Reläer används där det är nödvändigt att styra en krets med en
Hemmautomation: Automatisk omkopplare med dimmerstyrning via Bluetooth med hjälp av Tiva TM4C123G: 7 steg
Hemmautomation: Automatisk strömbrytare med dimmerstyrning via Bluetooth med hjälp av Tiva TM4C123G: Numera har vi fjärrkontroller för våra tv -apparater och andra elektroniska system, vilket har gjort våra liv väldigt enkelt. Har du någonsin undrat om hemautomation som skulle ge möjlighet att styra rörljus, fläktar och annan el