Transmisja danych RS485_RS422

Pytania, kody i porady dotyczące nie tylko Bascom.
Pikczu
Posty: 389
Rejestracja: 17 sie 2015, 13:46
Lokalizacja: Dublin, Ireland
Kontakt:

Re: Transmisja danych RS485_RS422

Post autor: Pikczu » 13 sty 2019, 17:30

Ważne to jest to czy to transmisja ASCII czy binarna.
Jak będzie ASCII to każda cyfra lub litera będzie wysłana jako osobny bajt.
czyli powiedzmy że jest to termostat, ustawiasz temperaturę na 255 teraz w ASCII szło by to tak:
Dziesiętnie 50 53 53
hex 32 35 35
Czyli trzy bajty były wysłane.

Teraz jeśli transmisja binarna to był by wysłany jeden bajt.
Dziesiętnie 255 lub hex FF

Teraz powiedzmy ze to tajemnicze urządzenie chronione prze rodo ma większy zakres danych niż 255 czyli więcej niż jeden bajt na zmienną to dla worda, będziesz widział puste okienko z zerami np dla wartości 255 będzie:
00 255 albo hex 00 FF.
Ale jak już ustawisz wartość na tajemniczym pudełku 511 to (MSB) czyli ważniejszy bajt będzie miał wartość 1 natomiast mniej ważny (LSB) będzie miał wartość 255.

Sprawdź jak jest kończona transmisja czy jest tam np dziesiętnie 13 lub hex 15 albo dla nowej linii dziesiętne 10 lub hex 12.

Kolejny ważna rzecz to zwykle urządzenia przemysłowe używają MODBUS-a.
Ściąg takie cudo i sprawdź:
http://www.simplymodbus.ca/RTUmaster.htm
Awatar użytkownika
Henryk
Posty: 348
Rejestracja: 22 sty 2018, 17:20

Re: Transmisja danych RS485_RS422

Post autor: Henryk » 13 sty 2019, 17:47

Witaj Pikaczu :D

Teraz powiedzmy ze to tajemnicze urządzenie chronione prze rodo ma większy zakres danych niż 255 czyli więcej niż jeden bajt na zmienną to dla worda, będziesz widział puste okienko z zerami np dla wartości 255 będzie:
00 255 albo hex 00 FF.
Ale jak już ustawisz wartość na tajemniczym pudełku 511 to (MSB) czyli ważniejszy bajt będzie miał wartość 1 natomiast mniej ważny (LSB) będzie miał wartość 255.


Tajemnicza transmisja ;) tak właśnie przedstawia zmienne jw. napisałeś , mam puste "000" bajty w zmiennych . Pasuje tu transmisja binarna , ale nie koniecznie tak być musi . Pracuję wytrwale :D
Jest jeszcze mały myk w transmisji , otóż mam tam bajty nieparzyste przypadające do niektórych wartości którymi mogę manipulować .
Mam zamiar odzyskać wartości z pojedynczych bajtów , wstawić do tablicy i wysłać do odbiornika , zobaczę czy będzie jakaś reakcja ;)
Dzięki za linka :D

Edit:

Sprawdź jak jest kończona transmisja czy jest tam np dziesiętnie 13 lub hex 15 albo dla nowej linii dziesiętne 10 lub hex 12.

Na końcach obu paczek mam bajt który zmienia swoją wartość w zależności od tego czy pozostałe bajty w ciągu zmieniły swoje wartości .
Stąd moje przypuszczenie , że jest to jakaś suma kontrolna .
Pikczu
Posty: 389
Rejestracja: 17 sie 2015, 13:46
Lokalizacja: Dublin, Ireland
Kontakt:

Re: Transmisja danych RS485_RS422

Post autor: Pikczu » 13 sty 2019, 18:04

Nie zapomnij o małym i dużym endianie:
Nie masz wymaganych uprawnień, aby zobaczyć pliki załączone do tego posta.
Pikczu
Posty: 389
Rejestracja: 17 sie 2015, 13:46
Lokalizacja: Dublin, Ireland
Kontakt:

Re: Transmisja danych RS485_RS422

Post autor: Pikczu » 13 sty 2019, 18:05

Policz może to zwykły XOR
Awatar użytkownika
Henryk
Posty: 348
Rejestracja: 22 sty 2018, 17:20

Re: Transmisja danych RS485_RS422

Post autor: Henryk » 13 sty 2019, 18:13

Rozumie , że świnka nawiązuje do LSB->MSB , MSB->LSB :?: :)
Pikczu
Posty: 389
Rejestracja: 17 sie 2015, 13:46
Lokalizacja: Dublin, Ireland
Kontakt:

Re: Transmisja danych RS485_RS422

Post autor: Pikczu » 13 sty 2019, 18:29

Dokładnie tak.
Czasem dane mogą być wysyłane odwrotnie.
Awatar użytkownika
Henryk
Posty: 348
Rejestracja: 22 sty 2018, 17:20

Re: Transmisja danych RS485_RS422

Post autor: Henryk » 13 sty 2019, 19:42

Pikczu pisze:
13 sty 2019, 18:29
Dokładnie tak.
Czasem dane mogą być wysyłane odwrotnie.
Pamiętam o tym ;) jest MSB -> LSB .

Podwójne dzięki za linka , będzie bardzo przydatny jak wrócę do czasowo porzuconego tematu sterowników PLC .
Mam takie dwa w pracy do rozpracowania :D
IMG_20190113_193205.jpg
Nie masz wymaganych uprawnień, aby zobaczyć pliki załączone do tego posta.
Awatar użytkownika
Henryk
Posty: 348
Rejestracja: 22 sty 2018, 17:20

Re: Transmisja danych RS485_RS422

Post autor: Henryk » 14 sty 2019, 19:58

Witam podglądających moje zmagania :D

Dobre wieści ! , jestem w połowie drogi z odczytywaniem transmisji :D totalna mikstura danych , pojedyncze bajty , bajty przekształcone w BCD , jakiś long lub dword ( stawiam na typ long )
Zabawa przednia , jak dobrze pójdzie jutro próbne transmisje do slav,a ;)
Pikczu
Posty: 389
Rejestracja: 17 sie 2015, 13:46
Lokalizacja: Dublin, Ireland
Kontakt:

Re: Transmisja danych RS485_RS422

Post autor: Pikczu » 15 sty 2019, 19:37

Jakieś wieści po dzisiejszym dniu?
Awatar użytkownika
Henryk
Posty: 348
Rejestracja: 22 sty 2018, 17:20

Re: Transmisja danych RS485_RS422

Post autor: Henryk » 15 sty 2019, 19:56

Witaj Pikaczu :D

Przepraszam , ale musiałem zmienić priorytet na rzecz kółek zębatych ;)
IMG_20190115_195051.jpg
Elektronika kosztuje , przyda się grosz w sakiewce :)
Nie masz wymaganych uprawnień, aby zobaczyć pliki załączone do tego posta.
ODPOWIEDZ