Hoi allemaal,
ik hoop dat ik hier goed zit met deze vraag, ik heb de headers gelezen, normaal woon ik in EL en van PHP heb ik weinig kaas gegeten. Belangrijk is, vind ik, om meteen te vermelden dat alles wat ik hier ga vragen, moet draaien op een RPi B+. Ik ben bezig met een meet en regelsysteem. Er wordt e.e.a. geregeld aan de hand van bepaalde metingen. Een soort mini domotica, maar toch net anders. De hele RPi moet uiteindelijk "bediend" worden vanuit een webpagina. Dat lukt an sich wel, een knopje maken in HTML en daar een actie aan verbinden kan zelfs ik.
Ik heb GD gevonden en geïnstalleerd, mooie library om grafiekjes mee te maken. Deze pagina bood een hele mooie basis, aan de hand daarvan heb ik een grafiekje doorgebouwd. Op dit moment genereer ik data aan de hand van een random formule met gedempte output. Levert voor de bühne een leuke grafiek op, maar zegt nog helemaal niets.
In een ander deel van de programmatuur lees ik met behulp van een C routine data van een I2C connectie uit naar een txt file. Dat gaat goed, ik krijg een waarde van 0 tot 255 terug (1 byte data per sending) en die schrijf ik, voor nu, direct naar het txt file. Gewoon mooi keurig 1 byte per regel, na iedere schrijfactie start ik dus weer op een nieuwe regel. Eventueel kan ik daar nog een index getal voor zetten, dat is 2 seconde schrijfwerk. Ik verwacht dat het makkelijker is om de conversie naar bruikbare data te doen in het C bestandje dan in het PHP scriptje, omdat het PHP scriptje al relatief veel uit moet voeren en eigenlijk snel klaar moet zijn, dus dat laat ik even ter zijde. Die conversie maken gaat mij nog wel lukken.
Nou wil ik natuurlijk die data weer uitlezen. Eenieder die wel eens een grafiekje met GD gemaakt heeft, weet dat je daarvoor een aantal samples nodig hebt. En daar zit mijn vraag. Ik wil graag die samples uitlezen uit het txt filetje. En daarin blijken zoveel mogelijkheden te zijn, dat ik met mijn beperkte PHP kennis door de bomen het bos niet meer zie.
Volgens mij zou het script in de basis zo moeten werken, maar ik wil meer, dat heb ik alvast in comments in de code gezet.
Ik wil niet meer samples lezen dan dat er opgeslagen zijn. dus overal waar geen waarde is, hoeft ook geen grafiek getekend te worden. De vertalingsslag van waarde uit mijn I2C communicatie naar waarde die de GD library zal kunnen gebruiken, is zo gedaan. Eigenlijk wil ik nog een extra kolom met daadwerkelijke waarde (niet de waarde die de grafiek nodig heeft), dus zal ik ook de juiste kolom moeten selecteren.
Voor een deel heb ik dan ook wel wat aan deze en deze HTML lessons, maar niet voldoende. Vandaar mijn vraag hier. Van Google word ik ook niet wijzer, heel veel is in perl of juist het opslaan van data ofzo, maar niets geeft echt antwoord op mijn specifieke situatie of draagt het lastige deel bij. Combineren van oplossingen zou kunnen, maar de juiste combinatie heb ik nog niet gevonden.
Alvast bedankt voor jullie hulp.
ik hoop dat ik hier goed zit met deze vraag, ik heb de headers gelezen, normaal woon ik in EL en van PHP heb ik weinig kaas gegeten. Belangrijk is, vind ik, om meteen te vermelden dat alles wat ik hier ga vragen, moet draaien op een RPi B+. Ik ben bezig met een meet en regelsysteem. Er wordt e.e.a. geregeld aan de hand van bepaalde metingen. Een soort mini domotica, maar toch net anders. De hele RPi moet uiteindelijk "bediend" worden vanuit een webpagina. Dat lukt an sich wel, een knopje maken in HTML en daar een actie aan verbinden kan zelfs ik.
Ik heb GD gevonden en geïnstalleerd, mooie library om grafiekjes mee te maken. Deze pagina bood een hele mooie basis, aan de hand daarvan heb ik een grafiekje doorgebouwd. Op dit moment genereer ik data aan de hand van een random formule met gedempte output. Levert voor de bühne een leuke grafiek op, maar zegt nog helemaal niets.
In een ander deel van de programmatuur lees ik met behulp van een C routine data van een I2C connectie uit naar een txt file. Dat gaat goed, ik krijg een waarde van 0 tot 255 terug (1 byte data per sending) en die schrijf ik, voor nu, direct naar het txt file. Gewoon mooi keurig 1 byte per regel, na iedere schrijfactie start ik dus weer op een nieuwe regel. Eventueel kan ik daar nog een index getal voor zetten, dat is 2 seconde schrijfwerk. Ik verwacht dat het makkelijker is om de conversie naar bruikbare data te doen in het C bestandje dan in het PHP scriptje, omdat het PHP scriptje al relatief veel uit moet voeren en eigenlijk snel klaar moet zijn, dus dat laat ik even ter zijde. Die conversie maken gaat mij nog wel lukken.
Nou wil ik natuurlijk die data weer uitlezen. Eenieder die wel eens een grafiekje met GD gemaakt heeft, weet dat je daarvoor een aantal samples nodig hebt. En daar zit mijn vraag. Ik wil graag die samples uitlezen uit het txt filetje. En daarin blijken zoveel mogelijkheden te zijn, dat ik met mijn beperkte PHP kennis door de bomen het bos niet meer zie.
Volgens mij zou het script in de basis zo moeten werken, maar ik wil meer, dat heb ik alvast in comments in de code gezet.
PHP:
1
2
3
4
5
6
7
8
9
| $f = fopen("file.txt", "r"); #count samples; #while(current sampe < total samples){ #use specific column data echo fgets($f); #$ypoint = echoed data } fclose($f); |
Ik wil niet meer samples lezen dan dat er opgeslagen zijn. dus overal waar geen waarde is, hoeft ook geen grafiek getekend te worden. De vertalingsslag van waarde uit mijn I2C communicatie naar waarde die de GD library zal kunnen gebruiken, is zo gedaan. Eigenlijk wil ik nog een extra kolom met daadwerkelijke waarde (niet de waarde die de grafiek nodig heeft), dus zal ik ook de juiste kolom moeten selecteren.
Voor een deel heb ik dan ook wel wat aan deze en deze HTML lessons, maar niet voldoende. Vandaar mijn vraag hier. Van Google word ik ook niet wijzer, heel veel is in perl of juist het opslaan van data ofzo, maar niets geeft echt antwoord op mijn specifieke situatie of draagt het lastige deel bij. Combineren van oplossingen zou kunnen, maar de juiste combinatie heb ik nog niet gevonden.
Alvast bedankt voor jullie hulp.