Ads_700x200

sobota, 13 lipca 2013

Ethernet Gate - Bluetooth, przekaźniki itp

Witam, 

Postanowiłem zbudować prosty modulik działający w oparciu o Ethernet i Bluetooth. Na pokładzie posiada dwa przekaźniki. Do gniazdka ISP można podłączać sobie także czujniki temperatury 1wire np DS18B20, DS1820 czy DS18S20 (dowolny). Tego typu moduł używam sobie na co dzień do wielu zastosowań, od zdalnego włączania/wyłączania komputera, do pomiarów temperatury czy też do sterowania w dowolną stronę przy pomocy Bluetooth'a. Mogę np z domciu przez internet dostać się do firmy do takiego modułu i za pomocą własnej aplikacyjki na PC wysterować jakieś urządzenia, które posiadają akurat interfejst Bluetooth. Przykład poniżej - urządzonko do reklamy i informacji o tym co dzieje się u mojej małżonki w firmie, np że "dzisiaj będzie czynne od późniejszej godziny" Po prostu - samą reklamę można ustawiać przez BT ale wkurzało mnie, że jeśli byłem jeszcze w domu a zmieniały się plany to nie było jak wyświetlić nowej informacji dla klienta - teraz jest to możliwe. 


W innym przypadku taki moduł pracuje w ogródku gdzie mierzy spokojnie temperaturki , włącza/wyłącza oświetlenie ogrodowe czy cokolwiek co mi jeszcze przychodzi do głowy. 



Do budowy całości użyłem gotowego moduliku Link 
do którego jest biblioteka w Eaglu i bardzo fajnie się go używa do tworzenia nowych układów. Zresztą dzięki temu że można go łatwo rozmontować to też i szybko płytkę bazową można zaadaptować w razie czego do innych celów. To że moduły takie występują w eagle jako elementy biblioteczne, szalenie ułatwia pracę i projektowanie własnych układów. Poniżej widok elementów bibliotecznych zarówno na schemacie jak i na PCB:




Oczywiście z przyjemnością stosuję mały pseudo wynalazek, że moduł karty sieciowej włączam do płytki głównej poprzez złącze ISP a samo złącze siedzi na karcie więc programowanie i testowanie w układzie nie jest w żaden sposób utrudnione.... bardzo fajnie się z tym pracuje. 



tutaj na fotkach widać moduł BTM-112 którego używam do testów tylko bo w rzeczywistości zdecydowanie lepiej zachowuje się ATB-BTM-222 z dużo większym zasięgiem. Tyle że nie chodzi o sam duży zasięg - ale nawet przy mniejszych odległościach lepiej i bardziej bezproblemowo działa niż urządzenia BT class2 czyli z zasięgiem do 10m. 





Całość pełni rolę sterownika wręcz uniwersalnego do prostych zastosowań. A modułowa budowa pozwala na zagospodarowanie ponowne części jeśli w pewnym momencie dana funkcjonalność staje się nie potrzebna a przychodzi pomysł żeby coś wykonać w nieco inny sposób.... 

Zwróćcie uwagę na fakt, że moduł ATB-Ethernet pięknie wpina się w gniazdo ISP na własnej PCB, ale żeby można było programować procka bez wypinania modułu to zawsze można skorzystać z gniazda ISP właśnie na module ethernetowym (taka przelotka). Świetnie sprawdza się to w praktce, przy tworzeniu urządzeń, solidna konstrukcja a tym bardziej, że do pobrania jest ze strony Atnel LINK biblioteka modułu do EAGLE!



Oprogramowanie piszę zawsze w języku C . Polecam tu przykłady oraz stosik TCP ze stronki www.tuxgraphics.com Natomiast podstawowe przykłady oprogramowania takiego modułu znajdziecie oczywiście w książce:


Jako ciekawostkę dodam na końcu informację, że w jednej z firm w Polsce pracuje już od dawna taki moduł jak tu w opisie do sterowania (zamykaniem/otwieraniem) szlabanów wjazdowych na teren firmy. Pracą modułów zarządza się za pomocą niewielkiej aplikacji na PC, którą napisałem pod Windows. Aplikacja ta dodatkowo pokazuje w oknie programu obraz z kamery internetowej przedstawiającej widok miejsca gdzie są szlabany, tak aby każdy operator (a zaznaczam jest ich wielu) mógł widzieć kto wjeżdża lub wyjeżdża. Generalnie w firmie chyba kilkanaście osób ma zainstalowaną tą aplikację (w gmachu biurowca), i jak przez okno ktoś widzi nadjeżdżający pojazd, często swojego klienta to go może zdalnie wpuścić lub wypuścić ;) Poniżej zrzuty ekranu z aplikacji




Oczywiście za pomocą ATB-BTM-222 można przy udziale programu MkBootloader zdalnie bezprzewodowo podmieniać wsad w mikrokontrolerze. Chociaż ostatnio już bardzo dawno nie było takiej potrzeby ;)

;)

21 komentarzy:

  1. No nieźle;) Rozumiem, że komunikacja ze szlabanem odbywa się za pomocą UDP? A czy przypadkiem ten schemat nie był używane do którejś części kursu Eaglea? :)

    OdpowiedzUsuń
    Odpowiedzi
    1. Dokładnie całość komunikacji za pomocą protokołu UDP, żadnych tam zabaw z serwerami http ;) ...

      Być może ... tak chyba właśnie tą płytką PCB bawiłem się w którymś odcinku Eagla ;) racja.

      Usuń
  2. Firma to Came na annopolu ;P

    OdpowiedzUsuń
    Odpowiedzi
    1. Nie nie - ja akurat nie mam zdjęcia z tej firmy - nie mam dostępu do ich kamer i sprzętu - więc tylko tak wkleiłem coś pierwszego lepszego z internetu ;)

      a tu proszę ktoś rozpoznał wklejone zdjęcie. ;)

      Usuń
    2. A jak wgląda cenowo wartość takiego szlabanu kupujesz to czy dana firma posiada swoje

      Usuń
    3. Nie do końca rozumiem o co pytasz ? Ja tworzyłem sterownik na zlecenie do jakichś szlabanów, które w tej firmie już sobie stały ... a chodziło o to aby móc je kontrolować także zdalnie ;) Więc ja nic nie wiem na temat szlabanów

      Usuń
  3. OK ta odpowiedzi mi wystarczy

    OdpowiedzUsuń
  4. Jaki jest spadek napięcia na waszym module bt?? Od jakiego napięcia poprawnie on działa? Tak zerkałem do sklepu i tam są bufory, to vcc musiałoby wynosić przynajmniej 4.5 , gdy zworka jest na 5V, inaczej nie sparuje tak? Proszę o odpowiedź.

    OdpowiedzUsuń
    Odpowiedzi
    1. moduły mogą pracować zarówno z napięciem +5V jak i 3,3V

      Usuń
    2. Rozumiem, ale gdy oprocz bt mam podlaczone inne scalaki?, a spadek nap na tym module powiedzmy bedzie wynosic 0,7v a inny scalak potrzebuje 4,5 to juz nie bedzie poprawnie działać.

      Usuń
    3. Panie kochany o jakim ty spadku napięcia na module mówisz ? kompletnie ciebie nie rozumiem. Sorki ale to jakiś nonsens ... Toż wg tego co piszesz to co ? to ten moduł może działać tylko wtedy gdy jest sam w układzie ? to po co byłoby go podłączać - no zastanów się chwilę. Toż nawet w tym artykule widzisz że w układzie są inne scalaki jak np procek, jak układ ENC28J60.

      Każdy UKŁAD pobiera jakiś prąd, w zależności od wartości pobieranego prądu wiadomo że może być problem z utrzymaniem napięcia zasilania ale panie kochany - z czego to wynika ? no z czego ?

      1. Z wydajności prądowej źródła zasilania jakie zapewnisz w układzie
      2. Z tego jak zaprojektujesz PCB szczególnie ścieżki zasilania

      bo jeśli masz w nocie PDF modułu że pobiera w szczycie prąd do 100 mA a ty zastosujesz stabilizator napięcia o wydajności prądowej 80 mA albo nawet i 100 mA to co ? spodziewasz się że nie będzie problemu z napięciem ?

      Jeśli ty źle zaprojektujesz ścieżki zasilania na PCB co jest bardzo częstym błędem początkujących, nie zastosujesz filtracji zasilania odpowiedniej to NAWET gdy dasz stabilizator i wydajne źródło zasilania choćby 1 A !!! to i tak nadal możesz mieć problemy

      Więc jeszcze raz się ciebie pytam wiesz jak to działa czy nie za bardzo ? Bo twoje pytanie wskazuje że coś podchodzisz do tematu okrakiem lub od tyłu :( ....

      Reasumując .... Jeśli zapewnisz wydajność prądową odpowiednią dla twojego całego układu (a jaką? to ja mam wiedzieć ? skąd ja wiem ile twój układ bez modułu BTM będzie pobierał prądu ? ale ok - żebyś coś z tego skorzystał to załóżmy - no załóżmy że twój układ bez modułu BTM miałby pobierać 150 mA tak?)

      z noty PDF modułu wiemy np że pobierać może max 100 mA - to co to znaczy dla ciebie ?

      1. że musisz zapewnić wydajność prądową swojego źródła zasilania na jakim poziomie ? 150 mA + 100 mA czyli 250 mA ? .... O nie nie ... trzeba dać jeszcze zapas czyli bezpiecznie byłoby zapewnić zasilanie z wydajnością prądową MNIMUM ze 300 mA ale to w zasadzie też za mało - optymalnie byłoby 500 mA i to wziąwszy pod uwagę i stabilizator liniowy i przetwornicę jakąś, szczególnie przetwornicę bo trzeba wziąć wtedy pod uwagę jej sprawność!

      Do tego pamiętaj - prawidłowe projektowanie zasilania na PCB. Jak do tego podejść ? ... obejrzyj sobie proszę ten kurs:

      http://atnel.pl/kurs-cadsoft-eagle.html

      to z niego już sporo się dowiesz

      teraz jaśniej ?

      Usuń
    4. Rozumiem to co Pan napisał. Źródło energii elektrycznej w moim przypadku jest zasilacz lab. + filtry. Podlaczam modul, mierze napiecia i z 5 v spada mi do 4,3 po podłączenie co bardzo mnie to dziwi, no ale cóż posprawdzam jeszcze połączenia

      Usuń
    5. No to masz KLASYCZNY przykład - złego zasilania - ja tam zasilam to +5V i w układzie jest +5V ... masz coś mocno źle zrobione

      Usuń
  5. Aaaa dziękuję, że mnie Pan naprowadził, okazuje się że przewody które stosujemy na pracowni są za cienkie. Długo szukałem przyczyny, wydawało mi sie, że są o wiele grubsze ale poprzez izolacje nie mogłem tego sprawdzić, w końcu zmieniłem na krodylki i działa. Znalezienie przyczyny zajęło mi kilka godzin, próbowałem rozmaitych kombinacji. , a wylozylem sie na przewodzie...

    OdpowiedzUsuń
    Odpowiedzi
    1. Dlatego pamiętaj na przyszłość - taki spadek napięcia to niestety zgodnie z prawem Ohma ;) zbyt duża rezystancja (w tym przypadku przewodów) i to na nich był spadek napięcia.

      Nie można się doszukiwać spadku napięcia na jakimś elemencie całego odbiornika ....

      Usuń
  6. Dzień dobry,
    czy mógłby Pan zdradzić przy użyciu jakiego programu stworzył Pan tą "niewielką aplikację pod Windows"?

    Pozdrawiam, Adam.

    OdpowiedzUsuń
    Odpowiedzi
    1. Ale co tu zdradzać, wszyscy którzy mnie znają wiedzą, że ja od lat programuję na PC w Delphi (Pascal) ;)

      Usuń
    2. A mogę się dowiedzieć czegoś więcej na temat tworzenia takich aplikacji? Może jakiś kolejny ciekawy poradnik :)?

      Usuń
    3. No tak kiedyś myślałem o poradniku na temat programowania w Delphi ale niestety ten język wymiera jakby, środowisko jest płatne i to słono - więc raczej jednak postanowiłem odejść od tego pomysłu :(

      Usuń
  7. Witam!

    Mam możliwość wykonania podobnego do Pana projektu tylko bez programu na PC. Dla mnie 300zł nie chodzi piechotą. Czy mógłby Pan podać widełki za jakie można wykonać taki projekt?

    Pozdrawiam

    OdpowiedzUsuń