衡水西门子PLC代理商
软冗余又称软件冗余,是西门子实现冗余功能的一种解决方案,可以应用于对主备系统切换时间要求不高的控制系统中。软冗余能够实现:主机架电源、背板总线等冗余;PLC处理器冗余;PROFIBUS网络冗余(包括通信接口、总线接头、总线电缆等冗余);接口模块IM153-2冗余。在软冗余系统进行工作时,主、备控制系统(处理器,通讯、I/O)独立运行,由主系统的PLC掌握对冗余部分ET200M从站中的I/O控制权,主、备系统通过软冗余专用程序进行数据同步。PLC程序由非冗余(non-duplicated)用户程序段和冗余(redundant backup)用户程序段组成,主系统PLC执行全部的用户程序,备用系统PLC通过判断冗余状态跳过冗余程序,只执行非冗余用户程序。当主系统中的组件发生故障,备用系统会自动切换为主系统,执行冗余程序,控制任务不会出现中断
我想读取OB1的“OB1_DATE_TIME”这个DT类型数据,当我把它送到DB时错误——L #OB1_DATE_TIME DB1.DBW0 编程时显示红色的错误,DB1中已经定义了DT数据类型。
答: 因为数据不匹配,出项上述的错误提示。
DT数据类型:
DATE_AND_TIME数据类型以BCD码格式存储:
BYTE 目录 范围
0 年 1990至2089
1 月 01至12
2 日 1至31
3 小时 0至23
4 分钟 0至59
5 秒 0至59
6 高两位的毫秒值 00至99
7 (4 MSB) 低一位的毫秒值 0至9
7 (4LSB) 星期 1至7 (1 = 星期日)
占用8个字节。
如果你在程序当中读取plc的系统时钟,只需要两句就可以了。
你不要直接填写L #OB1_DATE_TIME DB1.DBW0
你看这个OB1_DATE_TIME 占用的地址是12.0
你在OB1编程为:
L LD12
T DB1.DBD0
L LD16
T DB1.DBD4
就读到你的DB1里面。DB1里对应8个字节的意思,如上面所描述的。
1 概述
在数控领域,目前使用的控制系统一般为通用型,如车床,铣床,加工中心等,但对一些特殊的机床如专用磨床,专用位置控制设备等都需要有自己的专用界面,这样便于对设备的操作,管理。这些界面必须用专用开发软件由设备制造,改造商开发。西门子提供的专用开发软件OEM是专门用于对标准型数控系统进行二次开发。其种类有:
WS800A软件: 应用于西门子数控系统805/810/820/850/880/840C(DRDOS);
MMC103 OEM软件: 应用于西门子数控系统810D/840D/FMNC使用的MMC103;
NC OEM软件: 应用于西门子数控系统810D/840D NCU;
这里只介绍MMC103 OEM(下面简称OEM)的应用。
2 OEM主要功能
OEM开发软件一般由机床制造厂,机床改造商使用,根据用户需求,设计MMC103上各种机床界面。它能完成:
NCU中各种变量的访问,如刀偏,零偏,轴坐标值等;
R参数的访问;
PLC中各种变量的访问,如I/O口,标志区M,数据块DB等;
NCU中文件读取;
MMC103中文件读取;
利用VB,C++设计应用界面,如显示数据,图形;输入数据;管理文件及对外部的控制等;
3 OEM开发环境
MMC103 OEM开发软件安装于PC微机上,在bbbbbbS95下,使用VB,C++语言,利用OEM提供的DDE接口,访问NCK,PLC,MMC103变量及文件并支持中文系统。
各种软件的功能:
MMC103 OEM开发软件,完成各界面的定义;
C++软件,完成各种语言界面的生成;
VB软件,完成画面设计,变量访问,计算等;
4 OEM的应用
今年夜疚谀郴渤匙ㄓ蒙璞附蠱MC103界面的二次开发设计。为便于说明,介绍一下某专用设备的情况:机床有9个坐标轴、工控机测量系统、专用传感器检测系统、气动真空系统及控制系统840D+FMNC。控制系统的功能是实现位置控制和与各系统间动作的逻辑顺序控制,使之协调一致。其中:
840D完成对7个数字伺服轴(X,Y,Z,C1,C2,C3,W1)的控制 ;
FMNC完成对2个模拟伺服轴(W2,W3)的控制;
工控机测量系统由各种传感器等组成,实现工件在空间非接触测量。控制系统接收测量值并控制9个轴的运动轨迹;
专用传感器检测系统用于连续变化的物理量(力、温度等)信号的采集,向控制系统提供多路模拟量和多路数字量信号。控制系统能对力、温度等信号的连续变化做出快速响应,以便数据的实时采集。其系统总体配置原理图如下:
它对MMC103界面的要求:
实时显示9个轴(X,Y,Z,C1,C2,C3,W1,W2,W3)的位置值;
实时显示力、温度值的变化,并根据信号值的大小对轴的运动实施控制;
实时显示工件空间位置;
实时显示各工件的相对位置;
设置各工件相关参数;
动态工作曲线;
4.1 OEM界面设计
根据用户界面的要求,需设计12个画面OEM0-OEM11:
OEM0: 主画面,显示9个轴的位置值,压力值,温度值,工件工作位置,真空状态,保护状态;
OEM2--11: 工件1--10参数设置画面及保存修改软键;
使用MMC103 OEM开发软件,定义OEM0-11中软键功能。
如: OEM0中的 SETTING 软键;
OEM1中的 PART1-PART10,RETURN软键;
OEM2-11中的 SAVE,RETURN软键;
后生成相关文件。
使用C++将1)中的文件生成不同语言的连接文件。DLL
用VB设计OEM0-OEM11画面
如: OEM0中9个轴位置,各物理量值及工件轨迹的显示等
4.2 OEM中数据处理
它完全用VB提供的资源,指令,环境对OEM中的数据进行处理。所不同的是访问NC,PLC变量的方法不同,如读R100采用下列方法进行:
Label2。bbbbTopic = G_CHNCDDEServiceName
Label2。bbbbItem = “/Channel/bbbbbeter/R100”
Label2。bbbbMode = DDE
其它变量类同。
我们还可利用VB控制数据文件存储,打印,传送等多种功能。它完全等同于在微机上开发应用软件。
编制完成后,生成EXE文件。此文件即为OEM的应用文件。直接由MMC103中指定软键调用。(需设置相关配置文件)
5 OEM应用领域
OEM软件是为设计人员提供的进行人机界面二次开发的工具。设计人员可根据用户需求设计出功能灵活多样,画面丰富的应用程序。它应当在专用机床,专用控制系统中有着广泛的应用空间。如大型轧辊磨床,凸轮磨床,曲轴磨床,专用磨床,特殊的加工中心,专用控制设备等。
目前,OEM已应用在大型轧辊磨床和专用控制设备上。
由于水平有限,又OEM开发所涉及的因素较多,文中不能全面点击,如有不妥请指正,并希望更多的人使用OEM。
西门子PLC实现用四个按钮分别控制四个灯的设计原理:用四个按钮分别控制四个灯,当其中任意一个按钮按下时对应的灯亮,多个按钮按下时灯不亮。
具体控制方案设计如下:
1.输入/输出元件及控制功能
输入/输出元件及控制功能
PLC软元件 | 元件文字符号 | 元件名称 | 控制功能 | |
输入 | I0.0 | SB1 | 按钮1 | 控制灯 |
I0.1 | SB2 | 按钮2 | ||
I0.2 | SB3 | 按钮3 | ||
I0.3 | SB4 | 按钮4 | ||
输出 | Q0.0 | EL1 | 灯1 | 照明 |
Q0.1 | EL2 | 灯2 | ||
Q0.2 | EL3 | 灯3 | ||
Q0.3 | EL4 | 灯4 |
2.电路设计
用四个按钮分别控制四个灯的接线图和梯形图,如下图所示。
3.控制原理
如上图(b)梯形图所示,例如:
● 当按下按钮SB1 时,梯形图中的I0.0 常开接点闭合,输出线圈Q0.0 得电自锁,EL1 灯亮。I0.0常闭接点断开,其他输出线圈失电。
● 如再按下按钮SB2,梯形图中的I0.1 常闭接点断开,Q0.0 线圈失电,I0.1 常开接点闭合,输出线圈Q0.1得电自锁,EL2 灯亮。
● 按下按钮SB5,I0.4 接点闭合,Q0.0~Q0.3 全部复位,灯全灭
设备简介
在工业自动化控制系统中,为常见的是PLC 和变频器的组合应用,并且产生了多种多样的PLC 控制变频器方式,其中采用RS-485 通讯方式实施控制的方案得到广泛的应用:因为它抗干扰能力强、传输速率高、传输距离远且造价低廉。易能变频器内置的MODBUS(从站)通信协议,可非常方便的实现单台或多台变频器的远程通讯控制与监视功能。
下面以西门子S7-200CPU224XP为例,介绍PLC与易能变频器建立通讯并实现对变频器起停、频率给定、监控等功能的控制。
变频器作为MODBUS协议从站接收来自PLC的通信指令,必须做好以下准备工作:
1、用一根带9针阳性插头的串口通信电缆连接在PLC的自由通信口Prat0端,电缆另一端的第3、8线分别接在变频器RS485的485+、485-端子上,其余线屏蔽不用;
2、预先设置变频器以下参数:
F0.00=3 //串行口给定
F0.02=3 //串行口运行命令控制,键盘STOP命令无效
F2.14=03 //波特率9600,1-8-1,无校验
F2.15=01 //变频器地址
3.变频器的控制命令和状态通信地址如下:
西门子PLC程序说明
1、对于西门子PLC做主站的MODBUS通讯,需要程序库装有有“MBUS_CTRL”和“MBUS_MSG”指令。其下是指令的意义:
2、PLC程序
I0.0 变频器正转启动
I0.1 变频器反转启动
I0.2 变频器停止
VW1004 设定变频器频率
VB2000 读取变频器当前设定频率
VB2002 读取变频器当前运行频率
VB2004 读取电机运行转速
Network 1 // 初始化参数
LD SM0.1
R M2.0, 8
R M4.0, 8
R M0.0, 2
Network 2 // 串口设置
LD SM0.0
= L60.0
LD SM0.0
= L63.7
LD L60.0
CALL SBR1, L63.7, 9600, 0, 1000, M0.0, MB12
Network 3
LD SM0.1
MOVB 7, VB1000
MOVB 8, VB1001
MOVB 6, VB1002
MOVW 2000, VW1004
Network 4
LD M0.0
EU
S M0.1, 1
Network 5 // 读取当前设定频率
LD M0.1
O M2.4
= L60.0
LD M0.1
EU
LD M2.4
EU
OLD
= L63.7
LD L60.0
CALL SBR2, L63.7, 1, 0, 44097, +1, &VB2000, M2.1, MB3
Network 6
LD M2.1
R M2.3, 1
R M0.1, 1
Network 7 // 读取当前运行频率
LD M2.1
= L60.0
LD M2.1
EU
= L63.7
LD L60.0
CALL SBR2, L63.7, 1, 0, 44098, +1, &VB2002, M2.2, MB4
Network 8
LD M2.2
R M2.1, 1
Network 9 // 读取当前电机转速
LD M2.2
= L60.0
LD M2.2
EU
= L63.7
LD L60.0
CALL SBR2, L63.7, 1, 0, 44102, +1, &VB2004, M2.3, MB5
Network 10
LD M2.3
R M2.2, 1
Network 11 // 设定电机频率
LD M2.3
= L60.0
LD M2.3
EU
= L63.7
LD L60.0
CALL SBR2, L63.7, 1, 1, 48194, 1, &VB1004, M2.4, MB16
Network 12
LD M2.4
R M2.3, 1
Network 13 //正转启动电机
LD I0.0
= L60.0
LD I0.0
EU
= L63.7
LD L60.0
CALL SBR2, L63.7, 1, 1, 48193, 1, &VB1000, M10.1, MB13
Network 14 //反转启动电机
LD I0.1
= L60.0
LD I0.1
EU
= L63.7
LD L60.0
CALL SBR2, L63.7, 1, 1, 48193, 1, &VB1001, M10.2, MB14
Network 15 //停止电机
LD I0.2
= L60.0
LD I0.2
EU
= L63.7
LD L60.0
CALL SBR2, L63.7, 1, 1, 48193, 1, &VB1002, M10.3, MB15