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

KURS HOME ASSISTANT

Chcesz zautomatyzować swój dom bez skomplikowanego kodowania?
Zastanawiasz się nad wyborem sprzętu, oprogramowania i aplikacji?
Od czego zacząć przygodę z HA? Co będzie najlepsze na start?

Nasz kurs Home Assistant nauczy Cię krok po kroku, jak łatwo zautomatyzować swój dom i oszczędzić na rachunkach za prąd i ogrzewanie. Bez chmur, bez zbędnych abonamentów. Twoja przygoda z Home Assistant zaczyna się tutaj!

↓↓↓

    Szanujemy Twoją prywatność. Możesz wypisać się w dowolnym momencie.




    Teraz jest 11 lip 2025, o 01:34


    Strefa czasowa: UTC + 1





    Utwórz nowy wątek Odpowiedz w wątku  [ Posty: 17 ] 
    Autor Wiadomość
    PostNapisane: 9 mar 2016, o 19:13 
    Offline
    Użytkownik

    Dołączył(a): 01 sie 2015
    Posty: 40
    Pomógł: 0

    Witam!
    Załóżmy że w domu mam ruter który udostępnia połączenie internetowe min. dla moduł WIFI232-T. W telefonie zaś mam połączenie z internetem dzięki Areo2 sim. Czy jest możliwość komunikacji tych dwóch urządzeń w podobny sposób do przedstawionego w poradniku "testera UDP"? Jakie zmiany należy wprowadzić w konfiguracji modułu WIFI oraz w aplikacji B4A aby komunikowały się z dwóch niezależnych źródeł internetu?



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 9 mar 2016, o 19:30 
    Offline
    Użytkownik

    Dołączył(a): 04 cze 2013
    Posty: 517
    Pomógł: 26

    Kolego musisz u siebie w domu przekierować port na routerze. Aby mieć dostęp z zewnątrz. Jeśli w domu łączysz sie z modułem za pomocą ip lokalnego np 192.168.10.1 port 8899 to jeśli przekierujesz port 8899 to z zewnątrz łączysz się podając twój zewnętrzny adres ip i ten port czyli 8899

    _________________
    Przewodnik|Sterownik akwariowy



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 9 mar 2016, o 19:35 
    Offline
    Moderator
    Avatar użytkownika

    Dołączył(a): 03 paź 2011
    Posty: 27415
    Lokalizacja: Szczecin
    Pomógł: 1043

    Tak jak pisze kolega wyżej, w samym module nic nie trzeba konfigurować, za to musisz sobie poczytać o konfiguracji routerów i internetu we własnej sieci ... Zobacz:

    http://wifi232.atnel.pl:8888/

    tu właśnie działa to na ATNEL-WIFI232-T który kompletnie nie wie że dobierasz się do niego spoza naszej firmy ;)

    _________________
    zapraszam na blog: http://www.mirekk36.blogspot.com (mój nick Skype: mirekk36 ) [ obejrzyj Kurs EAGLE ] [ mój kanał YT TV www.youtube.com/mirekk36 ]



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 9 mar 2016, o 20:00 
    Offline
    Użytkownik

    Dołączył(a): 01 sie 2015
    Posty: 40
    Pomógł: 0

    Tylko że w podanym przez Pana linku moduł WIFI działa w trybie serwera a mi zależy żeby działał tak jak w poradniku o UDP testerze- piszę aplikację na telefon i po prostu np: buttonami wysyłam jakieś polecenia do procka ;)

    Czy mógłbym prosić o jakąś podpowiedź np. w jakich zakładkach w ustawieniach rutera szukać tego przekierowania portu(mam ruter TL-MR3220)
    Jeśli chodzi o moduł WIFI to rozumiem że ustawienia pozostają takie same?
    Obrazek
    W aplikacji B4A muszę zmienić adres IP na zewnętrzny modemu/rutera i pamiętać o tym porcie, tak?



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 9 mar 2016, o 21:13 
    Offline
    Użytkownik
    Avatar użytkownika

    Dołączył(a): 13 cze 2012
    Posty: 76
    Lokalizacja: Węgorzewo
    Pomógł: 1

    Jeżeli chcesz się łączyć przez operatora komórkowego, to raczej zapomnij o dwustronnej komunikacji, chyba że operator przydziela ci publiczny IP. Już to przerabiałem, działa tylko w jedną stronę.



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 9 mar 2016, o 21:51 
    Offline
    Użytkownik
    Avatar użytkownika

    Dołączył(a): 23 wrz 2013
    Posty: 58
    Zbananowany użytkownik

    Pomógł: 10

    Szukaj mniej więcej czegoś takiego:

    Obrazek



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 9 mar 2016, o 22:24 
    Offline
    Użytkownik

    Dołączył(a): 01 sie 2015
    Posty: 40
    Pomógł: 0

    Z tym operatorem to faktycznie może być problem, bo za każdym razem jak odłączę modem/ruter od zasilania to zmienia mi się zewn. IP( w domu mam internet z Play a tam nawet za dopłatą nie udzielą stałego adresu IP).

    Ogólnie rzecz biorąc chciałem zrobić proste sterowanie urządzeń elektronicznych w domu przez internet za pomocą aplikacji na androida. Pomysł z serwerem na AVR byłby idealny gdyby nie to że chciałbym wykorzystać rozpoznawanie komend głosowych które tak łatwo zrobić w B4A.

    Mam więc taki pomysł aby zrobić:
    1) jeden układ-> serwer na jednym module wifi + AVR na którym będzie strona html do której będę miał dostęp z "zewnątrz" (sterowanie urządzeniami z poziomu interfejsu html i w jakiś sposób sprawdzać jaki mam aktualny IP)
    2) drugi układ-> "terminal" na drugim module wifi + AVR do którego będę miał dostęp z aplikacji gdy będę w zasięgu sieci domowej( tu już będzie można sterować głosem)
    3) połączyć oba układy np. przez UART bo w zasadzie będą sterować tymi samymi przekaźnikami itp.

    Czy da się to zrobić na jednym układzie wifi+AVR aby było i sterowanie głosowe i dostęp z sieci zewnętrznej?



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 9 mar 2016, o 22:35 
    Offline
    Użytkownik
    Avatar użytkownika

    Dołączył(a): 23 wrz 2013
    Posty: 58
    Zbananowany użytkownik

    Pomógł: 10

    Zważywszy na to że korzystasz z usług operatora Play, możesz zapomnieć o dostępie z zewnątrz. I problemem nie jest tu brak stałego adresu IP bo to można obejść korzystając z DDNS. Problem w tym że nie dostajesz publicznego adresu IP tylko jesteś za NATem. Praktycznie ten problem dotyczy wszystkich operatorów komórkowych, oczywiście za wyjątkiem wykupienia publicznego adresu IP ale nie orientuję się czy któryś operator to oferuje.

    Nie ma również znaczenia czy chcesz wystawić serwer http czy łączyć się przez aplikację. Niestety w tym przypadku nie będzie to możliwe.

    Jedyne rozwiązanie to żeby moduł wi-fi inicjował połączenie.



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 9 mar 2016, o 23:25 
    Offline
    Użytkownik

    Dołączył(a): 01 sie 2015
    Posty: 40
    Pomógł: 0

    Czyli jest źle i źle...

    A co to znaczy żeby moduł wifi inicjował połączenie? Dopiero zaczynam przygodę z sieciami i jeszcze wielu rzeczy nie rozumiem więc bardzo proszę o wyjaśnienie, tym bardziej, że jest to jedyne rozwiązanie



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 10 mar 2016, o 06:32 
    Offline
    Użytkownik
    Avatar użytkownika

    Dołączył(a): 23 wrz 2013
    Posty: 58
    Zbananowany użytkownik

    Pomógł: 10

    Stawiasz serwer gdzieś w internecie żeby mieć do niego dostęp z zewnątrz. Łączyć się do serwera modułem Wi-Fi oraz telefonem.



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 10 mar 2016, o 13:48 
    Offline
    Użytkownik

    Dołączył(a): 01 sie 2015
    Posty: 40
    Pomógł: 0

    Czyli jeśli wykupie sobie serwer i domene w jakimś hostingu to będzie możliwość połączenia aplikacja B4A- moduł wifi?



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 10 mar 2016, o 14:07 
    Offline
    Użytkownik

    Dołączył(a): 20 lip 2015
    Posty: 83
    Pomógł: 6

    Sucyn napisał(a):
    Czyli jeśli wykupie sobie serwer i domene w jakimś hostingu to będzie możliwość połączenia aplikacja B4A- moduł wifi?


    tak, tylko wtedy bedziesz musial zrobic tak, ze modul wifi wysyla dane na hosting, tam je zapisujesz i ewentualnie czytasz przez aplikacje b4a



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 10 mar 2016, o 14:46 
    Offline
    Użytkownik

    Dołączył(a): 01 sie 2015
    Posty: 40
    Pomógł: 0

    To znaczy że musze mieć na serwerze wgraną stronę http np. w html'u i w niej dokonywać zmian za pomocą modułu wifi i/lub aplikacji?



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 10 mar 2016, o 15:05 
    Offline
    Użytkownik

    Dołączył(a): 20 lip 2015
    Posty: 83
    Pomógł: 6

    Sucyn napisał(a):
    To znaczy że musze mieć na serwerze wgraną stronę http np. w html'u i w niej dokonywać zmian za pomocą modułu wifi i/lub aplikacji?

    W htmlu samym tego nie zrobisz.
    Możesz mieć skrypt w php ktory będzie Twoim lacznikiem pomiedzy telefonem a aplikacja. (Mirek zrobil nawet o tym poradnik przy wykorzystaniu wifi)

    przebieg "akcji"
    np.
    1. Moduł wyśle dane do skryptu php, ten je zapisze w bazie, ewentualnie da odpowiedź, którą wifi sobie przeczyta
    2. aplikacja wchodzi na odpowiedni adres, gdzie skrypt wystawi te dane, aplikacja je zczyta i zrobisz z nimi co chcesz

    Alternatywny przebieg wydarzen moze byc tez taki, ze z aplikacji cos wyslesz, skrypt to zapisze do bazy, a jak modul zapyta o dane to wtedy w odpowiedzi skrypt php zwroci mu informacje przeslane z aplikacji.

    Cos takiego mnieje wiecej.



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 10 mar 2016, o 18:29 
    Offline
    Użytkownik
    Avatar użytkownika

    Dołączył(a): 13 cze 2012
    Posty: 76
    Lokalizacja: Węgorzewo
    Pomógł: 1

    sytuacja nie jest beznadziejna. Mam aplikację, która bez problemu komunikuje się z moim tunerem Tv z każdej sieci, także komórkowej. Z tym że, połączenie jest TCP a nie UDP. Osobiście narazie nie mam czasu nad tym pomyśleć, ale jak widać "da się" :)



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 10 mar 2016, o 20:43 
    Offline
    Użytkownik
    Avatar użytkownika

    Dołączył(a): 23 wrz 2013
    Posty: 58
    Zbananowany użytkownik

    Pomógł: 10

    mario napisał(a):
    sytuacja nie jest beznadziejna. Mam aplikację, która bez problemu komunikuje się z moim tunerem Tv z każdej sieci, także komórkowej. Z tym że, połączenie jest TCP a nie UDP. Osobiście narazie nie mam czasu nad tym pomyśleć, ale jak widać "da się" :)

    Nie ma znaczenia typ protokołu warstwy czwartej (TCP czy UDP). Natomiast "da się" jest z pewnością zrealizowane przez serwer pośredniczący.
    Jak już wcześniej wspominałem korzystając z usług sieci PLAY nie posiadamy publicznego adresu IP na własny użytek ponieważ sieć korzysta z translacji adresów czyli usługi NAT.

    Jedynym rozwiązaniem jest zainicjowanie połączenie z wnętrza sieci aby otworzyć port (w tym przypadku modułu Wi-Fi). Jeżeli już posiadamy taki otwarty port to i owszem wtedy możemy z internetu wysyłać na niego dane przez krótki okres czasu.



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 11 mar 2016, o 18:37 
    Offline
    Użytkownik

    Dołączył(a): 01 sie 2015
    Posty: 40
    Pomógł: 0

    Pytałem się wykładowcy informatyka u mnie na studiach i powiedział że bez php faktycznie się nie obejdzie. No bo czy da się zapisać i odczytać dane na serwer bez użycia odpowiedniego skryptu? Musiałbym chyba tworzyć w aplikacji i na uC gotowe pliki z danymi i je wysyłać na serwer a potem jeszcze w razie potrzeby umieć je odebrać, analizować...

    Znalazłem poradnik P. Mirka "WIFI - CLIENT - WWW/PHP" jeszcze nie oglądałem ale po tytule wnioskuje że chyba nie będzie tam wyjaśnień o aplikacji na androida.
    Czy jeśli uda mi się przerobić materiał z tego poradnika to będę mógł liczyć na Waszą pomoc z aplikacją B4A?

    ------------------------ [ Dodano po: wczoraj, o 17:37 ]

    Obejrzałem poradnik P. Mirka i poczytałem o skryptach php i wiem już mniej/więcej jak można ustawić jakąś zmienną w skrypcie na serwerze i potem odczytać jej zawartość za pomocą modułu wifi.
    Niestety sprawa mocno komplikuje się jeżeli chodzi o aplikację B4A. Do tej pory do połączenia z internetem używałem biblioteki Network i komponentów UDPSocket i UDPPacket, które chyba działają tylko w protokole UDP a teraz będę potrzebował TCP.

    Czy w B4A istnieją funkcje/obiekty/komponenty które pozwolą na stworzenie podobnego mechanizmu komunikacyjnego TCP jaki jest przedstawiony w poradniku P Mirka "WIFI - CLIENT - WWW/PHP"?

    ------------------------ [ Dodano po: wczoraj, o 17:37 ]

    Na podstawie tego poradnika https://www.b4x.com/android/forum/threa ... rial.7001/ napisałem taką aplikację:
    Składnia: [ Pobierz ] [ Ukryj ] [ Zaznacz wszystko ]
    język basic4gl
    Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.


    W designerze stworzyłem EditText1 na całej powierzchni wyświetlacza. Miały tu trafiać stringi poszczególnych linii odebranych ze strony http://aktualnyczas.pl/. Niestety ten program działa chyba inaczej bo po włączeniu aplikacji czekam chwilkę i pojawia się białe tło i nic poza tym.

    Czy na podstawie tego kodu mogę odczytywać zawartość strony internetowej podanej w funkcji "Socket1.Connect("aktualnyczas.pl" , 80, 100)"?

    ------------------------ [ Dodano po: wczoraj, o 17:37 ]

    Zmieniłem nieco event połączenia ze stroną i opisałem po kolei co się w tym evencie dzieje. Proszę aby ktoś sprawdził czy dobrze rozumiem działanie kodu:
    Składnia: [ Pobierz ] [ Ukryj ] [ Zaznacz wszystko ]
    język basic4gl
    Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.


    Teraz aplikacja zwraca mi w EditText1 wartość "null", czyli chyba prawidłowo łączy się z podaną przeze mnie stroną ale chyba w niewłaściwy sposób próbuję się dobrać do strumienia przychodzącego...
    Obrazek

    ------------------------ [ Dodano po: 11 mar 2016, o 17:37 ]

    Chyba się udało!
    Mam kod który wyświetla mi zawartość przykładowej strony internetowej (http://aktualnyczas.pl/) w oknie EditText1 na telefonie.

    Obrazek

    Tylko czy na pewno tego chciałem????
    Aplikacja ta pozwala mi się dobrać do budowy takiej strony a mi chyba bardziej potrzeba skorzystać z tego co ona wyświetla w przeglądarce, bo np w przeglądarce wyświetla aktualny czas i datę a w aplikacji tylko skrypty i funkcje które pozwalają ten czas obliczyć.
    Oto kod:
    Składnia: [ Pobierz ] [ Ukryj ] [ Zaznacz wszystko ]
    język basic4gl
    Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.


    ------------------------ [ Dodano po: 11 mar 2016, o 17:37 ]

    No więc problem chyba rozwiązany. Założyłem serwer na jednym z darmowych hostingów. Napisałem drobny skrypt w php przetwarzający dane nadesłane w linku url mojej strony. Napisałem też aplikację która wysyłając zapytanie do strony wysyła również dane w postaci zmiennych w linku url. Aplikacja po odebraniu źródła strony wyszukuje w nim konkretne dane rozpoczynające i kończące się zadanymi znacznikami "#". Rezultat wyświetlany w postaci stringów w EditText. Teraz tylko potrenować z bazą danych MSQL i łączność globalna będzie działać na przekór wszelkim trudnościom!!! (ze strony operatorów internetowych, zewnętrznych stałych adresów ip ........ ) :D
    Dziękuję wszystkim za pomoc!!!



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

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