APP下载

基于单片机的全自动智能鱼缸清理器系统设计

2015-01-04冯雅莉郝宁生

韶关学院学报 2015年4期
关键词:滑台鱼缸轨迹

冯雅莉,郝宁生

基于单片机的全自动智能鱼缸清理器系统设计

冯雅莉,郝宁生*

(韶关学院物理与机电工程学院,广东韶关512005)

全自动智能鱼缸清理器系统的设计是采用STC系列单片机中AT89C52、步进电机滑台、定时系统和控制部分组成的.系统中含有2个步进滑台,分别代表直角坐标系中的横纵坐标轴.滑台的转轴上有一有转轴带动的金属块,代表清理器在鱼缸清洁轨道上的位置.其中,转轴是由步进滑台中的四相步进电机带动的.定时系统是由定时部分的DS1302芯片、测温部分18B20芯片和显示部分的液晶屏LCD1602组成.该系统可以实现人为定时清理鱼缸,过滤水体中异物,增氧以及遇故障时人为调整等功能.

AT89C52;步进滑台;四相步进电机;DS1302;18B20;LCD1602

全自动智能鱼缸清理器的清洁轨迹是可以根据鱼缸的形状进行设计的,除了具备清洁池底的功能外,还有增氧、检测水体温度、过滤水体、移动清洁的功能.目前市场上的产品及其系统的设计是基于PLC技术,采用PLC技术来控制直流电机或交流电机,其共同的缺点是不能根据不同类型的鱼缸进行修改清理器的行走轨迹.采用PLC技术是针对特定的轨道设计,程序比较简单,容易操作,但是运动轨迹变动时,需要改变内部硬件设备才能实现行走轨迹的更改,而且只能订制,不便投入批量生产.而单片机的片内含可反复擦写的Flash只读程序存储器和随机存取数据存储器,可以通过简单的改变程序实现行走轨迹的变化.本设计采用可改变的滑动轨道,可以根据不同的鱼缸进行重组轨道,从而大大增加了产品适用性和可操作性.

全自动智能鱼缸清理器的工作步骤如下:LCD1602显示时间,水体的温度,手动设定清理器开始工作的时间,当时间与设定时间一致时,鱼缸清理器自动开始工作,清理器工作一个周期后回到原位.本设计要实现的技术要求是:(1)温度检测:对水体温度进行测量并且反应到显示器上.(2)显示部分:显示当前时间、当前水体温度、定时设置.(3)键盘控制:在电动机停止工作的时候可以手动控制电动机的移动.(4)电机轨道:根据鱼缸的规格形状设定,确保能够让其清理到整个鱼缸底面.

图1 系统设计的方块图

图2DS18B20实物

1 总体设计

1.1 系统设计的方块图及其说明

系统设计的方块如图1所示.由AT89C52控制的鱼缸清理器系统的设计说明.温度传感器18B20把检测到的温度转化成数据传输给单片机,单片机控制LCD显示出当前的温度.而显示部分包括DS1302时钟芯片,所以可以把当前时间显示在LCD屏上.接近开关是在鱼缸的轨道的四个方位上,当清理器移动到靠近接近开关时,接近开关就可以把信号传送给单片机,单片机控制步进电机的行走方向.水泵由单片机控制,当系统启动的时候,单片机I/O口给出高电率水泵部分的继电器,即可让继电器合上常开开关,让水泵通电即可运作.键盘部分是控制电机的运转方向的,键盘的信号通过单片机传给电机进行控制.

1.2 显示部分

显示部分是由LCD1602液晶显示器,DS1302芯片和轻触开关组成,主要是起到显示当前时间和当前水体温度的作用.轻触开关主要是用于调节时间,设定清洁时间.

本设计使用的LCD1602液晶显示器为5V电压驱动,带背光,可显示两行,每行16个字符,不能显示汉字,内置含128个字符的ASCII字符集字库,只有并行接口,无串行接口.

1.3控制部分

控制部分是由4个轻触开关组成.当清理器出现故障时,可手动控制清理器回到原点,重启机器,则运行将恢复正常.

1.4 温度检测部分

温度检测部分功能主要是由DS18B20,32 KHz晶振,纽扣电池等元件组成.本设计使用的DS18B20是带有金属外壳的,具有防水功能.DS18B20是一种具有体型小、低能耗、高性能、抗干扰能力强、易配微处理器等优点的温度传感器,可以检测的温度范围是-55℃~125℃,在-10℃~85℃时精确度为±0.5℃.DS18B20的实物如图2所示.

1.5 电机轨道设计

假设本次设计是基于一个长方体的鱼缸,则电机的行走轨迹如图3所示.接近开关是安装在轨道的拐弯处的轨道壁上.

图3 电机行走轨迹

2 系统的电路设计

2.1 最小系统电路原理图

最小系统的核心就是AT89C52芯片,可以通过Keil C软件编译所需的程序,然后生成有效文件.hex,通过烧录系统直接把程序载入到AT89C52芯片中.

2.2 显示部分以及时钟芯片部分电路

图4 显示部分电路原理图

图5 时钟芯片部分电路原理图

显示部分主要显示当前时间、温度和定时设置,其中按键S1、S2、S3、S4用来设置时间,功能分别是选择、增加、减少、取消.系统基本能通过这4个按键实现时间的设定.显示部分电路原理如图4所示,时钟芯片部分电路原理如图5所示.

2.3 电机部分控制电路

光电隔离电路主要是由TLP521,三极管电路等组成,主要用于电动机的供给电控制.当单片机发出高电平给光电隔离器时,继电器的常开处会闭合形成回路,则电机与外接电路中的开关电源(24 V)接通.光电隔离的作用是保护最小系统中的89C52,以免因为电路中的电压不同而受到干扰,甚至损坏单片机.带有光电隔离的开关电路的步进电机控制电路原理图如图6所示.

图6 带有光电隔离的开关电路的步进电机控制电路原理图

图7 带步进电机的滑台组合电路实物

两个滑台分别模拟轨道的水平方向和竖直方向,在滑台上装有4个接近开关,分别模拟轨道的上、下、左、右4个方位的壁.电机的速度由单片机控制.带步进电机的滑台组合电路实物如图7所示.

3 软件系统设计

图8 主程序流程

图8 温度检测程序流图

图10 LCD1602液晶显示模块程序流程

首先进行所有数据的初始化,启动水泵,LCD显示当前时间,18B20检测水温,反馈给LCD显示出来;判断当前时间是否与设定清理时间一致,若一致,开始检测接近开关数据,若靠近步进电机,则步进电机执行命令,清理器开始运行.主程序流程如图8所示.

图9为温度检测的程序控制流程.温度控制主要是由18B20采集数据,然后经过自身对数据的处理,转化为计算机可以识别的编码传输给单片机,单片机传送给LCD即可实现温度的可读性.

图10为LCD1602液晶显示模块程序流程.首先初始化显示器的数据,并且定义时间设置按键S1、S2、S3、S4,其功能分别是选择、增加、减少、取消.单片机必须检测是否有按下按键,按键消抖后,若检测到有按下按键,就开始根据按键的次数来调整数据,把BCD码转换数据,存入单片机寄存器,LCD1602写出命令,最后显示出来.

图11为步进电机运行程序流程,该流程是根据图3的轨迹设定的.电机1是指沿Y轴方向上下移动的步进电机,电机2是指沿X轴方向左右移动的步进电机.其中电机1的正转是指向Y轴的负方向移动的转向,反之,电机1的反转是指向Y轴的正方向移动的转向.电机2的正转是指向X轴的正方向移动的转向,反之,电机2的反转是指向X轴的负方向移动的转向.接近开关1,2,3,4分别是轨道的上,左,下,右壁.当前时间与设定清理时间一致时,单片机发送信号给步进电机,电机接收信号后,开始判断清理器的位置,如果不是在原点,则可以通过键盘控制,使其回到原点;若在原点,则是按照程序的设计运行,运行的轨迹按图3设定.清理器碰到接近开关时,改变自身运行方向,使其可以完成设定轨迹的运动.

图11 步进电机运行程序

4 结语

该系统的设计能够实现鱼缸底面的清洁的,而且操作比较简单,只需设定清洁时间即可.当单片机检测到设定时间与当前时间一致时,清洁器就可以开始运行.清洁器的运行轨迹是根据鱼缸的形状设定的,若改变鱼缸的形状,可以通过改变单片机程序来改变清洁器轨迹,使其尽最大的可能使其轨道覆盖整个鱼缸.在设计硬件时,引入接近开关,使整个设计的复杂度大大的降低,接近开关模拟鱼缸轨道的拐点,单片机可以通过接近开关传送的信号改变步进电机的相序,从而改变电机的转动方向.

[1]宋建永,张金柱.基于MCS-51与8279的智能时控开关设计[J].电脑与电信,2008(9),106-107.

[2]徐金龙.片上时钟产生电路的研究[D].哈尔滨:哈尔滨工业大学,2009.

[3]郭天祥.新概念51单片机C语言教程——入门、提高、开发、拓展全攻略[M].北京:电子工业出版社,2010.

[4]谭浩强.C程序设计[M].2版.北京:清华大学出版社,2001.

[5]康华光.电子技术基础数字部分[M].5版.北京:高等教育出版社,2006.

[6]周立功,陈明计,王祖群,等.项目驱动—单片机应用设计基础[M].北京:北京航空航天大学出版社,2011.

Automatic Intelligent Fish Tank Cleaning Device Based on SCM Control Technology

FENG Ya-li,HAO Ning-sheng*
(Institute of Physics and Mechanical&Electrical Engineering,Shaoguan University, Shaoguan 512005,Guangdong,China)

The cleaning device consists four parts:AT89C52 of STC series,stepper motor slide unit,timing system and the controlling part.The STC contains a memory inside which the data can be repeatedly written and erased as well as a random access memory.There are two slide units in the device,standing for the x-axis and y-axis in rectangular coordinate system respectively.A shaft,powered by the four-phrase steeper motor is placed inside the slide unit.Rotated by the shaft a mental block,it indicates the position of the cleaning device in the fish tank.The timing system combines a chip DS1302 for timing,a chip 18B20 for temperature testing and a LCD screen LCD1602.The device is developed for multi-functions such as cleaning the tank automatically in specific time;removing the impurity in water;adding oxygen to the water and adjusting the position of the stepper motor intelligently when accident occurs.

AT89C52;slide unit;four-phrase steeper motor;DS1302;18B20;LCD1602

TP23

:A

:1007-5348(2015)04-0022-05

(责任编辑:李婉)

2015-02-20

广东省大学生创新创业训练项目(1057613-012).

冯雅莉(1991-),女,广东广州人,韶关学院物理与机电工程学院学生;研究方向:自动化控制.*通讯作者.

猜你喜欢

滑台鱼缸轨迹
某款汽车复合材料尾门的滑台分析及优化
树脂混凝土机床铸件滑台结构设计及性能分析
基于改进PID控制的机床滑台运动位移跟踪误差研究①
鱼缸里的杀手
鱼缸水
轨迹
轨迹
家里的小鱼缸
轨迹
基于PLC的喷涂自动滑台控制设计