添加一个模块声明和一个功能块池。功能块用于模块功能实现,在我们的示例中模块和功能块 "Room" 。功能块扩展的基本类型是 "AC.Module",此模块是 "AC_ModuleBase" 函数库以及提供广泛的性能和功能。一直以来,我们不希望之后进行改变,所有的属性以及函数,都是功能块创建的,可以被删除。
定义以MODULE开始,接着是模块的名称以及IMPLEMENTED_BY功能块的名称进行模块的实施,这是在这种情况下,功能块Room。大多数情况下选择MetaData并进行定义。所有选择的参数的详细信息参阅页面模块定义。
因为 "Room" 在示例中是一个顶层模块,接着的选择定义是 "Toplevel" 部分。后者允许定义一个全局变量列表名(GVL_name) 编译之后包含顶层功能块实例。除此之外至少一个任务必须定义为 "Toplevel" 动作,所以在我们的示例中Standart_Task被作为一个 "MEDIUM" 任务并且设置CREATE_IF_MISSING 和 UPDATE_IOS。
所有的图标和字符串,用于模块定义以及占位符图标定义 (参数Desc, Icon_16 和 Icon_32) 被从文本列表以及图像池中进行引用。即使如此,一个适当的文本列表TL 以及图形池 IP,包含所有的相关图标以及文本,必须被创建并添加到 POU池中。