Witam, mam zaimplementowaną w projekcie obsługę protokołu modbus (biblioteka freemodbus v1.5). Ten sam program uruchamiam na płytce testowej Xplained z ATmega 328P i komunikacją po RS232 przez wbudowany port eDBG - tu wszystko działa jak należy, zarówno tryb RTU jak i ASCII. Zegar 16MHz. Po przeniesieniu projektu na ATmega 32 z zegarem 7,3728MHz Modbus...
Jeżeli przerwa między ramkami (która jest stanem wysokim na linii) wynosi minimum 3.5T to jak ja odróżnić od 4 (i więcej) jedynek?? 3.5T to czas gdzie T to czas przesłania jednego bajtu więc nie trzeba nic odróżniać :wink:. Dobrym rozwiązaniem jest sprawdzanie za każdym odebranym bajtem CRC wstecz tzn. czy odebrane dwa bajty są sumą kontrolną wcześniejszych....
Na sourceforge widziałem gotowe biblioteki modbus dla atmegi. [url=http://sourceforge.net/projects/avr... Sterowniki plc zazwyczaj mają rs485.RS485 mają zazwyczaj urządzenia mające komunikację modbus rtu lub ascii.Implementacja jest prostsza niż rs232 używasz sn75176(lub zamiennika) zamiast...
Witam. Zabrałem się za projektowanie sterownika rolet opartego na atmedze z komunikacją rs485 modbus ascii . Jako ze od czegoś trzeba zacząć załatwiłem sobie zestaw uruchomieniowy atmega 32 ARE0034 . Do zestawu zostały dołączone przykładowe programy miedzy innymi program obsługujący rs232. Kod przedstawiam poniżej: /**************************************/...
Witam Uaktualniam sterownik (na bazie ATMEGA AVR) tak aby można go było programować poprzez RS485 protokół MODBUS ASCII. Mam problem jak powinna wyglądać obsługa rozkazów które wymagają długiego czasu wykonania (max 8 sekund. Jeden z rozkazów powoduje przepisanie parametrów z RAMu do EEPROMU 1kB.) tak aby uniknąć timeout ze strony serwera (zdalne programowanie...
Najtańszy rozwiązaniem jest sterownik na mikrokontrolerze np. firmy AVR np. ATMega128. Robiłem coś podobnego od podstaw (SCH, PCB, oprogramowanie). Mam doświadczenie w konstruowaniu i programowaniu tego typu urządzeń i z chęcią pomogę w tworzeniu od podstaw. Oczywiście w przypadku własnego sterownika trochę na początku człowiek się trochę natrudzi,...
Witam serdecznie, zacząłem niedawno interesować się biblioteką FreeMODBUS ze strony: http://www.freemodbus.org/ i podczas kompilacji otrzymałem następujący komunikat 17:41:26 **** Build of configuration Release for project MODBUS **** make all Building target: MODBUS.elf Invoking: AVR C Linker avr-gcc -Wl,-Map,MODBUS.map -mmcu=atmega168...
Nie wiem "jak to jest opisane w datasheet Atmegi". Modbus RTU odbiera się tak samo jak ASCII. Różni się sposobem wykrywania początku i końca ramki - w trybie RTU to czas ciszy na łączu. [url=http://www.modbus.org/specs.php]Spe...
Łatwiej i szybciej :wink:. "Łapiąc" tylko koniec ramki mamy pewność że skoro jest koniec to i cała ramka jest w buforze i można zacząć ją analizować. W szybkich transmisjach jest to istotne (przełączamy się na inny bufor i wtedy można analizować ramkę a w tym samym czasie odbierać następną). Bez ustalonych znaków końca ramki nie wiemy jak długa ona...
Z odbiorem już sobie poradziłem. Pojawiły się naszeptujące pytania ze specyfikacji modbusa dowiedziałem się że ramka w trybie ASCII składa się 16 bitowych danych. W RTU natomiast z 8 bitowych. Jednak w kazdym programie do testowania po ustawieniu liczby rejestru na 4 (tak mam w programie na procesor) zamiast rejestrów 4 rejestrów przypadających na każdy...
(at)Markosik20 Dziękuję za zainteresowanie! :-D Nie zrozumieliśmy się. Nie chcę transmitować znaków w czasie rzeczywistym. Druga sprawa - w RS485 masz wiele nadajników, jeden master reszta slave - nie można sobie tak śmiecić na linii (po znaku), to nie buforowany RS232! Inna sprawa, że docelowo przesył będzie w trybie ASCII (później rozszerzę soft o...
Dwa przekaźniki ze stykami przełącznymi do wolnych wyjść plc. Styki łączysz tak by tworzyły most H i po temacie. Jeśli brakuje wyjść można dołożyć moduł lub płytkę sygnałową. Jeśli już uparłeś sie na mikrokontroler to użyj modbusa RTU lub ASCII. Możesz też stworzyć własny protokół oparty na rs485 - płytka CB 1241 dopuszcza używanie własnego protokołu....
Witam Powoli zagłębiam się w tajniki atmegi i próbuję odpalić komunikacje rs485. Po wielu poszukiwaniach wybór padł na freemodbus. Ściągnąłem bibliotekę z ich strony i po przeczytaniu readme postanowiłem skompilować Załączony przykład demo.c lecz niestety przy kompilacji za pomocą win avr otrzymuje błąd > "make.exe" all /opt/gcc-avr/bin/avr-gcc...
Witam! Jako projekt na uczelni (właściwie jest to praca mgr) mam stworzyć urządzenie, które będzie jako Modbus Master komunikować się przez RS485 ze sterownikami PLC GE Fanuc VersaMax. Potem mam użyć tego sprzętu do badania prędkości transmisji w sieci Modbus . Nie tworzę układu elektronicznego, lecz wykorzystuję gotową płytkę z µC ATmega32. Zaimplementowanie...
W Twoim zastosowaniu można traktować RS-485 jako symetryczny RS-232. Nie trzeba tu stosować od razu protokołu MODBUS-ASCII/RTU. Dochodzi tylko zastosowanie nadajników linii i przełączanie nadawanie/odbiór. Przy takiej odległości nie osiągniesz dużych przepływności bitowych (góra 9600b/s). Ponadto dla RS-232 będzie potrzebne prawdopodobnie stosowanie...
Witam, mam jakiś błąd w sofcie, który powoduje, że po odłączeniu i włączeniu zasilania program nie działa prawidłowo. Zresetowanie atmegi bez odłączenia zasilania powoduje że wszystko chodzi już dobrze. Próbowałem różne ustawienia fuse'ów, kwarc 12MHz, CKOPT włączony, ustawiony najdłuższy możliwy czas opóźnienia włączenia. Testowałem na wewnętrznym...
Zwracam się do wszystkich o jakąkolwiek pomoc w rozwiązaniu mojego problemu. Posiadam skaner laserowy (jest to praca dyplomowa), do którego muszę napisać aplikację za pomocą której możliwe będzie wyświetlenie wiązką lasera dowolnego obrazka, załadowanego z pliku bądź z jego pamięci!!! Sercem skanera jest mikrokontroler AT89S8252 firmy Atmel. Sterownik...
https://obrazki.elektroda.pl/1646087900_... Przedstawiam mały poradnik, jak połączyć się z urządzeniami wyposażonymi w port szeregowy przy wykorzystaniu sieci LAN. Można w ten sposób podłączyć dowolne urządzenia z portem szeregowym, jak różnego rodzaju sterowniki, liczniki itp., komunikujące się w dowolnym protokole - zaczynając od...
Witam. Mam problem z protokołem MODBUS RTU na ATMega644, który błędnie interpretuje mi ramki. Kod w BASCOM wygląda następująco: a właściwie nie komunikuje się) się z urządzeniem zewnętrznym przy pomocy MODBUS'a. Chciałbym to zrobić wykorzystując MODBUS RTU (teoretycznie zostaje mi jeszcze ASCII),a do zestawu mam podpięty jeszcze skaner nasłuchujący...
Witam, od wczoraj walczę z moją implementacją protokołu modbus. Procesor to Atmega16, realizacja ASCII i baud 9600. Mój problem dotyczy czasu zwłoki w odpowiedzi. Mam następujący kod: main.c: [syntax=c] #define cbi(sfr, bit) (_SFR_BYTE(sfr) &= ~_BV(bit)) #define sbi(sfr, bit) (_SFR_BYTE(sfr) |= _BV(bit)) #include <stdio.h> #include <avr/io.h>...
Witam Czy komuś udało się uruchomić bibliotekę i skompilować demo.c w avrstudio? Walczę z uruchomieniem example juz godzinę i nie chcę spędzić na tym całego dnia Na razie mam ../freemodbus/mbport.h:91: warning: inline function 'vMBPortTimersDisable' declared but never defined ../freemodbus/mbport.h:89: warning: inline function...
modbus ascii ascii atmega atmega ascii
wideodomofon otwarcie rygiel volvo silnika sterowanie rolet zewnętrznych
kd502 zamiennik kd502 zamiennik
Mercedes W212 7G-Tronic 722.9 – gubienie biegów podczas jazdy, diagnostyka, typowe usterki MAN F 2000 – bezpiecznik kierunkowskazów F20, F13, F21, przerywacz K54, lokalizacja