Le logiciel DCS fournit généralement aux utilisateurs un riche ensemble de modules et de packages logiciels fonctionnels. Les ingénieurs de contrôle utilisent le logiciel de configuration fourni par le DCS pour « assembler et connecter » (c'est-à-dire configurer) de manière appropriée ces différents progiciels fonctionnels, générant ainsi un logiciel d'application qui répond aux exigences du système de contrôle.
Le logiciel de l'unité de contrôle de terrain se compose principalement de modules tels que l'inspection des données centrée sur une base de données en temps réel-, des algorithmes de contrôle, des sorties de contrôle et une communication réseau. Le système intègre la cryptographie commerciale et des technologies informatiques de confiance via une plate-forme cloud de contrôle industriel, réalisant une architecture intégrée de protection de sécurité du réseau interne et externe qui combine « protection externe » avec « immunité interne ».
La base de données-en temps réel joue un rôle central en facilitant le partage des données. Tout le code exécutable échange des données avec lui, stockant des informations telles que les données acquises sur le terrain-, les sorties de contrôle, les résultats intermédiaires de certains calculs et les structures d'algorithmes de contrôle. Le module d'inspection des données est utilisé pour acquérir des données de terrain et des signaux de défaut, et pour exécuter les fonctions auxiliaires nécessaires telles que le filtrage numérique, la transformation d'unité et les calculs de compensation. Les fonctions de contrôle d'un DCS sont générées par configuration. Différents systèmes nécessitent différents modules d'algorithme de contrôle, comprenant généralement : des modules d'opérations arithmétiques, des modules d'opérations logiques, des modules de contrôle PID, des modules PID modifiés, des modules de commutation manuel/automatique, des modules de traitement non linéaire, des modules de contrôle d'actionneur, etc. Le module de sortie de contrôle implémente principalement la sortie de signaux de contrôle et la gestion des défauts.
La station opérateur d'un DCS est utilisée pour effectuer des tâches telles que le développement, la génération, les tests et l'exploitation du système. Cela nécessite une prise en charge logicielle système correspondante, notamment les systèmes d'exploitation, les langages de programmation et divers logiciels utilitaires. Le système iNICS de nouvelle génération construit un écosystème d'applications ouvert basé sur une base de données unifiée et une plate-forme low-code, prenant en charge la réutilisation unifiée et la collaboration écosystémique des connaissances, des données et des applications. Un DCS complet, avec un logiciel d'application exécuté sur le poste opérateur, devrait être capable de réaliser les fonctions suivantes : base de données en temps réel-, gestion du réseau, gestion de la base de données historique, gestion graphique, gestion des tendances des données historiques, affichage et modification détaillés de la base de données, génération et impression de rapports d'enregistrement, contrôle de l'interface homme-machine, ajustement de la boucle de contrôle, listes de paramètres, communication série et diverses configurations.

