APP下载

电动按摩床的单片机控制系统

2010-09-04江苏常州轻工职业技术学院韩迎辉

河南科技 2010年8期
关键词:推杆存储器电动

江苏常州轻工职业技术学院 韩迎辉

电动按摩床的单片机控制系统

江苏常州轻工职业技术学院 韩迎辉

本文主要介绍电动按摩床控制系统的设计,包括系统硬件和软件的设计,具体给出了硬件电路组成、软件功能划分,以及系统软硬件控制功能的实现方法。本电动按摩床控制系统实现了多级振动控制、定位信息自动存储等功能,并具有控制功能灵活、使用方便、性价比高的特点。

电动按摩床 单片机

一、前言

本文介绍的电动按摩床控制系统,是用单片机作主控制器,按摩床控制模式包括床体的升降控制、振动控制和床体的位置记忆。以上控制方式通过手控器上的3个模式选择键进行选择:MEM(存储模式),MES(振动模式),ADJ(升降模式)。手控器与单片机之间的连接方式分有线连接和无线连接两种。

升降控制分背部升降和足部升降,分别由两个推杆电机进行控制;振动控制也分背部振动和足部振动两种情况,由两个振动电机进行控制。升降及振动位置由手控器上的back(背部)、foot(足部)键进行选择,振动按摩的力度可分十个档位进行调节,手控器上的Up/ Down按键可增加/减少一个档位。

在存储模式下,分别按动手控器上的S1、S2、S3键,可将当前床体位置作为记忆值(位置1、位置2、位置3)存储到EEPROM存储器中。而在升降模式下,按S1、S2、S3键,可将床体位置调整到被记忆过的3个位置上。

二、控制系统的硬件结构

控制系统的硬件主要由主控制器、脉冲定位控制部分、分级电压输出电路、无线接收部分、手控器接口和EEPROM存储器接口等组成。系统组成框图如图1所示。

图1 系统组成框图

1.主控制器

主控制器使用AT89S52单片机。AT89S52 是一种低功耗、高性能CMOS8位微控制器,与MCS-51单片机产品兼容,具有8K在系统可编程Flash 存储器,使用Atmel公司高密度非易失性存储器技术制造,片上Flash允许程序存储器在系统可编程,也可使用常规编程器编程。

2.脉冲定位控制部分

电动按摩床的升降运动分足部升降和背部升降,分别由推杆电机A和推杆电机B控制。推杆电机可正反转运行,经丝杆、变速箱带动推杆伸缩,从而控制足部的升降和背部的升降。电动床推杆电机及传动机构如图2所示。

电动按摩床升降位置的定位控制,是通过单片机对连接在电机尾部的脉冲发生器(PG)进行计数实现。

脉冲发生器是在推杆电机轴上安装一个圆盘,圆盘的圆周上均匀分布n个凸块,在圆盘附近固定一个光电传感器(槽形光耦),当圆盘旋转一周,光电传感器输出n个脉冲,此脉冲加到单片机引脚上,单片机通过计数得到脉冲个数(正转时增计数,反转时减计数),可知推杆电机转动的圈数,最终可计算出推杆伸缩的位移,从而实现升降位置的精确定位。

其中,足部脉冲加到单片机INT0引脚,背部脉冲加到单片机INT1引脚。

图2 电动床推杆电机及传动机构

3.分级电压输出电路

电动按摩床振动力度的调节,通过分级控制振动电机的电压实现,振动强度分10档,每按手控器上的Up/ Down按键一次可增加或减少一个档位。调节电路结构如图3所示。

图3 电压调节电路框图

单片机输出4位码经4028(BCD—十进制译码器芯片)的Q0~Q9输出,控制十路光耦的输入端,使其中的一路导通,该光耦输出回路中的电阻(R0~R9中的一个,其阻值各不相同)被并入RB电阻两端,控制LM317T输出至振动电机线圈的电压发生变化,以控制振动电机的振动强度。利用Up/ Down按键改变单片机4位输出码,并入电阻在R0~R9之间切换,进而使LM317T输出电压值可调,使振动强度发生变化。

4028的输入、输出状态如表1所示。

表1 4028的输入、输出状态

4.无线接收部分

手控器工作在无线控制模式下,通过无线发送方式传递控制信息,单片机通过无线接收电路接收控制信号。单片机的无线接收电路采用超外差方式,通过单片机T0中断接收,此种方式可绕过一定障碍物,接收范围较宽,但对时序有较高的要求,受现场干扰较大,需要在单片机的软件中进行抗干扰处理。

5.手控器接口

当手控器接上连接线,可作有线控制器,此时,利用单片机的串行口作手控器接口,其中RXD引脚作输入,TXD引脚作输出。使用时,手控器与主控器间要进行对码。

6.EEPROM 存储器接口

EEPROM存储器,用于存储位置定位信息,其中包括2个推杆电机的位置信息。每次系统上电后,单片机通过读EEPROM存储器获取所存的定位信息;单片机也可将新的位置信息写入EEPROM存储器。定位信息最多可同时存储3个记忆位置和1个当前位置数据。

EEPROM存储器采用AT24LC04芯片,该芯片为I2C器件,具有512×8位的存储容量,引脚排列如下图所示,其中A0、A1和A2是地址选择输入端,SCL串行时钟线,SDA串行数据线。

AT89S52单片机不带I2C总线,因此必须根据I2C总线的时序用单片机的I/O口模拟I2C总线时序实现其功能。

本系统中用单片机的P0.1与芯片的SCL相连,单片机的P0.2和SDA相连;单片机通过P0.1的高低电平得到控制I2C的虚拟时钟,P0.2作数据传输的双向端口,为单片机和AT24LC04之间提供数据线,电路连接如图4所示。

图4 AT89S52单片机与AT24LC04的接口

三、控制系统的软件设计

本系统共使用了五个中断源。它们分别作以下用途:

T0:无线接收中断

T1:定时中断

INT0:背部升降控制处理

INT1:足部升降控制处理

串行口:有线接收中断

控制系统的软件由主程序、各中断源的中断服务程序、以及子程序组成。

1.主程序流程

主程序主要完成系统初始化、读EEPROM、通信口检测、扫描键盘、键处理、写EEPROM等功能。流程如图5所示。其中读写EEPROM和键处理操作通过子程序实现。

2.系统初始化

系统初始化主要完成中断源初始化、通信口初始化、输出状态初始化等工作。

3.读写EEPROM

单片机对EEPROM存储器中所存的定位信息进行读取和重新写入。

4.通信口检测

读串行口状态,判断手控器的操作方式(无线或有线),并根据不同的操作方式,对电动床进行控制。

图5 主程序流程

5.扫描键盘与键处理

判断有无键按下,有键按下进而判断按键位置并进行键功能的处理。

需处理的按键包括3个模式选择键:MEM、MES、ADJ;2个位置选择键back、foot;2个振动按摩力度调节键UP、DOWN;3个存储选择键S1、S2、S3键。

四、结束语

由于AT89S52单片机内部资源被充分使用,因此本系统具有很高的性价比。作者参与了电动按摩床控制系统的设计与调试工作,针对如何解决抗干扰这一问题,除了软件抗干扰之外,在硬件上也采取了相应的措施,首先在电源回路中采用环形变压器加扼流圈,在电机两端加阻容滤波器,对脉冲发生器电路增加硬件消抖处理,以提高计数精度。本电动按摩床控制系统经过实际运行证明,系统控制功能可靠,使用方便,完全能符合用户的要求。

[1]一种智能无线数据采集系统的设计与实现.西北师范大学学报,2008年第2 期.佘乾顺,马胜前等

[2]用数字集成电路实现时序逻辑电路的功能.电子工程师.1999年第5期.涂金龙

猜你喜欢

推杆存储器电动
静态随机存储器在轨自检算法
电动自行车
重水堆装卸料机B推杆固定销窜动故障处理
纯电动重卡展会遇冷
重水堆装卸料机B推杆固定销窜动故障处理
MINI 电动概念车
基于Cruise的纯电动客车动力系统匹配
核电厂装卸料机B推杆位置失效原因分析及解决方案
存储器——安格尔(墨西哥)▲
基于Nand Flash的高速存储器结构设计