1档位控制。
即HZ变频控制速度。假如定位4个档位。15HZ
25HZ
35HZ
50HZ
一般15HZ为空载
25HZ
35HZ
为中间转速,50HZ
为满负荷运转。
通过变频器接线,将15HZ
25HZ
35HZ
50HZ通过开关变量输出。
这个程序很好写的,画面设立几个按钮即可控制变频器加减速。
2模拟量控制
接线,把变频器的频率通过模拟量反馈信号给PLC,我们来进行换算成HZ,这个换算好像是立方降比例,编写久了记得不清楚,把换算成的HZ给个中间变量,我们来通过+1HZ
-1HZ来控制变频器加速减速,
程序也好编写,就是换算好像有些推敲吧,画面做个+-,出发+-要与PLC执行周期时间一直吧,不然会出现点一下+1
会+了好几个。
OK一下吧。
#include<reg51.h>//设CPU是时钟12MHz的8051系列
data unsigned char ms
sbit K1=P0^0
void SetupTimer0()
{
TMOD &= 0XF0 //仅保留T1信息
TMOD |= 0X02 //设置T0: 定时功能,方式2,自动重载8位定时器/计数器
TH0 = 256-250//定时每0.25ms中断一次
TL0 = 256-250
TR0 = 1 //开启定时器
ET0 = 1 //定时器0中断打开
}
void Timer0_ISR() interrupt 1 //中断服务程序
{
static data unsigned char us250
if (++us250>=4) {++ms us250=0}
}
void main()
{
data unsigned char p1,p2
ms=0
SetupTimer0()
EA = 1 //全局中断打开
K1 = 1
while(1)
{
if (K1) {P1=p1=0XFF P2=p2=0x00 ms=0 continue}
if (ms<150) continue
ms=0
p1<<=1 P1=p1
p2<<=1 p2|=1 P2=p2
}
}
在3秒钟内,Y0的脉冲频率分10级从0增加到150Hz,那么每一级的频率变化量为150/10=15Hz,每一级的时间为3/10=0.3S,算出前9级的脉冲数,再把这些脉冲数相加,那么加速过程中的脉冲个数是(15+30+45+60+75+90+105+120+135)×0.3=202.5,如果再算上第10级发出的脉冲,脉冲个数是150×0.3+202.5=247.5可以发现,不论算不算第10级,加速过程的脉冲都不是225,所以可以肯定的是,作者算错了。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)