下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
三花电子膨胀阀C51程序(适用于O型和T型)程序说明励磁时序:线圈数据线颜色接线励微状态(天网)励微状态(升代)1234567812345678?1A橙P0.01100000110000011?2D红P0.10111000000001110?3C黄P0.20001110000111000?4F黑P0.30000011111100000对垃的十六进制0x010x030x020x060x040x0C0x080x090x090x080x0C0x040x060x020x030x01导通日勺线圈AADDDCCCFFFAFAJFCFCDCDADA?5B监接电源空—.A01B[西10COIO«OFCAINESA后CBLUErtLL^W-R—CKEDGPEY1-1IPJLmI■DEF1J11l_1变量值:count_max为计数脉冲最大值,调零初始设定560,运行时设定为508,多加8个脉冲的闭阀动作。ADD_DEC_flag:1正转,0反转stopADD_flag为脉冲停止增加标志位,表示计数达到508时不再继续增加stopDEC_flag为脉冲停止减少标志位,表示计数达到0时不再继续减小count_num为电子膨胀阀发送的脉冲计数,定义int型,chai#大255count8为电子膨胀阀每组数据发送序号count5为电子膨胀阀每组数据发送开度1°计数,1°为5个脉冲定义speed_time=2Q控制膨胀阀的励磁速度,要求30-90pps,取50pps,则一个脉冲需要20ms2程序的编写:.起点调整方法:(1)将阀全闭并调整起点至A相励磁;
P0=0xf0;P0=vavle_exdtation[count8];//调整至A相(2)切断电源时:通电后,施加560脉冲来进行闭阀动作;count_max=560(3)控制时:现有开度+8脉冲的闭阀动作。count_max=508.停止驱动:在停止的励磁相上再施加励磁0.5sec以上后,停止驱动;.开始驱动:施加0.5sec以上的励磁于前回停止运转的励磁相上后,使其开始运转;.倒转驱动方向:在倒转前的励磁相上再施加0.5sec以上的励磁,然后进行倒转驱动;.开阀激励步骤表1从步骤1到8。.关阀激励步骤表1从步骤8到1。.步进电机带有永磁铁具有自保持能力,保持开阀不需要通电。头文件vavle.h#ifndef__VAVLE_H__//单片机//单片机STC15F2K60S2头文件,可以不再加入//定义头文件//延时函数头文件#include"common.h"#include"delay.h"/******************************T系列电磁阀/******************************T系列电磁阀*****************************#definespeed_time20//膨胀阀的励磁速度,要求30-90pps,取50pps,则一个脉冲需要20ms#definePulse_max500〃全开脉冲#defineFirstClosePluse_max560//关阀时最大脉冲,在500基础上要多关60#defineClosePluse_max508//关阀时最大脉冲,在500基础上要多关8系列电磁阀*//******************************系列电磁阀*****************************#definespeed_time10//膨胀阀的励磁速度,要求100-250pps,取100pps,则一个脉冲需要10ms#definePulse_max2000〃全开脉冲#defineFirstClosePluse_max2200//关阀时最大脉冲,在2000基础上要多关30#defineClosePluse_max2030//关阀时最大脉冲,在2000基础上要多关30*/externunsignedcharspeed_time;//膨胀阀的励磁速度,要求30-90pps,取50pps,则一个月冲需要20ms//externintPulse_max;//全开脉冲externintOpenPluse_max;//关阀时最大脉冲,在500基础上要多关60externintClosePluse_max;//关阀时最大脉冲,在500基础上要多关8externintClosePluse;//ir闭脉冲-500或-2000externintOpenPluse;祢开脉冲500或2000//externintPulse_Init;//intPulse_max;〃全开脉冲//intOpenPluse_max;//关阀时最大脉冲,在500基础上要多关60//intClosePluse_max;〃关阀时最大脉冲,在500基础上要多关8//intPulse_Init;〃初始化时的脉冲开度externunsignedcharcodevavle_excitation[];//ABCD四相对应的I/O口数据,正转//接线:A-P0.0,D-P0.1,C-P0.2,F-P0.3/*定义变量*/externintcount_num;〃电子膨胀阀初始化计数//externunsignedintcount_max;/电子膨胀阀初始化时为560,初始化完赋值508externunsignedcharcount8;//电子膨胀阀每组数据发送计数externunsignedcharcount5;〃电子膨胀阀每组数据发送开度1°计数externunsignedcharcount8_temp;〃即计数缓externunsignedcharvavle_flag;//发送数据标志位externunsignedintopening_deg;〃开度externunsignedcharADD_DEC_flag;//1正转,0反转externunsignedcharbutton_flag;〃按钮标志位externunsignedcharstopADD_flag;/计数达至U500时不再继续增加externunsignedcharstopDEC_flag;/*声明函数*///voidvavle_Init(void);voidstep_close(void);〃关阀,n为正转圈数voidstep_open(void);〃开阀,n为反转圈数voidcalc_opening_deg(void);//计算并显示开度#endif子程序Vavle_Control.c/************************************************************************************Copyright,ThunderDays程序名称:(晶振频率12MHz)功能说明:可正常点动加减开度程序版本:1.0(2017/07)************************************************************************************/#include"vavle.h"//电子膨胀阀头文件#include<stdio.h>//unsignedcharcodevavle_exdtation[]={0x01,0x03,0x02,0x06,0x04,0x0C,0x08,0x09};//ABCD四相对应的I/O□数据,正转unsignedcharcodevavle_excitation[]={0x08,0x0C,0x04,0x06,0x02,0x03,0x01,0x09};//ABCD四相对应的I/O□数据,正转//接线:A-P0.0,D-P0.1,C-P0.2,F-P0.3intcount_num=0;//电子膨胀阀脉冲计数,定义int型,char最大255unsignedintcount_max;//fe子膨胀阀初始化时为FirstClosePluse_max,正常闭阀时为ClosePluse_maxunsignedcharcount8=0;//电子膨胀阀每组数据发送计数unsignedcharcount5=0;//电子膨胀阀每组数据发送开度1°计数unsignedcharcount8_temp;//8拍计数缓存unsignedcharvavle_flag=0;//发送数据标志位unsignedintopening_deg=0;〃开度unsignedcharADD_DEC_flag=1;//1正转,0反转unsignedcharbutton_flag=0;〃按钮标志位unsignedcharstopADD_flag=0;//i+数达至U500时不再继续增加unsignedcharstopDEC_flag=0;/*电子膨胀阀初始化voidvavle_Init(void)//初始化电磁阀:关阀发560个脉冲,到0脉冲时,再通8个脉冲。{unsignedinti;//unsignedinti,N;ADD_DEC_flag=1;〃标志位置1,说明进行关阀操作//while(count_num<560);count_max=FirstClosePluse_max;P0=0xf0;
P0=vavle_exdtation[count8];〃开始励磁前,在for(i=0;i<FirstClosePluse_max;i++)〃关阀发560个脉冲,开度为112度(step_close();}.P26=1;//蜂鸣器count8=0;//初始化完调整到A相stopADD_flag=1;//关阀操作位为1,说明满开度//count_num=508;count_max=ClosePluse_max;LED_CLS_n(2);一for(i=0;i<Pulse_Init;i++)//开阀到400个脉冲,在此基础上进行调节(.step_open();calc_opening_deg();}LED_CLS_n(1);//TR0=0;//定时器0关闭DelayMS(500);P0=0x00;//关闭操作}关阀操作,关1关阀操作,关1个脉冲/***********************************************************/voidstep_close(void)〃关阀,此程序操作开度1°{ADD_DEC_flag=1;〃标志位置1,说明进行关阀操作if(stopADD_flag)//开阀停止标志位为1时,执行此操作说明开阀已经开到做大亓度,关阀时清空此标志位{stopADD_flag=0;//count_num=0;}if(!stopDEC_flag){P0=vavle_excitation[count8++];P26=0;//蜂鸣器DelayMS(speed_time);/挺时//stopADD_flag=0;count_num--;if(count_num<ClosePluse_max)//在阀关到0脉冲时再额外通8个脉冲关闭操作,不计短一
{//count_num=516;count_num=ClosePluse;stopDEC_flag=1;//全闭标志位,说明膨胀阀已全闭//break;}}if(count8==8)count8=0;//count500_flag=1;}/******************************开阀操作,开/******************************开阀操作,开1个脉冲**/*****************************/voidstep_open(void)//开阀,此程序操作开度1°{ADD_DEC_flag=0;//标志位清零,说明进行开阀操作if(stopDEC_flag)//关阀停止标志位为1时,执行此操作。说明关阀已经关到0°,开阀时清空此标志位{stopDEC_flag=0;〃因关阀时,多加了8个脉冲进行关阀,所以计数值要进行复位为500,在此基础上进行
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 二零二五年度危险品运输与安全装卸协议3篇
- 专业水泥购销协议规范版B版
- 二零二五年度电子商务平台建设与运营管理协议2篇
- 专项融资委托代理协议(2024版)版A版
- 个人借款抵押车复杂合同(2024版)2篇
- 二零二五年度城市综合体项目投资合作协议5篇
- 专业短视频摄制服务合同(2024年)3篇
- 2025年度生物制药研发与市场推广合作协议2篇
- 2025年度厂房物业管理与能源审计服务协议4篇
- 2025年度厂区生态景观绿化养护服务合同样本4篇
- 2024版个人私有房屋购买合同
- 2025年山东光明电力服务公司招聘笔试参考题库含答案解析
- 《神经发展障碍 儿童社交沟通障碍康复规范》
- 2025年中建六局二级子企业总经理岗位公开招聘高频重点提升(共500题)附带答案详解
- 2024年5月江苏省事业单位招聘考试【综合知识与能力素质】真题及答案解析(管理类和其他类)
- 注浆工安全技术措施
- 《食品与食品》课件
- 2024年世界职业院校技能大赛“食品安全与质量检测组”参考试题库(含答案)
- 读书分享会《白夜行》
- 2023上海高考英语词汇手册单词背诵默写表格(复习必背)
- 人民军队历史与优良传统(2024)学习通超星期末考试答案章节答案2024年
评论
0/150
提交评论