Protection & Control
Schneider Electric support forum about Protection Relays, Substation Controllers & RTUs, Arc Flash Devices & Systems in Medium Voltage and Low Voltage. A place to get support on product selection, installation, commissioning and troubleshooting.
Link copied. Please paste this link to share this article on your social media post.
Hello,
I have a problem: I want to send from weintek HMI to T300 via modbus tcp, float value of variable. But, I dont know how to do that,because,I was try everything and didnt work. Someone to help?
Note from Jean-Yves: an M221 PLC is get data from solar panel inverters. This data (float values) need to be read from the HU250 of a T300: how to achieve that? Initially the idea was to read the data from a Weintek HMI and push it to the HU250 Modbus port, however the HMI is limited for that function.
Link copied. Please paste this link to share this article on your social media post.
Hi,
in T300 use Holding register, check Use Float units. In Weintek, type address of register, and use 32bit float type of variable. Simple 🙂 (when you find how it works )
Link copied. Please paste this link to share this article on your social media post.
Hi @Nikodin ,
First remember that in Modbus, there is no such thing as a float 32 register. Modbus only considers 16 bits registers. Said that, the manufacturers concatenate 2 or more registers to do 32 bits or 64 bits in Modbus.
So, in T300 you can say that the register is a Float by putting the :F after the address like the image below, or in the channel profile you can say that you are using 32 bits registers. In your case you need to configure in the HMI to send a Function Code 16: Store Multiple Setpoints to write 2 16 bits registers.
Link copied. Please paste this link to share this article on your social media post.
Hi @AndreMelo
In T300 i was try with F, with U,L,Double...nothing.. Tryed with 32bit register,nothing 😞
In weintek HMI I dont have that options. I have:
Address type:4xDouble with data format: Unsignated, 16/32bit Signed/Unsigned, 32bitFloat..
And When I put 4xDouble 1, data format-undesignated in T30 i got some values,but not real value.
Or,maybe is easyier to read direct from PLC M221? But i dont know how to do that in PLC...
Link copied. Please paste this link to share this article on your social media post.
Hello Nikodin,
You are talking about T300, M221 and Weintek HMI... Can you show the architecture of the system you are trying to build? For instance, what for are you using a M221 (T300 supports programs written with the IEC 61113-3 logic programming platform called ISaGRAF V5.22)?
Regards,
Link copied. Please paste this link to share this article on your social media post.
Hello @JYPOC ,
I have PLC M221(read values from inverter of solar panels), display that to HMI (weintek), and i want to send that readed values to T300.(I was try to send readed values trough HMI to T300, but i dont know how). Other option is from plc m221 send direct to T300 via modbus tcp/ip(i dont know how to do that).
Hope I explained..
Regards,
Link copied. Please paste this link to share this article on your social media post.
So you mean the HMI is master of both M221 and T300? Polling the M221 directly from T300 seems to be a better idea...
Link copied. Please paste this link to share this article on your social media post.
Hello,
in any case, we must know which format is used for the float values (or others) to be transfered from/to the Weintek HMI using modbus.
This document suggests lot of possibilities, including byte swap, word swap...
First of all, please clarify which device are client or server.
Mathieu.
Link copied. Please paste this link to share this article on your social media post.
Hi @Nikodin , according to the document that @Mathieu_Lansoy just uploaded, the weintek HMI does have Modbus Function 16. with this function, you can write 2 16 bits registers.
Please also consider you are sending the correct sequence of words and bits in terms of which one arrives first. Most significative or less significative both word and bit.
BR
Link copied. Please paste this link to share this article on your social media post.
Link copied. Please paste this link to share this article on your social media post.
Hi,
I suggest to contact tech support NA <global-na-tech-support@schneider-electric.com> to create a support case and work efficiently.
This will be easier to share documents, configurations, and most probably protocol traces, and finally find a solution.
Mathieu.
Link copied. Please paste this link to share this article on your social media post.
@Nikodin Are you able to solve the problem? If not please connect with me on team, there are two ways for reading the float value, we need to understand how the controller sends the value, is it on a normal float or inverse float, we have the option of Modicon the Modbus slave configuration for the inverse float option.
This can help you reading correct data, with :F function
BR
Rajasekar
Link copied. Please paste this link to share this article on your social media post.
Link copied. Please paste this link to share this article on your social media post.
That's great @Nikodin!
For the purpose of helping others who might encounter a similar situation, could you please detail the solution you found?
Thank you
Link copied. Please paste this link to share this article on your social media post.
Create your free account or log in to subscribe to the board - and gain access to more than 10,000+ support articles along with insights from experts and peers.