Androidille softan ohjelmointi sekä GPRS-verkon yli laitteen ohjaus

  • Keskustelun aloittaja Keskustelun aloittaja Deleted member 43228
  • Aloitettu Aloitettu
10% ALENNUS KOODILLA PAKKOTOISTO
Onko tulolla jatkon kannalta jokin merkitys kummalle polulle lähden? Pythonilla muuten harjoittelen tällä hetkellä, niin tuoko tuo PHP loppujenlopuksi enemmän ominaisuuksia tai mitä hyötyä on taas puuhata Flash:n parissa?

Tarkoitus olisi siis saada lopulta ohjattua tuon raspin avulla vaikka hehkulamppua web-käyttöliittymällä. Ois vaikka nappi josta valo syttyy heti, ja vaikka ajastin johon syötän ajan ja lamppu syttyy sillon. Rautapuoli onnaa, ohjelmointi vaatii opiskelua.

Servukin pyörii jo ja PHP pohjalla oleva joku ensimmäinen rävellyskin aukeaa.:D
 
Flash vai flask? :)

Jos nyt puhutaan Flash Flashistä niin se saa varmaan levätä rauhassa. RIP. :D
 
Aaaaa katos, näin nykyään kun saa jatkuvasti olla tarkkana muiden automaattisentekstinsyötön kirjoituksista, ajattelin tuon heti kirjoitusvirheeksi. Löytypä juu googlella ihan Flask myös.

Tietäis vaan mille polulle lähteä.
 
Vaihtoehtoja on varmaan tuhat. Yleensä omien mieltymyksien mukaan... tai jos jokin on lähellä jotain mitä ennen on tehnyt. Tuommonen ei mitään kovin kompleksia varsinaista "alustaa" tarvi kuitenkaa?

Joku tehnyt node.js + mongodb + html5 jotain mikä näyttää olevan melkein tismalleen mitä duunaat? heimcontrol.js - Home automation in Node.js with Raspberry PI and Arduino
 
TML laittoi kyllä hyvän linkin. Laitoin itselle talteen.

Jos haluaa tehdä kaiken itse ja lähtötaso on nolla(?), niin tässä tässä esimerkiksi yksinkertainen PHP. Kaksi nappia, toisella sammutetaan valot ja toisella laitetaan päälle. Korvaat vaan functioden sisällä olevat python scriptat omillasi. Tarvitset tämän toimimiseen esimerkiksi sen apachen ja PHP:n.

Mutta keinoja on siis lukuisia, mikään ei ole kai väärä.

<?php
if($_GET){
if(isset($_GET['on'])){
on();
}elseif(isset($_GET['off'])){
off();
}
}

function on()
{
exec("python lightson.py");
// tai exec("/usr/bin/python lightson.py"); missä ikinä python onkaan.
}
function off()
{
exec("python lightsoff.py");
}

?>.


<input type="submit" class="button" name="on" value="on" /> //nappi yksi
<input type="submit" class="button" name="off" value="off" /> //nappi kaksi
 
Kiitos hei! Joo en tarvi monimutkaista. Kunhan nyt on jotain tarkoitusta tällä opiskelulla, niin sillä tuota valoja haluan vaikka ohjata. Ja kyllä, lähtötaso on nolla, mutta tekemällä oppii.

Kai sitä alan siis tuolla PHP:llä reenaan, pitää vaan etsiä hyviä harjoitustehtäviä. Pythoniin löytyi ohjelmointiputkasta hyvä opas, mutta PHP-oppaassa taas asioita ei selitetä niin tarkasti. Kaippa sitä kirjasto auttaa, jos netistä ei oppaita löydy.
 
Jos enkku taipuu, niin oon ite aina pitänyt Sitepointin kirjoista. Niillä on just näitä from novice to ninja kirjoja jos mistäkin aiheesta: PHP & MySQL: Novice to Ninja - SitePoint

En sitten tiedä miten tommosia kirjastosta löytyy. Mut PHP:stä nyt on varmaan sata miljoonaa kirjaa, eiköhän kirjastossa ole vaikka mitä.

Python kun ei ole mulle tuttu, niin aloin itse menee läpi tätä yksinkertaista basic tutorialii: Learn Python The Hard Way
Toi on kirja, mutta tekijä pisti sen myös ilmaiseksi nettiin.
Mul ei oo mitään käryä, kun Pythonia en ole käyttänyt, että onko ton internet guiden sisältö ihan skeidaa vai what. Toisaalta kaippa siinä nyt Pythonin syntaksi ja peruslogiikat yms. on kohdallaan.
 
Onko heittää vinkkiä tekstieditorista tuolle PHP:lle. Nanolla oon tähän saakka reenannut ja mietin, että on varmaan näppärämpiäkin olemassa. Ärsyttävää, kun ei voi käyttää hiirtä, vaan aina nuolinäppäimillä pitää mennä haluttuun kohtaa. Ja ei windowsille, vaan unix tai no linux pohjainen tuo raspian kai on. Miten se nyt sitten ilmaistaankaan.
 
Gedit meni asennukseen ja ajaa nanoa näppärämmin hommansa.

Notepad++:n olisin asentanut mutta se oli vain winukalle. Ja haluan hoitaa tuolla raspilla mahdollisimman paljon asioita, niin oppii sen käyttöä. Wine tai joku vastaava oisko ollut joku emulaattori, ois kai sen kautta saanut pelaan, mutta en jaksanut alkaa leikkiin.
 
Nappitesti.php sanoi:
<?php
if($_GET){
if(isset($_GET['on'])){
on();
}elseif(isset($_GET['off'])){
off();
}
}

function on()
{
exec("/home/pi/ seiskapinni_ON.py");
}
function off()
{
exec("/home/pi/ seiskapinni_OFF.py");
}

?>.


<input type="submit" class="button" name="on" value="on" /> //nappi yksi
<input type="submit" class="button" name="off" value="off" /> //nappi kaksi

ON
seiskapinni_ON sanoi:
# -*- coding: latin-1

import RPi.GPIO as GPIO
GPIO.setmode(GPIO.BOARD)
GPIO.setup(7,GPIO.OUT)
import time
GPIO.output (7,True)
print "ON"

OFF
seiskapinni_OFF sanoi:
# -*- coding: latin-1

import RPi.GPIO as GPIO
GPIO.setmode(GPIO.BOARD)
GPIO.setup(7,GPIO.OUT)
import time
GPIO.output (7,False)
print "OFF"

Mikä mättää? Pelkällä Pythonilla ajettuna ledi syttyy ja sammuu, mutta kun selaimelta koitan, napit näkyy mutta mitään ei tapahdu?

Printit "ON" ja "OFF" turhia sekä "import time", mutta niistä ei liene haittaakaan?

Edit: Jos lähtis nostaan rautaa. 6 h vääntämistä ja kääntämistä tältä päivältä saa riittää.
 
Jos if-lauseet muuten kunnossa, eli menee PHP:ssa exec-riville, niin sitten voi katsoa Running a python script from PHP - Stack Overflow
Vastaavanlaiselta ongelmalta kuulostaa.

Editoreista tietysti tekstieditorit, mutta suosittelen kyllä jonkun oikean IDE:n käyttöönottoa. PHPlle paras käyttämäni on PHPstorm, joka kyllä maksaa, mutta Netbeansiakin suositan ennemmin kuin pelkän tekstieditorin kanssa koodailua.
 
Joku tässä nyt mättää.

Kun en tuota PHP:ta ole reenannut kunnolla, niin pythonin yhdistys siihen takkuaa. Koitan nyt laittaa tätä PHP:lle aluksi ja palaan tuohon nappihommaan, kun alkaa homma muuten luistaan.


---helloworld.py---
hello = "Hello"
world = "world"
print hello + " " + world


---helloworld.php---
<?php

MITÄ TÄHÄN VÄLIIN?

?>

Meen jo perse edellä puuhun, kun aloin tätä koittaan, mutta koska koitin niin lopeta en ennen kuin pelaa. Vaikkakin tuo php on niin tuntematonta. Jatketaan sen reeniä, kun saan tuon pythonin koodinpätkän näkyviin. Kaikkea netistä löytämää koittanut. Mutta ei vaan pelaa. Saa siis ehdottaa.

Koitin jo alussa antaa vastuuta vähän liikaakin, mutta ei auttanut. Jos ois siis ollut lupapuolesta kiinni:

Sudoers file: sudo visudo
Exception added: www-data ALL=(ALL) NOPASSWD: ALL
 
Joku tässä nyt mättää.

Kun en tuota PHP:ta ole reenannut kunnolla, niin pythonin yhdistys siihen takkuaa. Koitan nyt laittaa tätä PHP:lle aluksi ja palaan tuohon nappihommaan, kun alkaa homma muuten luistaan.


---helloworld.py---
hello = "Hello"
world = "world"
print hello + " " + world


---helloworld.php---
<?php

MITÄ TÄHÄN VÄLIIN?

?>

Meen jo perse edellä puuhun, kun aloin tätä koittaan, mutta koska koitin niin lopeta en ennen kuin pelaa. Vaikkakin tuo php on niin tuntematonta. Jatketaan sen reeniä, kun saan tuon pythonin koodinpätkän näkyviin. Kaikkea netistä löytämää koittanut. Mutta ei vaan pelaa. Saa siis ehdottaa.

Koitin jo alussa antaa vastuuta vähän liikaakin, mutta ei auttanut. Jos ois siis ollut lupapuolesta kiinni:

Sudoers file: sudo visudo
Exception added: www-data ALL=(ALL) NOPASSWD: ALL
Siis mitä haluat tuohon väliin? :D

Koodi:
<?php
  $hello = "hello";
  $world = "world";
  echo $hello . ' ' . $world;
?>
 
Oho, siis halusin, että se toisi tuon helloworld.py tiedoston php:lle ja tulostaisi silloin PHP:lle tuon Hello world. :D

Ei oo vaikee, ei vaan osaa :D Perse edellä puuhun mennään, mutta jäi kismittään!
 
Pitikin oikein koittaa.

-- hello.php --
<?php
$output = array();
exec('python helloworld.py', $output);
var_dump($output);
?>

ja kun ajaa php hello.php niin muuttujan sisältönä on tuon skriptin tulos.
 
Jotain tämän tapaista siis:

<?php

exec("/home/pi/helloworld.py");

?>

Ja selaimeen pyörähtäisi vain tuon pythonin koodin tulos, eli:

Hello world

- - - Updated - - -

Okei, koitetaas.
 
Joo, multa meni koko pointti ohi. Ei mitään, jatkakaa. :D
 
Pitikin oikein koittaa.

-- hello.php --
<?php
$output = array();
exec('python helloworld.py', $output);
var_dump($output);
?>

ja kun ajaa php hello.php niin muuttujan sisältönä on tuon skriptin tulos.

tulee:
array(0) { }

Mutta otetaanpa tuo kolmas rivi, eli:
exec('python helloworld.py', $output);

Pitääkö tuohon liittää vielä polku, mistä helloworld.py löytyy, eli esim:

exec('python ./home/pi/helloworld.py', $output);
Tiedän, ei toimi, koitettu. Mutta pohdin, mistä php:n skripti tietää, mistä tuo helloworld.py haetaan?

- - - Updated - - -

Joo, multa meni koko pointti ohi. Ei mitään, jatkakaa. :D
Juu tämä on vähän tällästä, ois pitänyt alottaa tää puuha jo samaan aikaan kun ekan tietokoneen sai. Tarvis vanhana leikkiä ja keksiä elektroniikkaleikkeihin uutta ulottuvuutta.
 

Latest posts

Suositut

Back
Ylös Bottom