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



Teraz jest 18 lis 2024, o 12:29


Strefa czasowa: UTC + 1





Utwórz nowy wątek Odpowiedz w wątku  [ Posty: 16 ] 
Autor Wiadomość
PostNapisane: 1 lis 2014, o 12:05 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 28 mar 2013
Posty: 333
Pomógł: 10

Witam serdecznie wszystkich kolegów i koleżanki na forum. Od dłuższego czasu nosiłem się z zamiarem stworzenia jakiegoś urządzenia które w łatwy i przyjazny sposób ukazywało by rożne parametry np. sytuacje w C.O. i inne.
Pamiętam jak jakieś 1,5 roku temu byłem zachwycony patrząc jak ludzie tworzyli projekty oparte na wyświetlaczu HD44780, hehe dziś co prawda dalej nie umiałbym całkowicie sam stworzyć takiej biblioteki ale już dużo więcej wiem i już przestało mnie to zachwycać. Postanowiłem sobie na podstawie wiedzy jaka mm zrobić urządzenie do wizualizacji rożnych parametrów, jako ze idzie zima, naturalnie pomyślałem o prezentacji temperatur w instalacji C.O.. Do centralki powstanie jeszcze kilka czujników, na razie nie zdradzam co to takiego.

Obecnie projekt jest w fazie bardzo wczesnej, wykonany na prostych nadajnikach i odbiorze przez własnoręcznie stworzona płytkę uruchomieniową.

Sprzętowo prezentuje sie to tak:

- na płytce nadajnika siedzi atmega8 w wersji smd co pozwoliło nieco zminiaturyzować nadajnik niestety nie wszystko zmieściło się w pudełeczku.
- dane przesyłane drogą radiową poprzez moduły rfm73 - póki co jednostronnie
- na pokładzie nadajnika są obecne 2 termometry DS18b20
- nadajnik zasilany z baterii CR2032 (czas działania na baterii to około 2,5 tygodnia, już wsadzona nowa)
- odbiornik to płytkę uruchomieniowa oparta o Atmege16
- dane prezentowane są na LCD oraz poprzez RS232 przesyłane do komputera gdzie są zapisywane a następnie wizualizowane w formie tabel i wykresów.

Największym problemem było ogarniecie modułów RFM73, o które co jakiś czas ludzie piszą na forum mimo ze Mirek w książce opisał podobne moduły a na forum gdzieś było uaktualnienie bibliotek do tych nowych wersji modułów. Ja nie posiadałem zielonej książki wiec szukałem po internecie, i na podstawie rożnych informacji i bibliotek udało mi się ogarnąć wysyłanie i odbiór dla tych modułów. Wdrożenie czujników i innych peryferiów było już znacznie prostsze.

Poniżej zdjęcia:

Obrazek Obrazek

Na LCD są wyświetlane dane temperaturowe, oraz zmienna kontrolna pomagająca ustalić ilość traconych pakietów, póki co jest to na poziomie 2%, nie wiem czy to dużo czy mało hmm.

Za namową kolegi wrzucam zdjęcia jak to wygląd obecnie, póki co jest dość prymitywnie ale mm nadzieje ze nie skrytykujecie mnie za bardzo, hehe

Obrazek Obrazek

Jak już wspomniałem sygnały odbieram za pomocą swojej płytki testowej wyposażonej w rożne peryferia.
Na płytce są obecne:
- podwójne wyprowadzenie wszystkich pinów I/O
- klawisze,
-1 bajt z diodami LED
- sterowniki dl silników ULN2803A, L293D
- RTC z własnym zasilaniem
- nadajnik i odbiornik IR
- DS18b20
- LCD z ustawianiem kontrastu
- dodatkowe linie VCC i GND
- możliwość dodatkowego zasilania przez stabilizator (dla innych napiec niż 5V).

Temperaturę w obiegu C.O. pobieram z nadajnika który wyposażony jest w dwa termometry i moduł RFM73. Niestety nie starczyło miejsca w środku wiec moduł musi być na zewnątrz póki co. Dodatkowo oprócz temperatury nadajnik wysyła zmienną dzięki której możliwe jest obliczenie % błędów w transmisji danych. Oczywiście projekt się będzie rozwijał, zamierzam mocno rozwinąć funkcje pomiarowe i kontrolne, przygotować dedykowane pcb, i obudowy.

----------------------------------------------
--------Aktualizacja 28.01.2015----------
----------------------------------------------

Od poprzedniego wpisu minęło prawie 3 miesiące, wciągu tego czasu zmieniło się kilka rzeczy i pomysłów na w/w projekt. To co zostało zaprezentowane wcześniej działać choć odbiornik jest wyłączony i używany do innych projektów jak i testowania podzespołów do centralki. Przez ten czas sprawdzane pyły połączenia rożnych elementów, RTC, wyświetlaczy. Sporządzane tez były schematy oraz płytki PCB. Są już gotowe, sprawdzone i czekają na wytrawianie.
W trakcie projektowania, kilka razy zmieniałem schemat, a także projekt już gotowych płytek, bo ciągle coś nie pasowało albo miałem inny pomysł - ale to dobrze bo widać jak pomysł się zmienia, poprawia, ostatecznie przyjąłem koncepcje by zmniejszyć płytki i lepiej poupychać elementy. Z perspektywy czasu wiem ze dobrze byłoby zrobić ten projekt w technologii SMD. I następnym razem chyba ją zastosuje albo przynajmniej mieszaną z THT - bo jednak oszczędność miejsca na płytce jest spora.



Ostatnio edytowano 28 sty 2015, o 20:50 przez Atmegowiec, łącznie edytowano 3 razy

Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 2 lis 2014, o 13:59 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 28 mar 2013
Posty: 333
Pomógł: 10

Aktualizacja pierwszego postu



Ostatnio edytowano 28 sty 2015, o 20:49 przez Atmegowiec, łącznie edytowano 1 raz

Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 2 lis 2014, o 14:53 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 28 maja 2012
Posty: 471
Lokalizacja: ZGY/ZS
Pomógł: 30

Aby mieć logi np. z całego dnia to PC musi być cały czas podłączony, czy gromadzisz pomiary w uC i można je pobrać na żądanie?
Po stronie PC masz własny soft do odbierania danych i tworzenia wykresów, czy ładujesz to do .csv i później ręcznie do excela?

_________________
eDiyCraft.blogspot.com



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 2 lis 2014, o 15:43 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 28 mar 2013
Posty: 333
Pomógł: 10

ciągle projekt testuje, wiec mam hmm tak zrobione ze wszystko jest właczone i wtedy logi spływają, myślę o zapisie na karte SD, lub może na jakiejs zewnetrznej EEPROM, bo mysle ze np. 1KB by na długo starczył. Dobrze obliczam ze powinno sie zmieścić około 250 tys znaków? w 1KB EEPROM? lub inczej - ok. 1000 zmiennych 8 bitowych ?? Martwię sie tylko bo EEPROM ma ograniczoną ilosc zapisów wiec chyba bys zybko sie wyczarpała robiąc np. 3000 zapisów dziennie?

Co do wykresów to pomiary są zapisywane po stronie komputera w pliku *.csv, a potem w prosty sposób mozna zrobic wykresy w Exelu. Docelowo chciałbym napisać aplikację na PC prezentującą dane i wykresy na żywo.

Jako ze dopiero sie ucze C wiec wolno to idzie, poki co musze ogrnac częsc mechaniczną, następnie kod na AVR a dopiero potem aplikcja, - bo to bedzie chyba najfajniejsze i pewnie najprostsze - przynajmniej pewna cześć.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 2 lis 2014, o 15:57 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 22 cze 2013
Posty: 988
Lokalizacja: Byram, MS 39272
Pomógł: 55

Atmegowiec napisał(a):
w 1KB EEPROM? lub inczej - ok. 1000 zmiennych 8 bitowych ??

Dokładnie 1024 zmienne 8-bit

Atmegowiec napisał(a):
Martwię sie tylko bo EEPROM ma ograniczoną ilosc zapisów wiec chyba bys zybko sie wyczarpała robiąc np. 3000 zapisów dziennie?

Łatwo wyliczyć. Skoro masz ograniczony zapis do około 1 000 000 razy to przy zapisie 3000 dziennie to
1 000 000 / 3 000 = 333,3(3) dni. Czyli EEPROM starczy Ci na jakiś niecały rok +/-

Użyj może zewnętrznego RAM z podtrzymaniem bateryjnym :)

_________________
Pomysły na podpis - wyślij SMSa +1 769 243 0011



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 2 lis 2014, o 16:17 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 28 mar 2013
Posty: 333
Pomógł: 10

W sumie musiałbym użyć znacznie większej ilości pamięci, gdyż teraz jest około 3 tys. zmiennych a toi dopiero początek, docelowo będzie znacznie więcej danych przepływać. Wiec Pewnie trzeba by pomyśleć o 4K albo nawet 8K oczywiście widziałem takie pamięci EEPROM. Słowo daje nie słyszałem o zewnętrznych RAM z podtrzymaniem bateryjnym.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 2 lis 2014, o 16:21 
Online
Moderator zasłużony dla forum.atnel.pl
Avatar użytkownika

Dołączył(a): 18 lip 2012
Posty: 3205
Lokalizacja: Kraków - obok FAB5 ATMEL'a
Pomógł: 90

Jest ich mnóstwo. Trzeba tylko poszukać ;-)

_________________
http://www.jaglarz.info



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 2 lis 2014, o 16:44 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 28 mar 2013
Posty: 333
Pomógł: 10

ok, juz znalazłem, rzeczywiście sporo ich, tylko że widze pamieci EEPROM mozna znalesc nawet do 1Mb hehe (1024k x 8bit). Wiec w sumie bys tarczyło, dlaczego proponujecie SRAM?

Pozatym ze karta SD jest duza w porównaniu do pamieci eeprom i jak patrze do Mirkowej ksiązki to mnie przeraza obsługa tego - ze to musi byc mega trudne... a eeprom to tak prosto... zwykly zapis poprzez I2C.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 2 lis 2014, o 17:03 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 25 maja 2014
Posty: 61
Zbananowany użytkownik

Pomógł: 1

Bardzo fajny projekt. Będziesz potem publikował kod, albo jego fragmenty? Głównie chodzi o obsługę RFM73 i transmisję danych :)



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 2 lis 2014, o 17:21 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 22 cze 2013
Posty: 988
Lokalizacja: Byram, MS 39272
Pomógł: 55

Dlaczego proponujemy SRAM? Bo nie trzeba będzie martwić się o ograniczoną ilośc zapisów.
Czy taka odpowiedź jest satysfakcjonująca dla Cię? :twisted:

_________________
Pomysły na podpis - wyślij SMSa +1 769 243 0011



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 2 lis 2014, o 19:13 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 28 mar 2013
Posty: 333
Pomógł: 10

WoodPaker napisał(a):
Dlaczego proponujemy SRAM? Bo nie trzeba będzie martwić się o ograniczoną ilośc zapisów.
Czy taka odpowiedź jest satysfakcjonująca dla Cię? :twisted:


tak

ety napisał(a):
Bardzo fajny projekt. Będziesz potem publikował kod, albo jego fragmenty? Głównie chodzi o obsługę RFM73 i transmisję danych :)


Póki co jest to wstrzępach jeśli chodzi o kod, takie porozwalane, - wszystko testuje, każdą część, pewnie potem będę kod ulepszał, optymalizował i zobaczymy. Co do rfm73 to juz kolejna osoba ma z tym problem widze, kurcze niby przeceiz Mirek dal w ksiązce bibliotekę całą... ja tez miałem problemy, bo nie miałem książki ale biblioteki z netu odpowiednio zaimplementowane działają w miarę....



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 2 lis 2014, o 22:09 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 25 maja 2014
Posty: 61
Zbananowany użytkownik

Pomógł: 1

Dziękuję za odpowiedź. Co do "zielonej książki", to też właśnie nie posiadam, ale nowe wydanie ma wyjść już niedługo, więc czekam :) Myślałeś może o jakimś późniejszym rozwinięciu projektu o zdalne pomiary/sterowanie, ale na większe odległości - np. GSM, albo jakieś wpięcie do sieci (W)LAN i dalej "w Internet"?



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 2 lis 2014, o 23:44 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 28 mar 2013
Posty: 333
Pomógł: 10

Nie myślałem o tym - szczerze to nie interesowałem się nigdy modułami Ethernet - ich obsługą. Uważam że są trudne do opanowania chyba ze się mylę. GSM fajna sprawa tylko bardzo koszty rosną. Taniej byłoby wykorzystać wspomniany moduł sieciowy.

Co do sterowania to jeszcze nie ma czym sterować narazie jak widać jest to czysta wizualizacja danych.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 2 lis 2014, o 23:48 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 28 mar 2013
Posty: 333
Pomógł: 10

Myślę dodać kolejne moduły, potestowac i zapakować w jakieś fajne obudowy. Bo w końcu to ma być centralka a nie kupa kabli Hehe.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 28 sty 2015, o 20:46 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 28 mar 2013
Posty: 333
Pomógł: 10

Aktualizacja pierwszego postu
topic9047.html#p101804



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 18 lip 2015, o 20:34 
Offline
Nowy

Dołączył(a): 18 lip 2015
Posty: 6
Pomógł: 0

Tak w temacie zapisu wszelkich pomiarów to przeszedłem przez zapis w EEPROM, kartę SD a skończyłem na bazie MySQL oczywiście na zewnętrzym serwerze. Projekt oparty jest o Atmega1284Pi docelowo ma zbierać różne dane na temat "życia" domu od temperatur w pomieszczeniach, pracy urządzeń (np, C.O), dane z czujek ruchu systemu alarmowego itd. Ma jeszcze sterować pracą urządzeń, włączać wyłączać oświetlenie, podlewać, itd...
Wracając do zapisu to aktualnie z 15 termometrów uzbierało się ponad 4 mln rekordów (około 170MB danych). Od kilku dni dochodzą do tego informacje z czujek ruchu (12 szt.).
Początkowo zakładałem, że zapisywać będę dane w EEPROM i przez UART wyrzucę je co jakiś czas do PC. Ale to wymaga mojej ingerencji co jakiś czas. Druga opcja: Zapis na SD plik csv i potem obróbka w excel, ładne wykresy itp. Ale to też wymaga zachodu a ja jestem leniwy.
Ostatecznie, tak jak napisałem, dane zbierane są na serwerze MySQL i prezentowane skryptami php. Dodatkowo jest komunikacja w obie strony więc mogę zmieniać parametry sterownika przez stronę www.
Takie rozwiązanie wymaga głębszego wejścia w temat, ale zabawa jest fajna i można się dużo nauczyć. Ja się nauczyłem bardzo dużo a pierwszy krok z Atmegą i jej programowaniem postawiłem nie cały rok temu. Z SQL i php miałem już doświadczenie więc budowa interfejsu po stronie serwera www nie była wyzwaniem niemniej jednak sam sterownik ciągle jest na prototypie bo nie wyklarowała się jeszcze ostateczna wizja.
Polecam zakup modułu na WizNet5500 (elty.pl) lub pobawić się z ENC28J60 i postawić serwerek np. na Raspberry Pi (ja mam na PC - Linux).

Pozdrawiam,
A.



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: 16 ] 

Strefa czasowa: UTC + 1


Kto przegląda forum

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


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:  
Sitemap
Technologię dostarcza phpBB® Forum Software © phpBB Group phpBB3.PL
phpBB SEO