三花电子膨胀阀C51程序〔适用于O型和T
型〕
程序说明
励磁时序:
12
1
2
3
4
5
6
7
8
1
2
3
4
5
6
7
8
?1
A
橙
P0.0
1
1
0
0
0
0
0
1
1
0
0
0
0
0
1
1
?2
D
红
P0.1
0
1
1
1
0
0
0
0
0
0
0
0
1
1
1
0
?3
C
黄
P0.2
0
0
0
1
1
1
0
0
0
0
1
1
1
0
0
0
?4
F
黑
P0.3
0
0
0
0
0
1
1
1
1
1
1
0
0
0
0
0
颜色接线
励磁状态(关阀) 励磁状态(开阀)
对应的十六进制导通的线圈
?5 B 蓝
0x010x030x020x060x040x0C0x080x090x090x080x0C0x040x060x020x030x01A AD D DC C CF F FA FA F CF C DC D AD A
接电源线
变量值:
count_max为计数脉冲最大值,调零初始设定560,运行时设定为508,多加8个脉冲的闭阀动作。
ADD_DEC_flag:1正转,0反转
stopADD_flag为脉冲停顿增加标志位,表示计数到达508时不再连续增加stopDEC_flag为脉冲停顿削减标志位,表示计数到达0时不再连续减小count_num为电子膨胀阀发送的脉冲计数,定义int型,char最大255count8为电子膨胀阀每组数据发送序号
count5为电子膨胀阀每组数据发送开度1°计数,1°为5个脉冲
定义speed_time=20,掌握膨胀阀的励磁速度,要求30-90pps,取50pps,则一个脉冲需要20ms
程序的编写:
1.起点调整方法:
〔1)将阀全闭并调整起点至A相励磁;
P0=0xf0;P0=vavle_excitation[count8];//调整至A相
〔2〕切断电源时:通电后,施加560脉冲来进展闭阀动作;count_max=560(3)掌握时:现有开度+8脉冲的闭阀动作。count_max=508
2。停顿驱动:在停顿的励磁相上再施加励磁0.5sec以上后,停顿驱动;
开头驱动:施加0。5sec以上的励磁于前回停顿运转的励磁相上后,使其开头运转;
倒转驱动方向:在倒转前的励磁相上再施加0.5sec以上的励磁,然后进展倒转驱动;
5。开阀鼓励步骤表1从步骤1到8。
6.关阀鼓励步骤表1从步骤8到1.
7。步进电机带有永磁铁具有自保持力量,保持开阀不需要通电。
头文件vavle.h
#ifndef VAVLE_H #define VAVLE_H
#include“stc15f2k60s2。h“ //单片机STC15F2K60S2头文件,可以不再参加
reg51。h
#include”common。h“ //定义头文件
#include”delay.h” //延时函数头文件
/******************************T系列电磁阀******
***********************
#definespeed_time20 //膨胀阀的励磁速度,要求30—90pps,取50pps,则一个脉冲需要20ms
#definePulse_max500 //全开脉冲
#defineFirstClosePluse_max560 //关阀时最大脉冲,在500根底上要多关60
#defineClosePluse_max508 //关阀时最大脉冲,在500根底上要多关8
*/
/******************************O系列电磁阀*****
************************
#definespeed_time10 //膨胀阀的励磁速度,要求100-250pps,取100pps,则一个脉冲需要10ms
#definePulse_max2025 //全开脉冲
#defineFirstClosePluse_max2200 //关阀时最大脉冲,在2025根底上要多关30
#defineClosePluse_max2030 //关阀时最大脉冲,在2025根底上要多关30
*/
externunsignedcharspeed_time; //膨胀阀的励磁速度,要求30-90pps,取50pps,则一个脉冲需要20ms
//externintPulse_max; //全开脉冲
externintOpenPluse_max; //关阀时最大脉冲,在500根底上要多关60externintClosePlus