5/4/2020 7:51 PM | |
Joined: 12/18/2014 Last visit: 4/19/2024 Posts: 32847 Rating: (4061)
|
Yes, in your case this is normal. You have created two connections manually, so 2 connections are already occupied. Now you have also connect to 2 Modbus devices using drag & drop. With Drag & Drop, own connections created by the software are used. Are 2 connections again, so a total of 4. The maximum number you can read in the manual, see attachment. AttachmentLOGO! 8 manual 0BA8 2017_11 xxxx8-0BA0 pages 29+30.pdf (251 Downloads) |
5/4/2020 8:26 PM | |
Joined: 12/18/2014 Last visit: 4/19/2024 Posts: 32847 Rating: (4061)
|
The manually created connections are designed so that you can also map inputs and outputs via them. |
5/4/2020 8:44 PM | |
Joined: 12/18/2014 Last visit: 4/19/2024 Posts: 32847 Rating: (4061)
|
See attachment... |
5/4/2020 8:48 PM | |
Joined: 12/18/2014 Last visit: 4/19/2024 Posts: 32847 Rating: (4061)
|
The user Scorp once created this Excel sheet.
AttachmentModbus Implementierungstabelle.pdf (235 Downloads) |
This contribution was helpful to1 thankful Users |
5/4/2020 11:13 PM | |
Posts: 40 Rating: (0) |
Then I'm probably missing something obvious... I'm using this example to read holding registers, convert float to int, etc. In the example memory variable is used to feed F/I function block with the input data. Now I want to use the same connection to the same Modbus server for my Network Input and Output. For now I can easily use the same connection to read DI and write Coil [from the Logo], but for reading the HR (like in example) I always get a separate connection. Please advise. |
Last edited by: Jen_Moderator at: 05/05/2020 09:02:05Optimized link. |
|
5/5/2020 12:09 PM | |
Posts: 40 Rating: (0) |
That is clear and obvious. The only limitation I see here is that only a single word could be read from the holding register, but I need to read two, exactly like in the power meter example.
That looks as an alternative to the 1st scenario you described where inputs and outputs are talking to devices directly. Thank you for clarification as I still don't fully understand this VM concept. The goal is to use a single connection between the Logo and Modbus device to read/write everything including holding registers with float data. Currently I see the only working solution for that (example for read operation): all the data - DI, IR, HR - are read into VM first, then Network Input is configured to read Local variable memory (VM) instead of Remote device. I'm wondering if that is a really way to go. I'm attaching a sample diagram along with a few screenshots. Project view shows that 2 connections are occupied on the Logo which is connected to only one Modbus device. Attachmentforum_logo.zip (166 Downloads) |
5/5/2020 12:52 PM | |
Joined: 2/22/2008 Last visit: 2/22/2024 Posts: 2698 Rating: (206) |
The problem are the green blocks, you define the Modbus connection directly in these blocks. Use local mapping to VM memory, then you can organize the memory in areas for digital and analog signals. For 8 digital signals with DI or coil in sequence i would prefer the compact design as in attachment. For analog signals HR in sequence i also would prefer the compact design, also if you don't need 2 of 10 values. Registers are 16 bit = 1 word = 2 bytes, then begin VWx with an even number to avoid problems later. If you have floats, then you 2 registers = 2 words = 4 bytes, then begin VWx with a number divisible by 4. If you have double, then you need 4 registers = 4 words = 8 bytes. First make a list, which signals you need in sum, then think about how to organize them in the VM memory without overlap to avoid problems later. Regards, Scorp AttachmentCircuit Diagram2.zip (184 Downloads) |
This contribution was helpful to1 thankful Users |
Follow us on