Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
blocks:app-note:siemens_logo_modbus [2024-03-20 12:22]
mattias [Introduction]
blocks:app-note:siemens_logo_modbus [2024-03-20 13:19] (current)
mattias [Programming the PLC]
Line 3: Line 3:
 ====Introduction==== ====Introduction====
 This application note describes the steps to configure the device and blocks to be able to set the coils and read inputs of the device. Device version LOGO!8.3 is used in this example, but it is likely to work for any model of the Siemens LOGO! PLC. It is possible to buy a get started kit that contains a device and the configuration software in one single kit.  This application note describes the steps to configure the device and blocks to be able to set the coils and read inputs of the device. Device version LOGO!8.3 is used in this example, but it is likely to work for any model of the Siemens LOGO! PLC. It is possible to buy a get started kit that contains a device and the configuration software in one single kit. 
 +
 This application makes use of recent Blocks modbus implementation enhancements so make sure to use Blocks 6.3.1 or more recent. This application makes use of recent Blocks modbus implementation enhancements so make sure to use Blocks 6.3.1 or more recent.
  
Line 30: Line 31:
 {{:blocks:app-note:logo_modbus:modbus_server_setting.png?800|}} {{:blocks:app-note:logo_modbus:modbus_server_setting.png?800|}}
  
-  *  Here it is possible to specify connections from a perticular server/servers. In this example i will leave it to accept all connection requests server side. +Here it is possible to specify connections from a perticular server/servers. In this example i will leave it to accept all connection requests server side. 
  
 {{:blocks:app-note:logo_modbus:modbus_server_prompt.png?800|}} {{:blocks:app-note:logo_modbus:modbus_server_prompt.png?800|}}
Line 60: Line 61:
  
  
-====Limitations====+====Temporary limitations====
  
-Currently (version 6.3) it is not possible to read holding registers with modern addressing. We added a feature request to add the ability to manually set the modbus function. Currently it is done automatically based on the data type and direction. +Currently (Blocks version 6.3) it is not possible to read holding registers with modern addressing. We added a feature request to add the ability to manually set the modbus function per channel. Currently this is decided automatically based on the data type and direction. 
-To work around this, one can use the classic modicon addressing and translate the siemens addressed documented in standard modbus address style (modern)  to modicon. +To work around this, one can use the classic modicon addressing and translate the Siemens addresses documented in standard modbus address style (modern)  to modicon. 
  
 In example: In example:
Line 71: Line 72:
 Addresses starting with 4XXXXX will use function 3 (holding registers) Addresses starting with 4XXXXX will use function 3 (holding registers)
  
-In this blocks configuration I added the same as in the example above, but I also added a holding register. I want to read that because I programmed a pulse counter in the PLC that outputs to the holding register. This way I can expose the value as a property in blocks and make use of it in any task logic or expose it in content.+In this blocks configuration I added the same as in the example above, but I also added a holding register. I wanted to read that because I programmed a pulse counter in the PLC that outputs to the holding register. This way I can expose the value as a property in blocks and make use of it in any task logic or expose it in content.
 {{:blocks:app-note:logo_modbus:logomodicon.png?800|}} {{:blocks:app-note:logo_modbus:logomodicon.png?800|}}
 +
 +====Programming the PLC====
 +
 +It is not that hard to program a PLC, please use online tutorials and Siemens documentation regarding how to create programs.