组态软件在国内是一个约定俗成的概念,并没有明确的定义,它可以理解为“组态式监控软件”。“组态(Configure)”的含义是“配置”、“设定”、“设置”等意思,是指用户通过类似“搭积木”的简单方式来完成自己所需要的软件功能,而不需要编写计算机程序,也就是所谓的“组态”。它有时候也称为“二次开发”,组态软件就称为“二次开发平台”。“监控(Supervisory Control)”,即“监视和控制”,是指通过计算机信号对自动化设备或过程进行监视、控制和管理。
组态软件是有专业性的。一种组态软件只能适合某种领域的应用。组态的概念最早出现在工业计算机控制中,如:DCS(集散控制系统)组态、PLC(可编程控制器)梯形图组态;人机界面生成软件就叫工控组态软件。在其他行业也有组态的概念,如AutoCAD,PhotoShop等。不同之处在于,工业控制中形成的组态结果是用在实时监控的。从表面上看,组态工具的运行程序就是执行自己特定的任务。工控组态软件也提供了编程手段,一般都是内置编译系统,提供类BASIC语言,有的支持VB,现在有的组态软件甚至支持C#高级语言。
组态软件大都支持各种主流工控设备和标准通信协议,并且通常应提供分布式数据管理和网络功能。对应于原有的HMI(人机接口软件,Human Machine Interface)的概念,组态软件还是一个使用户能快速建立自己的HMI的软件工具或开发环境。在组态软件出现之前,工控领域的用户通过手工或委托第三方编写HMI应用,开发时间长,效率低,可靠性差;或者购买专用的工控系统,通常是封闭的系统,选择余地小,往往不能满足需求,很难与外界进行数据交互,升级和增加功能都受到严重的限制。组态软件的出现使用户可以利用组态软件的功能,构建一套最适合自己的应用系统。随着它的快速发展,实时数据库、实时控制、SCADA、通讯及联网、开放数据接口、对I/O设备的广泛支持已经成为它的主要内容,监控组态软件将会不断被赋予新的内容。