第五届全国大学生机械创新设计大赛作品设计说明书
(1) 外形及电气原理图如图3-6所示:
图3-6 外形及电气原理图
(2) 步进电机接线实图如图3-7所示:
图3-7 步进电机接线实图
3.2.3 电控部分C程序
电控部分C程序见附录。
4市场推广价值
随着生活水平的提高及科学技术的发展,按摩器多功能化及自动化程度将逐步提升,人们对自己的健康更为重视。本作品是运用机构和遥控电动来实现其功能,其设计原理较简单,它的制造成本也较低,功能也较为完善,能满足“推、拍、按、
16
第五届全国大学生机械创新设计大赛作品设计说明书
捏、揉、震”中医手法。
本作品利用电动遥控装置让其按人们要求自由前进,每次到了指定位置后即可进行按摩,这样既省时省力又简便。
本作品还有很多可以扩展的空间,根据不同的按摩手法需求增加和减少一些装置,满足使用要求。
在我们设计过程中,通过多次实验,不断设计与改进,使其功能更加完善。而市场上也很少有此类多功能的按摩产品,且本作品的出现极大的提高了人们对保健的需求,一些老式简单按摩装置将会逐步被取代;所以我们的这项设计也具有很大的推广价值。通过上述分析,多功能中医按摩臂的市场推广前景较广阔。
5 参考文献
[1] 闻邦椿.机械设计手册:第2卷[M].5版.北京:机械工业出版社,2010.1. [2] 卜炎.机械传动传动装置设计手册.[M]北京:机械工业出版社,1999. [3] C·H柯热夫尼柯夫,等.机构[M].北京:机械工业出版社,1981. [4] 沈允楣.机构设计的组合与变异方法[M].北京:机械工业出版社,1982.
[5] 鲁远栋.PLC机电控制系统应用设计技术.[M].2版.北京:电子工业出版,2010.3. [6] 薛卫国.中华保健按摩全书.[M].初版.重庆出版社,2007.1.
[7] 机械设计手册. [M].(新编软件版).北京:机械工业出版社,2008.
17
第五届全国大学生机械创新设计大赛作品设计说明书
6 附录
附录1 电控部分C程序
L298驱动步进电机正反转程序 #include
#define speed 30//步进电机速度,数值越大,电机速度越慢 sbit ENA=P3^0; sbit IN2=P3^1; sbit IN1=P3^2; sbit IN4=P3^3; sbit IN3=P3^4; sbit ENB=P3^5; abit k-1-P2^0; abit k-1-P2^1; void delay(uint x) { uchar a; } main() { ENA=1; ENB=1;
if(p2^0==0)//接收器控制步进电机正传 {
IN1=0;IN2=0;IN3=1;IN4=0; delay(speed); IN1=0;IN2=0;IN3=1;IN4=1; delay(speed); for(;x>0;x--) for(a=110;a>0;a--);
18
第五届全国大学生机械创新设计大赛作品设计说明书
IN1=0;IN2=0;IN3=0;IN4=1; delay(speed); IN1=1;IN2=0;IN3=0;IN4=1; delay(speed); IN1=1;IN2=0;IN3=0;IN4=0; delay(speed); IN1=1;IN2=1;IN3=0;IN4=0; delay(speed); IN1=0;IN2=1;IN3=0;IN4=0; delay(speed);
IN1=0;IN2=1;IN3=1;IN4=0; delay(speed); }
if(p2^1==0)//步进电机反转 {
IN1=0;IN2=1;IN3=1;IN4=0; delay(speed); IN1=0;IN2=1;IN3=0;IN4=0; delay(speed); IN1=1;IN2=1;IN3=0;IN4=0; delay(speed); IN1=1;IN2=0;IN3=0;IN4=0; delay(speed);
IN1=1;IN2=0;IN3=0;IN4=1; delay(speed);
IN1=0;IN2=0;IN3=0;IN4=1; delay(speed); IN1=0;IN2=0;IN3=1;IN4=1; delay(speed);
IN1=0;IN2=0;IN3=1;IN4=0; delay(speed); } }
19
第五届全国大学生机械创新设计大赛作品设计说明书
直流电机调速程序
#include
uchar time0_val; uchar time1_val;
sbit ENA=P1^0; sbit IN2=P1^1; sbit IN1=P1^2; sbit IN4=P1^3; sbit IN3=P1^4; sbit ENB=P1^5; void delay(uint x) { uchar a; for(;x>0;x--) for(a=110;a>0;a--);
}
void time0( ) interrupt 1 {
time0_val++; }
void time1( ) interrupt 3
20