Arduino programmet

Hur programmet är uppbyggt

Det är dags att du börjar sätta dig in i hur koden är uppbyggd och hur vi har löst det. Koden finns att hämta hem från vår GitHub och kommer fortlöpa med förbättringar och modifieringar.

I början av koden finns ett par #define uppgifter som du måste börja med.

Först har vi #define COMMON_ANODE som är för RGB led dioden. Om du har en anode diod skall du definiera den, har du en catode diod skall du kommentera bort den (// framför #define). Detta för att programmet skall veta hur den ska arbeta för att skapa färger till dioden.

Nästa moment som är viktig att ställa in är sensorer. Programmet är byggt för 5 magnet kontakter och 2 rörelsevakter. Den första av magnetkontakten och rörelsevakten kan du ej ändra med define taggar utan dom måste vara med. Men dom andra kan du enkelt stänga av eller slå på med define koden.

Magnetkontakterna heter #define REED_2 osv och rörelsevakten heter #define PIR_2

Om du tar bort dom behöver du inte rensa ur i koden om du ej vill och kan. Utan dom koderna flyttas helt enkelt inte med när du överför koden sen till din Arduino. Notera att om du tar bort någon sensor så bör du ändra Zon området eller i display texten. Men mer om det sen.

Om du vill ändra inkoppling på display bakgrunds belysningen till någon annan än till Analog 0 som vi valt, kan du göra det med #define LCD_LIGHT_PIN A0 och ändra A0 till något annat. Vill du ändra tiden den skall lysa så gör du det med #define LCD_LIGHT_ON_TIME 60000 och ändrar 60000 till önskvärd tid i milli sekunder.

Anslutningar i programmet

Om du inte vill använda dom anslutningar vi har valt som finns olika ändringar du gör i koden. Det är informationen för programmet över vad som är inkopplat på din Arduino.

Först har du knappsatsen, den är inkopplad med 8 kontakter som vi valt att lägga mellan inkoppling 42 -49 och som du ändrar genom att ändra följande i koden:

byte rowPins[ROWS] = {
42, 43, 44, 45
}; //rader för knappsatsen
byte colPins[COLS] = {
46, 47, 48, 49
}; //kolumner för knappsatsen

Sedan har du displayen. Den ligger på anslutningarna 6 – 11 och ändrar gör du i koden på följande: LiquidCrystal lcd(7, 8, 9, 10, 11, 6);

RGB dioden använder sig av PWM och där har vi valt att köra ingångarna 5-3 och dom ändringarna gör du på följande:

int redPin = 5;
int bluePin = 3;
int greenPin = 4;

Den röda och gröna dioden ligger på 29 respektive 30 och ändring för dessa gör du på följande:

int greenLED = 29;
int redLED = 30;

Sen har du magnet kontakter och rörelsevakter som ligger på mellan 22 – 28 och ändringar gör du genom:

int reedPin1 = 22; (Detta för magnet, 4 stycken till finns)
int pirPin1 = 27; (Detta för rörelsevakt, 1 stycken till finns)

Sen har du för siren och buzzer. Sirenen drivs via ett relä. Dom ligger på anslutningarna 31 & 33 och ändringar gör du:

int speakerPin = 31;
int sirenRelay = 33;

Sen har du säkerhets brytaren som är för kontrollpanelen som ligger på anslutning 32 och ändrar gör du:

int safeSwitch1 = 32;

För SD läsarens SS matning så har vi den på 53 och det ändrar du på:

int SDss = 53;

Alla ingångar är samlad på ett och samma ställe så du hittar dom.