Create a Windows Modbus Master Program using Microsoft .NET
4.9 (35 ratings)
Instead of using a simple lifetime average, Udemy calculates a course's star rating by considering a number of different factors such as the number of ratings, the age of ratings, and the likelihood of fraudulent ratings.
167 students enrolled
Wishlisted Wishlist

Please confirm that you want to add Create a Windows Modbus Master Program using Microsoft .NET to your Wishlist.

Add to Wishlist

Create a Windows Modbus Master Program using Microsoft .NET

Create your own custom Windows Modbus Master and Basic Human Machine Interface (HMI) using Microsoft .NET programming
4.9 (35 ratings)
Instead of using a simple lifetime average, Udemy calculates a course's star rating by considering a number of different factors such as the number of ratings, the age of ratings, and the likelihood of fraudulent ratings.
167 students enrolled
Created by Emile Ackbarali
Last updated 3/2017
English
Curiosity Sale
Current price: $10 Original price: $40 Discount: 75% off
30-Day Money-Back Guarantee
Includes:
  • 2 hours on-demand video
  • 2 Supplemental Resources
  • Full lifetime access
  • Access on mobile and TV
  • Certificate of Completion
What Will I Learn?
  • Have an understanding of the Visual Studio 2017 Integrated Development Environment
  • Create a Windows Forms application
  • Write VB.NET program code to communicate with a Modbus Server via TCP/IP
  • Write VB.NET program code to communicate with a Modbus Slave via a Serial Connection
  • Display data values read via Modbus within the Windows Application
  • Design user input to allow a user to set data values in a Modbus Server/Slave via the Windows Application
  • Implement basic graphical objects in the Windows Application for display of data
  • Build a very basic but custom Human Machine Interface
View Curriculum
Requirements
  • Basic working knowledge of the Modbus RTU protocol.
  • Familiarity with the installation of software applications on the Windows OS platform
  • Elementary understanding of the "BASIC" programming language
Description

If you design and implement projects in the area of Process Automation or SCADA, you will know from your experience that "one size does not fit all" when it comes to data acquisition and Human Machine Interfaces (HMIs). There is always some type of customization to be done. Always some feature that the standard HMI software does not offer. 

And sometimes, using a very expensive HMI with all sorts of bells and whistles for a small project can just be overkill. There are times when you just need a very simple application that acquires a few data points from a Modbus network and displays them on a computer screen.

These are the reasons for this course!

I teach you how to use FREE TOOLS with some basic programming to create your own Modbus Master application and Human Machine Interface. 

If you apply yourself in this course and execute all that I ask you to do, then at the end, you would have a finished Windows Modbus Application that you can customize to your heart's content!

This is the start of your journey into a whole new area of Process Automation / SCADA and one that is increasingly in very high demand!

Looking forward to seeing you on the inside!

Who is the target audience?
  • Electrical Engineers
  • Electrical Technicians
  • Electrical Tech or Engineering Students
  • Process Control Technicians and Engineers
  • Process Automation Engineers
  • Programmers working in the Process Automation field
Students Who Viewed This Course Also Viewed
Curriculum For This Course
28 Lectures
01:57:26
+
Introduction
1 Lecture 03:07
+
Downloading the Software Applications
4 Lectures 11:30

Modsim32 is a Modbus slave simulation application. It will be used to provide data values that will be read by the Windows Modbus Master application.

Preview 01:44

This is a free .NET library which is used in the Modbus Master application and implements the Modbus protocol. It significantly reduces the amount of program code that has to be written.

Downloading the EasyModbusTCP .NET library
03:18

Virtual Serial Port kit is an application that creates virtual com ports in Windows. It creates the ports in pairs and ties them together in a null modem fashion.

Downloading Virtual Serial Port Kit
02:03

Microsoft Visual Studio Community IDE is the software that will be used to develop the Windows Modbus Master application. It is completely FREE for individual use. 

Downloading Microsoft Visual Studio Community IDE
04:25
+
Quick Start
5 Lectures 20:56

The learning strategy of the quick start section will be to build a very basic program first, get it working and then explain how it works. 

The Learning Strategy - Let's Jump In
03:03

Modsim32 is configured as a Modbus TCP/IP Server. The Modbus Master application will read data from Modsim32. 

Preview 03:15

Visual Studio Community 2017 is briefly introduced and the first project is created and run!

Building our first Modbus Master Application - Part 2
04:45

Objects called Windows controls are placed on the main form in the application. Selected properties of the controls are then changed. 

Building our first Modbus Master Application - Part 3
04:04

The code that runs the application is inserted and the completed application is run. 

The Best Part - Running the Application!
05:49
+
Explaining the "Quick Start" Application
3 Lectures 17:56

Windows forms programming involves the understanding of properties, methods and events. This lecture gives a basic and brief overview of the meaning of these terms and their usage.

Understanding Properties, Methods and Events
03:41

A look at the code that creates the EasyModbus object and forms the initial connection to the server.

Preview 07:01

A look at the code that performs the actual read of the holding register and displays the value returned.

Examining the Quick Start code - Part 2
07:14
+
Implementing Polling in our Application using a Timer
2 Lectures 07:47

The Timer object is added to the form in the application. It's properties are then set so that the timer "ticks" every 3 seconds.

Adding the Timer object and setting it's Properties
03:53

The appropriate code is then added to the Tick event handler and the application is run. Testing is done by changing the value of the target holding register in Modsim32.

Adding code to the Timer Tick Event and Running the Application
03:54
+
Expanding the Application with additional Modbus Read/Write Functions
7 Lectures 34:43

The Read Input Register Command is implemented in Code and tested.

Implementing the Read Input Register Command
06:21

Two label objects are added to identify the holding as well as the input register values being read.

Adding more Label Objects for Human Readability
02:13

The Read Input Status Command is implemented in Code and tested.

Implementing the Read Input Status Command
07:07

The Read Coil Status Command is implemented in Code and tested.

Implementing the Read Coil Status Command
04:19

Since the Timer object runs the reading of the Modbus data, there is no longer a need for the original Button that was used. It is therefore removed.

Removing the original Button Object
02:05

The Write Single Register Command is implemented in Code and tested.

Implementing the Write Single Register Command
07:13

The Write Single Coil Command is implemented in Code and tested.

Implementing the Write Single Coil Command
05:25
+
Modifying the Application for Serial Communication
2 Lectures 08:36

Virtual Serial Port is started and configured. Modsim32 is then disconnected from the TCP/IP network and connected to COM5 created by Virtual Serial Port.

Setting up Virtual Serial Port and Modsim32 for Serial Communication
03:57

The Modbus Master is modified to communicate serially. It is connected to the COM4 port created by Virtual Serial Port. It is then run and tested using Modsim32.

Modifying the Modbus Master for Serial Communication
04:39
+
Creating a Release Version of the Application
3 Lectures 10:10

A release version is created.

Building the Application as a Release Version
01:55

A text box object is programmed to change colour when the input status changes. 

Adding a Graphical object to represent an Input Status (Discrete)
04:23

A progress bar object is programmed to change fill based on the value in the input register.

Adding a Graphical object to represent an Input Register (Analog)
03:52
+
Conclusion
1 Lecture 02:41
The End - Where To Go From Here
02:41
About the Instructor
Emile Ackbarali
4.5 Average rating
1,036 Reviews
2,520 Students
13 Courses
Software Developer, Systems Integrator and Entrepreneur

I have been working in the fields of Software Development, Software Systems Integration and Process Automation since 1996. In 2003, I stepped out on my own and started working for myself providing software development and systems integration services to small and medium businesses.

I am also associated with a great company called Mora Systems Limited that under the leadership of it's Managing Director has produced innovative and outstanding products and services in the fields of GIS and Cellular based SCADA.

Teaching has always been a passion for me. I have taught at the tertiary level for many years on the subjects of programming, control systems as well as systems integration. In the last few years I found myself incorporating more and more videos into the curriculum with amazing results.

When I heard of uDemy I just could not help but sign up. With teaching in a classroom, you can reach only so many students, but with uDemy you can reach the world! I plan to publish and promote as many courses as I possibly can on the uDemy platform.