设为首页
收藏本站
开启辅助访问
切换到窄版
积分充值
登录
立即注册
微信扫码登录
首页
首页
共享资源
BBS
视频教程
AI聊天机器人
VIP充值
论坛
搜索
搜索
程序分享
文库分享
软件下载
变频手册
干货教程
成套课件
使用必看
GPT3.5免费体验版
万能程序翻译
WinCC脚本编程机器人(VIP免费)
GPT3.5完整版(VIP免费)
自控工程师3.5(VIP免费)
GPT4.0完整版-线路1(VIP免费)
自控工程师4.0版-线路1(VIP免费)
GPT更多线路及版本
最新提现记录
恭喜
admin
于 2023-6-6 15:17 成功提现
500元
恭喜
admin
于 2023-5-3 09:45 成功提现
400元
本版
用户
智控联盟
»
共享资源
›
精选专区
›
ChatGPT专区
›
编程序专区
›
多泵切换
返回列表
发新帖
多泵切换
[复制链接]
1793
|
3
|
2023-4-4 17:42:29
|
显示全部楼层
|
阅读模式
求博图多泵切换程序
回复
使用道具
举报
chatGPT_小柔
|
2023-4-4 17:42:48
|
显示全部楼层
以下是一个基本的博图多泵切换程序,你可以根据自己的需要进行修改和优化:
[code]
//定义各个输入输出端口
#define PUMP1_PORT QJ1_1
#define PUMP2_PORT QJ1_2
#define PUMP3_PORT QJ1_3
#define SWITCH_PORT K1
void main()
{
sbit PUMP1 = PUMP1_PORT; //将输入输出端口与变量绑定
sbit PUMP2 = PUMP2_PORT;
sbit PUMP3 = PUMP3_PORT;
sbit SWITCH = SWITCH_PORT;
while (1)
{
if(SWITCH == 0) //如果按键被按下
{
if(PUMP1 == 0) //如果泵1正在工作,则切换至泵2
{
PUMP1 = 1;
PUMP2 = 0;
}
else if(PUMP2 == 0) //如果泵2正在工作,则切换至泵3
{
PUMP2 = 1;
PUMP3 = 0;
}
else if(PUMP3 == 0) //如果泵3正在工作,则切换至泵1
{
PUMP3 = 1;
PUMP1 = 0;
}
delay(200); //延迟一段时间,以防止按键抖动造成误触发
}
}
}
[/code]
回复
使用道具
举报
创金自控
|
2023-4-5 07:54:30
|
显示全部楼层
西门子博图多泵切换程序,互为主备
回复
使用道具
举报
chatGPT_小柔
|
2023-4-5 07:54:54
|
显示全部楼层
以下是一个基本的西门子博图多泵切换程序,实现了互为主备双向切换功能:```
//定义变量
bool pump1_master = true;
bool pump2_master = false;
bool pump3_master = false;
bool switch_on = false;
//定义定时器计数器
int timer_count = 0;
//定义按键信号的DB块
DBX dbx_switch(1.0);
//定义各个泵和切换器信号的IB块
IBP ibp_pump1_master(\"M1.0\");
IBP ibp_pump2_master(\"M1.1\");
IBP ibp_pump3_master(\"M1.2\");
IBP ibp_switch_on(\"M1.3\");
//定义各个泵信号的QB块
QB qb_pump1(\"Q1.0\");
QB qb_pump2(\"Q1.1\");
QB qb_pump3(\"Q1.2\");
//定义定时器的FC块
FC fc_timer(T#500ms);
//程序主体
while(true)
{
//读取各个输入信号
pump1_master = ibp_pump1_master();
pump2_master = ibp_pump2_master();
pump3_master = ibp_pump3_master();
switch_on = ibp_switch_on();
//检测是否需要切换泵
if(switch_on && fc_timer())
{
timer_count++;
fc_timer.Reset();
if(timer_count > 1)
{
timer_count = 0;
if(pump1_master)
{
qb_pump1(false);
qb_pump2(true);
pump1_master = false;
pump2_master = true;
}
else if(pump2_master)
{
qb_pump2(false);
qb_pump3(true);
pump2_master = false;
pump3_master = true;
}
else if(pump3_master)
{
qb_pump3(false);
qb_pump1(true);
pump3_master = false;
pump1_master = true;
}
}
}
//将当前主泵的信号发送至QB块
if(pump1_master)
{
qb_pump1(true);
qb_pump2(false);
qb_pump3(false);
}
else if(pump2_master)
{
qb_pump1(false);
qb_pump2(true);
qb_pump3(false);
}
else if(pump3_master)
{
qb_pump1(false);
qb_pump2(false);
qb_pump3(true);
}
//将按键信号写入DB块
dbx_switch(switch_on);
//等待时间片结束
Wait(10);
}
回复
使用道具
举报
返回列表
发新帖
高级模式
B
Color
Image
Link
Quote
Code
Smilies
您需要登录后才可以回帖
登录
|
立即注册
本版积分规则
发表回复
回帖后跳转到最后一页
创金自控
4
主题
5
帖子
16
积分
新手上路
新手上路, 积分 16, 距离下一级还需 34 积分
新手上路, 积分 16, 距离下一级还需 34 积分
积分
16
加好友
发消息
回复楼主
返回列表
用户使用心得及帮助
GPT3.5免费体验版
GPT3.5完整版(VIP免费)
自控工程师3.5(VIP免费)
伺服变频维修工程师(VIP免费)
GPT4.0-完整版-线路1(VIP免费)
GPT4.0-完整版-线路2(VIP免费)
GPT4.0-完整版-线路3(VIP免费)
自控工程师4.0版-线路1(VIP免费)
自控工程师4.0版-线路2(VIP免费)
自控工程师4.0版-线路3(VIP免费)
WinCC脚本编程机器人(VIP免费)
万能程序翻译
编程序专区