I’ve always published content targeted to mid-level C# developers. However quite a chunk of emails that I receive are from people getting started with C#. Hopefully this article will be a path for these people, a guide on learning how to do an HMI step by step and get consistent ...
Read More »How to communicate to an Allen Bradley Plc with C# and LibPlcTag Ethernet/IP library
LibPlcTag is a library that I used recently to communicate with Allen Bradley plc. It’s a C++ open source library and it can communicate with most of the Allen Bradley plcs, like Micrologix, CompactLogix, ControlLogix, SLC and Plc5. LibPlcTag works on the Ethernet/Ip stack and is LGPL licensed (you are ...
Read More »How to record a video with C# – WPF and AForge
In this article we will see how to record a video and a snapshot from a camera (USB or IP camera), with C# and AForge. AForge is a library used for image acquisition and Image Processing, for example to analyse images and detect objects with a Camera. In a previous ...
Read More »HMI with C# and WPF part 3: Communicating with multiple plc (S7 and Modbus)
In the previous articles of this series we saw how to communicate with a single Siemens S7 plc. But it happens frequently to have to communicate with multiple PLCs. In that case, our HMI has to read and aggregate the data that are coming from the field and to react/notify ...
Read More »HMI with C# and WPF part 2: Navigation with PRISM
This article is part of a series that explains how to write an HMI with C# and WPF. Part 1: getting started with MVVM and plc driver Part 2: this article Navigation in WPF is one of the most complicated topics, because it can be implemented in many different ways, ...
Read More »WPF navigation with dependency injection (DI/IOC): part 2
This article explains how to create dialogs and modal windows in a WPF application that uses dependency injection. We will use services and factories to abstract the creation of windows and MessageBoxes. We will also see how to write unit tests for MVVM navigation. This is the second part of ...
Read More »WPF navigation with dependency injection (DI/IOC): part 1
This article explains some approaches to create the architecture for a WPF application when using dependency injection. In particular we will see how to navigate through views and how to deal with dialogs, both windows and system dialogs. This article is divided in 2 parts. Part 1 (this article): Creation ...
Read More »Getting started with real-time image processing with C#
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 »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 »