Sprinkler bevattning system timer (2 / 5 steg)
Steg 2: Konfigurera Raspberry Pi
Tyvärr ladda upp filsystemet på denna webbplats är trasig just nu, jag kommer att lägga till resten av filerna när jag kan.
På kort sikt har jag placerat dem på denna länk...
http://aquasate.com.au/Andrew/retic/index.php#file...
Du kan behöva installera "openssh-client" på din huvuddator, eller något liknande så att du kan prata med Pi.
Jag använde den standard Raspian Linux-distributionen, men jag tror att skillnaderna till alla andra Linuxdistributioner skulle vara minimal.
Konfigurera Pi för att ha en statisk adress. Dessa instruktioner verkar vara så god som någon...
http://www.modmypi.com/blog/tutorial-How-to-give-y...
Jag använde 192.168.1.100, men detta är mycket flexibel och beror på din hemma-setup.
Cykla makt till pi så att pi stövlar upp till rätt IP-adress.
Sätta alla de inkluderade filerna i en katalog på din huvuddator, sedan använda en terminal, (jag kör KDE inom Kubuntu och begagnade Konsole), ändra till den katalog där du packade upp filerna, då kolla är i rätt katalog genom att skriva...
ls -l (gemen L)
Detta bör ge dig en lista över filer som ska överföras till pi. Skriv...
$ scp *. * pi
Standardlösenordet är "hallon"
Detta kommer att kopiera alla filer i katalogen vinbär till pi: s web publiceringskatalogen.
Helst i en ny flik (Arkiv -> ny flik) skriver i...
$ ssh pi
Detta bör ge dig en skalprompt från din pi.
Byt till webbkatalogen publishing...
$ cd /var/www/html
Skriv sedan
ls -l
igen för att se till att finns filerna på rätt plats.
Du kommer att behöva göra alla python skript körbar...
$ chmod + x *.py
Om detta inte fungerar kan du antingen prova...
$ sudo chmod + x *.py
eller tillbaka en målkatalog
$ cd...
Och ändra behörigheterna för katalogen "html"
$ sudo chmod 777 html
Det senare alternativet rekommenderas inte om pi kommer att vara tillgängliga från Internet.
Uppdatera listan över tillgängliga program...
$ sudo apt-get update
Och vi kan också göra en uppgradering medan vi är på det...
$ sudo apt-get upgrade
Installera en web server och stöd filer...
Apache är inte det enda valet, och är lite större och eventuellt långsammare än andra alternativ, men det är mycket mogen och har massor av stöd och alternativ.
Sqlite3 databas är enkel och okomplicerad, precis vad jag vill.
$ sudo lämplig-få installera apache2
$ sudo lämplig-få installera php5
$ sudo lämplig-få installera sqlite3
$ sudo lämplig-få installera python
$ sudo lämplig-få installera python-pysqlite2
Jag är inte säker på om alla dessa behövs, men detta är vad jag använde.
$ sudo lämplig-få installera php5-sqlite
$ sudo lämplig-få installera php-db
$ sudo lämplig-få installera php-gettext
$ sudo lämplig-få installera wwwconfig-common
Du kan också vilja installera adminer
Jag fick inte det att fungera för mig, men försökte inte mycket hårt.
$ sudo lämplig-få installera adminer
Följ dessa instruktioner för att installera ledningar pi biblioteket.
http://wiringpi.com/download-and-Install/
Du bör redan vara på HTML-katalogen, om inte, ändra kataloger...
$ cd /var/www/html
Vi behöver också konfigurera databasen. Bara skriva i text efter $ snabb.
PI sqlite3 default.db
Nu måste vi skapa en databastabell för roterande på gånger...
sqlite > CREATE TABLE () table_time
PK NTEGER PRIMARY KEY,
zonen SMALLINT,
dagen SMALLINT,
timme SMALLINT,
min SMALLINT,
sekunder INT
);
Och eventuellt lägga till en post eller två...
sqlite > INSERT INTO table_time (zon, dag, timme, minuter, sekunder) VALUES(1,0,6,1,6);
Infoga i table_time (zon, dag, timme, minuter, sekunder) värden (2, 0, 6, 2, 12);
välja * från table_time;
Och en annan tabell att hålla reda på månatliga tidsjusteringar...
sqlite > CREATE TABLE () table_month
månad SMALLINT PRIMÄRNYCKEL,
procent SMALLINT
);
och prefill det med data...
sqlite > INSERT INTO table_month (månad, procent) värden (1, 130);
Infoga i table_month (månad, procent) värden (2, 120);
Infoga i table_month (månad, procent) värden (3, 110);
Infoga i table_month (månad, procent) värden (4, 100);
Infoga i table_month (månad, procent) värden (5, 90);
Infoga i table_month (månad, procent) värden (6, 80);
Infoga i table_month (månad, procent) värden (7, 70);
Infoga i table_month (månad, procent) värden (8, 80);
Infoga i table_month (månad, procent) värden (9, 90);
Infoga i table_month (månad, procent) värden (10, 100);
Infoga i table_month (månad, procent) värden (11, 110);
Infoga i table_month (månad, procent) värden (12, 120);
välja * från table_month;
Om du vill kan du granska tabellerna...
sqlite > .tables
sqlite > .fullschema
visar tabellstrukturen.
Om du tror att du fyllda av någon anledning kan du alltid släpper en tabell och börja igen...
sqlite > drop table table_time;
och att sluta från sqlite typ...
sqlite > .quit
Att köra "/ var/www/html/water.py" vid start jag skapade "666start.sh" som måste gå i "/ etc/init.d/"
Att göra den körbar...
$ sudo chmod + x *.sh
Sedan flytta den...
$ sudo mv 666start.sh /etc/init.d/
Helst skulle det vara började förra, men jag vet inte hur man ändrar ordningen och det verkar fungera som det är hur som helst.
Vid denna tidpunkt bör du kunna peka en webbläsare på en dator ansluten till det lokala nätverket, på din pi: s IP-adress och se en massa knappar redo att förvandla utgångarna på och av.
Om du klickar på knappen "Auto" bör du kunna ändra gånger varje zon tänds och körs för. http://192.168.1.100/index.php eller bara 192.168.1.100
Du måste ta bort den ursprungliga "index.html" filen i /var/www/html att detta ska fungera.
PI $ rm index.html
Förhoppningsvis systemtiden är samma som din lokala tid, om inte kan du behöva ändra tidszonen Pi. Detta kan göras via raspi-config som visas på denna sida...