Również nie jestem Bascomowcem ale być może moje uwagi okażą się cenne. Po instrukcji Print "{008}5r", dane jest 10 ms opóźnienia. W tym czasie slave mógł już przesłać wszystkie swoje dane - a master jeszcze nie rozpoczął nasłuchu. Inną sprawą jest to, że 100 obiegów pętli w procedurze Odczyt_zn może trwać krócej niż transmisja jednego znaku przez UART...
Jakby ktoś szukał gotowego rozwiązania wklejam to bazujące na obsłudze UART w przerwaniu zamiast Input. W pełni działający kdo poniżej: [syntax=basic4gl] $regfile = "m32def.DAT" $crystal = 8000000 $baud = 4800 Nadawanie Alias Portd.7 Config Nadawanie = Output Enable Interrupts Enable Urxc On Urxc Odbierz Dim Kod_znaku As Byte Dim Tekst As String * 1...
Przejściówki wnoszą opóźnienie, w pewnych warunkach absurdalnie duże. Dane na UART przychodzą bajt po bajcie, ale nie można ich bajt po bajcie wysyłać przez USB - maksymalna przepustowość USB wyniosłaby wtedy 1000 B/s. Przejściówka ma bufor danych od kilkudziesięciu B do kilku kB i czeka z przesłaniem danych na jego wypełnienie lub inne kryterium, np....
Jednakże obawiam się, że w przypadku jakiś pojedynczych błędów transmisja całkowicie poleci. Obsluge time-outów i innych błedów i tak musisz zrobic. Niestety obługa sytuacji awaryjnych często jest bardziej pracochłonna, wieksza i bardziej skomplikowna niz nazwijmy to "głowny" kod
Wygląda sensownie, tylko R7 ma za niską wartość. Opóźnienie wprowadzane przez R7 C1 powinno być na tyle długie żeby nadajnik nie został wyłączony podczas transmisji.
Zobacz na tą notę aplikacyjną, tam są opisane metody zarządzania linią nadawania i odbioru. [url=www.st.com/resource/en/application_... W sytuacji wykorzystywania przerwania pustego bufora i tak trzeba odliczyć czas do przełączenia. Specyfikacja standardu wymaga, żeby przełączenie nastąpiło w połowie czasu wysyłki jednego bitu po...
(at)Wojciech Sprawdziłem, 9600. Może opóźnienie gdzieś wstawić....
Witam 100 siłowników można sterować za pomocą interfejsu RS485, jeśli opóźnienia 10us nie są przeszkodą.
Witam. Zbudowałem 2 proste układy w celu przetestowania interface'u RS485. ATmega32 + 3 przyciski + wyświetlacz 7-segmentowy + MAX485. R0 układu MAX485 do RxD, DI do TxD, DE i /RE połączone razem do PB0. Wyjścia A połączone ze sobą, B również, między A i B po obu stronach rezystor 100ohm, z jednej strony rezystory polaryzujące 560ohm. Układ ma działać...
I2C wymaga, by każde urządzenie było w stanie odpowiednio szybko zmienić stan linii SDA - czyli rozładować pojemność kabla; trzeba też, by mogła się ona wystarczająco szybko naładować poprzez opornik pull-up. Z EEPROM-em, BMP280, PCF8574 łączyłem się przez I2C i nie przypominam sobie, by przy wolnym SCK były z nimi problemy. PCA9600 nie znam. Natomiast...
Pomiędzy zmianą funkcji na nadajnik a wysłaniem danej dodaj opóźnienie ok 1ms tak samo pomiędzy nadawaniem a przełączaniem na odbiornik. PORTD |= _BV(4); //nadawanie _delay_ms(1) USARTWriteChar('b'); //umownie b to adres modułu _delay_ms(1) PORTD &=~_BV(4);//RS485 - odbior Musisz to zrobić w nadajniku i odbiorniku.
W Tauronie to masz dziś z poprzedniego dnia, z falownika masz na bieżąco, no czasem godzina opóźnienia
Jak wszystko w IT "to zależy" Odległość, krytyczne nieprzekraczalne opóźnienie, przeszkody i kilka więcej pytań. Szeregówki pracują na poziomie bajtu, sieci na poziomie pakietu. Znam instalację, że odejście od RS485 by łamało odbiory, atesty, wymiar prawny i podatkowy. Masz "coś co działa" więc generalna inżynierska odpowiedź brzmi: nie zmieniać. Jeśli...
Standard RS485 przewiduje prace z max 32 urządzeniami... Nie w tym rzecz. Twój dotychczasowy układ na RS232 odsyła dane natychmiast i działa bez żadnego adresowania. To nie działa tak że jak dasz RS485 to Ci to nagle zacznie działać z 32 urządzeniami. Żeby to działało na RS485 potrzebne jest minimalne opóźnienie pomiędzy odbieraniem i nadawaniem (czas...
Czy możliwa jest praca dwóch takich urządzeń w trybie mostu GSM dla RS485? Czyli tak, aby moduły GSM były "niewidoczne" dla urządzeń pracujących na magistrali RS485? Jeśli tak, to ciekawi mnie jak reagowałyby na opóźnienia (GPRS) wprowadzane przez sieć komórkową.
Kolego Rolnik95 jak nie robiłeś nigdy nic na RS485 to ciężko będzie na początek. Pamiętaj że przy RS485 może nadawać maxymalnie jeden kontroler jeśli puścisz z 2 kontrolerów to będziesz miał efekt iloczynu logicznego na drucie. Przy RS485 ważne są też odpowiedzi czyli potwierdzenia otrzymania poprawnej ramki, jest to szczególnie ważne przy dużych odległościach....
Przerobienie gotowego bootloadera w asm => dopisanie sterowania kierunkiem nadawania to 2 minuty roboty + jakieś nieduże opóźnienie... Gotowych bootloaderów w brud.
(at)elpaul Masz błąd w funkcji nadawania. Po zapisaniu UDR czekasz 1 ms, natomiast nadanie danych, przy szybkości 9600 bps trwa 1,14 ms (7+2+1+1), ty masz opóźnienie do dezaktywowania 1 ms, czyli ostatni nadawany bajt będzie zniekształcony. Poza tym lepiej niż robić jakieś opóźnienia poczekać na flagę sygnalizującą opróżnienie rejestru nadajnika.
Procesor to ATMEGA 644P Zrobiłem tak: [syntax=c]while(!(UCSR1A & (1<<TXC1))); UCSR1A|=1<<TXC1; [/syntax] ale dalej giną ostatnie znaki. Jak dołożę opóźnienie 3ms to idzie wszystko.
Rezystory muszą mieć wypadkową rezystancję około 120 Ω. Co daje 390Ω dla każdego rezystora. Nie jest konieczna masa, zegar RC procesora też może być. Należy zwracać uwagę na odczyt błędu ramki (rejestr UCSRA) przed odczytem z UDR. Oczywiście kod CRC jest niezbędny. Topologia gwiazdy, którą przedstawiłeś, raczej nie jest poprawna. Na początek...
A CKDIV8 wyłączyłeś. Nie bardzo rozumie jak Ci działa poprawnie na zegarze zewnętrznym i wewnętrznym. Zewnętrznym to 16MHz a wewnętrznym to 8MHz. Jakim cudem biblioteka liczy poprawnie opóźnienia.
Ostatnio znalazłem taki kontroler: [url=http://www.wobit.com.pl/produkt/105... Co prawda dedykowany jest do sterowania napędami krok/kierunek, ale ma też trochę wejść i wyjść. Przy czym programowanie odbywa się w prostym języku tekstowym coś jaki BASIC i instrukcję wykonywane są z bardzo małymi opóźnieniami, także nie ma...
Działa zawsze, nie ma to wpływu bo tu się robi po prostu dzielnik napięcia (rezystor polaryzujący - terminatory - rezystor polaryzujący). W wersji z tranzystorem bez układu opóźnień nadajnik nadaje tylko 0, na 1 zamiast ją transmitować puszcza linie wolno..
Opis wtyczki DB9M (Siemens S7200) 1 – Ekran (połączony z masą sygnałów TYLKO od strony PLC !) 2 – GND 3 – B (RS485) 7 – +24V (zasilanie od strony PLC) 8 – A (RS485) To co zmontowałeś może nie działać głównie ze względu na czas opóźnienia pomiędzy nadawaniem i odbiorem ("patent" z US4 - NE555). To jest dobrane do pewnej...
Stany wejść jak i wyjść PLC są zapisane w rejestrach. Można przesłać drogą radiową cały rejestr, ew. kilka rejestrów za pomocą portu komunikacyjnego. Piszesz jakiś protokół komunikacyjny lub używasz już gotowego np: Modbus RTU/ASCII. Przesyłanie danych między PLC a kompem drogą radiową prawie niczym nie różni się od przesyłania danych kablem. Należy...
(ESP32-2432S028R) Tego mam, i też drażnią mnie opóźnienia w reakcji. Chyba nad tym DWIN posiedzę. Fabryczne demo działa dość przyzwoicie.
Przedstawione sekwencje nie stanowią zwięzłej całości. Należy traktować je osobno, jako przykładowe. Pisałem o przełączeniu się na odbiór nie przez Spidera tylko przez moduł łączący komputer z magistralą RS485. W moim przypadku był to coś takiego: http://yourduino.com/sunshop//index.php?... Większość modułów używanych do komunikacji...
Niektóre programy nie radzą sobie z konwerterami RS232/RS485 (nie ma znaczenia czy to jest wersja USB, czy nie). Problem leży w przełączaniu pomiędzy nadawaniem a odbiorem danych. Niektóre konwertery używają układów opóźnień, dostosowanych do określonej szybkości transmisji. Inne, np. na FT232 mogą korzystać z linii sprzętowych sterujących transceiverem...
Jaki licznik posiadasz ? Pozyton sLAB z portem RS485. Zdaje się, że nie do kupienia obecnie. Mało popularny. Na podstawie dobrej dokumentacji udało mi się zrobić obsługę jego protokołu. Jest OK, tylko to opóźnienie w odczycie jest nieco irytujące.
Witam Powalczyłem dzisiaj z tym tematem i udało się uruchomić ten falownik po RS-ie i okazało się że konwerter rs232 na rs485 był uszkodzony i zainstalowałem taki prosty można powiedzieć z diodami wskazującymi komunikacje i falownik ruszył. Jednakże nie dokońca jest sukces bo jest taki efekt jakby falownik odbierał polecenia ale nie odsyłał z powrotem...
Dziękuję za szybką odpowiedź. Tu nasuwa się pytanie co z opóźnieniami. Przykładowo jeżeli przez ETHM-1 zalogowany jest użytkownik np z programu GuardX i jednocześnie z programu DloadX to wyraźnie widać spowolnienie działania obu programów a w zasadzie komunikacji obu z Satelem. Czy tak samo to wygląda jeżeli jednocześnie przez RS232 będzie komunikacja...
Zakomentuj obie linijki opóźnienia: for(tmp=0;tmp<20000;tmp++); I wtedy zobacz co się stanie :D
Nadal nie wiem co było nie tak z komunikacją, ale podejrzewam jakiś problem z modułem. Przerzuciłem się na inny moduł tego samego typu i wszystko zaczęło chodzić dobrze. Pozdrawiam i dziękuję za pomoc. Po wielu godzinach znalazłem problem - okazało się, że moduł MMnet ma pewne opóźnienie przy wysterowaniu portów GPIO. Do sterowania przepływem w komunikacji...
Zbyt wcześnie przełączasz na odbiór void USART_Transmit( unsigned char data ) //wyslanie 8 bit { //Ustalenie kierunku transmisji RS485 - nadawanie PORTD |= _BV(4); _delay_ms(1); // Wait for empty transmit buffer while ( !( UCSRA & (1<<UDRE)) ) ; // Put data into buffer, sends the data UDR...
Ja tam tokenów nie lubię, to IMHO one nic nie dają z wyjątkiem kłopotów. I tak trzeba zrobić elekcję po włączeniu, kto ma token (albo robić to na sztywno, co i tak nic nie zmienia). Jak urządzenie mające token zdechnie, albo zostanie odłączone to i tak zaczyna się zabawa od nowa. CSMA/CD to IMHO dobry kierunek, w końcu to jest stosowane i działa całkiem...
Z mojego punktu widzenia przewagą nad prostymi analizatorami typu Salae jest to iż w oscyloskopie jest tryb pracy "na żywo" A mogę spytać jak to jest w przypadku Salae? Ja właśnie chcę analizować wciśnięcia przycisku w panelu operatorskim, tam mam magistralę RS485 ale chyba wepnę się wcześniej aby mieć sygnał względem masy. Masz na myśli opóźnienie...
Mój problem dzięki pomocy (at)akrawiec oraz serwisu Solar-Log rozwiązany. Przypomnę może, że nie mogłem podłączyć do Solar-Log-a swoich inwerterów magistralą RS a Są to 3xGW3000-NS. Generalnie producent mojego falownika podał błędne oznaczenie interfejsu RS. Opisali go jako RS485 a defacto jest to RS422. Wystarczyło połączyć inwerter pod Solar-Log-a...
OK - sterowanie równoległe także już zakończone - jeszcze tylko kosmetyka kodu. Hmmm może timingi nie są tak wyżyłowane dla tego trybu tak jak dla harwarowych sterowników Futaby - i trzeba po wysłaniu znaku dawać opóźnienie ok 600us przy taktowaniu 11059200MHz - ale dla potrzeb nawet szybkiego wyświetlania całych ramek obrazu czyli przesyłania jakby...
Jeśli włączasz przerwanie od RXNE i masz uruchomione jednocześnie DMA, to po prostu masz dwa konkurujące ze sobą "konteksty odbiorcze", bo DMA gdy faktycznie zaczyna transfer to flaga RXNE po prostu się kasuje (zwykle kasowałbyś ją w przerwaniu). Jeśli Twoje przerwanie wywoła się z jakimś opóźnieniem (bo np. inne przerwanie je przyblokowało), to flaga...
Przesyłam sobie dane przez RS485. Na linii są dwa urządzenia i oba mają mieć możliwość nadawania. W związku z tym, gdy jedno skończy nadawać, powinno wyłączyć układ sterujący linią. Niestety jest problem przy transmisji USARTem przez DMA. Przerwanie transfer complete generowane jest wtedy, gdy DMA skończy swoją pracę, natomiast jeszcze nie wszystko...
No i wszystko się wyjaśniło. Problem wcale nie dotyczył warstwy sprzętowej, okazał się banalny, choć aby go znaleźć spędziłem kilka godzin na obiekcie. Finalne okazało się, że wartość czasu oczekiwania na odpowiedź była za mała - ustawiona na 500ms (zmieniłem na 1s) . Wystarczyło od strony mastera zmienić timeout na nieco większy i wszystko bzyka aż...
To Atari 65 ma za małą moc obliczeniową do analizy głosy. Kiedyś testowałem program Voice Assistant na 386 i miał on opóźnienie 1s między wypowiedzeniem a reakcją. A co do sterowania sprzętem to wystarczy zrobić sieć na rs485 i nadawać każdemu układowi adres. Ja bym tylko rozważał czy warto to budować dla samej sztuki bo urzytkowość tego moim zdaniem...
Przy komunikacji RS485 połączenie mas nie jest konieczne. Jednak zasilając urządzenia np. z zasilaczy impulsowych trzeba zmierzyć różnicę napięć jaka może się wytworzyć między nimi i sprawdzić czy nie przekracza dopuszczalnego napięcia wspólnego na wejściu układu transceivera RS485. Zastosuj powyższe rady czyli - jeśli możesz ( czyli np. nie korzystasz...
Bo sygnałów wejściowych i wyjściowych będzie 200-300. Dlatego chcę je rozdzielić na kilka Arduino. Zastosuj expandery I/O na SPI czy I2C - np. MCP23017. Szkoda komplikować sobie życie i wprowadzać dodatkowe opóźnienia na komunikację między wieloma MCU tylko dla dodatkowych I/O.
No między innymi z tych dokumentów piszę to oprogramowanie, więc mam takie pytanie, załóżmy 3.5 znaku do rozpoznania ramki, niech 2 slavy pracują na magistrali, do jednego z nich adresowana jest ramka, oba ZACZYNAJĄ, podkreślam, odbierać ramkę, i zdarzy się sytuacja, slave do którego ramka nie jest adresowana jest np. mocno obciążony, a slave adresowany...
Witam, pomysł jest naprawdę fajny, ale chwilowo nie mam spawarki więc nie udało mi się go wprowadzić w życie... Co do sterowania jest to najmniejszy problem chyba... Zakładam, żeby wykorzystać silnik DC 12 V od podnoszenia szyb podłączony do napięcia 6 V, obracać się on będzie stosunkowo wolno, do tego mikrostyk, który prześle do mikrokontrolera (wystarczy...
źle się wyraziłem ... dioda na porcie tzn. odebraną daną wystawiałem na port, żeby zobaczyć czy coś odbiera...i odbiera ;). jak już pisałem we wtorek będę wiedział więcej i dam znać jak poszło. Z Twoim kodem i nową wiedzą myślę, że się uda - nie ma wyjścia musi się udać :). Prędkość to 9600 na kwarcu 8MHz w docelowym projekcie będzie niestandardowa...
... ale jeśli dobrze się napisze procedury komunikacji RS485 to nie trzeba żadnych dodatkowych opóźnień po wysłaniu dodawać ;).... ;) Postanowiłem zmierzyć tego "delaya".... i okazało się że w BASCOM odpowiedź SLAVE po RS485 wysyła zanim jeszcze MASTER zdejmie TX_ENABLE. Możę to i drobiazg - ale na zakładkę 60us są na magistrali dwa TX. Generalnie...
Jest możliwe tyle że dość upierdliwe, bo główny master musiałby przekazywać dane z wejścia do wyjścia. Osobiście nie widzę uzasadnienia merytorycznego w używaniu full-duplex w systemie inteligentnego budynku. Jeśli kolega chce transmitować dużo danych, albo spodziewa się problemów z opóźnieniami, to polecam podział na "strefy" i spięcie stref ethernetem.
bo gdy jest duża liczba układów to w RS485 zanim master odpyta wszystkie slave to trochę czasu minie ( czy to nie jest aż taki duży problem jak mi się wydaje bo nie chciałbym aby światło załączył by się np. po 4 sekundach od załączenia włącznika) Przecież pod wyłącznikiem oświetlenia jest płytka z procesorem i przekaźnikiem. Nie rozumiem po co slave...
Witam, siedzę już trzeci dzień nad falownikiem i dziś udało mi się wreszcie uruchomić silnik sterując falownikiem . Do komunikacji użyłem programu ModbusMAT1.0 oraz przejściówki USB-RS485 połączonej z falownikiem dwoma żyłami skrętki UTP - w gnieździe RJ-45 użyłem pinu 3 i 5 - komunikacja idzie gładko ale... Wysłanie komendy RUN oraz zadanej częstotliwości...
Witam po przerwie. W tym czasie trochę pisałem z chińskim producentem tych konwerterów, przeglądali logi i skończyło się tym, że udostępniłem zdalny pulpit i gość na bieżąco podglądał transmisję, i po konwerterach i po kablu. Efektem jest diagnoza (cyt./tłumaczenie z Googla): Opóźnienie sieciowe jest zbyt duże, dane 485 kolidują z pakietami, a czas...
Może podepnę się do tematu , gdyż też walczę z rs485. Czy i w Bascomie można by w taki sposób sterować kierunkiem transmisji? Bo bardzo by to upraszczało sterowanie i nie musiałbym dobierać opóźnienia w przełączaniu MAX-a na odbiór. edit: W sumie to chyba zadałem głupie pytanie. Przecież co za różnica czy Bascom czy C. Przerwania są te same .
Dzień dobry wszystkim, Zakupiłem prosty wskaźnik energii OR-WE-504 firmy ORNO w celu monitoringu napięcia oraz prądu. Konfiguracja sprzętowa to Arduino Mega + konwerter TTL <-> RS485 + OR-WE-504. W pierwszej kolejności przetestowałem odpytywanie z dedykowanym programem od producenta i komunikacja działa prawidłowo. Podłączyłem urządzenie do sterownika...
Spróbój ustawić kierunki portów TxD i RxD w attiny na odpowienio wejściowy i wyjściowy-może to to. Po 2 spróbój dać większe opóźnienie po: [syntax=basic4gl]Print "MOD001" ; I1 ; "," ; I2 ; Chr(13); Waitms 1 [/syntax] Nie 1ms a może 10ms...nie liczyłem czasu wysyłania danych, ale może w ciągu 1ms dane nie zdążą przejść?
Ethernetu nie chcę bo wpowadza opóźnienia. Te płytki obsługują też rs485 i Controlino również z nimi się dogada. Ale widzę że wejścia GPIO mają tylko tolerencję do 3.3 Vmax Ciekawe czy włączniki monostabile będą działać z tak niskim napięciem. Boje się że przy 60 metrach przewodu do włącznika napięcie spadnie poniżej dopuszczalnej wartości przez własną...
Po wykryciu zera (bitu startu) generowany jest impuls przestawiający max485 w tryb nadawania i wysłania "0". Natomiast wysyłanie "1" odbywa się poprzez: "Aby zapobiec takiej sytuacji linia przesyłowa jest wstępnie ustawiana w stan jedynki logicznej przez rezystory R2...R4" - z opóźnieniem równym czasowi generowanemu przez tego ne555 - czyli ustawienie...
Jakie konkretnie API potrzebujesz, żeby z poziomu programu wyświetlić stronę WWW i przeszukać jej zawartość? Modbus TCP od razu jest dostępny przez Ethernet. Do Modbus RTU mógłbyś potrzebować konwerter, ale z kolei ławo jest dostępny przez RS485. SNMP by mogło zadziałać, ale nigdy nie używałem tych bibliotek. Nie znam też na tyle protokołu, żeby wiedzieć...
witam, mam do podłączenia około 50 liczników LE01M (firmy F&F). Ze względów praktycznych chcę to zrobić na 4 liniach po około 12-14 liczników na lini o długości około 300m każda. Sieć pracuje zgodnie ze standardem Modbus RTU, każda z linii na początku ma konwerter USB-RS485, a na początku i końcu zgodnie z instrukcją moduły terminacyjne LT-04 (120Ohm)....
włożyłem AtMega328P do mojej płytki, w której dotychczas siedział AtMega8 ( kwarc 4 MHz ), bo zgodność wyprowadzeń jest. Fuse bity ustawiłem tak samo jak w AtMega8 - przynajmniej te, które występowały w obydwu procesorach LCD działa, I2C również, czas i data jest wyświetlany, natomiast wskazania dwóch termometrów są 0.0 Poza tym procesor "wstaje" z...
W sumie wyłączenie przerwań nie wpłynie u mnie znacząco na działanie programu gdyż nie mam jakichś funkcji w programie którym niewielkie opóźnienie by zaszkodziło. Tyle tylko że ubiłem procesor i zajmie kilka dni zanim go zmienię. Zawinił program Khazama. A używam go tylko dlatego że obsługuje USB-aps. Zapewne się orientujecie jakiego programatora i...
nie prościej wykorzystać to co już jest? Też to rozważałem bo faktycznie, są różne fajne gotowce. Ale nie jest jasne jak praktycznie wyszło by multipleksowanie tych transmisji (np. opóźnienia związane z synchronizacją strumienia itd.). Po za tym jest duży narzut danych zupełnie niepotrzebnych co rodzi wątpliwości co do tego czy się to zmieści np. na...
void MSD_WriteByte(uint8_t Data) { /* Wait until the transmit buffer is empty */ while (SPI_I2S_GetFlagStatus(SPI2, SPI_I2S_FLAG_TXE) == RESET); /* Send the byte */ SPI_I2S_SendData(SPI2, Data); } Ten czas jest przybliżony. Jeśli po wysłaniu 512B danych wstawiam zatrzymanie wątku na 60ms to uC daje radę zapisywać...
ja próbowałem zrobić na tych transoptorach wg czyjegoś schematu konwerter RS232 na RS485 - więc ledwo się wyrabiał z tymi transoptorami na prędkości 9600 a o wyższej można było tylko pomarzyć ... ale mówisz o aż sekundowym opóźnieniu??? albo jeszcze większym? - nie będę się sprzeczał - ale to chyba nie możliwe, żeby bez podciągania zewnętrznego była...
Zazwyczaj inwerter podłącza się do solarloga oddzielnie(rs485A) i licznik zużycia też oddzielnie(rs485B lub SO-IN). Jak jest skonfigurowany solarlog czy wykrywa oddzielnie inwerter i licznik czy jedno urządzenie i czy solarlog pokazuje produkcję a licznik nie czy na obu nic? To taki trochę "wypasiony" ten PRO380 i może być też różnie skonfigurowany...
No i w końcu jakaś podpowiedź. To jak działa putchar zaimplementowany w Keil'u to jeszcze nie sprawdzałem, ale to że nie czeka na zakończenie transmisji jest w tym wypadku bardzo prawdopodobne, skoro tak się dzieje. Zaraz dopiszę na szybko jakieś opóźnienie po putchar i zobaczymy. master void main(void) { char c; unsigned int i; LCD_init();...
Np. w Profibusie nie ma problemu. Wszystko podłączam pod jedną magistralę i śmiga. Mam możliwość sterowania falownikiem z PLC, a panel operatorski odczytuje/zapisuje stany PLC. Modbus niestety jest inny i wymagany jest układ Master-Slave. No przecież Profibus to też układ master-slave (no chyba ze urządzenia obsługują specyfikacje DPV2). Możesz spokojnie...
Musze zbudowac konwerter RS232-RS485 z automatycznym sterowaniem przeplywem, tzn. bufor nadawczy wlacza się tylko na czas nadawania, reszta czasu jest nieaktywny. Widzialem juz kilka rozwiazan, ale z ukladami RC do sterowania czasem. Nie wystarcza mi to (za male predkosci i zbyt duza niedokladnosc). Poszukuje wiec rozwiazania, w ktorym sterowanie czasem...
Konwersja ma działać w DWIE strony. Może, źle się wyraziłem w poprzednim poście, chodziło mi o to, że bufor działa tylko w JEDNĄ stronę 5V->3.3V. Podłączyłem do niego zarówno wejście i wyjście (pomimo, że jedno ma i tak poziom 3.3V), aby nie było żadnych problemów z jakimiś opóźnieniami czy innymi dziwnymi rzeczami (oba sygnały idą przez bufor). Układ...
witam. buduje systemy na rs485. niestety zadna z komend bascomowych nie była mi przydatna. używam przerwania do odbioru i sam obsługuje własny bufor z ustawieniem flagi informujacej iz właśnie w buforze jest odebrany "ważny" pakunek danych '------------------------ Rx_serwer: Rxdata = Udr1 Rem zabezpieczenie przed przepełnieniem bufora If Rx_count...
Możesz u siebie modyfikować "break time"? Wiem, że jest dużo problemów z niekompatybilnością w wielu urządzeniach. Nie przewidziałem tego w swoim programie, aczkolwiek nie widzę problemów żeby w przyszłości to dodać jeśli będzie potrzebne. W moich urządzeniach nie miałem dotychczas takich potrzeb. Czy chodzi o czas trwania "sygnału" BREAK czy jakieś...
jeśli układ zasilany jest z komputera, to spróbuj zrobić układ opóźnionego resetu, ale taki około 20-sekundowy. Z tego co ja zauważyłem, niektóre płyty główne podczas startu systemu potrafią wyczyniać różne dziwne rzeczy z portem USB.
Z ta funkcją Config Print nie miałem jeszcze problemów więc problemu szukałbym gdzie indziej. Łatwo o błahy błąd. Czy na pewno masz wybrane zewnętrzne taktowanie? uC programuję programem MkAvrCalculator i oczywiście wybieram zewnętrzny kwarc. Wymieniałem uC i MAX485 na inny egzemplarz. Próbowałem na ATmega8. Wywaliłem z kodu wszystko poza obsługą RS485....
Kolego, w praktyce 30cm to gwarantowane krzaczory. Ten protokół nie został stworzony do takich odległości. Możesz zmodyfikować bibliotekę i powstawiać większe opóźnienia, do wyświetlacza dolutować jakieś mocniejsze pullupy, i to zwiększy odległość ale nie na 5m, bez przesady :) Do takich rzeczy stosować się powinno właśnie jakiś RS485 na byle softowym...
Mi chodziło o przesył danych z enkoderów. Nawet jak to nie idzie do PLC, to gdzieś idzie. Do falowników właśnie. Albo jednego dwusilnikowego, jeżeli taki falownik ma taką opcję (sam fakt że jest na dwa silniki od razu od tym nie świadczy). O ile ktoś akurat używa falowników i siników ACIM, a nie serw. Ale mniejsza o rodzaj silnika. Ważne ze sygnał z...
Jeszcze jedno pytanie - czym wysyłasz i odbierasz dane do/z atmegi? Zrób tak: 1. Nie kombinuj za dużo. 2. Zmień w obecnym programie, aby odsyłał dokładnie to, co odebrał. Opóźnienia na razie zostaw. Zmienne rejestrowe odpuść sobie. 3. Wyślij ramkę, która ma wszystkie bajty różne. 4. Wyślij drugą ramkę, która ma bajty jeszcze inne. 5 Podaj, co wysłałeś...
Spróbuj zmniejszyć szybkość zmian stanów na liniach data, sck (wydłużyć opóźnienia) - logika układu jest statyczna. W pdf-ie piszą też o minimalizacji przesłuchów między tymi liniami, rozdzieleniu ich w taśmie masą i zasilaniem. Jak nie pomoże to zostaje dodatkowy mikrokontroler tuż przy czujniku + np. RS485 czy pętla prądowa.
Nie wiem czym będziesz to pomieszczenie grzał, czy też ewentualnie chłodził (wietrzył? ;)), dlatego trudno doradzić co lepiej wybrać. Jedno źródło ciepła ma większą bezwładność, inne mniejszą... Generalnie przy dużej bezwładności cieplnej lepiej sprawdza się sterowanie z histerezą, tyle, że wyłączenie grzania lepiej zrobić przy nastawionej temperaturze,...
Trochę pomyliłeś które urządzenie do czego służy (zajętość jest dokładnie odwrotna). owszem może się teoretycznie zdarzyć, że PC zacznie nadawać w tym samym momencie co uC ale... uwzględniając to co ja wiem, a wy nie wiecie temat okazuje się możliwy do obejścia. 1. uC nadaje strumień dokładnie co 10 ms 2. transmisja ustawiona jest na 230kbps czyli wystarczająco...
Teoretycznie możesz zrobić taki połączenie, ale jest kilka ograniczeń. 1. Możesz użyć tylko takich AVR, które mają sprzętowy interfejs USB OTG, co pozwala skonfigurować urządzenie jako układ nadrzędny (Host), jako układ podrzędny (Device), albo dynamicznie przełączać role układów. Takim układem jest np. AT90USB1287 lub AT90USB647. Oba układy są dostępne...
Jeżeli chodzi o UPS, to raczej nie, bo układ zasilania buforowego już mam zrobiony (zrobiłem wcześniej) Jednak on tylko ma w razie zaniku napięcia sieciowego przełączyć na akumulator (jest pewne opóźnienie, ale w układzie występują duże pojemności i to z nich w tym krótkim czasie będzie czerpana energia) i bezpośrednio z akumulatora z pominięciem transformatora...
Witam, potrzebuję zrobić komunikację miedzy 2 procesorami ATmega16. Jeden wysyła zmienną typu Byte (Status) z informacją o stanie wejść, a 2 to odbiera. Natomiast 2 będzie wysyłał do 1 także zmienną Byte (Settings) z informacjami konfiguracyjnymi. Dodatkowo chciałbym wysyłać sumę CRC w obu kierunkach. Transmisja w obu kierunkach jednocześnie! Bity będą...
Jakby się ogrzewał węglem to oczywiście miałbym magazyn by go przechować od lata do zimy. Gazu nie mam, ponad 20 lat temu kiedy dom był budowany nie było możliwości przyłączenia, teraz by była ale nowa instalacja to za duża demolka. Grzeję prądem który kiedyś był w drugiej taryfie dużo tańszy niż w pierwszej, a teraz nagle zrównali w górę do ceny maksymalnej...
Pisząc "parametry sieci": miałem na myśli prędkość oraz czasy m.in. takie jak timeout jak również czas opóźnienia przy przełączaniu się z odbioru na nadawanie (pisałem wcześniej). Niestety sterownika nie znam. Kiedyś próbowałem coś zrobić z tą firmą, ale okazało się, że w Łodzi nie ma "normalnego" przedstawiciela (są tylko handlowcy!!!). Wracając do...
W sumie fakt, bo wprowadza to opóźnienia, zamiast szybkiego point-to-point w przypadku switcha - może dlatego zaznaczają, że te 4us to przy 4 urządzeniach. Natomiast zmiana topologii pewnie jest ukłonem w stronę systemów magistralowych jak właśnie Profibus, RS485/Modbus itp., żeby inżynierom łatwiej było je zastąpić bez ładowania dodatkowego switcha...
http://obrazki.elektroda.pl/8335597100_1... Witam, rok temu skończyłem szkołę zawodową o profilu elektronika, w pracy mam do czynienia z małoseryjną produkcją smd. Jako typowy pasjonat-konstruktor szukam zawsze sposobu, jak ułatwić sobie pracę i postanowiłem zbudować własną maszynę do układania elementów smd. W projekcie styka się tak...
Witam. Miałem dwie atmegi spięte przez port szeregowy. Full duplex. Master, wysyłał do slave znak "Q" a w odpowiedzi otrzymywał stan wszystkich ośmiu bitów wybranego portu. Master odebrany komunikat wysyłał na port i zapalał LEDy. Ukłąd prosty. Wszystko działało przepięknie. Odbieranie znaków w układach master i slave realizowałem przerwaniem od URXC...
4.Wpisuje trzy razy "0112" i rozłączam konwerter USB. Wpisuję trzy razy "0112" i rozłączam konwerter USB. Czyli można tak w kółko. Za każdym razem tylko trzy odpowiedzi. Skoro pomiędzy rozłączeniami wysyłasz tylko 3 komendy to odpowiedzi jest aż 3, a nie tylko 3. Z punktu widzenia układu (który nie wie że rozłączasz USB, dla niego to jest po prostu...
Po podłączeniu kolejnych czujników zmienia się obciążenie linii/pojemność itp. Konieczne będzie dopasowanie czasów w funkcjach obsługi 1wire. Np. opóźnienie lub przyspieszenie odczytu bitu z linii o 2us. Co do CRC to liczysz tak samo jak CRC scratchpada z temepraturą. CRC z numeru seryjnego (z 8 bajtów) powinno wynieść 0. Jeśli != 0 to błędnie odczytany...
Na początek naucz się używać millis(), oceń czy potrzebujesz badać temperaturę w każdej pętli loop, upewnij się że pracujesz w trybie asynchronicznym (w czasie pomiaru nie czekasz 750ms na jego zakończenie?), zmierz czas trwania poszczególnych funkcji używając micros(). Jeśli to jest temperatura pokoju to spokojnie możesz mierzyć co 60s, w każdej minucie...
uparłeś się, żeby pisać własny drajwer COM-a, gdzie? Przecież korzysta z windowsowego DCB i takich tam. Jest na FT bo właśnie steruję kierunkiem, ale na zwykłym COM to nie jest dla mnie problem no oczywiście z wyjątkiem tego że trzeba dopasować poziomy napięć i ten sygnał RTS/CTS wyprowadzić co w FT232 robi się banalnie bo steruję prosto z układu na...
Twój kod niewiele mówi. Podajesz za mało danych. Nie wiadomo np.: Czy byte to zmienna globalna (można się tego ewentualnie domyślić) i czy jest zadeklarowana jako volatile (to trudno przewidzieć)? Czy warunek if (odebr_zn=='1') sprawdzasz w przerwaniu, czy w pętli głównej? Czemu ma służyć deklaracja unsigned char i=0; ? Co to za funkcje (makra?) RS485_INIT();...
Witam, tak się zdarzyło, że w zaćmieniu umysłu do mojego rejestratora DAHUA XVR5216AN-I2 kupiłem kamerę HIKVISION DS-2CC52D9T-AITZE. Żeby nikt nie musiał szukać - kamerka działa w HD-TVI, ma dwa wyjścia na HD-TVI i CVBS oraz po jednym we/wy alarmowym. Rejestrator jest 5 w 1, w tym obsługuje również format HD-TVI z jednym 'ale' jak poniżej. Nie jest...
Nie wiem jak to u ciebie wygląda w pętli głównej, ale po każdym zapisie do pamięci musisz odczekać chwile zanim cokolwiek wyślesz na i2c, wg. Datasheet układu 24lc16 maksymalny czas zapisu to 10ms więc po każdym zapisie tyle trzeba czekać. Co do zakłucania się uatru z twi, spróbuj zastosować buforowanie danych z eepromu tzn. odczytywane dane zapisz...
Molestuje przez caly dzien i jak na razie nie wykrylem zadnego bledu. Ten odłączony mikrokontroler jest teraz częściowo zasilany przez magistralę i te rezystory. To raczej nie jest dobre i w szczególności może prowadzić do wykonywania jakiegoś pokręconego kodu przez ten mikrokontroler, pomimo pozornego braku zasilania. Poza tym te szeregowe rezystory...
A tak poza tym to coś więcej na temat obsługi RS485 w tych uC przeczytałeś? np co? Jesteś pewien, że te sprzętowe sterowanie kierunkiem transmisji to jest sedno w tym przypadku i czy nada to się do powszechnego użytku? A cóż innego mogłoby być sednem, skoro sprzętowa obsługa pinu DIR to chyba jedyna rzecz jakiej brakuje "zwykłemu" UARTowi do obsługi...
Witam wszystkich. Opiszę swoje dzisiejsze próby może ktoś będzie miał jakieś porady. Składniki: ACCO-USB, ACCO-KP-PS, ATC 863-S2 Konfiguracja układu: http://obrazki.elektroda.pl/7466168100_1... W pierwszym przypadku po kablu wszystko gra. Przy włączeniu w układ radiomodemów niestety transmisja przestaje działać. Problem w tym, że nadawany...
Myślę, że opóźnienia rzędu 1mS będą się jednak pojawiały. Co zupełnie nie przeszkadza w transmitowaniu danych z dużymi prędkościami. Proponuję kupić kartę PCMCIA -RS232. Są dość drogie ale stosunkowo łatwo dostępne. Tak karta będzie widziana jako standardowy port RS232 i nie są potrzebne żadne sterowniki. Karta PCMCIA nic mi nie da, bo na przeciętnej...
Arbitrażu w RS485 nie ma sprzętowego, można to zrobić jedynie softwareowo. Dobrze kombinujesz z tym masterem odpytującym, coś podobnego teraz robie i z moich dotychczasowych doświadczeń moge podpowiedzieć tyle, że ramka najlepiej żeby miała stałą długość np. 4bajty i pierwaszy bajt to ZAWSZE jest adres. Master ma adres 0 (lub inny) i po kolei odpytuje...
Witam Mam pewien moduł wykonawczy ON/OFF, który sterowany jest sygnałem cyfrowym 5V. Wszystko pięknie ale sterownik z procesorem znajduje się 12 metrów od modułu. Potrzebuję sterować tym modułem z jak najmniejszym czasem opóźnienia załączenia i wyłączenia. Mam kilka rozwiązań na oku. 1.Światłowód wszystko super ale odpada z powodu ceny. 2.Zwykły przewód...
klawiatura opóźnienie opóźnienie bramy opóźnienie zasilania
piła krajzegi philips serwisowy zmiana matryca sterowniki kamerki microsoft
Golf 3 2.0 ADY - Problemy z pompą paliwa i ECU Niskie ciśnienie oleju w Hyundai i30 1.4 benzyna