1.请问流水灯怎么编写梯形图
x0为启动按钮,x1为停止按钮。
y0~y7为8盏灯。程序在按下启动按钮后,灯1先亮,1秒(T0延时)后灭,1秒后(T1延时)灯2亮,依次循环。
当按下x1后,循环结束。程序解释:第一个程序块:按下x0后,m0得电为1并自保持,此时1秒计时器T0计时,1秒后T0常开点闭合1秒计时器T1计时,再过1秒T1计时结束常闭点断开T0线圈,T0失电复位并断开T0常开点,此时T1线圈也失电复位,T1常闭点又闭合,T0得电重复上述计时过程。
第二个程序块:当M0为1时,在T0触点的上升沿来时k3M10这个二进制数乘以2再写入k3M10中。K3M10代表M10~M21共12个辅助继电器的组合,那么可以将K3M10看作是一个二进制数。
程序未启动时,M10~M21均为0,那么这个二进制数为0;当程序启动时,在下一个程序块中利用了M0的上升沿置位M10,此时M10~M21为1,当T0触点的上升沿来时k3M10(此时为1)这个二进制数乘以2再写入k3M10中(写入后为2),2在二进制数中为10,此时M10失电,M11得电,可以认为M10把"1"交给了M11,以此类推。当第8个M17得电时,完成了一次循环。
下一个T0上升沿来到时,M18得电,M17失电。此时下面的程序块利用了M18的上升沿重新置位M10并且将M18复位。
这样程序又从M10得电开始循环下去了。这个程序块的作用就是每次T0的上升沿来到时,“1”在M10~M17之间转移。
第三个程序块:上面已经介绍了,就是在循环开始时置位M10,在循环到M18时再次置位M10,并复位M18第四程序块:程序停止,当按下X1时,M0断电复位,常闭点来对M10~M21共12个辅助继电器进行区间复位。第五程序块:将K2M10(M10~M17)这8个辅助继电器的状态一一对应传送给K2Y0(Y0~Y7)这8个输出继电器,带动相应的1~8盏灯。
2.怎么写流水灯程序
uint temp,i;
while(1)
{
temp=0xfe;
P1=temp;
for(i=1;i<8;i++)
{
a=temp<<i;
b=temp>>(8-i);
P1=a|b;
delayms(500);
}
temp=0x7f;
P1=temp;
for(i=1;i<8;i++)
{
a=temp>>i;
b=temp<<(8-i);
P1=a|b;
delayms(500);
}
}
3.单片机流水灯程序怎么写
//上电延时500ms 个人做项目的习惯
//系统初始化部分,io初始化或定时器之类
unsigned int time = 0; //初始化计数
while(1){//大循环
if(s3 == 0 && s5 == 0){//开关3和拨码5同时打开
display(4 - time); //数码管显示
led_write(time ,0); //打开 time对应的 led
delay_ms(100); //延时100ms
if(++time > 4){ //判读计数
led_write_all(1); //关全部灯
delay_ms(100);
led_write_all(0);//开全部灯
delay_ms(500);
led_write_all(1);
}
}else{ //否则 开关3和拨码5 不是同时打开
display(CLOSE) //关闭数码管 设一个常量宏CLOSE == 10
led_write_all(1);
delay_ms(500); //500ms
}
}
注:当中调用的函数,要根据原理图自己封装。这个是驱动部分
4.就是用s7
TITLE=程序注释
Network 1 // 网络标题
// 网络注释
LD SM0.1
O Q0.0
O T52
AN I0.0
AN T37
= Q0.0
TON T37, 5
Network 2
LD T37
O Q0.1
AN T38
= Q0.1
TON T38, 5
Network 3
LD T38
O Q0.2
AN T39
= Q0.2
TON T39, 5
Network 4
LD T39
O Q0.3
AN T40
= Q0.3
TON T40, 5
Network 5
LD T40
O Q0.4
AN T41
= Q0.4
TON T41, 5
Network 6
LD T41
O Q0.5
AN T42
= Q0.5
TON T42, 5
Network 7
LD T42
O Q0.6
AN T43
= Q0.6
TON T43, 5
Network 8
LD T43
O Q0.7
AN T44
= Q0.7
TON T44, 5
Network 9
LD T44
O Q1.0
AN T45
= Q1.0
TON T45, 5
Network 10
LD T45
O Q1.1
AN T46
= Q1.1
TON T46, 5
Network 11
LD T46
O Q1.2
AN T47
= Q1.2
TON T47, 5
Network 12
LD T47
O Q1.3
AN T48
= Q1.3
TON T48, 5
Network 13
LD T48
O Q1.4
AN T49
= Q1.4
TON T49, 5
Network 14
LD T49
O Q1.5
AN T50
= Q1.5
TON T50, 5
Network 15
LD T50
O Q1.6
AN T51
= Q1.6
TON T51, 5
Network 16
LD T51
O Q1.7
AN T52
= Q1.7
TON T52, 5
梯形图这里不方便就只好上STL了,你可以转换成梯形图看
5.西门子s7 200怎么实现流水灯,求方法梯形图
我手头没有s-200的编程软件,可以给你一个思路:
启动和停止作为输入触电,八个灯作为输出触点,做共阴极连接。
程序有很多种实现办法,我提供两种意见:
1》由于这里是个纯时序逻辑。可以用一个时钟和启动按钮作为触发条件,第一秒开启l1输出,第三秒l1关断,l2输出。。。。。以此类推,当运行完一轮之后重置。
2》不用时序可以使用标志位,定义16个内部触点。开机之后启动触点1,触点1开启l1,当触点1开启1秒之后,启动触点2,在启动触点2时复位触点1,触点2开启l2,然后以此类推。
这个程序比较简单,接线应该只用接8组输出2组输入,然后把公共端一连。
转载请注明出处育才学习网 » 流水灯plc程序怎么写