Skip to content

Commit

Permalink
Merge pull request #2 from rfporter/Transaction-ID-Fix
Browse files Browse the repository at this point in the history
v1.3.2
  • Loading branch information
rfporter authored Jul 9, 2018
2 parents fda3bac + 1f2c9cd commit 6aab190
Show file tree
Hide file tree
Showing 58 changed files with 281 additions and 147 deletions.
6 changes: 4 additions & 2 deletions Documentation/ReadMe.txt
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
Plasmionique Modbus Master v1.3.1
Plasmionique Modbus Master v1.3.2

Copyright � 2016, Plasmionique Inc.
All rights reserved.
Expand Down Expand Up @@ -46,7 +46,6 @@ Documentation:
"<LabVIEW>\help\Plasmionique\MB_Master - User Guide.pdf"

Known Issues:
- Modbus TCP mode does not make use of Transaction ID. Transaction ID is expected to be 1 for all transactions.
- Only MEI type 14 is properly supported in RTU mode.

Acknowledgements:
Expand Down Expand Up @@ -81,6 +80,9 @@ v1.2.1: Re-worked VISA locking behavior for MB_Master_Serial
v1.3.1: Re-Added accessor for VISA resource. Some might find this useful for dealing with certain USB to serial adapters.
Added Modbus Comm Tester to tools menu.
Added MB VISA lock functions to palette.
v1.3.2: Added support for transaction IDs to TCP mode.
ADU contains PDU request and PDU response, which are available via property nodes.
Added device ID objects to Modbus Comm Tester

License:
Distributed under the BSD 2-Clause (http://opensource.org/licenses/BSD-2-Clause)
Expand Down
Binary file modified Examples/MB_Master Comm Tester.vi
Binary file not shown.
2 changes: 1 addition & 1 deletion MB Master.aliases
Original file line number Diff line number Diff line change
@@ -1,3 +1,3 @@
[My Computer]
My Computer = "127.0.0.1"
My Computer = "192.168.8.168"

6 changes: 3 additions & 3 deletions MB Master.lvlps
Original file line number Diff line number Diff line change
@@ -1,3 +1,6 @@
[ProjectWindow_Data]
ProjectExplorer.ClassicPosition[String] = "186,931,932,1738"

[AB_Cache_{33FBB182-B4EC-40E3-8491-5D5665F5BBE9}]
Cache_Path[Path] Line0001 = "/C/Users/porter/AppData/Local/Temp/AB_Cache_{33FBB"
Cache_Path[Path] Line0002 = "182-B4EC-40E3-8491-5D5665F5BBE9}.txt"
Expand All @@ -6,6 +9,3 @@ Cache_Path[Path] Line0002 = "182-B4EC-40E3-8491-5D5665F5BBE9}.txt"
Cache_Path[Path] Line0001 = "/C/Users/porter/AppData/Local/Temp/AB_Cache_{CA7CA"
Cache_Path[Path] Line0002 = "EBA-20D5-4ABE-9A00-7FE38DF00416}.txt"

[ProjectWindow_Data]
ProjectExplorer.ClassicPosition[String] = "75,394,702,1014"

31 changes: 31 additions & 0 deletions MB Master.lvproj
Original file line number Diff line number Diff line change
Expand Up @@ -24,6 +24,7 @@
</Item>
<Item Name="Tools" Type="Folder">
<Item Name="Modbus Comm Tester.vi" Type="VI" URL="../Tools/Modbus Comm Tester.vi"/>
<Item Name="Transaction ID Test.vi" Type="VI" URL="../Tools/Transaction ID Test.vi"/>
</Item>
<Item Name="MB Master.lvlib" Type="Library" URL="../MB Master.lvlib"/>
<Item Name="MB Master.vipb" Type="Document" URL="../MB Master.vipb"/>
Expand All @@ -35,6 +36,36 @@
<Item Name="Error Cluster From Error Code.vi" Type="VI" URL="/&lt;vilib&gt;/Utility/error.llb/Error Cluster From Error Code.vi"/>
<Item Name="Find First Error.vi" Type="VI" URL="/&lt;vilib&gt;/Utility/error.llb/Find First Error.vi"/>
<Item Name="Open Acrobat Document.vi" Type="VI" URL="/&lt;vilib&gt;/Platform/browser.llb/Open Acrobat Document.vi"/>
<Item Name="Serial Data Unit.lvclass" Type="LVClass" URL="/&lt;vilib&gt;/NI/Modbus Library/Transmission Data Unit/Serial Interface/Serial Data Unit.lvclass"/>
<Item Name="Transmission Data Unit.lvclass" Type="LVClass" URL="/&lt;vilib&gt;/NI/Modbus Library/Transmission Data Unit/Transmission Data Unit.lvclass"/>
<Item Name="Serial Master.lvclass" Type="LVClass" URL="/&lt;vilib&gt;/NI/Modbus Library/Network Protocol/Network Master/Serial/Serial Master.lvclass"/>
<Item Name="Network Master.lvclass" Type="LVClass" URL="/&lt;vilib&gt;/NI/Modbus Library/Network Protocol/Network Master/Network Master.lvclass"/>
<Item Name="Network Protocol.lvclass" Type="LVClass" URL="/&lt;vilib&gt;/NI/Modbus Library/Network Protocol/Network Protocol.lvclass"/>
<Item Name="Modbus Data Unit.lvclass" Type="LVClass" URL="/&lt;vilib&gt;/NI/Modbus Library/Modbus Data Unit/Modbus Data Unit.lvclass"/>
<Item Name="VISA Flush IO Buffer Mask.ctl" Type="VI" URL="/&lt;vilib&gt;/Instr/_visa.llb/VISA Flush IO Buffer Mask.ctl"/>
<Item Name="Serial Shared Components.lvlib" Type="Library" URL="/&lt;vilib&gt;/NI/Modbus Library/Serial Shared Components/Serial Shared Components.lvlib"/>
<Item Name="Modbus API.lvclass" Type="LVClass" URL="/&lt;vilib&gt;/NI/Modbus Library/API/Modbus API.lvclass"/>
<Item Name="Device Data Model.lvclass" Type="LVClass" URL="/&lt;vilib&gt;/NI/Modbus Library/Data Model/Device Data Model.lvclass"/>
<Item Name="Master Function Definition.lvclass" Type="LVClass" URL="/&lt;vilib&gt;/NI/Modbus Library/Master Function Definition/Master Function Definition.lvclass"/>
<Item Name="Modbus Master.lvclass" Type="LVClass" URL="/&lt;vilib&gt;/NI/Modbus Library/API/Master/Modbus Master.lvclass"/>
<Item Name="Bits to Bytes.vi" Type="VI" URL="/&lt;vilib&gt;/NI/Modbus Library/Utility/Bits to Bytes.vi"/>
<Item Name="U16s to Bytes.vi" Type="VI" URL="/&lt;vilib&gt;/NI/Modbus Library/Utility/U16s to Bytes.vi"/>
<Item Name="Bytes to Bits.vi" Type="VI" URL="/&lt;vilib&gt;/NI/Modbus Library/Utility/Bytes to Bits.vi"/>
<Item Name="Bytes to U16s.vi" Type="VI" URL="/&lt;vilib&gt;/NI/Modbus Library/Utility/Bytes to U16s.vi"/>
<Item Name="RTU Data Unit.lvclass" Type="LVClass" URL="/&lt;vilib&gt;/NI/Modbus Library/Transmission Data Unit/RTU/RTU Data Unit.lvclass"/>
<Item Name="Serial Slave.lvclass" Type="LVClass" URL="/&lt;vilib&gt;/NI/Modbus Library/Network Protocol/Network Slave/Serial/Serial Slave.lvclass"/>
<Item Name="Network Slave.lvclass" Type="LVClass" URL="/&lt;vilib&gt;/NI/Modbus Library/Network Protocol/Network Slave/Network Slave.lvclass"/>
<Item Name="Generate UUID.vi" Type="VI" URL="/&lt;vilib&gt;/NI/Modbus Library/Utility/Generate UUID.vi"/>
<Item Name="ASCII Data Unit.lvclass" Type="LVClass" URL="/&lt;vilib&gt;/NI/Modbus Library/Transmission Data Unit/ASCII/ASCII Data Unit.lvclass"/>
<Item Name="API Main.lvlib" Type="Library" URL="/&lt;vilib&gt;/NI/Modbus Library/API/Wrapper/API Main.lvlib"/>
<Item Name="Modbus Slave.lvclass" Type="LVClass" URL="/&lt;vilib&gt;/NI/Modbus Library/API/Slave/Modbus Slave.lvclass"/>
<Item Name="TCP Slave.lvclass" Type="LVClass" URL="/&lt;vilib&gt;/NI/Modbus Library/Network Protocol/Network Slave/TCP/TCP Slave.lvclass"/>
<Item Name="TCP Shared Components.lvlib" Type="Library" URL="/&lt;vilib&gt;/NI/Modbus Library/TCP Shared Components/TCP Shared Components.lvlib"/>
<Item Name="Standard Data Model.lvclass" Type="LVClass" URL="/&lt;vilib&gt;/NI/Modbus Library/Standard Data Model/Standard Data Model.lvclass"/>
<Item Name="IP Data Unit.lvclass" Type="LVClass" URL="/&lt;vilib&gt;/NI/Modbus Library/Transmission Data Unit/IP/IP Data Unit.lvclass"/>
<Item Name="TCP Master.lvclass" Type="LVClass" URL="/&lt;vilib&gt;/NI/Modbus Library/Network Protocol/Network Master/TCP/TCP Master.lvclass"/>
<Item Name="Open a Document on Disk.vi" Type="VI" URL="/&lt;vilib&gt;/Platform/browser.llb/Open a Document on Disk.vi"/>
<Item Name="Open URL in Default Browser core.vi" Type="VI" URL="/&lt;vilib&gt;/Platform/browser.llb/Open URL in Default Browser core.vi"/>
</Item>
</Item>
<Item Name="Build Specifications" Type="Build">
Expand Down
16 changes: 8 additions & 8 deletions MB Master.vipb
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
<VI_Package_Builder_Settings Version="0.6" Created_Date="2014-11-11 02:31:37" Modified_Date="2018-03-05 06:56:25" Creator="leonidas" Comments="" ID="58733660fd19311d416fc1ab73080241">
<VI_Package_Builder_Settings Version="0.6" Created_Date="2014-11-11 02:31:37" Modified_Date="2018-07-09 13:06:45" Creator="leonidas" Comments="" ID="40ce9cc5f2dbb327e12ee941ceefe435">
<Library_General_Settings>
<Package_File_Name>MB_Master</Package_File_Name>
<Library_Version>1.3.1.4</Library_Version>
<Library_Version>1.3.2.10</Library_Version>
<Auto_Increment_Version>false</Auto_Increment_Version>
<Library_Source_Folder>..\builds\MB Master\Source Distribution</Library_Source_Folder>
<Library_Output_Folder>..\builds\MB Master</Library_Output_Folder>
Expand Down Expand Up @@ -47,13 +47,13 @@ It supports RTU, ASCII and TCP modes with the following function codes:
0x2B/0x0E - Read Device Identification

Supports sharing a COM port across multiple Modbus sessions using VISA locks (10 second timeout).
Supports sharing a Modbus session across multiple communication loops using a DVR as a mutex.</Description>
Supports sharing a Modbus session across multiple communication loops.</Description>
<Copyright/>
<Packager>Ryan Porter</Packager>
<URL>https://lavag.org/files/file/286-plasmionique-modbus-master/</URL>
<Release_Notes>Re-Added accessor for VISA resource. Some might find this useful for dealing with certain USB to serial adapters.
Added Modbus Comm Tester to tools menu.
Added MB VISA lock functions to palette.</Release_Notes>
<Release_Notes>Added Device ID Objects to Modbus Comm Tester
Implemented transaction IDs for Modbus TCP
Added PDU request and PDU response to ADU class</Release_Notes>
</Description>
<Destinations>
<Toolkit_VIs>
Expand Down Expand Up @@ -504,7 +504,7 @@ Added MB VISA lock functions to palette.</Release_Notes>
<Path>..\builds\MB Master\Source Distribution\MB_Master\Read Device Identification.vi</Path>
<VI_Title/>
</Items_Data>
<GUID>F468BF886A5F747AE6E7A7BD6B7C1A94</GUID>
<GUID>F92C64D0B7863D611A40F955589E2FC2</GUID>
</Functions_Palette_Data>
<Functions_Palette_Data>
<Parent_Palette_Index>0</Parent_Palette_Index>
Expand Down Expand Up @@ -581,7 +581,7 @@ Added MB VISA lock functions to palette.</Release_Notes>
<Path>..\builds\MB Master\Source Distribution\MB_VISA_Lock\Dispose VISA Lock Ref.vi</Path>
<VI_Title/>
</Items_Data>
<GUID>3A6F122368350D9497D02D9184D23672</GUID>
<GUID>C3BDB1A638B2C60C4A82B464A262AC30</GUID>
</Functions_Palette_Data>
</Library_Palette_Definition>
</VI_Package_Builder_Settings>
Binary file modified MB_ADU/Build ADU.vi
Binary file not shown.
62 changes: 52 additions & 10 deletions MB_ADU/MB_ADU.lvclass

Large diffs are not rendered by default.

Binary file added MB_ADU/Read PDU Req.vi
Binary file not shown.
Binary file added MB_ADU/Read PDU Resp.vi
Binary file not shown.
Binary file modified MB_ADU/Read RX Data.vi
Binary file not shown.
Binary file modified MB_ADU/Read RX Timestamp.vi
Binary file not shown.
Binary file modified MB_ADU/Read Slave ID.vi
Binary file not shown.
Binary file modified MB_ADU/Read TX Data.vi
Binary file not shown.
Binary file modified MB_ADU/Read TX Timestamp.vi
Binary file not shown.
Binary file added MB_ADU/Write PDU Req.vi
Binary file not shown.
Binary file added MB_ADU/Write PDU Resp.vi
Binary file not shown.
Binary file modified MB_ADU/Write RX Data.vi
Binary file not shown.
Binary file modified MB_ADU/Write RX Timestamp.vi
Binary file not shown.
Binary file modified MB_ADU/Write Slave ID.vi
Binary file not shown.
Binary file modified MB_ADU/Write TX Data.vi
Binary file not shown.
Binary file modified MB_ADU/Write TX Timestamp.vi
Binary file not shown.
Binary file modified MB_ADU_ASCII/Build ADU_ASCII.vi
Binary file not shown.
Binary file modified MB_ADU_ASCII/RX ADU.vi
Binary file not shown.
Binary file modified MB_ADU_ASCII/TX ADU.vi
Binary file not shown.
Binary file modified MB_ADU_RTU/Build ADU_RTU.vi
Binary file not shown.
Binary file modified MB_ADU_RTU/RX ADU.vi
Binary file not shown.
Binary file modified MB_ADU_RTU/TX ADU.vi
Binary file not shown.
Binary file modified MB_ADU_TCP/Build ADU_TCP.vi
Binary file not shown.
16 changes: 8 additions & 8 deletions MB_ADU_TCP/MB_ADU_TCP.lvclass

Large diffs are not rendered by default.

Binary file modified MB_ADU_TCP/RX ADU.vi
Binary file not shown.
Binary file modified MB_ADU_TCP/Read Protocol ID.vi
Binary file not shown.
Binary file modified MB_ADU_TCP/Read Transaction ID.vi
Binary file not shown.
Binary file modified MB_ADU_TCP/TX ADU.vi
Binary file not shown.
Binary file modified MB_ADU_TCP/Write Protocol ID.vi
Binary file not shown.
Binary file modified MB_ADU_TCP/Write Transaction ID.vi
Binary file not shown.
Binary file modified MB_Master/Read ADU.vi
Binary file not shown.
Binary file modified MB_Master_Serial/Open Serial Session.vi
Binary file not shown.
Binary file modified MB_Master_Serial/Read ADU.vi
Binary file not shown.
Binary file modified MB_Master_Serial/Read Slave ID.vi
Binary file not shown.
Binary file modified MB_Master_Serial/Set Slave ID.vi
Binary file not shown.
Binary file modified MB_Master_TCP/Close Session.vi
Binary file not shown.
Binary file added MB_Master_TCP/Core.vi
Binary file not shown.
289 changes: 174 additions & 115 deletions MB_Master_TCP/MB_Master_TCP.lvclass

Large diffs are not rendered by default.

Binary file modified MB_Master_TCP/Open TCP Session.vi
Binary file not shown.
Binary file added MB_Master_TCP/QMgr_Construct.vi
Binary file not shown.
Binary file added MB_Master_TCP/QMgr_DeQueue.vi
Binary file not shown.
Binary file added MB_Master_TCP/QMgr_EnQueue.vi
Binary file not shown.
Binary file modified MB_Master_TCP/Querry.vi
Binary file not shown.
Binary file added MB_Master_TCP/RX.vi
Binary file not shown.
Binary file modified MB_Master_TCP/Read ADU.vi
Binary file not shown.
Binary file modified MB_Master_TCP/Read Session Valid.vi
Binary file not shown.
Binary file modified MB_Master_TCP/Read Slave ID.vi
Binary file not shown.
Binary file modified MB_Master_TCP/Set Slave ID.vi
Binary file not shown.
Binary file added MB_Master_TCP/TX.vi
Binary file not shown.
Binary file added MB_Master_TCP/Tester.vi
Binary file not shown.
Binary file modified Tools/Modbus Comm Tester.vi
Binary file not shown.
Binary file added Tools/Transaction ID Test.vi
Binary file not shown.

0 comments on commit 6aab190

Please sign in to comment.