Disclosure: when you buy through links on our site, we may earn an affiliate commission.

How To Program Arduino for SCADA HMI Communications via OPC

Learn how to program an Arduino to communicate with an OPC-Compliant SCADA HMI application via an OPC server
(90 reviews)
519 students
Created by


CourseMarks Score®







Platform: Udemy
Video: 1h 17m
Language: English
Next start: On Demand

Table of contents


The Arduino is being used more and more every day for small scale SCADA and Automation projects, due to it’s low cost and ease of connecting with various types of I/O devices. In many projects there is a need to connect the controller to a SCADA Human Machine Interface (HMI) application for the purposes of data visualization.
OPC has become the essential de-facto standard for HMI communications with controllers from different vendors. It becomes quite useful, therefore, for an Arduino to be able to communicate with a SCADA HMI application via OPC.
That is what this course teaches you to do!
In this course, you will learn …
1. How to download and install a FREE OPC server designed for the Arduino.
2. How to program the Arduino so that it is able to communicate with an OPC server via serial and network media.
3. How to use a simple OPC client to test OPC communication with the Arduino via the OPC server.
4. How to configure a simple SCADA HMI to read data from and write data to the Arduino via OPC.
The course has ready-to-go code that you can download as well as detailed wiring diagrams that you can use to build your own automation projects.

You will learn

✓ Download and Install an OPC server application for Arduino
✓ Download and Install OPC client software
✓ Program an Arduino Uno for serial communication with an OPC server
✓ Program an Arduino Uno for network communication with an OPC server
✓ Use an OPC client to test OPC server communication to an Arduino
✓ Configure a simple OPC-compliant HMI for network communications with an OPC server for Arduino


• Basic working knowledge OLE for Process Control (OPC)
• Familiarity with the installation of software applications on the Windows OS platform
• Elementary understanding of the “C” programming language
• Basic understanding of elementary electronics
• Familiarity with the Arduino Uno prototyping system and it’s programming

This course is for

• Electrical Engineers
• Electrical Technicians
• Electrical Tech or Engineering Students
• Process Control Technicians and Engineers
• Process Automation Engineers
• Programmers working in the Process Automation field
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. 
Browse all courses by on Coursemarks.
Platform: Udemy
Video: 1h 17m
Language: English
Next start: On Demand

Students are also interested in