Kanał - ATNEL tech-forum
Wszystkie działy
Najnowsze wątki



Teraz jest 22 sty 2025, o 11:00


Strefa czasowa: UTC + 1





Utwórz nowy wątek Odpowiedz w wątku  [ Posty: 3 ] 
Autor Wiadomość
PostNapisane: 4 sie 2015, o 20:03 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 19 lut 2013
Posty: 223
Zbananowany użytkownik

Pomógł: 21

http://www.w3schools.com/js/
https://developers.google.com/chart/int ... /linechart

Zapragnąłem zwizualizować sobie dane z stacji pogodowej. Jako, że PCD8544 jest z lekka malutki, to postanowiłem wizualizować sobie na monitorku FullHD :twisted:
Do statycznej strony AVR wstrzykuje do paragrafu o id="data" zarejestrowane wartości ciśnienia, temperatury i wilgotności. Następnie napisany skrypt JS obrabia otrzymane dane, poprawia ich prezencję na stronie na bardziej ludzki format, sortuje po dacie, ładuje moduły Google Charts, konfiguruje wykres i wreszcie go rysuje.

Skrypt rozróżnia 3 stany bloków pamięci:
1. - uszkodzone CRC (problem z pamięcią)
Kod:
1

2. - blok niezapisany (jeszcze :) )
Kod:
0 ? ? 0 ? ? ? ?

3. - blok zapisany
Kod:
0 rok miesiac dzien godzina cisnienie temperatura wilgotnosc
cisnienie - Pa (offset 80000)
temperatura 1/10 C
wilgotnosc 1/10 %


Składnia: [ Pobierz ] [ Ukryj ]
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.


Po wykonaniu takiego kodu na M32 (biedaczek na 9s ma roboty :D ) i przesłaniu go przez sami-wiecie-jaki-moduł-wifi naszym oczom ukaże się:


Załączniki:

Aby zobaczyć załączniki musisz się zalogować. Tylko zalogowani użytkownicy mogą oglądać i pobierać załączniki.

_________________
Nie pisz komentarzy - dobry kod komentuje się sam.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 5 sie 2015, o 12:44 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 22 lis 2013
Posty: 77
Pomógł: 6

Nad czymś takim własnie myślałem kiedyś ale przerosło to moje programistyczne możliwości. Rozumiem ze schemat działania wygląda mniej więcej tak :
-zapytanie przegladarki do AVR
-przygotowanie strony http przez AVR
-wysłanie strony

powiedz mi tylko skąd bierzesz historie pomiarów z karty SD czy do EPROM zapisujesz dajmy na to ostatnie 10 oraz date i godzine przez NTP ? bo zrezygnowałem z takiego podejścia gdyż za dużo kodu trzeba naklepać: obsługa SD pliku txt z historia, NTP albo RTC. Przy cenie RPI B+ gdzie masz już wszystko na pokładzie stwierdziłem ze się nie opłaca.

PS. Wstaw jpg żeby nie trzeba było ściągać.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 5 sie 2015, o 15:29 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 19 lut 2013
Posty: 223
Zbananowany użytkownik

Pomógł: 21

Ekstrapolator napisał(a):
-zapytanie przegladarki do AVR
-przygotowanie strony http przez AVR
-wysłanie strony

Transfer-Encoding: chunked :D - wyślesz tą (16KB) stronkę używając 20B bufora :) (no, 150B, bo takie ograniczenie generuje rozmiar w pełni statycznego nagłówka HTTP - ale to można by prosto przepisać)
Składnia: [ Pobierz ] [ Ukryj ]
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.

Wychodzi idealnie 8B, używam 24C32 umieszczonego na module RTC DS1307 oraz pozostałego EEPROMU w procku.
Składnia: [ Pobierz ] [ Ukryj ]
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.

Na dobrą sprawę nawet nie wiem ile to, a po zmianie procka na jakikolwiek inny rozmiar automatycznie się dostosuje 8-)

Jak wyżej napisane posiadam RTC, ale każdej 10 sekundy wysyłam zapytanie NTP (po wcześniejszym uzyskaniu IP przez DNS) :twisted:
Jak bibliotekę do internetu pisać to na wypasie, a nie rozdrabniać się z ilością obsługiwanych protokołów 8-)

Kodu nie jest jakoś dużo - HTTP to 100 linijek, DNS 50, NTP 30 + 80 dla przeliczania timestampa na coś normalnego. Sam moduł statystyk to 200 linijek, z czego 80 to proste obliczanie CRC i dostęp do pamięci bloków.

_________________
Nie pisz komentarzy - dobry kod komentuje się sam.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
Wyświetl posty nie starsze niż:  Sortuj wg  
Utwórz nowy wątek Odpowiedz w wątku  [ Posty: 3 ] 

Strefa czasowa: UTC + 1


Kto przegląda forum

Użytkownicy przeglądający ten dział: Brak zidentyfikowanych użytkowników i 3 gości


Nie możesz rozpoczynać nowych wątków
Nie możesz odpowiadać w wątkach
Nie możesz edytować swoich postów
Nie możesz usuwać swoich postów
Nie możesz dodawać załączników

Szukaj:
Skocz do:  
cron
Sitemap
Technologię dostarcza phpBB® Forum Software © phpBB Group phpBB3.PL
phpBB SEO