Forum Replies Created
-
AuthorPosts
-
MarCus0Participant
Hi All
Solved.
Instaling 5.7.1 fixed problem.Regards
MarCus0ParticipantHi Again
OK. I found something.
It not working when I send command from communicator.
When I created table with commands formulas started convert values as it should.Question, what it difference when I send command from Communicator and WebInterface?
In Communicator I send Standard command?Regards
MarCus0ParticipantHi All
I have similar problem and I did not find ansver there.
I have output chanel and it working corectly when I send command directly what mean to on/off I send 256/512 value.
To simplifiy I trying to convert to 0/1 by Formula “(Cmd*256)+256”.
What ever I did allways I get:
2018-12-18 20:53:32 Command to the Device 10 “Bufor_4_chanel”, type: KpModbus, address: 4
Command “Chanel_1_cmd”
Send (8): 04 06 00 01 00 01 19 9F
Receive (5/5): 04 06 00 01 00
Receive (3/3): 01 19 9F
OK!
what mean it sending 1 instead 512(calculated formula)?
SCADA-AdminCan You help with it,please?
MarCus0ParticipantHi
Just to know.
Bosch exchange unit(BMS Gate) and now every thing working properly.
Thank You Mikhail for Your support.Regards
MarCus0ParticipantHi Mikhail
What is Your email?
I wrote on info… but there was no answer.
I want to ask about purchase details.Regards
Marek- This reply was modified 6 years, 10 months ago by Mikhail.
MarCus0ParticipantHi
Modbus over serial communication working properly :).
I will try to push on Bosch bay the way as they still not solved their problem with internal communication to external unit. We will see what they will say. Just to know.By the way, I’ve looked(I need to own up that thought to manipulate with KpModbus:)) at your git hub.
Which development environment You use? It is .NET?
I know slightly C from programming AVR’s but this is different.
Any way code looking really nice :), really appreciate.Regards
MarekMarCus0ParticipantHi
See https://www.bosch-industrial.com/files/mng/Controllers-Accessories_Databook.pdf page 107 where is BMS-MOD described.
There is nothing about any protocol modification and register range is similar to standard modbus. There are described web management and configuration.I contacted with Bosch about that but I’m not sure if I have any chance to solve this problem in that way.
If not is there any chance to modify KpModbus.dll to omit this first length (00 06) in slave answer and just base on second byte count to calculate answer length?
Regards
MarekRegards
MarekMarCus0ParticipantHi
“can you for example?” – You asking me or Mikhail?
Regards
MarCus0ParticipantHi
It is looking as monologue :).
Is possible because that:
“Response
01 – function code
04 – byte count
88 04 01 00 – Coil status”
other software don’t care about 00 06 – following byte length?Regards
MarekMarCus0ParticipantHi
Finding continued.
In spec http://www.modbus.org/docs/Modbus_Application_Protocol_V1_1b3.pdf page 11 about functions
You can find PDU from last readings:
Request
01 – fuction code
02 80 – starting adress
00 20 – quantity of coils(32dec)
Response
01 – function code
04 – byte count
88 04 01 00 – Coil statusAnd MBAP Header:
00 02(01) – transaction identifier. In communicator it seems not implemented and can make some problem as TCP is not direct query/answer. Datagrams can be send in different order(http://modbus.org/docs/Modbus_Messaging_Implementation_Guide_V1_0b.pdf page 16).
00 00 – protocol identifier. Always 00 00 for modbus.
00 06 – it should be PDU+UnitIdendifier byte but ?! it is not in gate answer. I will look for explanation but this field in all examples are 00 06 and unfortunately all examples match this number. I don’t know why Gate not calculate message length and why it is OK. for other software’s?
02 – Unit identifier(address)It seems that only problem is in lenght PDU+UI byte. When I change response manually(lenght) answer is OK in Your parser and will be probably OK. in Communicator.
Is any other chance to solve it than contact Bosch? Can we omit this length control as other software do?
Regards
Marek
ReMarCus0ParticipantHi
See this from Communicator when I set 32 coils to read.
https://ibb.co/e7MJiF
There are messages about Incorrect MBAP Header data.There is correct answer from SimplyModbus https://ibb.co/fgr13F
Regards
Marek- This reply was modified 6 years, 10 months ago by MarCus0.
MarCus0ParticipantHi
It is nothing change. What ever I try is error about communication error but Mikhail answers in comunicator are the same then other softaware?
Just Communicator expect additional bytes which are not send by Gate than we get immediately is error.
It is funny but on http://www.simplymodbus.ca/TCP.htm page is protocol explanation and their software not follow them. 06 mean that we should expect 6 bytes. In answers are 4 and every other software(Simlymodbus and Modpoll) accept it properly.I’m tried manually on (http://modbus.rapidscada.net/) modify Gate answers but without luck. Later I will try to look for where is truth with protocol and possible problem explanation.
Perhaps You know how to solve it? I cant modify any Gate settings(there is nothing to set about communication as is closed solution) as is comply with popular software I cant claim it.
Is a first time with You get such error? Is any body implement TCP(instead Modbus over TCP) protocol on Communicator? My problem is first?Regards
MarekMarCus0ParticipantHi
Check please Your template where You define addresses conversion from Modbus table to Communicator Chanel’s.
Regards
MarekMarCus0ParticipantHi
See this one
https://ibb.co/bZUbLv
Regards
MarekMarCus0ParticipantHi again
I tried Simply Modbus http://www.simplymodbus.ca/SimplyModbusTCPclient7.1.2Install.zip
Results You can see here http://i66.tinypic.com/jac09w.png. It seems that Gate answer properly.
I tried always read the same 10 coils from 00641 address.
For request: 00 00 00 00 00 06 02 01 02 80 00 0A, answer: 00 01 00 00 00 06 02 01 02 88 02 is proper in ModbusPoll and in Simly Modbus software but Communicator and online http://modbus.rapidscada.net/ is generating error.Can You check where is problem, please?
Regards
Marek -
AuthorPosts