Un programma è il livello più alto nella gerarchia dei POU. Funzioni e Function Block possono essere chiamati da un programma.
Un programma può essere caricato solo da un task. D'altra parte i programmi possono chiamare funzioni (FUN) e Function Block (FB), ma funzioni (FUN) e Function Block (FB) non possono chiamare programmi.