Witam,
To mój pierwszy post na tym forum, trafiłem tu z forum Elektrody już dawno, ale raczej czytałem a nie pisałem.
Miło wiedzieć, że jest takie miejsce gdzie za niewiedzę się nie linczuje.
Chciaż jak przebrniecie do końca nie wiem, czy mnie nie zliczujecie
![Puszcza oko ;-)](https://forum.atnel.pl/images/smilies/icon_e_wink.gif)
Na początek wielkie podziękowania dla Mirka za wspaniałe poradniki video na blogu (właśnie zgłebiam tajniki eagla) oraz SunRiver'a za ciekawe lekcje STM32VL Discovery.
Moje doświadczenie nie jest duże, a chciałbym pokusić się o większy projekt - i to taki który miałby pracować w "środowisku produkcyjnym". Wcześniej programowałem Arduino z Atmegą 328p różne drobne projekty (czujniki temperatury, LCD znakowe, przesyłanie danych do/z PC). Mam pierwszą część książki Mirka, ale nie miałem kiedy się do niej zabrać.
Projekt ma być rozbity na 4 mikrokontrolery:
I master w domu, podłączony do PC (NAS na Debianie Squeeze a właściwie OpenMediaVault) przez USB lub RS232 który:
- zbierałby dane z 10 czujników temperatury DS18B20 (czujniki chciałbym umieścić w puszkach od włączników oświetlenia)
- zbierałby dane z 4 czujników wilgotności SHT11
- sieć w topologii gwiazdy - do najdalszego punktu max. 25m - kabel skrętka UTP kat. 5E
- komunikowałby się odbierając dane z 3 pozostałych mikrokontrolerów (bezprzewodowo)
(przy okazji pytanie jaki system bezprzewodowej komunikacji wybrać - RF12x? Dom z cegły dziurawki - max. 6 ścian na drodze sygnału + max do 50m)
- sterowałby przez przekaźniki ogrzewaniem - sterowanie przez zwieranie do masy 24VAC 7 linii + masa
- sterowałby przez przekaźniki zasilaniem pompy ciepła (3 różne kombinacje podłączenia 5 przewodów - od nich zależna jest prędkość obrotowa wentylatora) - to też na przekaźnikach
- sterowałby przepustnicami (jeszcze nie znam dokładnej ilości - max. 10 szt) - sterowanie proporcjonalne 0-10V
- sterowałby pompą CWU - 1 przekaźnik
- mikrokontroler sam nie obrabiałby danych a jedynie pośredniczyłby w przesyłaniu danych na PC (komunikacja dwustronna)
PC program w javie (wiem, krytykowany język programowania, ale go znam) + klient jako jednostka sterująca na androidzie
II konroler zbierałby tylko dane z licznika energii elektrycznej (zliczająca "mignięcia" diody w liczniku przez fotorezystor - miga 1000x na 1KWh) i wysyłałby dane do "mastera"
III kontroler sterowałby ręcznie pompą CWU (przycisk bezprzewodowy w kuchni który załączałby recyrkulację wody na zadany okres czasu, np. 30 minut)
IV kontroler sterowałby nawadnianiem (to w przyszłości - standardowe przekaźniki na 24VAC)
Właśnie sprzedałem swoje arduino i mam parę pytań:
czy wybrać opcję najtańszą i zrobić samemu "standalone" arduino?
http://arduino.cc/en/Main/Standaloneoczywiście na płytce stykowej zrobiłbym prototyp, finalny produkt powstałby na zwykłym PCB
Kupiłbym luzem jakieś atmegi w obudowach DIP: 8A, 328P i może 644P lub 1284p (mają dużo wejść-wyjść)
do tego troszkę drobnicy i byłoby OK. Mógłbym programować jako arduino które znam, lub przerobić książkę Mirka i nauczyć się czystego C.
Arduino ma ten duży plus dla mnie, że jest ogromna rzesza ludzi znających system i łatwo o wsparcie.
Przy okazji pytanie do SunRiver:
Na stronie czytam:
"Już niedługo pojawi się następca serii 1.xx i 2.xx oznaczony kodowo numerkiem 4.00, nowością będzie to iż płytka będzie wyposażona w dwie podstawki DIP28 i DIP40 co umożliwi używanie mikrokontrolerów w obudowach DIP28 czyli ATMega 8/48/88/168/328 oraz DIP40 czyli ATMega 16/32/324/644"
Czy tą płytkę można kupić gotową czy jest gdzieś schemat i wsad (ew. czy wsad pasuje z arduino)
Czy może spróbować jakieś ARM'y? One cenowo wypadają dużo lepiej (42zł za kompletną płytkę STM32VL Discovery z tego co wiem, to programuje ją się przez usb) w stosunku do AVR, tylko czy mi jest potrzebna aż taka wydajność?
Ale może obsługa transmisji bezprzewodowej i paru czujników nie byłaby takim trudnym zadaniem.
Patrzyłem wstępnie na stronie
http://www.Sunduino.pl na STM32VL Discovery na kurs programowania i jest OK.
Może łatwiej byłoby skorzystać ze środowiska mbed, ale nie podoba mi się programowanie w chmurze (nie chciałbym, aby ktoś miał wgląd w mój kod)
Czy może coś z LPCXpresso Texas Instruments? Z konfiguracją eclipse poradziłbym sobie, ew. używałbym środowiska Code-Red.
W sumie przyszłościowo wolałbym nauczyć się 32-bitowców, ale może porywam się armatą na muchę.
Z góry dziękuję za wszystkie sugestie i odpowiedzi.