Programming Language for Modbus + HMI

  • Thread starter Christopher Bärwald
  • Start date

Thread Starter

Christopher Bärwald

Hello guys. This is my first post here, so be gentle :D

I have a rack with individual cards that monitor vibration signals and transfer the values+alarm limits etc via modbus. (Slave) I have made some HMI with Citect Scada for this in the past, but now I want to make a windows application that simulates this rack (slave) which sets i.e modbus address 40001 - 40020 to specific values. I also want to start making a windows application (HMI) with trending of these signals. I have some basic knowledge on programming i C from some years ago, but now I want to make my own application for this, SO we dont need to pay licence for the HMI we use now. I know I have a long way to go and i'm in no hurry to get this finished. but I want to know what you think is the best language to to this in? So I dont learn one and find out later that its no good on specific parts.

Thank you for all your help :)
I was faced with this same question many years ago and I elected to write I/O DLLs via Visual C++ 6.0 and the WIN16/32 Graphic Interfaces using Visual Basic 6.0. Works for me.

Maybe it is the cost/feature set that has you against a commercial HMI. I assume your time cost money. Or it could be that cost is not an issue and you want to learn how to program or some other reason.

Maybe PeakHMI would work for you.

As to what programming language to use; really any language will work that can run on the operating system you select.

All programming languages have plus and minus points but, any modern high language will work.

Good luck,


James Ingraham

(A) Sounds like a job for pvbrowser.

(B) If you really insist on writing it yourself it shouldn't be too bad. For new, Windows-based development, C# is the obvious way to go.

(C) Seriously, check out pvbrowser.

-James Ingraham
Sage Automation, Inc.
> (A) Sounds like a job for pvbrowser.

Thanks for hinting to our project.

In pvbrowser you can code either with C/C++ or with Lua.
There are multiple advantages of using the most recent platforms and tools: .NET framework, LINQ, Entity Framework, C#, MS Visual Studio 2008 and free MS SQL Server Express ed. server.