微波EDA网,见证研发工程师的成长!
首页 > 硬件设计 > 嵌入式设计 > 基于单片机的网络控制实现温控系统的设计

基于单片机的网络控制实现温控系统的设计

时间:05-17 来源:互联网 点击:

摘要:文中将嵌入式控制技术与网络控制技术相结合,实现了基于单片机通过因特网的控制实现温控系统的设计,文中所采用的是MSP430F1 49单片机作为控制核心,MSP430F149微控制器控制以太网控制器CS8900A实现本地局域网的功能,通过TCP协议提供与因特网进行连接,可以实现对温箱的温度进行实时有效地控制。系统体积小巧,具备温度采集和远程控制功能和良好的可扩展性。
关键词:网络控制;MSP430F149;CS8900A;温控

网络控制系统(NCSs)已经成为学术和工业领域的主要研究中心之一,随着日益增加的研究趋势和研究需要,能够成功应用最新的知识和信息则显得格外的重要。随着社会发展的需求,人们对温箱的应用和需求越来越广泛,在工业生产和日常生活或科学实验中,我们随处都可以看到温箱的应用。本文是将嵌入式技术和网络控制技术结合起来实现了基于网络控制系统的嵌入式温箱控制系统的设计。网络控制系统就是通过控制系统元件(传感器、控制器、执行器等),使用共享的网络而实现信息(标准输入和输出、控制输入等)的交换。通过TCP协议将嵌入式系统采集到的温度信息发送到网络化控制与协调系统和网络监测系统并进行计算和判断后控制和协调单片机的行为。网络化检测系统通过以太网发布对单片机的控制信号,来实现对温箱的温度控制,该系统可应用于远程操作和控制等领域。

1 系统工作原理
文中基于网络控制系统的设计思想开发了远程温箱控制系统,整个系统采用B/S结构,即Browser/Server,浏览器/服务器结构,就是只安装维护一个服务器(Server),而客户端采用浏览器(Browse)运行软件。该系统主要由客户端模块,互联网Internet模块,单片机控制器及被控对象模块构成。位于客户端的用户使用浏览器访问单片机控制器及被控对象模块,在浏览器中登录成功后,通过HTTP协议将数据自动封装为TCP或UDP然后在网络上传输,然后通过网络接口CS8900A将所有从客户端传送来的信息进行自动拆封出数据并传输到单片机控制器及被控对象温箱模块进行温度控制,同理温箱的温度状况也可以传递到客户端模块,从而实现客户端与单片机之间通信,互联网Internet模块是整个控制系统的核心,实现远程客户端与温箱问的信息交互。单片机它主要接收远程客户端的命令,完成对温箱的控制,并将温箱的温度
信息反馈给远程客户端。

2 系统硬件设计
本温控系统的主要芯片是单片机MSP430F149芯片MCU。主要的器件有:数模转换器DAC5571,铂金电阻芯片,压缩机,加热丝,以太网控制器CS8900A网络接口芯片RTL8019AS等。
硬件体系上单片机MSP430F149是系统的控制中心,它监控各个功能模块的启动和运行,如图温度的测量部分,控制数据发送,并通过与网络接口芯片RTL8019AS的连接实现与PC机的以太网通信。
系统主要由远程控制端,Internet,CS8900A,MSP430F149单片机。位于远程控制端的用户通过客户机上的与INTERNER相连接的标准IE浏览器通过CS8900A以太网控制器与单片机之间通过通信从而实现对现场设备的控制,达到温度的控制。系统体系结构如图1所示:

2.1 电源电路设计
本系统需要使用+5 V和+3.3 V的直流稳压电源,其中MSP430F149及部分外围电器需要+3.3 V电源,另外部分需要+5 V电源,在本系统中.以+5 V直流电压为输入电压,+3.3 V由+5 V直接线性降压。电源电路原理如图2所示。


2.2 温度传感器采集电路
DS18B20是一款小巧的温度传感器,它通过单总线协议与MCU进行通信。MCU与DS18B20的硬件连接关系示意图如图所示,可知MCU的P2.4端口与DS18B20的DQ端连接,通过在MCU的IO端口模拟1-Wire协议的时序就能实现对DS18B20的读写了。温度传感器采集电路如图3所示。

3 系统软件设计
本设计的软件部分主要包括实现温度的采集和控制模块,数据传输的实现,客户端的远程控制3大部分。
3.1 温度的采集和控制模块
这个模块的主要作用在于控制硬件设备,完成温箱的温度采集、显示、控制功能。温度的采集和控制模块流程图如图4所示。

当将要采集温度数据时,MSP430F149将通过温度传感器采集温度,所用到得函数有:函数名称:ReadTemp,功能:从DS18B20的Scratch Pad读取温度转换结果,返回值:读取的温度数值。函数名称:uint Do1Convert(void),功能:控制DS18B20完成一次温度转换,返回值:测量的温度数值。
然后进行A/D装换将根据采集到的温度数据设置寄存器的值,处理器读取温度数据到网络控制器CS8900A中的发送控制寄存器TXCMD(000 4H),如果写入数据,那么网卡芯片在全部数据写入后开始发送数据,CPU通过发送数据寄存器PORT0(0000H)发送数据,最后通过网络发送到客户端上。客户端通过网络将命令发送到网络控制器CS8900A中的发送数据长度寄存器TXLENG(0006H),首先写入发送数据长度,然后将数据通过PORT0写入芯片进行接收,执行相应的控制操作。
3.2 数据传输的软件实现
在通过网络来实现数据的传输的时候主要应用的是TCP协议来实现收发数据,设计针对数据收发过程当中所要用到的函数。因为RTL8019 AS里是带缓存的,所以在CS8900A也需要通过对缓冲区的操作进行数据的发送和接受。
在数据包收发的过程当中,不同的任务需要不同的处理时间,这个时间可以使用MSP430F149的定时器Timer_A来提供。
3.3 客户端的远程控制模块
系统中远程控制端的用户在建立HTTP服务器之后登陆与Internet相连接的浏览器中的控制页面向MSP430F149发送控制指令,这一过程需要进行一系列的操作,首先控制器端将通过因特网TCP/IP协议与串口协议之间的转换传输过来,提取设备信息,通过和标准温度比较,如果当所测得的温度高于标准温度的时候,则输出设备信息发出降温标示的信号,单片机通过CS8900A网卡接口接受因特网发送过来的降温指示,然后通过控制压缩机进行降温,如果当所测得的温度低于标准温度的时候,则输出设备信息发出加热标示的信号,单片机通过CS8900A网卡接口接受因特网发送过来的降温指示,然后通过控制加热丝进行加热。其中HTML(超文本链接标示语言)网页数据可以保存在MSP430F149的片内
FLASH存储器中。网页能够完成接收数据、发送网页数据、关闭连接和等待其它应用进行连接等。客户端的远程控制模块流程图如图5所示。

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top