ASComm.NET - Siemens S7 Driver for .NET Framework Developers
Automated Solutions ASComm.NET is a fully-managed .NET component that delivers communications connectivity between .NET applications and a broad range of industrial devices (PLC, PAC, Instrumentation, etc.) using popular communications protocols.
Visual Studio developers can now quickly and easily build HMI, SCADA, Historian, MES, ERP and other custom applications using ASComm.NET for the communications engine.
All supported protocol drivers are implemented in the ASComm.NET component, providing a single, consistent API regardless of the underlying protocols or hardware devices. Each driver can be licensed individually, so you only pay for the drivers that you are developing with.
Drivers
Drivers available for the following brands/models
- Allen Bradley ControlLogix, CompactLogix, GuardLogix, Micro800 via Ethernet
- Allen-Bradley PLC-5, SLC 500, MicroLogix via Ethernet
- GE/Emerson - Series 90, VersaMax, PACSystems RXi, RX3i, RX7i via Ethernet
- Modbus/TCP Client via Ethernet
- Modbus RTU/ASCII master via serial port or Ethernet
- Siemens S7-1500, 1200, 400, 300, 200 via Ethernet
Features & Benefits
Siemens S7 Driver
- Does not require Siemens or 3rd party drivers.
- Does not require OPC
- Supports UDTs
- Read and write entire UDTs and PDTs, including arrays and nested UDTs
- Extremely high performance - capable of < 5 mSec transaction time
- Highly optimized to minimize communications transactions
General
- Tag database can be configured via code or visual designer
- Abstract base classes allow you to write generic code that works with all drivers
- x86, x64, and Any CPU compatible
- Broad .NET target support including Web, Windows, WPF, console, and service apps.
- Can be configured programmatically or visually
- Visually design entire communications setup without writing a single line of code
- Excel Add-in allows you to quickly and easily populate Excel spreadsheets with no programming.
- Runs on Linux with Mono framework
- Synchronous and asynchronous read/write methods
- Data change notifications
- Provides common API across all driver classes
- No limit on number of devices or data points
- Multi-threaded for high data throughput
- Includes extensive help system
- Example applications with VB and C# source code included.
- Easily connect business systems to factory floor systems.
- Immediate Internet delivery and online license activation
- No runtime fees or keys for qualified applications
Product Screenshots
The ASComm.NET Portal application is a convenient way to access ASComm.NET development resources.
ASComm.NET comes with a variety of Example Applications, C# and VB Example Projects, Excel Add-in, License Manager, Help System, Update Check, and Web resources to help you get going quickly.
Simple Read and Write Example Application
Structured Data Read and Write Example Application
Simple Code Examples
C#
// Declare using statement
using SIS7 = AutomatedSolutions.Win.Comm.SI.S7;
// This functions creates all required ASComm objects,
// sets initial properties, performs a write and read,
// then disposes the ASComm objects
void SimpleReadAndWrite()
{
// Create a Channel
// Siemens channels have no settable properties
SIS7.Net.Channel myChannel = new SIS7.Net.Channel();
// Create a device
// Preset properties to S7-1200 CPU at IP Address 192.168.0.121, rack 0, slot 2
SIS7.Device myDevice = new SIS7.Device("192.168.0.121,0,2", SIS7.Model.S7_1200);
// Create Group
// Preset properties to 500 mSec update rate and active flag set to false.
SIS7.Group myGroup = new SIS7.Group(false, 500);
// Create an item
// // Preset hardware tag name (data block) to 'DB3.DBB4', elements to 1, and data type to byte
SIS7.Item myItem = new SIS7.Item("DB3.DBB4", 1, DataType.BYTE);
// Add device to channel
myChannel.Devices.Add(myDevice);
// Add group to device
myDevice.Groups.Add(myGroup);
// Add item to group
myGroup.Items.Add(myItem);
//Write one tag
try
{
// Perform a write with value from text box
myItem.Write(textBoxItemWrite.Text);
}
catch (Exception ex)
{
// Error occurred, implement error handler
}
// Read one tag
try
{
// Perform a read, save value to text box
myItem.Read();
textBoxItemRead.Text = myItem.Values[0].ToString();
}
catch (Exception ex)
{
// Error occurred, implement error handler
}
// Dispose channel at application shutdown
myChannel.Dispose();
}
Visual Basic
' Declare imports statement
Imports SIS7 = AutomatedSolutions.Win.Comm.SI.S7
' This functions creates all required ASComm objects,
' sets initial properties, performs a write and read,
' then disposes the ASComm objects
Private Sub SimpleReadAndWrite()
' Create a channel
' Siemens channels have no settable properties
Dim myChannel As New SIS7.Net.Channel()
' Create a device
' Preset properties to S7-1200 CPU at IP Address 192.168.0.121, rack 0, slot 2
Dim myDevice As New SIS7.Device("192.168.0.121,0,2", SIS7.Model.S7_1200)
' Create Group with 500 mSec update rate and active flag set to false.
Dim myGroup As New SIS7.Group(False, 500)
' Create an item
' Preset hardware tag name (data block) to 'DB3.DBB4', elements to 1, and data type to byte
Dim myItem As New SIS7.Item("DB3.DBB4", 1, DataType.BYTE)
' Add device to channel
myChannel.Devices.Add(myDevice)
' Add group to device
myDevice.Groups.Add(myGroup)
' Add item to group
myGroup.Items.Add(myItem)
'Write one tag
Try
' Perform a write with value from text box
myItem.Write(textBoxItemWrite.Text)
Catch ex As Exception
' Error occurred, implement error handler
End Try
' Read one tag
Try
' Perform a read, save value to text box
myItem.Read()
textBoxItemRead.Text = myItem.Values(0).ToString()
Catch ex As Exception
' Error occurred, implement error handler
End Try
' Dispose channel at application shutdown
myChannel.Dispose()
End Sub
Automated Solutions Website
ASComm.NET Product Page
Siemens S7 Driver Page
Download 30-day Trial
Revision History
License Agreement
Support Page
707-578-5882 voice
sales@automatedsolutions.com
https://www.automatedsolutions.com
Company
Automated Solutions develops and sells software products for industrial and process automation. We also provide custom development services using our products for organizations that need custom HMI, SCADA, interface, or logging applications, but are short on development resources.
Our software products do not target specific industries. They are used in diverse industries such as agriculture, automotive, mining, gas, building, construction, food & dairy, beer, wine & spirits, textile, mills, and petroleum. You can even find our software on submarines, in amusement parks, and Internet telescopes.
Founded in 1994, our software products are now used by over 3300 companies globally to build high performance, cost effective HMI, SCADA, machine control, and data logging applications.
Other products and companies referred to herein are trademarks or registered trademarks of their respective companies or mark holders.