基于AT89C52单片机的智能液体卸料控制器的设计

发布者:龙爱泉也最新更新时间:2018-01-12 来源: eefocus关键字:AT89C52  单片机  卸料控制器 手机看文章 扫描二维码
随时随地手机看文章

0引言

液体物料的运输是日常运输活动中的主要内容之一,例如各种油料,液体酸、硫酸铜溶液等液体化工原料。当前液体物料运输车的装卸料操作主要是通过人工按一定的组合顺序来控制阐门的打开和关闭,这种方式操作复杂、劳动强度大。对于油料运输车,除了装,卸料外,往往还存在给其它车辆进行加油的操作,需要对油量进行计量。在一些易燃、易爆液料运输过程中,安全性差也是一个急需解决的问题。针对以上问题,本设计采用微控制器和智能传感器组成控制系统,从而实现了液体物料运输车卸料过程的白动控制和运输过程中的安全警报。

1系统原理

该卸料系统南嵌入式微控制器及相应的控制软件、油泵、气动阀门F1~F5、阀门状态检测开关、流量计量装置组成,其原理图如图l所示。



图中,s1、s2、s3分别表示油罐中的压力、温度、液位的值(由相应的传感器测得),阀门状态由相应的阀门状态检测开关K1~K5测得,控制装置通过采集到的以上信息发出控制命令或报警信号,其中F1~F5为气动阀门。通过油泵和气动阀门的不同状态组合可实现不同的功能,其功能和执行机构状态组台如表l所列。利用微处理器的程序,可对每一种功能编写一个对应的功能子程序,同时在操作面板上设置对应功能的选择按键。这样,通过选择不同功能按键组合来启动卸料过程,就可以方便的控制对应的操作。



在车辆行进过程中,本控制系统可以自动监测罐体的压力与液体温度。当压力或温度超过某一个限度时,系统便会发出报警信号,提高运输的安全性。本控制器可安装在驾驶室内。操作人员可在运输和装卸易燃、易爆液料过程中,通过气动方式来驱动阀门F1—F5,故可避免电火花启动阀门带来的危险,提高操作过程中的安全性。

2硬件设计

本系统主要由主控制器电路、驱动电路、键盘与显示电路组成。其电气原理如图2所示。



系统中的主控制器电路是整个智能控制器的核心。主控制器电路中包括微控制器、传感器及相关外围电路,井带有8位数据总线和低8位地址总线接口,其中地址译码器用于提供其它接口的地址译码信号。另外,该电路还包括模拟信号放大与滤波电路、A,D转换接口,现场总线接口,以及与驱动板和键盘与显示板的接口。驱动电路接受主控制器电路的控制信号,并经过光电隔离与放大后,作为气动阀门和油泵等(共8个)执行元件的驱动信号。每个驱动信号的输出端都有一个隔离的检测电路。图3所示是其检测电路图。



系统中的输出检测电路可用于监测输出控制命令是否正确发出。此外,5个阀门和油泵也各有一个隔离的状态检测开关,可用于监测控制命令是否被正确执行,以确保控制的可靠性。电路中的一个隔离Dc/Dc变换器用于向主控制电路、键盘与显示电路提供工作电源。键盘与显示电路包括16个操作按键、8个IJED状态显示灯和7个LED数码管。其中8个显示灯用于显示阀门和泵的状态,以及控制器的运行状态和电源状态等;7个数码管平时用于显示油罐温度和压力,同时可在装油、卸油、加油过程中显示剩余油量和加油数量。如果出现故障,该电路还可以显示故障信息。并可通过功能按钮与数字键的组合选择工作流程。

3有限状态自动机原理的软件设计

有限状态自动机是一种具有离散输入、输出状态的系统数学描述模型,它可用一个五元组(M=_x,s.Y,8,λ])来描述系统的状态转移关系,而状态的转移关系则可以用状态转移图来描述。本系统的控制过程由有限个功能子程序构成,这些功能子程序之间的转移条件是有限的,而且系统在任一时刻总是处于某一确定的状态上。所以,本系统具有状态机的特征,可以用有限状态机理论来描述。控制软件可使用汇编语言编写,包括初始化于程序、自检子程序、出错处理子程序、AID转换子程序、键盘中断服务子程序、回收子程序、装油子程序、自流卸油子程序、油泵卸油子程序、泵站卸油子程序和显示子程序等多种功能子程序,可分别用状态q1_m(m=0…10)表示;转移条件x1_n (n=0…6)由l位当前程序的执行结果状态编码和8位操作按键编码两部分构成,其中程序执行结果正确时,代码为1,错误时则为0;同时操作按键按下为1,否则为0(如x1_0应为010000000,xl_1为110000000)。D8~DO分别代表程序执行状态、启动、停止、装油、卸油、泵站、0按键、1按键、2按键。其主程序的状态转移图如图4所示。



依据状态转移关系和转移条件可以把一个非常复杂的程序,就变成一个依据条件编码内容进行转移的多分支的结构,并很容易的用汇编语言或C语言来实现,实现时可分别采用JMP@A+DP-TR指令和switch-case语句来具体完成。其汇编程序的主要代码如下:



下面对部分功能子程序进行简要说明:

(1)自流卸油子程序

通过“卸油”和“0”两按钮可选择该功能。按下启动按钮,再按F3、F4顺序开启阀门,油罐中的油就可利用自身压力流出。按下停止按钮时,可按相反顺序关闭F4、F3,此时系统会同时给出提示信号。

(2)油泵卸油子程序

通过“卸油”和按钮“l”可选择油泵卸油子程序。操作时可先用数字键输入卸油量,然后按启动按钮,再按照开启F1、F5、启动油泵的顺序开始卸油。达到设定的卸油量或按下停止按钮时,可按相反的顺序关闭油泵、F5和F1,并给出提示信号。如输入错误,可按停止键,然后重新输入。

(3)泵站卸油子程序

通过“泵站”和按钮“l”可选择该功能。可先用数字键输入卸油量,然后按启动按钮,再按开启F2、F5、启动油泵的顺序启动泵站工作。达到设定的卸油量或按下停止按钮时,再按相反的顺序关闭油泵、F5和F2,同时给出提示信号。如输人错误,可按停止键并重新输人。

4结束语

通过本控制系统,可将当前液体物料运输车卸料过程按特定的顺序开启卸料泵和卸料阀门的复杂手动操作转变为利用控制器自动按预定程序启动卸料泵和阀门的自动操作。这种控制器不仅可以降低卸料操作的复杂性和劳动强度、提高效率,而且可以提高卸料和运输过程的安全性。目前,本控制系统已成功申请专利

关键字:AT89C52  单片机  卸料控制器 引用地址:基于AT89C52单片机的智能液体卸料控制器的设计

上一篇:集约型51系统板输出通道的改进设计
下一篇:单片机步进电机的驱动程序

推荐阅读最新更新时间:2024-03-16 15:52

用IAR编译STM8单片机报警告
警告图片: 由警告提示可知,有一个编译选项执行失败了,但是我们仍然可以继续去执行代码 【 就像是你点了一份盖浇饭,和服务员说你要微辣,结果上来后你发现你的盖浇饭是不辣的,而这并不影响你继续享受盖浇饭,你同样可以吃的饱! 但是对于我这样的强迫症来说,这样吃起来就不香了,所以我还是得手动去加点辣椒才行。】 怎样才能吃的香呢? 第一步: 第二步: 第三步:重新编译- 下载,你会发现没有了警告! 到此,就是我的解决办法! 希望你也能早点解决
[单片机]
用IAR编译STM8<font color='red'>单片机</font>报警告
基于AT89S52单片机的自动温控电风扇设计
0 引 言 在日常生活中,单片机得到了越来越广泛的应用。它体积小、重量轻、集成度高、抗干扰能力强、性价比高,尤其适合应用于小型的自动控制系统中。电风扇起停的自动控制,能够解决夏天人们晚上熟睡时,由于夜里温度下降而导致受凉,或者从睡梦中醒来亲自开关电风扇的问题,具有重要的现实意义。本文从此目的出发利用AT89S52单片机设计了自动温控电风扇系统,当温度高于20℃时,自动打开电风扇;低于20℃时自动关闭电风扇。还可以实现当温度过高或过低时,蜂鸣器发出声音报警提醒人们注意避暑或防止受凉。 l 设计方案 电路的总框图如图1所示。 在系统中,单片机通过检测18B20采集的温度来作出相应处理,当温度高于20℃时,P2.7输出高
[单片机]
基于AT89S52<font color='red'>单片机</font>的自动温控电风扇设计
MSP430单片机命名规则
TI MSP430命名规则
[单片机]
MSP430<font color='red'>单片机</font>命名规则
单片机驱动8*8LED点阵c程序
#include reg52.h typedef unsigned char uint8; typedef unsigned int uint16; sbit acon=P1^0; //38译码器 sbit bcon=P1^1; sbit ccon=P1^2; sbit en=P1^7; //译码器使能 uint8 j=0,k=0; uint16 i=0; code uint8 ledcode ={ 0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF, // 0xFF,0xC3,0xE7,0xE7,0xE7,0xE7,0xC3,0xFF, // I 0xFF,0x99,0x66,
[单片机]
<font color='red'>单片机</font>驱动8*8LED点阵c程序
基于RS-485总线的数据采集系统
  1 硬件设计   1.1 系统整体框图   系统实质上是一个集散控制系统,更准确地说是一个远程数据采集系统,系统概念设计图如图1所示,系统整体框架图如图2所示。      1.2 系统模块设计   1.2.1 信号获取模块   系统采集大坝坝内各个方位的形变,这种形变反映出各个方位的压力值。选用NZS - 25系列差阻式应变计,它是一种大量程大应变计,适用于大坝及其他混凝土建筑物内部、钢结构等的应变量测量。它与一般压力传感器的结构不同,是通过测量比值而得到压力值,其基本结构如图3所示。      图3中,R1、R2为敏感电阻,其基准电阻值为40 ,在其没有受压时,2个电阻的阻值都不会发生变化,但是当
[单片机]
基于RS-485总线的数据采集系统
51单片机实现步进电机加减速的例子-加注释
void motor_ffw() { unsigned char i; for (i=0; i 8; i++) //一个周期转30度 { P1 = FFW &0x1f; //取数据 //FFW为步进码 delay(); //调节转速 } } void delay() { unsigned int k,t; t=rate; //转速定义 while(t--) { for(k=0; k 150
[单片机]
STM8单片机PWM应用(IAR)
PD3复用功能是TIM2_CC2,正好可以用来测试PWM功能。本例程通过电位器调整PWM脉宽来调整接在PD3的LED1亮度。 #include iostm8s207sb.h void CLK_init(void) { CLK_CKDIVR = 0x08; // 16M内部RC经2分频后系统时钟为8M } void GPIO_init(void) { PD_DDR = 0x08; // 配置PD端口的方向寄存器PD3输出 PD_CR1 = 0x08; // 设置PD3为推挽输出 } void TIM2_init(void) { TIM2_CCMR2
[单片机]
电子车速里程表的51单片机实现方案
1 概述 传统的汽车转速里程表的功能有两个,一是用指针指示汽车行驶的瞬时车速,二是用机械计数器记录汽车行驶的累计里程。现代汽车正向高速化方向发展,随着车速的提高,用软轴驱动的传统车速里程表受到前所未有的挑战,这是因为软轴在高速旋转时,由于受钢丝交变应力极限的限制而容易断裂,同时,软轴布置过长会出现形变过大或运动迟滞等现象,而且,对于不同的车型,转速里程表的安装位置也会受到软轴长度及弯曲度的限制。凡此种种,使得基于非接触式转速传感器的电子式转速里程表得以迅速发展。 2 里程累计实现原理 车速里程表的速比表示的是:车速里程表转轴(软轴)在汽车行驶一公里时所转过的转数。 基于单片机的车速里程表采用霍尔型非接触式转速传感器。这种车
[单片机]
电子车速里程表的51<font color='red'>单片机</font>实现方案
小广播
添点儿料...
无论热点新闻、行业分析、技术干货……
设计资源 培训 开发板 精华推荐

最新单片机文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

换一换 更多 相关热搜器件
随便看看
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved