嵌入式技术的智能工业仪表设计与实现_第1页
嵌入式技术的智能工业仪表设计与实现_第2页
嵌入式技术的智能工业仪表设计与实现_第3页
嵌入式技术的智能工业仪表设计与实现_第4页
嵌入式技术的智能工业仪表设计与实现_第5页
已阅读5页,还剩33页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

南 阳 理 工 学 院 本科生毕业设计(论文)学 院:电子与电气工程学院专 业: 自 动 化 学 生: 王 尚 指导教师: 高 有 堂 完成日期 2014 年 5 月南阳理工学院本科生毕业设计(论文)嵌入式技术的智能工业仪表设计与实现Design and Implementation of the Intelligent Industrial Instrument Based on Embedded System总 计: 30 页表 格: 3 个插 图 : 25 幅南 阳 理 工 学 院 本 科 毕 业 设 计(论文) 嵌入式技术的智能工业仪表设计与实现Design and Implementation of the Intelligent Industrial Instrument Based on Embedded System学 院: 电子与电气工程学院 专 业: 自动化 学 生 姓 名: 王尚 学 号: 105090640056 指 导 教 师(职称): 高有堂(教授) 评 阅 教 师: 完 成 日 期: 南阳理工学院Nanyang Institute of Technology 嵌入式技术的智能工业仪表设计与实现 嵌入式技术的智能工业仪表设计与实现自动化专业 王尚摘 要 本系统完成了嵌入式技术的智能工业仪表的软件和硬件的设计,实现了温度的采集和控制。本系统属于典型的智能工业仪表的温度信号采集控制系统,用PT100、桥式电路和差分放大电路完成对温度信号的采集,把放大后的信号通过STM32片内12位AD转化为数字信号,进行数字滤波。调用PID控制算法计算出PWM波的占空比,进而通过继电器和接触器控制加热丝的通断;系统使用LCD和按键做为人机交互,并且通过Modbus通信协议和上位机通信,用上位机监控温度变化曲线。 关键词 智能工业仪表;嵌入式技术;温度采集;PID控制 Design and Implementation of the Intelligent Industrial Instrument Based on Embedded SystemAutomation Specialty WANG ShangAbstract: The system has completed software and hardware design of the embedded technology of intelligent industrial instrumentation,which has achieved the acquisition and control of the temperature. This system belongs to a typical temperature signal acquisition and control system of intelligent industrial instrumentation , with PT100, the bridge circuit and a differential amplifier circuit to complete acquisition of the temperature signal. The amplified signal is converted into digital signals through the inner sheet 12 AD of STM32 , and then carry out the digital filter. It call proportional integration differential control algorithm to calculate the duty cycle of the PWM wave and then control heating wire off and on through the relay and contactor. The system uses liquid crystal dispiay and buttons as human-computer interaction and communicates with the host computer via Modbus protocols, with the host computer monitoring the temperature variation curve. Key words: Intelligent industrial instrumentation; embedded technology; temperature acquisition; proportional integration differential control I 目 录1 引言11.1 智能工业仪表在工业领域中的应用11.2 智能工业仪表在国内外研究现状与发展趋势21.3 论文组织结构安排22 系统整体方案设计32.1 温度信号的采集原理32.2 温度信号采集电路方案的选择42.3 智能仪表功能的设计43 智能仪表硬件的设计53.1 温度信号采集电路的设计53.1.1 电阻电桥电路的设计53.1.2 差分放大电路的设计63.2 最小核心系统的设计73.2.1 处理器的选型73.2.2 最小核心系统电路的设计93.3 人机交互界面的设计103.3.1 显示界面的设计103.3.2 功能按键的设计113.4 电源电路的设计123.4.1 开关电源的设计123.4.2 STM32电源的设计133.5 输出驱动电路的设计143.6 无线传输模块的设计144 智能仪表的软件设计154.1 软件开发平台154.2 硬件驱动的设计164.2.1 AD驱动的设计164.2.2 LCD驱动的设计164.2.3 MODBUS通信协议的设计174.2.4 PWM波产生模块的设计184.3 采样与滤波算法的设计184.3.1 信号采集程序的设计184.3.2 数字滤波程序的设计184.4 PT100阻值与温度的最小二乘法拟合194.5温度控制算法的设计204.5.1 积分分离PID算法的设计204.5.2 模糊控制算法的设计205 系统调试及结果分析225.1 调试方法225.2 系统整体的调试225.2.2 Modbus的调试235.2.3 滤波算法和PID参数的调试24结束语26参考文献27附录28致谢30II1 引言随着微电子、计算机、网络和通讯技术的飞速发展以及综合自动化程度的不断提高,目前智能仪表广泛应用于工业自动化领域,其技术也同样在过去的二十多年里得到了迅猛的发展。智能仪表在结构上自成一体,有的仪表内部还带有专用的微型计算机系统和通用接口总线接口,能独立完成测试1。由于引入了计算机,功能强大、性能优异、使用灵活、方便,是现阶段高档电子仪表的主体。 随着新技术、新工艺和嵌入式系统技术的不断进步,智能仪器还在不断发展,不断推陈出新,不断提高智能水平。但是目前国外智能仪表占据了国际应用市场的绝大比重,如何结合目前智能仪表的工业应用经验并快速跟踪国际智能前沿技术,应用于我国智能仪表的开发研究中,成为振民族智能仪器仪表的一大突出问题2。因此嵌入式技术的智能工业仪表的开发是非常必要的。1.1 智能工业仪表在工业领域中的应用 智能仪表是把一个微型计算机系统嵌入到数字式电子测量仪器中而构成的独立式仪器。 嵌入的计算机系统可以是芯片级。如单片机、数字信号处理等。模板级如PC - 4,也可以是系统级,如微型计算机系统,可编程单芯片系统等。智能仪表用以实现信息的获取、传输、变换、存储、处理与分析,并根据处理结果对生产过程进行控制的重要技术工具。其中包括检测仪表、分析仪表、执行与控制仪表、记录仪表等几大类,也有将几部分功能集成在一起的仪表,是工业控制领域的核心之一3。微型计算机技术和嵌入式系统的迅速发展,引起了仪器仪表结构的根本性变革,即以微型计算机为主体,代替传统仪表的常规电子线路,成为新一代具有某种智能的灵巧仪表。这类仪表的设计重点,己经从模拟和逻辑电路的设计转向专用的微机模板或微机功能部件、接口电路和输入、输出通道的设计,以及应用软件的开发4。传统模拟式仪表的各种功能是由单元电路实现的,而在以单片机或嵌入式系统为主体的仪表中,则由编程软件、各种特殊而复杂的功能模块、简化的用户组态编程功能以及各种典型应用的控制策略包等模块组成的软件,来完成众多的数据处理和控制任务5。工业用户对于能源及物耗成本的计量要求、控制精度的要求、减轻现场作业量(工艺操作和仪表维护)的要求无一例外的将扩大智能仪表的应用市场。此外,仪表行业的自身发展已经趋于智能化。1.2 智能工业仪表在国内外研究现状与发展趋势随着大规模工业化装置对安全运行及自动化控制水平要求的不断提高,尤其是上世纪90年代后期DCS系统的应用普及、现场总线技术的快速发展、各种标准通讯协议的进一步开放和完善,促使智能仪表在工业自动化领域得到了更为广泛和大规模的应用6。仪表行业的自身发展已经趋于智能化。这一点无论是中国还是全球,仪表产品的高科技化、高智能化已经成为必然的发展趋势。相比之下,国产智能化仪表无论是设计还是制造都明显弱于国际先进水平;国内工业自动化用户在智能仪表的使用经验方面也相对积累较晚、较少,智能仪表与现场总线的应用组合也还不多,这些现状表明我国智能仪表的研究和应用还只是处于一个初级阶段7。智能仪器以微处理器与大容量存贮器为核心, 将微处理器或计算机与传统仪器仪表结合了起来,能够适应被测参数的变化, 集自动补偿、自动选择量程、自动校准、自寻故障、 自动进行指标判断,以及进行逻辑操作,定量控制与程序控制等多种功能于一身8。这些特点将使它更为广泛地应用在社会的各个领域。智能仪表的智能化程度表征着其应用的广度和深度,目前的智能仪表还只是处于一个较低水平的初级智能化阶段,某些特殊工艺及应用场合则对仪表的智能化提出了较高的要求;当前智能化控制理论的研究方向是神经网络、遗传算法、小波理论、混沌理论等,使传统仪表具有了目标准、 自适应、 自学习等功能,使精度和可靠性进一步得到提高9。1.3 论文组织结构安排论文围绕嵌入式技术的智能工业仪表的设计与实现展开论证。第一节已经从智能工业仪表的研究意义、国内外研究状况进行了阐述。第二节主要对温度信号的采集及智能工业仪表的功能的设计进行介绍。第三节从信号采集的硬件电路、处理器、人机交互、等方面进行了设计。然后第四节从硬件底层驱动、控制算法和应用程序进行设计。最后第五节对各个模块的调试及结果分析,论文整体组织结构图如图1所示。图1 论文组织结构图2 系统整体方案设计系统的整体结构图如图2所示。 图2 系统整体结构图2.1 温度信号的采集原理温度是工业工过程中的四大参数之一,也是很多生产过程中都需要测量和控制的参数。热电阻和热电偶是工业过程温度测量中最常用的温度传感器。热电阻以其测温精度高、稳定性好而被广泛应用于650以下的温度测量中,而热电偶一般用于更高温度的测量。常用的热电阻有铂电阻和铜电阻,常用的热电阻型号有S、R、B、K、N、E、J、T八种10。测温时热电阻或热电偶安装在现场温度检测点,与控制室内的温度显示仪表等二次仪表有一定的距离,为保证温度测量的准确,对热电阻要考虑消除其导线电阻的影响,同时由于被测温度与热电阻阻值之间存在非线性,应考虑非线性补偿问题。对热电偶要采用补偿导线,并考虑冷端温度补偿及热电偶电压值与被测温度之间的非线性补偿11。铂电阻温度传感器是利用其电阻和温度成一定函数关系而制成的温度传感器,由于其测量准确度高、测量范围大、复现性和稳定性好等,被广泛用于中温(-200650)范围的温度测量中。PT100是一种广泛应用的测温元件,在-50 600范围内具有其他任何温度传感器无可比拟的优势,包括高精度、稳定性好、抗干扰能力强等12。由于铂电阻的电阻值与温度成非线性关系,所以需要进行非线性校正。校正分为模拟电路校正和微处理器数字化校正,模拟校正有很多现成的电路,其精度不高且易受温漂等干扰因素影响;数字化校正则需要在微处理系统中使用,将 PT100的电阻值和温度对应起来后存入EEPROM 中,根据电路中实测的AD值以查表方式计算相应温度值;或者有MATLAB对阻值和温度值进行最小二乘法多项式拟合,其精度可以控制在0.2%一下13。2.2 温度信号采集电路方案的选择 常用的 PT100电阻接法有三线制和两线制,其中三线制接法的优点是将 PT100 的两侧相等的的导线长度分别加在两侧的桥臂上,使得导线电阻得以消除,从而减小系统误差。常用的采样电路有两种:一是恒流源式测温电路,它在测量中通过施加恒定的电流将电阻值变为电压进行测量。然而, 测量误差还必须考虑其他环节的影响如测温元件的长引线电阻变化对恒流源的影响;放大及信号调理电路中运算放大器的失调电压、放大倍数以及零点电压的漂移,后级的AD 转换器的漂移等以及电源电压的变化等,最终对恒流源的要求将会更加苛刻14。只有全部使用精度很高、温漂极小的元件,才有可能满足系统的测量精度要求,这在工程上实现起来有一定的难度。二是桥式电阻测温电路,它简单容易实现,本次选择该电路。2.3 智能仪表功能的设计随着嵌入式技术的日益发展,工业控制对智能仪表的功能要求也渐渐提高。主要包含以下部分:1、能够适应被测参数的变化,集自动补偿、自动选择量程、自动校准、 自寻故障、自动进行指标判断,以及进行逻辑操作,定量控制与程序控制等多种功能。2、数据传输功能,可通过网络、以太网等技术进行数据远距离传输。3、由编程软件、各种特殊而复杂的功能模块、简化的用户组态编程功能以及各种典型应用的控制策略包等模块组成的软件,来完成众多的数据处理和控制任务15。因此,嵌入式技术智能工业仪表的功能设计如下所示:(1) 温度变送器:采集温度并变换到片内AD可以转换的范围内。(2) 主控:完成数据分析,通过控制算法计算输出PWM波的占空比,控制温度。(3) LCD显示:显示温度当前值、设定值以及PID算法的相关参数。(4) 功能按键:完成参数的修改,使操作更为简单,设计更为人性化。(5) 输出驱动电路:完成对控制结果的放大输出。(6) 无线数据发送:完成上位机和STM32的数据传输。(7) MODBUS数据传送:使用MODBUS通信协议实现上位机和下位机的通信,从而完成数据的传送。(8) 上位机监控:完成对温度变化曲线的监控。(9) 电源:开关电源为智能仪表供电。 3 智能仪表硬件的设计嵌入式系统的硬件层包含嵌入式微处理器、存储器(SDRAM、ROM、Flash等)、通用设备接口和I/O接口(A/D、D/A、I/O等)。在一片嵌入式处理器基础上添加电源电路、时钟电路和存储器电路,就构成了一个嵌入式核心控制模块。智能仪表要求具有再开发性,功能尽可能的完善能够实时对温度信号进行处理,而且要求随着发展可以进一步升级满足工业控制更多的需求。基于嵌入式技术的智能仪表要求集信号的采集、处理、传输三大功能于一体。对于这些功能,即需要相对独立的模块化设计,又需要良好的协调。因此,在开发过程中,硬件设备的选择需要考虑这些特定的需求,有针对性的进行器件的选择和设计。总体电路要遵循: 选择合适的处理器,尽量选择片上系统(System on Chip,SoC)设计硬件系统,减少硬件复杂度并降低成本。选择典型电路,按照模块化设计,系统扩展与I/O 的配置充分满足应用系统的功能要求,并留有适当冗余,以便进行二次开发。 注重软硬件结合,软件能实现的功能尽可能由软件实现,以简化硬件结构,降低能耗和设备成本。 必须考虑芯片的驱动能力,有必要的可靠性及抗干扰设计它包括去耦滤波、印刷电路板布线、通道隔离等。系统硬件设计总图如图3所示。包含了处理器外围电路、电源及开关类电路、显示电路、采集电路、放大电路等。 图3 系统硬件方框图3.1 温度信号采集电路的设计3.1.1 电阻电桥电路的设计电阻电桥电路如图4所示,电路电阻参数的选择:R4和R8选择为2K,R5为100欧姆,在这种情况下可以保证通过RT100的电流在2.5mA附近,保证PT100在最佳状态和减小R5应为温度变化而导致的阻值变化,从而减小误差。 图4 电阻电桥路图3.1.2 差分放大电路的设计OP07芯片是一种低噪声,非斩波稳零的双极性运算放大器集成电路。由于OP07具有非常低的输入失调电压(对于OP07A最大为25V),所以OP07在很多应用场合不需要额外的调零措施。OP07同时具有输入偏置电流低(OP07A为2nA)和开环增益高(对于OP07A为300V/mV)的特点,而且还有100分贝左右的共模抑制比,这种低失调、高开环增益和高共模抑制比的特性使得OP07特别适用于高增益的测量设备和放大传感器的微弱信号等方面。 差分放大电路如图5所示,参数选择:R7和R8是1K,R6和R9是35K,放大倍数是35倍;应为电路只有两路输入且参数对称U0=R6/R7(U1-U2)。 图5 差分放大电路图3.2 最小核心系统的设计嵌入式系统要求以应用为中心、软件硬件可裁剪的、适应应用系统对功能、可靠性、成本、体积、功耗等严格综合性要求的专用计算机系统,由硬件和软件两部分有机的结合在一起,作为一种典型的嵌入式应用。由于智能仪表有很强的处理、通信能力,同时也要求功能完善,能够实时对温度信号进行处理。集信号采集处理传输几大功能于一体。对于这些功能,即需要相对独立的模块化设计,又需要良好的协调。 因此,在开发过程中,硬件设备的选择需要考虑这些特定的需求,有针对性的进行器件的选择和设计。 3.2.1 处理器的选型处理器相当于人体的大脑机制,整个系统在处理器合理指挥调度下才能完成我们赋予他们的任务,所以一款合适的处理器对于整个系统来说是非常重要的。经过综合考虑本设计对处理器的选择主要从以下五个方面来考虑: (1) 处理器的处理速度:在本设计中,处理器不仅要进行实时温度采集,同时还要实时显示出来,并且要对温度进行控制,还要将采集数据传到上位机中,因此,处理器要有较高的处理速度。(2) 处理器在完成任务的复杂程度:在本设计中,处理器要负责信号的采集、信号的处理、当前温度和设定温度的显示、对温度的控制以及通信。 (3) 尽可能简化外围电路的复杂程度:一个系统中所使用的元器件越多、电路结构越复杂,则系统的出问题的概率越大,可靠性与稳定性越差。因此在选择MCU的时候,希望MCU内部集成功能单元越多越好,这样就能简化系统设计,增加系统的可靠性及稳定性。 (4) 尽可能减少生产成本:在本系统中,由于多数属于工业现场不确定性因素较多,要求控制器的稳定要高,抗干扰能力要强,其中处理器的成本占了整个系统的重要的一部分,能够降低处理器的成本也就从而降低了产品的总成本。 (5) 尽可能底的功耗:考虑到工程实际和成本,要尽可能的降低功耗。综合以上几个方面,最终选用了意法半导体公司推出的新型32位ARM内核处理器芯片STM32系列中的STM32F103VET6。STM32F103x增强型系列芯片使用高性能的ARM Cortex-M3 32位的RISC内核,工作频率为最高可达72MHz,内置高速存储器(高达128K字节的FLASH和20K字节的SRAM),丰富的增强I/O 端口和连接到两条APB总线的外设。所有型号的器件都包含2个12位的ADC、3个通用16位定时器和一个PWM定时器,还包含标准和先进的通信接口:多达2个I2C和SPI、3个USART、一个USB和一个CAN。工作电压为3.3V。图6是STM32F103x的模块框图。 STM32微控制器有如下优点: (1) STM32内部有高达128K字节的内置闪存存储器,用于存放程序和数据。多达20K字节的内置 SRAM,CPU能以0等待周期访问(读/写)。这样在我们所设计的系统中就去掉了以往很多嵌入式项目设计中所需要的用于外部程序存储器的Flash芯片和用于外部数据存储器的SRAM芯片,大大节约了系统成本,提高了系统可靠性及稳定性13。 (2) STM32增强型系列拥有内置的ARM核心,因此它与所有的ARM工具和软件兼容。 这给项目的开发工作带来了很大的便利,因为在以前的工作中曾经使用过其他ARM核心的微控制器,所积累的经验在本项目的开发中得到了充分发挥。而且由于可用于ARM开发的工具软件很多,大大加快了项目开发的速度和效率。 图6 STM32F103x的模块框图(3) STM32的内部FLASH是在线可编程的。在我们的项目中,设备运行的配置参数 会存储在FLASH中的固定位置,每次启动设备时,程序会读取这些参数来进行初始化。但在某些情况下,需要远程设置或修改配置参数。这一功能使得可以在不用接JTAG烧写器的情况下根据USART接口接收到的数据来修改FLASH中的配置参数,在设备再次启动时,就会读取新参数来进行初始化9。(4) STM32有优秀的功耗控制。高性能并非意味着高功耗。STM32经过特殊处理,针对应用中三种主要的功耗需求进行优化,这三种能耗需求分别是运行模式下的高效率的动态耗电机制、待机状态时极低的电能消耗和电池供电时的低电压工作能力。 (5) STM32拥有强大的库函数。它采取与以往不同设计方法,通过把各个外设封装成标准库函数 的方式,屏蔽了底层硬件细节,能够使开发人员很轻松地完成产品的开发,缩短系统开发时间。STM32固件库。STM32固件库提供易用的函数可以使用户方便地访问STM32的各个标准外设,并使用它们的所有特性。 USB开发工具集。在更广的应用领域中,USB功能的实现将变得越来越方便,因为USB开发工具集提供了完整的,经过验证的固件包,使得用户可以顺利地开发各个类的USB固件。 (6) STM32F103xx增强型支持三种低功耗模式,可以在要求低功耗、短启动时间和多种唤醒事件之间达到最佳的平衡。 总之,STM32芯片在项目中的使用,使得整个系统的运行效率、稳定性、功耗、生产成本等都比同类系统有了较大的提升。本设计中最小核心系统设计图如图8所示。3.2.2 最小核心系统电路的设计由图7中可以看出,在设计STM32最小系统电路时要注意一下几个部分: (1) 复位电路:利用RC电路的延时特性,设计了简单的复位电路,有此可简单计算出延时时间,这里用一个10 k电阻和1.0 F的电容,时间延时大约为3.6ms,符合STM32系统芯片的复位要求。 (2) 晶振电路:这里选用两个晶振,首先8M无源晶振,晶振两端分别通过22pF的电容接地,另一个32.768K的晶振使用的15pF的电容接地电路简单,并能很容易的就能使晶振起振。(3) 芯片上的BOOT0和BOOT1引脚分别通过跳线帽可选高低电平,以改变芯片启动模式,其启动模式说明如表1所示。(4) 模块有4个数字电源供电引脚,1个模拟电源供电引脚以及相应的接地引脚。在电源端要注意接滤波电容,模拟地和数字地引脚之间最好通过0电阻隔离。电源和地之间加若干去藕电容。 表1 启动模式说明启动模式选择管脚启动模式说明BOOT1BOOT0X0用户闪存存储器用户闪存存储器被选为启动区域01系统存储器系统存储器被选为启动区域11内嵌SRAM内嵌SRAM被选为启动区域图7 最小核心系统设计图3.3 人机交互界面的设计人机交互界面是指人与计算机系统之间的通信媒体或手段,是人与计算机之间进行各种符号和动作的双向信息交换的平台。3.3.1 显示界面的设计首先,对于智能工业仪表设计,那么在LCD的选择上,就要符合实际的需要,必须要考虑功耗和成本。对于人机交互部分,显然采用单色液晶显然已经不能满足的需要,因此把LCD的选择定位在了彩色液晶上。主要从以下几个参数做出选择: (1) 颜色要丰富:从美观角度来讲,在液晶上不同类型的数据最好能够以不同的颜色来区分。汉字、数字最好颜色不同。所以在液晶的颜色上要达到一定的数量。 (2) 尺寸:因此液晶的尺寸不易过大,但也要便于观察,选择时要符合实际情况,过小则可能出现汉字或数字不便于观察等问题。 (3) 功耗:对于工业设备来说,低功耗是一般都作为一项重要的指标。(4) 材质:液晶主要有两类:STN型和TFT型,后者较之前者显示效果更佳,但耗电能方面也高于前者。 (5) 价格:正如上面所提到的,性价比高是本系统设计的一个目标,因此要可能的用符合设计要求价格低廉的产品。 因此,根据上述几点本设计选用了2.8寸真彩TFT液晶触摸屏,320*240像素,26万色,16位并行接口,可以直接用AVR、ARM7、STM32等MCU驱动。相关参数: (1) 分辨率:QVGA 240 x 320 (2) 尺寸:2.8英寸(3) 控制器:IL9325(4) 触摸屏:4线电阻式 (5) 接脚:40PIN间距2.54mm (6) 背光:4 LED并联如图8所示LCD显示界面接口如图9所示 图8 4LED并联 图9 LCD显示界面接口3.3.2 功能按键的设计对于实现人机交互的场合,按键是比较常用的,通过按键来选择系统的功能,完成对系统的访问控制。本系统采用按键作为功能按键,电路简单,实用可靠它的硬件设计电路如图10所示。 图10 按键电路图3.4 电源电路的设计电源电路是整个系统中十分重要的一环,如何降低功耗成为工程师面临的急需解决的问题。如果电源不稳定可能造成系统不能正常工作,严重的甚至烧坏芯片引发事故。因此电源管理越发显得重要。 电源管理是指如何将电源有效分配给系统的不同组件。电源电路设计主要考虑用哪种类型的电源器件,输入输出电压,输出电流以及控制状态。 3.4.1开关电源的设计智能工业仪表需要高效的稳定的电源供电。开关电源有功耗小,效率高、转换速度很快、功耗很小,电源的效率可以大幅度地提高,其效率可达到80%;重量轻从开关电源的原理框图可以清楚地看到这里没有采用笨重的工频变压器;稳压范围宽,从开关电源的输出电压是由激励信号的占空比来调节的,输入信号电压的变化可以通过调频或调宽来进行补偿,这样,在工频电网电压变化较大时,它仍能够保证有较稳定的输出电压。此外,改变占空比的方法有脉宽调制型和频率调制型两种。开关电源不仅具有稳压范围宽的优点,而且实现稳压的方法也较多,设计人员可以根据实际应用的要求,灵活地选用各种类型的开关电源; 滤波的效率大为提高,使滤波电容的容量和体积大为减少15。智能仪表的供电选择开关电源来供电,电路图如图11所示。 图11 开关电源电路3.4.2 STM32电源的设计 STM32需要3.3V的电源供电,而3.3V的电压采用AMS1117产生,其最大的特点是简单易用而且性价比高,输入电压5V12V,直接输出3.3V。电路如图12所示。 图12 AMS1117稳压电路 图13 输出驱动电路电路3.5 输出驱动电路的设计输出驱动电路如图13所示,锅炉的温度控制需要PWM波控制接触器的开断来控制加热,实现达到设定值的目的。但是STM32不能直接驱动接触。所以用STM32驱动S8050,达到控制继电器的开关,再用继电器控制接触器的开关,实现温度控制。3.6 无线传输模块的设计 无线数据传输选择的是DRF(DRF1605H)系列Zigbee模块,如图14所示,其数据传输功能非常简单易用,有四种数据传送方式:数据透明传输方式、透明传输+短地址方式、透明传输+MAC地址方式、点对点数据传输方式。本次无线通信选着数据透明传输方式,这种方式只要传送的第一个字节不是0xFE,0xFD或0xFC,则自动进入数据透明传输方式;Coordinator从串口接收到的数据,会自动发送给所有的节点;某个节点从串口接收到的数据,会自动发送到Coordinator;任意一个节点与Coordinator之间,类似于电缆直接连接(大部分情况下,可用1个Coordinator,1个Router直接代替一条RS232电缆;支持数据包变长(无需设置),最大不超过256字节/数据包,一般应用建议每个数据包32字节之内。 图14 Zigbee无线通讯模块图4 智能仪表的软件设计4.1 软件开发平台Keil是德国Keil公司(现已并入ARM 公司)开发的微控制器软件开发平台,是目前ARM内核单片机开发的主流工具。Keil提供了包括C编译器、宏汇编、连接器、库管理和一个功能强大的仿真调试器在内的完整开发方案,通过一个集成开发环境(uVision)将这些功能组合在一起。uVision当前最高版本是uVision4,它的界面和常用的微软VC+的界面相似,界面友好,易学易用,在调试程序,软件仿真方面也有很强大的功能。图15 Keil MDK开发环境uVision4 IDE是一款集编辑,编译和项目管理于一身的基于窗口的软件开发环境。uVision4集成了C语言编译器,宏编译,链接/定位,以及HEX文件产生器。如图15所示,是它的一个典型的调试窗口,它主要包括以下几个窗口: l 工程区:用于访问文件组和文件,调试是可以查看CPU寄存器。l 输出窗口:显示编译结果,以便快速查找错误的地方,同时还是调试命令输入输出窗口,也可以用于显示查找结果。l 内存窗口:显示指定地址内村里的内容。查看和调用l 堆栈窗口:用于查看和修改变量的值,并且现实当前函数调用。l 代码窗口:用于查看和编辑源文件。l 外设对话框:检查微控制的片上外设的状态。l 使用Keil来开发嵌入式软件,开发周期和其他的平台软件开发周期是差不多的,大致有以下几个步骤:l 创建一个工程,选择一块目标芯片,并且做一些必要的工程配置。l 编写C或者汇编源文件。l 编译应用程序。l 修改源程序中的错误。l 联机调试。4.2 硬件驱动的设计在程序运行过程中,系统涉及到了以下几个模块:显示设备LCD,输入设备按键、输入设备AD模块、输出PWM波模块、上位机的通信MODBUS。4.2.1 AD驱动的设计STM32的片内ADC是12位的模数转换器,可以在16路模拟输入中任选一路进行采样,其最高采样率为1MHz,温度信号采样频率要求较低,片内ADC足以满足系统采样定理的要求。AD转换数据储存在直接存储器DMA中,DMA用来提供在外设和存储器之间或者存储器和存储器之间的高速数据传输无须CPU干预,数据可以通过DMA快速地移动,这就节省了CPU的资源来做其他操作。 两个DMA控制器有12个通道(DMA1有7个通道,DMA2有5个通道),每个通道专门用来管理来自于一个或多个外设对存储器访问的请求,还有一个仲裁器来协调各个DMA请求的优先权。AD的配置过程如图16所示。 图16 AD开启的流程4.2.2 LCD驱动的设计在本系统中采用彩色LCD液晶,波形显示清晰,界面良好。液晶控制的关键在于编写底层驱动程序,底层驱动写好以后再封装不同功能的函数,以后调用就很方便了。STM32的FSMC模块是能够与同步或异步的存储器和16位的PC存储器卡的接口,它的主要作用是: (1) 将AHB传输信号转换到适当的外部设备协议 (2) 满足访问外部设备的时序要求通过这样的方法就可以把液晶当作外部存储设备来使用,通过配置读写及控制信号的时序,用指定指针就可以实现对液晶的读写访问。这样处理不但简化了对液晶的操作,只需指定读写数据的指针就可完成操作,而且提高了访问速度,避免了用端口模拟时序访问液晶产生的滞后现象。并且STM32自带FSMC方式控制LCD的实例,只需做一些相应的修改就可应用到本系统中,LCD的显示界面如图17所示。图17 LCD的显示界面 4.2.3 MODBUS通信协议的设计上位机用的是组态王,组态王支持MODBUS通信协议,只要在STM32中编写标准的MODBUS应答协议就可以了。组态王与单片机通讯的命令格式: (1)字头:1字节1个ASCII码,40H(2) 设备地址: 1字节2个ASCII码,0255(即0-0x0ffH)(3) 标志:1字节2个ASCII码,bit0bit7,(4) 若bit0= 0:读,bit0= 1:写。(5) 若bit1= 0:不打包。(6) 若bit3bit2 = 00,数据类型为字节。若bit3bit2 = 01,数据类型为字。若bit3bit2=1x,数据类型为浮点数。(7) 数据地址:2字节4个ASCII码,0x00000xffff(8) 数据字节数:1字节2个ASCII码,1100,实际读写的数据的字节数。(9) 数据:为实际的数据转换为ASCII码,个数为字节数乘2。(10) 异或:异或从设备地址到异或字节前,异或值转换成2个ASCII码(11) CR:0x0d。 4.2.4 PWM波产生模块的设计在本次控制温度的执行机构是接触器,而且温度的控制是大惯性环节,所以PWM波的周期设定为为10s,通过实时改变占空比来控制锅炉温度。PWM波是通过定时器定时3的2通道产生的频率一定占空比可调。4.3 采样与滤波算法的设计4.3.1 信号采集程序的设计温度信号的精确采集对于后面的进一步处理至关重要。STM32的片内ADC是12位的模数转换器,可以在16路模拟输入中任选一路进行采样,其最高采样率为1MHz,温度信号要求的频率较低,片内ADC足以满足系统采样定理的要求,这样可以提高采样的稳定性和降低系统成本。程序流程框图如18所示。 图18 数据采集流程图转换后的数据存放在ADC_Converted Value变量里,转换状态用全局变量DMA_TC来标记,DMA_TC0代表转换未结束,DMA_TC1代表转换结束。4.3.2 数字滤波程序的设计在采集的数据当中包涵了信号中的噪声和干扰,所以要对采集的信号进行预处理,在处理信号数据时常采用数字滤波消弱或者消除噪声和干扰成分。数字滤波是由一定的计算程序对采集的信号数据进行处理,来消除或者减弱噪声和干扰的影响,从而达到对信号处理的准确测量。比较常见的数字滤波法有:程序判断滤波、中位值滤波、算术平均滤波、递推平均滤波、防脉冲干扰平均值滤波等12。本系统采用防脉冲干扰平均值滤波法,它可以对尖峰脉冲和持续时间长的干扰信号进行过滤。由于系统中一般都存在着干扰和噪声,采集的信号则会出现与实际值偏差的现象,甚至会出现波动,对于这种情况,在实际的采样过程中多采样几个点,对偏差较大的两个值剔除,再对其余的值求平均值,这样就会得到比较准确的转换值。if (TIM_GetITStatus(TIM2, TIM_IT_Update) != RESET) TIM_ClearITPendingBit(TIM2, TIM_IT_Update ); AD_ValueAD_Num+=ADC_ConvertedValue ; if(AD_Num=11) MAX1=AD_Value1; for(i=2;iMAX1)MAX1= AD_Valuei; MAX2=AD_Value1; for(j=2;jMAX2)&(AD_ValuejMAX1) MAX2= AD_Valuej; MIN1=AD_Value1; for(K=2;K=10;K+)if(AD_ValueK=1;AD_Num-) Sum_Value+=AD_ValueAD_Num;Sum_Value=Sum_Value-MAX1-MAX2-MIN1;AD_lvbo_Value= Sum_Value/7;Sum_Value=0; if(shu=1)AD_zhanbo1=AD_lvbo_Value;shu=shu-1;Else AD_zhanbo0=AD_zhanbo1; AD_zhanbo1=AD_lvbo_Value; if(AD_zhanbo1-AD_zhanbo010)|(AD_zhanbo1-AD_zhanbo0-10) AD_lvbo_Value=AD_zhanbo0 ;AD_zhanbo1=AD_zhanbo0 ; 4.4 PT100阻值与温度的最小二乘法拟合 PT100的阻值和温度不是严格意义上的线性关系如表2所示,利用最小二乘法对热电阻的和阻值关系特性做多项式拟合,该种方法使用简单方便,折算速度快,误差小,能在0100内完全满足实际使用要求。而且这种方法,既不需添加硬件设备,又解决了软件线性化中插值法、折线法对内存空间要求较高, 而迭代法运算复杂,运算周期长的问题,可以广泛应用于智能仪表。本次拟合出来的温度与阻值的函数:T=2.6045*R-260.7755,经过验证误差在0.24%左右,符合要求。表2 PT100温度与阻值的对照表温度020406080100阻值100.00107.79115.54123.24130.90139.514.5温度控制算法的设计在完成对温度的采集、滤波、存储、传输以及人机界面设计之后,温度控制算法成为智能仪表对温度控制好坏的关键,本智能仪表的控制算法采用模糊控制和积分分离PID的结合。4.5.1积分分离PID算法的设计在自动控制系统中,P、I、D调节是比例调节,积分调节和微分调节作用。调节控制质量的好坏取决于控制规律的合理选取和参数的整定。在控制系统中总是希望被控参数稳定在工艺要求的范围内。但在实际中被控参数总是与设定值有一定的差别。调节规律的选取原则为:调节规律有效,能迅速克服干扰。PID控制器具有运算简单,鲁棒性强,调整方便的特性,目前大部分温度控制系统均采用这种控制算法,但是PID控制器的控制效果很大程度上取决于控制器参数的整定,而参数的整定过程复杂又因对象模型的不同而各异,此外,PID控制对线性系统的控制效果较好,对于非线性系统控制不是很好,而温度控制系统是一个典型的非线性时变系统,且影响因素复杂多变,如前文所述,如果使用PID控制器,需要依受控对象变化情况随时调整参数,这将影响系统的正常运行。因此,对于这样的具有大惯性和延迟,且受各种因素变化影响较大的被控对象,单独采用PID控制算法并非明智之选。 由于在温度控制时,设定值的幅值变化大,偏差积分较大,固在积分项的作用下会产生一个很大的超调,并产生振荡。特别是温度、液面等变化比较缓慢的过程,这一现象更为严重,为了改进控制性能,可以采用积分分离的方法,即在受控变量开始追踪时,取消积分作用,偏差小于一定的设定值时,才开始产生积分作用,和常规的PID算法相比,应用积分分离方法,可以显著降低被控变量的超调和缩短稳定时间。4.5.2模糊控制算法的设计 所谓模糊控制是以模糊集合论、模糊语言变量以及模糊逻辑推理为基础的一种计算机智能化数字控制方法。该方法无需建立对象的精确数学模型,并且具有适应性好,算法简易实现和容易操作等特点。 温度控制系统具有非线性、时变性和滞后性的特性,并且锅炉水温控制系统中的循环水也是强干扰,增加了系统控制的复杂性,常规PID控制效果不太理想,而模糊PID参数自整定控制算法对于解决温度系统中的非线性、时变性和大延时起到明显的改善效果,对干扰也具有较好的抑制调节节能力。 在控制误差很大时,用公式调节输出没有太大意义,相反容易带来积分饱和一类的问题,即使使用算法,如果控制参数设置不准,也可能出现积分饱和或过积分的现象。所以,仪表引入模糊控制规则确定输出,将取得理想的控制效果。在误差较大时,仪表的PID算法没有启动;当误差小于一定值时,仪表的PID算法启动。如图19是控制程序流程图。 图19 控制程序流程图5 系统调试及结果分析系统实物图如图20所示,经过软硬件的设计和制作,完成了基本的构架,但是还需经

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论