MODBUS i float(32)

May 15, 2008 5 Replies

Witam.



Czy float(32) pojawiający się w konteksćie MODBUS jesy ustandaryzowany ? Jak widzę w tej chwili składa się z 4 bajtów z podziałem: pierwszy eksponent, drugi 1 lsb exponentu + 7 mantysty i pozostałe dwa mantysty. Z tego co wyczytałem wynika więc że to standardowy IEEE float 32 bity.



ALE:



Czy istnieją na rynku urządzenia które zapisem float(32) nie implementują tego standardu tylko jakiś inny (popularny)? Mam pewną nieścisłość w odczycie z modbusowego czujnika[1] i podejrzewam, że format float(32) nie jest IEEE tylko jakiś inny. Producent chyba w chinach więc szanse na odpowiedź = 0. Ma ktoś jakieś doświadczenia?



[1] I nie mogę dostosować tych wartości bajtów do czegokolwiek co znam, w dodatku nie mam możliwości odczytu ich inną drogą i weryfikacji.

Użytkownik "Sebastian Bialy" snipped-for-privacy@poczta.onet.pl> napisał w wiadomości news:g0i012$bv2$ snipped-for-privacy@atlantis.news.neostrada.pl...

Bry

Zapewne zamieniona jest kolejność bajtów. Dlaczego ? Bo wiem to z doświadczenia :)

Pozdrówka,

implementuj± tego

dokladnie. sa dwa typy, jeden bez zamiany kolejnosci bajtow drugi z zamiana (czyta dwa kolejne 16bitowe rejestry i zamienia je) - to z dokumentacji - nie zaglebialem sie jak dokladnie je zamienia bo zawsze uzywalem trybu bez zamiany. mm

Dziękuje za pomoc, niestety nie ;) Po zamianie kolejności sieczka jeszcze większa. Zaczynam się zastanawiać czy urządzenie nie ma popsutego przetowrnika A/C.

Użytkownik "Sebastian Bialy" snipped-for-privacy@poczta.onet.pl> napisał w wiadomości news:g0k8f8$k8h$ snipped-for-privacy@nemesis.news.neostrada.pl...

Przestaw słowa a potem bajty w słowach.

Robiłem wszystkie kombinacje w przypływie desperacji. Wygląda na to że:

a) to nie jest IEEE nawet po przestawieniach

b) urządzenie może mieć zły opis protokołu/rozpiski rejestrów

c) urządzenie ma popsuty A/C

Poczyniłem pewne eksperymenty i wygląda na to że odczytuje z rejestru jakieś random() - wykres przypomina szum ;). Protokół jest ok, działą mi z innymi urządzeniami perfekcyjnie, z resztą w tym zgadza się crc. Stawiam więc na c...

Na razie dziękuje, powalcze jeszcze.

Join the Discussion

Have something to add? Share your thoughts — no account required.

Didn't find your answer?

Ask the community — no account required