摘要: 本文研究设计了一种基于PC机与单片机的水下作业控制系统。本控制系统采用的是PC机与单片机串行通讯的方式,来实现对自动工具库的可视化控制。在对本计算机控制系统进行介绍时,首先介绍了整个下位机系统的硬件电路,包括电磁阀驱动电路、伺服阀驱动电路和串行通讯电路等。并且简介了串行通讯的相关内容。在此基础上介绍了其控制程序和上位机的控制软件的编制。 关键字: 水下作业;电路设计;PC
1 引言
随着海洋开发事业的发展,诸如海洋和渔业考察,石油探测,抢险救生,海底管道的敷设、保养和维修等诸多水下作业都在逐步增多。新能源,新技术、新学科的迅猛发展,以及各种科学技术的相互融合与渗透,各国科技人员都在充分利用各类高科技成果,开发研制出了多种多功能、高效率、智能化的水下作业系统。本文主要针对水下作业实验系统提出了其控制系统的设计。
2 控制系统原理设计
本控制系统将采取由PC机和MCS-51单片机组成的上、下位机结构的二级计算机控制系统。PC机和单片机分别完成不同的功能。利用PC机强大的人机接口功能、丰富的系统软件和应用软件来实现数据处理和管理协调功能;利用单片机的实时处理功能来实现自动的动作控制。上下位机通过串行通讯接口通讯。下位机(MCS-51单片机)独立完成数据处理和控制任务,同时将数据传送给上位机(PC机);上位机将这些数据进行处理并将各种控制命令传送给下位机,以实现集中管理和最优控制。

图1 控制系统的原理图
图1是整个控制系统的原理图。单片机控制系统的主要功能是:根据由传感器检测到的信号,按照一定的控制程序要求输出控制信号,驱动电磁阀和伺服阀工作,实现所要实现的运动。单片机控制系统的硬件包括单片机最小系统、输出驱动接口电路、输入传感器检测电路和串行通讯接口电路等。单片机最小系统将以8051为核心。
3 硬件电路详细设计
硬件电路组成部分包括电磁阀驱动电路、伺服阀驱动电路、通讯接口电路等。
3.1 电磁阀输出驱动电路
在本系统中,水下作业系统的旋转由电磁阀进行控制。电磁阀的控制需要的是开关量信号。在这类控制方式中,常用的接口电路有晶体管方式的开关量输出接口、继电器方式的开关量输出接口、可控硅(晶闸管)输出接口、固态继电器输出接口和功率电子开关输出接口等等。本控制系统采用的是可控硅输出接口。可控硅是一种大功率的半导体器件,具有用较小功率控制大功率、开关无触点等特点,是一种可靠的控制元件,有着广泛的应用。晶闸管弱电控制、强电输出,只需要很小的功率就可以控制较大的电流。其触发电路采用晶体管触发电路。晶体管是一种半导体元件,它以体积小,重量轻、寿命长、效率高、价格低等优点,在各个领域广泛使用。它的用途之一是做开关用,利用这种特性晶体管作为可控硅的触发电路被广泛使用。触发信号经过光电耦合器隔离后加到晶闸管上,这种操作非常安全可靠。
本文控制系统的输出驱动接口电路选用MOC3021带过零触发的双向晶闸管触发电路。MOC3021是晶闸管输出型光电耦合器,其输出端为光敏双向晶闸管,且配有过零检测电路,当电源电压为零或者刚过零的时候触发晶闸管,减少晶闸管导通时对电源的影响。电磁阀输出驱动接口电路如图2所示。

图2 电磁阀输出驱动接口电路
光电耦合器的受光器是光电晶体管。在未加触发信号之前,光电耦合器中的发光二极管和光电晶体管都处于关断状态。当反向驱动器7406的3脚输入一个高电平时(由单片机的P1.0输出),此时经过反向,将会在光电耦合器的第2引脚输入一个低电平,这时将MOC3021中的发光二极管通过电流脉冲发光,光电晶体管受光在电流脉冲持续的时间内导通。触发外部的双向晶闸管导通。此时,加在OUT1和220两个引脚之间的电磁阀的一个电磁铁DT1得电,电磁阀正向动作,油路正向供油,带动水下作业系统旋转的旋转马达顺时针旋转,从而实现了系统的顺转动作。在这个过程的同时,电磁阀的另一个电磁铁的驱动电路中的光耦的3脚输入一个低电平(由单片机的Pl.1输出,即Pl.0输出一个高电平的同时,Pl.1输出一个低电平),此时光耦不导通,其后的晶闸管处于关断状态,与之相联系的电磁铁DT2不得电,旋转马达的运动状态由DT1决定。同理,当单片机的P1.0输出低电平而Pl.1输出高电平时,将实现系统的逆时针旋转动作。
3.2 时钟电路
时钟是单片机的心脏。整个单片机系统都是以时钟频率为基准有条不紊的一拍一拍的工作。因此,时钟频率直接影响单片机的速度,时钟电路的质量也直接影响单片机系统的稳定性。单片机虽然有内部振荡电路,但是要形成时钟,必须附加外部电路。MCS-51单片机的时钟产生方法有两种:内部时钟方式和外部时钟方式。本电路采用的是内部时钟方式。MCS-51单片机内部有一个用于构成振荡器的高增益反向放大器,引脚XTAL1, XTAL2分别是放大器的输入端和输出端。利用芯片内部的振荡电路,在XTAL1, XTAL2引脚上外接定时元件,内部的振荡电路就产生自激振荡,产生我们所需要的时钟。最常用的内部时钟方式是采用外接晶体和电容组成的并联谐振回路。
3.3 伺服阀驱动电路
在本系统中,水下作业系统的升降运动由伺服阀控制。对伺服阀进行控制的主要原理是:在上位机控制面板中按下升降的按钮时,上位机发送指令给下位机。下位机接收到之后,输出数字量控制信号,经过数模转换芯片DAC0832,转换成所需要的模拟量信号,通过由两级运算放大器组成的模拟电压输出电路,使该模拟信号由单极性转变成所需要的双极性信号,然后经过伺服阀驱动电路,施加给伺服阀。伺服阀根据电压值的不同,导通使系统上升或者下降的油路,由此实现系统的升降运动。
DAC0832与MCS-51单片机有两种基本的接口方法:单缓冲方式和双缓冲方式。因为本应用系统中只有一路D/A转换,并且不要求同步输出,所以,采用了单缓冲接口方式。在单缓冲接口方式中,0832的数据允许锁存信号引脚ILE直接接+5V,寄存器选择信号以及数据传送信号都与地址选择线相连,两级寄存器的写信号都由单片机的写选通信号端控制。当地址线选择好0832之后,只要输出写选通控制信号,0832就能够一步完成数字量的输入锁存和D/A转换输出。其模拟电压输出电路图如图3所。

图3 模拟电压输出电路
3.4 串行通讯电路
本文采用的是PC机和单片机组成的二级控制系统。单片机独立完成数据处理和控制任务,同时将数据传送给PC机,PC机将这些数据进行处理,并将各种控制指令发送给单片机,以实现集中管理和最优控制。因此,PC机和单片机之间的数据通讯是一个很重要的问题。串行通讯电路就是用来实现这两者之间的串行通讯功能的。鉴于MCS-51单片机串行口TXD, RXD均为TTL电平,而PC机配置的是RS-232C标准串行接口,RS-232C规定的逻辑电平与一般的微处理器、单片机的逻辑电平不一样。所以在实际应用时,必须进行电平转换。这种转换是由专门的电平转换芯片来实现的。
在标准的RS-232C串行通讯接口电路中常用的集成芯片有MAX201,MAX232等,本文采用的是MAX232芯片。MAX232是由MAXIM公司生产的、包含两路接收器和驱动器的IC芯片,适用于各种EIA-232C的通信接口。MAX232芯片内部有一个电源电压变换器,可以把输入的+5V电源电压变换成RS-232C的输出电平所需要的±10V电压。所以,采用此芯片接口的串行通信系统只需要单一的+5V电源就可以了。对于没有±12V电源的场合,其适应性更强。加上此芯片的价格适中,硬件接口简单,因此被广泛的采用。MAX232芯片的典型工作电路如图4所示。

图4 串行通讯接口电路
本系统采用的是两路发送接收中的第一路。T1IN接单片机的发送端TxD, PC机的RS-232的接收端RxD对应的接T1OUT引脚。同时,R1OUT接单片机的RxD引脚,PC机的RS-232的发送端TxD对应接R1IN引脚。
4 控制系统软件设计
自动水下作业系统的计算机控制系统软件包括两部分:8051单片机(下位机)控制程序和PC机(上位机)控制程序。
单片机主要完成实时控制功能,其程序采用C51语言编写;PC机主要完成协调管理功能,其程序采用Windows操作平台下的Microsoft VisualC++6.0开发环境,它具有良好的人机对话界面,便于观察与显示。二级控制系统的软件相配合即可实现运动的可视化控制。Visual C++6.0作为功能强大的开发工具几乎在Windows软件开发的任何领域都得到了广泛的应用。利用Visual C++6.0可以方便的实现串行通讯。其方法是利用Microsoft Visual C++6.0 ActiveX控件。此方法实现简便,且可满足一般情况下的通信要求。二级控制系统的软件相配合即可实现系统的运动控制。
下位机程序的主要功能是根据上位机所发出的命令,直接发送指令控制电磁阀和伺服阀动作,实现水下作业系统的上升、下降、顺转和逆转运动;接受传感器的反馈信息,即时传送给上位机,上位机对此做出反应,从而实现系统停止旋转的操作。
5 小结
本文作者创新点:针对水下作业系统主要设计了其控制系统。硬件部分介绍了电路中各个部分的结构以及所起的作用;软件方面介绍了上位机与下位机程序的编程思想和编程工具的选择。
参考文献
[1] 刘智辉,何俊华. 二维扫描式水下电视系统控制系统的设计[J]. 微计算机信息, 2007, 9-1: 16-17.
[2] 孙传东,李驰,陈良益.水下电视系统研制中的技术难点及解决方法[J].光子学报,1998,(5):462-466.
[3] 李现勇编著.Visual C++串口通讯技术与工程实践[M].北京:人民邮电出版社,2003.
|