One of the interesting fields in industrial automation is real time image processing and computer vision. It’s quite simple to write applications that access to a camera in C#, both with Windows Forms and WPF, and in this article we will see how to connect to a USB camera (or ...
Read More »Create an MSI/Setup Package for C# with WiX Toolset
WiX Toolset is a free installer. It is xml-based, which means that instead of a UI you can use a single xml file to create your installation package. There is a wide choice of installers on the market, but I prefer WiX, especially when I need to distribute large applications ...
Read More »Modbus with C#: a how-to video
In this video I explain how to use NModbus to read and write values from Modbus holding registers. This video follows the article “Modbus with C#” and should dissipate the doubts around setting up Modbus and using the functions provided. I’m using a modbus simulator and comport simulator, so it ...
Read More »Communication with Siemens S7 Plc with C# and S7.Net plc driver
In this article I explain how to implement a Siemens S7 plc driver by using the open source driver S7.Net. You can find S7.Net sources on GitHub: https://github.com/killnine/s7netplus. How to video Summary Why S7.Net: features and capabilities of the driver Documentation on the driver and S7 protocol Getting started with ...
Read More »Create DPI-aware and resolution-aware WPF applications
In this article i will analyze two techniques that can help you on writing a DPI-aware application and how to scale it properly. There are two common scenarios which force you to make your application to scale to fit the screen: Different resolution Different DPI In fact it’s very common ...
Read More »WPF touch-friendly controls for resistive touch-screen
While it’s fairly common, when working in automation field, to make software that runs on resistive touch-screens, I admit that it’s not a trivial task to make a good user experience, especially with a desktop technology like WPF and C#. In this article I posted some of the problems that ...
Read More »Snap7: an open source Siemens S7 communication library
In a recent comment i came across Snap7, a new Siemens S7 open source library to communicate with Siemens Plc S7-300, S7-400, S7-1200 and S7-1500. It supports many languages (C++, C# and more) and it’s multi-platform. The library can be downloaded from http://snap7.sourceforge.net and the official page of the project ...
Read More »OxyPlot: a new open source chart library for WPF
If you need charts in your application, OxyPlot is probably what you are searching for. You can find the source code on CodePlex and there is an extensive explanation on how to get started in this blog post.
Read More »OPC XML DA Client with C#
With this article I want to show how to create a webservice in C# to communicate with an OPC-XML-DA server, like the one of SIMOTION D plc. OPC-XML-DA is a communication protocol based on SOAP and XML. To connect to a OPC-XML-DA server you need a WSDL file, that defines ...
Read More »Writing your first HMI project in C# – WPF
UPDATE 08/03/2017: I see that this article is quite popular, however it takes a simple approach to get you started, by using timers and other shortcomings. If you want to build your HMI with WPF and MVVM you can check also my new series HMI with C# and WPF. In ...
Read More »