基于STM32的直接数字控制器系统设计与实现
2018-03-23林智伟玄金龙亓金成李雨帘高倩
林智伟 玄金龙 亓金成 李雨帘 高倩
摘 要为满足安全稳定的现场智能控制的需求,对基于STM32的直接数字控制器的设计进行了研究。采用模块化设计和在线编程等技术,详细介绍了控制器的硬件体系结构和各软件功能模块的设计,并对软硬件功能等进行了测试。结果表明,控制器具有显示直观准确、操作方便、运行稳定可靠等优点,适用于各类监控及控制系统。
【关键词】智能控制 STM32 直接数字控制器 传感器
随着自动控制系统智能化、高效化、节能化的不断发展,早期采用中小规模集成电路的直接数字控制器已被市场淘汰。而作为一种现场控制器,直接数字控制器(direct digital controller,DDC)具有独立的控制程序,能够独立完成过程控制的全部要素,具有一定的不可替代性。因此,基于科技发展与工业实际应用需要,设计一款以嵌入式开发为基础的直接数字控制器具有充分的理论与实际应用价值。
1 总体设计
1.1 设计方案
本控制器选用ST(意法半导体)公司的32位ARM Cortex-M4架构的STM32F407系列单片机作为主处理芯片。在设计硬件电路过程中,各部分均采用独立电源供电;隔离电路采用光耦隔离与最新的磁隔离技术相结合的方案;ADC与DAC均采用16位分辨率,结合独立参考电压源与输入输出调理电路保证了模拟量数据的可靠性;设计使用SHT21温湿度传感器对控制器工作的环境因素进行实时监控;借助成熟的TFT触摸屏技术实现数据的实时显示与人机交互功能。
1.2 系统框图
直接数字控制器主要由五部分组成,分别是主控制器、电源、输入口、输出口、显示屏。直接数字控制器通过模拟输入口和数字输入口对传感器或者工业变送器上传的电信号进行采集,经过滤波、转换后送到主控制器单元;主控制器单元对传送过来信号进行分析、处理后,按照程序设计输出数字信号,输出信号或经过数字输出口转换电平、或经过模数转换器转换成模拟量后输出,对执行器进行控制。系统框图如图 1 所示。
2 系统硬件设计
2.1 电源电路
在设计电源电路时,各部分均采用独立电源供电。输入级首先采用成品的开关电源将220V/50Hz的市电转换成24V的直流电,后采用DC/DC定电压非稳压模块与线性LDO相结合的方式供电,采用外部精密电压源为ADC与DAC提供参考电压。
2.2 模拟输入电路
AD7606内部自带运放调理电路,因此输入通道的外围电路相对简单,使用瞬态抑制(TVS)二极管作为防静电保护器件。模拟量输入通道可接收±10V信号,具有防静电、限流、过压保护能力。
2.3 模拟输出电路
模拟输出电路采用TI公司生产的16位数模转换器DAC8563和 OPA4177运放及其外围电路组成模拟输出电路。使用16Bits、双通道模数转换芯片进行模拟量的输出,其使用单5V供电,REF192作为精密电压源提供参考电压。输出后级接OPA4177运放进行放大和跟随。
2.4 数字输入电路
数字输入电路中,在继电器、数字式光耦与数字隔离器之间选择数字光耦TLP521作为数字输入电路的隔离器件。开关光电耦合器TLP521作为电平转换器,将24V信号转换为3.3V信号,并使用LED灯作为通断指示。
2.5 数字输出电路
数字输出电路同样使用光电耦合器作为数字量输出通道的隔离器件,但是在外部使用了三极管放大器来扩流、其最大输出电流达1A,开关频率可达20kHz。
3 系统软件设计
直接数字控制器的软件部分主要包括扫描程序、输入程序、输出程序和数据处理程序三大部分。扫描程序主要扫描仪表的按键和触摸屏,实现从按键输入数据或设置功能,完成对处理后的数据进行显示的任务;输入程序主要完成数据采集、数据存储和数据通信的任务;输出程序主要完成对设定的数字量和模拟量精确输出的任务;数据处理程序数据滤波、运算和分析等任务。软件整体框图如图 2 所示。
4 测试过程及结果
使用模拟量输出通道1作输出测试,模拟量输出精度测试如表1所示。
测试结果表明,DDC在正常工作下,模拟量输出精度能达到0.3%之内,达到了预期目标。
5 结语
本控制器采用多项嵌入式先进技术,具有使用简单、技术成熟、开发相对容易和开发周期短的优点。控制器具有人机交互界面,易于及时发现并排除故障;同时,控制器通道多,可作为传感器较多的工业生产场所或者楼宇自动化的核心控制器使用。系统测量精度高、运算速度快、控制效果好、运行稳定,符合设计预期,能夠满足功能要求及操作环境要求,具有一定的工程应用价值。
参考文献
[1]李国光,王文海.基于ARM7的暖通空调直接数字控制器设计[J].自动化仪表,2011,32(07):11-17.
[2]华成英,童诗白.模拟电子技术基础[M].北京:高等教育出版社,2011:210-285.
作者单位
青岛理工大学 山东省青岛市 266520