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 w 2025? 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 12 kwi 2025, o 16:08


    Strefa czasowa: UTC + 1





    Utwórz nowy wątek Odpowiedz w wątku  [ Posty: 10 ] 
    Autor Wiadomość
     Tytuł: Zakłócenia
    PostNapisane: 12 sty 2016, o 20:11 
    Offline
    Nowy

    Dołączył(a): 24 lip 2015
    Posty: 19
    Pomógł: 0

    Witam
    Zbudowałem układ z arduino, zasilany z zasilacza impulsowego (samo Arduino z USB). Sterowany jest z komputera z programu stworzonego w VC#, jednak co jakiś czas wysłane dane mają zupełnie złe wartości. Jakie najczęściej są przyczyny takich zakłóceń transmisji? Jak można temu zaradzić?



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 12 sty 2016, o 20:21 
    Offline
    Użytkownik
    Avatar użytkownika

    Dołączył(a): 11 mar 2014
    Posty: 1475
    Pomógł: 167

    Pewnie do komunikacji korzystasz z RS232. Tak?
    Jaką masz ustawioną szybkość transmisji a jaki masz użyte taktowanie procesora? Czy jest on wartości "przyjaznej dla RS232"? Jak nie, to czy prędkość dobrana jest z uwzględnieniem max. błędu szybkość <2%?

    --
    Pozdrawiam,
    Robert



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 12 sty 2016, o 20:24 
    Offline
    Użytkownik

    Dołączył(a): 12 sty 2015
    Posty: 80
    Lokalizacja: Grudziądz
    Pomógł: 2

    @rskup - powiedział, że Arduino (16mhz)...
    Spróbuj na niskim Serialu (4800, 1200, 300) i powiedz, czy coś się zmieniło.

    Czy Arduino jest oryginalne? Po lewej powinna być Atmega16u2, jeżeli masz tam CH340G to masz odpowiedź, czy można temu zaradzić.

    --edit

    Doczytałem, że masz swoją aplikację. Podejrzyj w PuTTY (terminal), jakie są wysyłane wartości.



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 12 sty 2016, o 20:26 
    Offline
    Nowy

    Dołączył(a): 24 lip 2015
    Posty: 19
    Pomógł: 0

    Arduino ma USB, więc przez USB. Prędkość 9600, taktowanie standardowe Arduino UNO, nie mam pojęcia jakie, używam Arduino IDE. Siedzi ATmega328P. Powinno być oryginalne



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 12 sty 2016, o 20:31 
    Offline
    Użytkownik
    Avatar użytkownika

    Dołączył(a): 11 mar 2014
    Posty: 1475
    Pomógł: 167

    Mając zegar 16MHz nie mamy zegara "przyjaznego dla RS232", bo nie da się ustawić dokładnych wartości standardowych prędkości RS232. Dlatego musi zostać wybrana prędkość dająca błąd mniejszy od 2%. W datasheetcie do procesora są takie tabele od razu pokazujące jak to wygląda dla różnych zegarów i różnych prędkości transmisji RS232:
    Obrazek

    --
    Pozdrawiam,
    Robert

    [Dodano po 2 minutach]
    Dla prędkości 9600 przy zegarze 16MHz błąd jest 0.2%, więc jest całkowicie akceptowalny i nie powinien być problemem.



    Ostatnio edytowano 12 sty 2016, o 20:34 przez rskup, łącznie edytowano 1 raz

    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 12 sty 2016, o 20:32 
    Offline
    Użytkownik

    Dołączył(a): 12 sty 2015
    Posty: 80
    Lokalizacja: Grudziądz
    Pomógł: 2

    THEGITMAN napisał(a):
    ... Po lewej powinna być Atmega16u2, jeżeli masz tam CH340G to masz odpowiedź...



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 12 sty 2016, o 21:45 
    Offline
    Nowy

    Dołączył(a): 24 lip 2015
    Posty: 19
    Pomógł: 0

    2400, SERIAL_8O2 jest jeszcze gorzej chyba niż 9600.

    @THEGITMAN nie rozumiem po co ten cytat



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 12 sty 2016, o 23:04 
    Offline
    Użytkownik
    Avatar użytkownika

    Dołączył(a): 11 mar 2014
    Posty: 1475
    Pomógł: 167

    Czy na programie na PC także masz ustawione parity odd?
    Typowe ustawienia to partitu none (8N1).

    --
    Pozdrawiam,
    Robert



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 13 sty 2016, o 12:53 
    Offline
    Nowy

    Dołączył(a): 24 lip 2015
    Posty: 19
    Pomógł: 0

    Tak, próbowałem O, E, i bez czyli N



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 13 sty 2016, o 13:00 
    Offline
    Użytkownik

    Dołączył(a): 25 lip 2013
    Posty: 2595
    Pomógł: 128

    Wklej przykladowe prawidłowe wartości oraz te błędne. A potem poprzygladaj się różnicom (popatrz np. które bity sie różnią w bajtach ktore przychodzą po RSie). Dobrze byłoby też poprzygladac się sygnałom na analizatorze logicznym.

    P. S. To ze masz usb nie oznacza, że masz oryginalne Arduino. Ch340 to tez konwerter usb-rs ttl (jak ftdi). Po drugie cena może dużo powiedzieć wraz z jakością lutów.
    Sent from my mobile.



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

    Strefa czasowa: UTC + 1


    Kto przegląda forum

    Użytkownicy przeglądający ten dział: Brak zidentyfikowanych użytkowników i 0 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:  
    Sitemap
    Technologię dostarcza phpBB® Forum Software © phpBB Group phpBB3.PL
    phpBB SEO