Re: Je tu někdo zběhlý v protokolu MODBUS, ochotný poskytnout konzultaci?

Radek Sztwiorok sztrad na gmail.com
Neděle Červenec 9 16:23:55 CEST 2023


Aha to je tak když se nepodívam kdo je původní tazatel.
Takže pane Aster
k 1) jak se prosím čte 16bit registr z 8bit místa?
k 2) tady se vám zase překrývají registry pokud to chápu správně
k3) tak by to mělo být dle standardu a i dle mého logického předpokladu
Jen pořád asi nechápu proč plníte registry byte. Pokud si nadefinujete word
tak přece neřešíte fyzicky posun (bavím se o možnosti 3, 1 a 2 nechápu jak
funguje pro MB). S tímto způsobem dosti narazíte při reálných číslech kdy
potřebujete 2 registry a jěště popřehazované (dost záleží co za systém čte
ze zařízení). Tady je dobré si pak prostudovat jaký systém bude cílový neb
ne každé PLC či SCADA umí přečíst jakýkoliv zápis. S oblibou Siemens má
svůj způsob čtení a zápisu(samozřejmě nekompatibilní s původním standartem
Modiconu) a nedokáže se přizpůsobit čemukoliv jinému. Tam pak nezbývá než
vědět co kde je a číst si to po registrech a ovladač si napsat což je dost
opruz.
Vaše zařízení je Master nebo Slave?
RS

ne 9. 7. 2023 v 16:02 odesílatel Zdeněk Aster <zdenek.aster na seznam.cz>
napsal:

> Adresace je moje, spíš jsem přemýšlel co je "dobře"... Ano zalezi to na me
> Mám paměťový prostor organizovaný po bytech třeba 1kB (to je vlastně jedno
> jak velký) a mám X možností.
>
> 1) ctu z adresy MODBUS adresa 0 16bit registr = pamet davam z adresy 0
> velikost 1  byte
>     ctu z adresy MODBUS adresa 1 16bit registr = pamet davam z adresy  1
> velikost 1  byte
>
> 2) ctu z adresy MODBUS adresa 0 16bit registr = pamet davam z adresy 0 a 1
>   velikost 2  byte
>     ctu z adresy MODBUS adresa 1 16bit registr = pamet davam z adresy  1 a
> 2  velikost 2  byte
>
> 3) ctu z adresy MODBUS adresa 0 16bit registr = pamet davam z adresy 0 a 1
>   velikost 2  byte
>     ctu z adresy MODBUS adresa 1 16bit registr = pamet davam z adresy  2 a
> 3  velikost 2  byte
>
> 2) je rozhodne dost blbost, ale je to taky moznost
> 3) je asi pocitove nejcistci, ale blbe se dela for smycka respektive musim
> adresu delit dvemi
>     a je to trośku hure citelny ten kod
> 1) mi treba v tomhle pripade vyhovuje nejvic (posilam tam kod aplikace
> pres bootloader)
>
> A techto dilemat mam v pripade MODBUSu spoustu tim jsem chtel rict, ze
> absolutne chapu
> rozpolozeni tazatele, ale rozhodne nejsem asi ten co by mu dobre
> poradil....
>
> Zdenek Aster
>
> Dne 09.07.2023 v 11:22 Radek Sztwiorok napsal(a):
>
> A ted jsem to už nepochopil vůbec.
> Ta adresace co píšete je MB nebo vaše?
> Pokud vaše tak si dle vlastního příkladu přepisujete čast registru. O
> kolika registrech se vlastně bavíme a jaký jednochip je cílový?
> RS
>
> ne 9. 7. 2023 v 10:37 odesílatel Zdeněk Aster <zdenek.aster na seznam.cz>
> napsal:
>
>> Já mám třeba u 16bitových registrů problém jak to adresovat....
>> Mám pamět 8bit a na 1000 je registr 16bit na 1001 je dalsi ale v pameti
>> se mam posunout o byte nebo o
>> dva... Nekdy je lepsi o 1 byte a nekdy o 2btye no mam v tom taky bordel.
>> Ja teda to hlavne resim kvuli tomu,
>> ze tam mam bootloader tam s tim pak celkem bojuji.  V klasice pak uz mam
>> registry a nejak se s tim moc netrapim,
>> protoze se to stejne mapuje nekde z periferii, tak tam ta souvislost s
>> pameti pro me uz neni.....
>>
>> Zdenek Aster
>>
>> Dne 09.07.2023 v 8:01 Radek Sztwiorok napsal(a):
>>
>> Ja to také trošku nechápu.
>> S MB jsem se za život navláčil dost a oni ani sami výrobci jednotlivych
>> PLC v tom nemají jasno. Tak nějak si každý ohne to rozmístění jinak. I s
>> číslovánim registrů se každý popere podle svého. Důležité pro ně je ,aby na
>> daný příkaz odpovědělo zařízení správným registrem a typem.
>> Nejjednodušeji to má vyrešeno asi co se týká mapy Advantech a ICP DAS a
>> spousty jiných taiwanských firem. Mají jeden adresní prostor číslovaný od 0
>> a registry 16bit. Vy si v programu určite proměnnou a ta se navenek chova
>> jako coil či registr. Nerozlišují jestli je na čtení či i na zápis.(tohle
>> si ošetřujete při vytváření programu pro PLC,buď ji občerstvujete nebo zní
>> čtete) . Zbytek se řeší na client straně nebo na master straně záleží co
>> používáte za název pro nadřazený systém. Výhoda i nevýhoda je ten adresní
>> prostor ktery vám narůstá o dva bajty i v případě coil proměnné. Výhoda je
>> přehlednost a jen jeden prostor a celkem jednoduchá implementace do
>> procesoru.
>> RS
>>
>> ne 9. 7. 2023 v 3:54 odesílatel Jakub Ladman <ladmanj na volny.cz> napsal:
>>
>>> To není odpověď kterou jsem očekával.
>>>
>>> Ta registrová mapa je, podle mě, podle dnešního stavu mých vědomostí
>>> blbá. Potřeboval bych ji optimalizovat, aby bylo možné přidat jinou
>>> funkcionalitu.
>>>
>>> Kupříkladu jsem udělal chybu v tom, že všechny registry které lze
>>> zapisovat se zrcadlí také do oblasti kde jsou registry pouze ke čtení,
>>> všechny bitové proměnné jsou přístupné jako bitové (coily) ale také jako
>>> bity (šestnáctibitových) registrů a ty jsou opět dvakrát, jednou ke
>>> čtení, jednou pro zápis i čtení.
>>>
>>> Synchronizace mezi coily a registry, a mezi RO a RW oblastmi je tam
>>> složitá a úplně zbytečná.
>>>
>>> Funguje to, ale je to obtížně udržovatelné a zbytečné.
>>>
>>> Psal jsem to podle teoretických popisů MODBUSu a jak jsem to začal
>>> používat ve spojení s PLC, začal jsem teprve zjišťovat, že se mi to
>>> úplně nepovedlo a že jsem to ohromně překomplikoval.
>>>
>>> Pokud je tu někdo, kdo má zkušenost s tím jak taková dobrá registrová
>>> mapa vypadá, velmi rád mu zaplatím několik tisícikorun za praktickou
>>> konzultaci.
>>>
>>> Je to věc, kterou jsem alespoň teoreticky schopen udělat sám, ale od
>>> března se nejsem schopen rozhoupat. Mám zkušenost, že když se na to
>>> někdo podívá dalšíma očima, poradí mi několik základních věcí a pak už
>>> se sám chytnu.
>>>
>>> Mnohdy se sám chytnu už jen při pokládání dotazu.
>>>
>>> Ale rád bych to udělal kvalitně, hned na první pokus (na druhý, počítaje
>>> to co už mám).
>>>
>>> Díky
>>>
>>> JL
>>> _______________________________________________
>>> HW-list mailing list  -  sponsored by www.HW.cz
>>> Hw-list na list.hw.cz
>>> http://list.hw.cz/mailman/listinfo/hw-list
>>>
>>
>> _______________________________________________
>> HW-list mailing list  -  sponsored by www.HW.czHw-list na list.hw.czhttp://list.hw.cz/mailman/listinfo/hw-list
>>
>>
>> _______________________________________________
>> HW-list mailing list  -  sponsored by www.HW.cz
>> Hw-list na list.hw.cz
>> http://list.hw.cz/mailman/listinfo/hw-list
>>
>
> _______________________________________________
> HW-list mailing list  -  sponsored by www.HW.czHw-list na list.hw.czhttp://list.hw.cz/mailman/listinfo/hw-list
>
>
> _______________________________________________
> HW-list mailing list  -  sponsored by www.HW.cz
> Hw-list na list.hw.cz
> http://list.hw.cz/mailman/listinfo/hw-list
>
------------- další část ---------------
HTML příloha byla odstraněna...
URL: <http://list.hw.cz/pipermail/hw-list/attachments/20230709/7be354fb/attachment.htm>


Další informace o konferenci Hw-list