西门子PLC配合组态王怎么样?西门子1200实例讲解!实用编程教程
本示例通过一个简单的计数器程序说明相关硬件和软件的配置和简单使用。
组态王编写的人机界面可以控制并监测PLC的寄存器状态。左上角的按钮可以控制M0.0的关断,从而可以控制计数器的复位,计数器可以对左下角的按钮按下次数进行计数,计数值可以直接显示,也可以通过仪表显示。
硬件配置方法:我们选用的通信方式是基于以太网卡的TCP/IP协议通信
所以,我们直接使用网线将S7-1200和配置有网卡的计算机的以太网接口相连
TIA Portal与S7-1200的软件配置
1 使用博途组态S7-1200并编写程序,编写完成之后编译并下载
2 PLC与组态王通过以太网的方式通信的设置:
A、确认计算机中安装有以太网卡,并与PLC 连接到同一网络中(直接通过网线直连)。
B、通过编程软件设定IP地址和子网掩码,并下传到PLC中如IP地址(192.168.0.1)、子网掩码(255.255.255.0)。
C、为计算机设定IP地址和子网掩码,如IP地址(192.168.0.110)、子网掩码(255.255.255.0)。
D、使用ping 命令,保证能ping 到PLC 站。
3 PG/PC 接口配置,通信测试,以检查运行组态王的计算机是否和PLC正常通信
4 测试正常之后,即可在组态王开发项目
1 编写程序并下载
计算机与S7 1200PLC之间的通信是基于以太网卡的TCP/IP协议通信,我们可以查看组态的PLC设备的TCP/IP地址,默认为192.168.0.1,
编写、编译并下载程序
编写、编译并下载程序
在右侧的指令窗口中可以拖入进基本指令
编写、编译并下载程序,编写好的程序如下图:
可在PLC变量表里面为变量命名
在线监控可在线监控PLC寄存器状态
2 PLC与组态王通过以太网的方式通信的设置:
1、确认计算机中安装有以太网卡,并与PLC连接到同一网络中(直接通过网线直连)。
2、通过编程软件设定IP地址和子网掩码,并下传到PLC中如IP地址(192.168.0.1)、子网掩码(255.255.255.0)。 此步骤已经在博途中组态PLC的过程中完成了,通过PLC属性查看以太网地址。
3、为计算机设定IP地址和子网掩码,如IP地址(192.168.0.110)、子网掩码(255.255.255.0)。
这里以Win7系统为例
打开网络共享中心,双击更改适配器选项
修改IP地址
修改IP地址
4、使用ping 命令,保证能ping 到PLC 站。
在开始菜单“搜索程序和文件”中输入 cmd 指令,进入DOS命令窗口
在DOS 界面中输入命令:ping 192.168.0.110
然后回车。注意:在ping 和地址之间有一个空格,如下图所示。
观察DOS 界面中的ping 指令返回值。如包括time=1ms 或time<1ms 及TTL 等于某个数值,
且Lost=0,即ping 指令返回值正常,表明以太网连接正常。如下图所示。
如果连接不正常,可能如下图所示,ping 指令返回值显示timed out 或Lost 值不为0,
表示本机IP 地址和目标IP 地址连接不通,建议检查一下连接线缆及两台计算机的IP 地址设置。
(3)PG/PC 接口配置,通信测试,以检查运行组态王的计算机是否和PLC正常通信
1.打开Set PG/PC Interface。
在操作系统中点击“Start”菜单,打开“Control Panel”选项,在控制面板中,选中“大图标”显示,即可找到Set PG/PC Interface,如图。双击打开。
如图,在 Access Point of the Application(应用程序访问点)的下拉列表中选择 <Add/delete>,输入名称。
在 Interface Parameter Assignment Used 中点选Realtek PCIe FE Family Controller.TCPIP.1(注意:应根据运行计算机实际工作的网卡名进行选择,务必选择不带Auto 的),然后Access Point of the Application 内显示“CP-TCPIP - Realtek PCIe FE Family Controller.TCPIP.1 即可。
(4)通信测试,以检查运行组态王的计算机是否和PLC正常通信
我们的通信方式是TCP/IP,在组态王中定义的IO设备应该使用TCP/IP协议
注意设备地址的填写,冒号前面是我们在博途组态的PLC的地址,冒号后面为S1200的默认槽号,为0。为:192.168.0.1:0
通信测试,以检查运行组态王的计算机是否和PLC正常通信
然后使用组态王KingVIEW 6.55组态人机界面
(1)定义I/O设备:前面在测试设备的过程中,我们已经定义好了IO设备,此处略去
(2)定义I/O变量
根据程序,选择需要检测和控制的寄存器变量,在组态王数据词典中定义相应的IO变量。
先为复位开关M0.0建立一个IO变量
我们为其他寄存器定义好的I/O变量如下图:
其中,变量USB_Com用来显示组态王与PLC的通信状态,以帮助我们判断是否通信正常。
关闭(0)表示通信正常,打开(1)表示通信异常,也可以自行更改。或者可以在组态王的产品帮助文档中输入CommErr以查看使用说明。
全部建立好的变量如下图:
(3)新建并组态画面
现为复位开关M0.0以及计数M0.1组态开关按钮
现为复位开关M0.0关联PLC的M0.0
现为复位开关M0.0关联动作:鼠标按下时接通,弹起时断开。
同理我们为M0.1关联它的变量以及动作。
组态一个指示灯关联输出Q0.2,以便直观地观察复位状态
组态好的按钮和指示灯可以通过颜色显示状态之外,还可以通过工具箱的文本用“打开”或者“关闭”的文本标识状态。
为建立好的文本关联变量
使用同样的方法为按钮M0.1以及指示灯Q0.2建立文本并关联变量。
同时,我们再建立一个文本,关联计数器的计数值,以便在人机界面中查看计数值。
同时,我们也可以从图库中选取一个仪表,用刻度显示计数值。
此外,我们再建立一个文本并关联通信状态变量USB_Com,以便我们在人机界面运行时可以判断通信是否正常。
(4)保存并运行组态好的人机界面
可同时打开博图的在线监控,组态王的人机界面有指令时,博途也可以同时监测到寄存器的状态变化
速看!西门子S7-12001500配方实例程序
关注“PLC发烧友 ”,一起涨知识!
私信回复:64,免费领取西门子64本电子书!
下面列出了配方示例程序的先决条件:
1.一个存储所有配方记录的配方数据块。配方数据块存储在装载存储器中。
2.在工作存储器中存储一个配方副本的活动配方数据块。
1
创建活动配方数据块
在“添加新块”(Add new block) 窗口中,选择“数据块”(Data block)按钮,
在“类型”(Type) 下拉菜单中,选择您先前创建的“Beer_recipe”PLC数据类型。
不需要起始值。在将一个配方从配方数据块传送到活动配方数据块时,数据块数据值将置位。在本实例中,活动配方数据块是 READ_DBL 的目标数据并为 WRITE_DBL 提供源数据。下图显示 Active_Recipe 数据块。
▲ 背景数据块
指令RecipeExport ("RecipeExport_DB") 和RecipeImport ("RecipeImport_DB") 使用的背景数据块是在将指令置于程序中时自动创建的。 背景数据块用于控制指令的执行,不在程序逻辑中引用。
2
示例配方程序
程序段 1 REQ 上升沿启动导出过程。CSV 文件由配方数据块数据生成并被置于 CPU存储器配方文件夹。
程序段 2 捕获 RecipeExport 执行的 STATUS输出,考虑到该指令仅在一个扫描周期内有效。
程序段 3 REQ 上升沿启动导入过程。 现有配方数据块载入读取自 CPU存储器配方文件夹的相应 CSV 文件中的所有配方数据。
程序段 4 捕获 RecipeImport 执行的 STATUS输出,考虑到该指令仅在一个扫描周期内有效。
程序 5 READ_DBL 从配方“Recipe_DB”中复制起始值。 结果值[1](在 CPU 的装载存储器中)至 Active_Recipe DB 的当前值(在 CPU 的工作内存中)。READ_DBL 执行后,程序逻辑通过在 Active_Recipe 数据块中寻址可以访问配方成分值。
例如,符号地址("Active_Recipe".productname)和 ("Active_Recipe.water) 为程序逻辑提供当前配方名称和用水量。
程序段 6 运行期间,HMI 设备可以修改 Active_Recipe 数据块中存储的成分值。可以通过执行 WRIT_DBL 存储改进的配方数据。 本例中,Recipe_DB 的全部起始值都用于这一个配方 "Recipe_DB"。 结果值 [1] 被 "Active_Recipe" 数据块中的当前值覆盖。
来源:网络,如有侵权,请联系删除!
私信回复:64,免费领取西门子64本电子书!
相关问答
西门子1200编码器编程实例?
没有明确的结论。因为西门子1200编码器的编程实例需要根据具体的应用场景和要求而定,不能一概而论。需要对具体使用的PLC品牌、型号、版本以及使用的编程软件...
西门子1200模拟量输出编程实例?
西门子1200模拟量输出的编程实例:在编程软件中添加模拟量模块,并配置模块类型和输入/输出信号的范围。在程序中通过指定模拟量输入/输出的地址,实现对模拟量...
西门子plc1200怎么编写程序?
编写西门子PLC1200程序需要具备一定的基础知识和技能,例如熟悉PLC的工作原理、掌握PLC编程语言和相关软件的使用等。在编写程序时,需要根据实际需求设计程序...
西门子1200plc485通讯实例?
西门子1200PLC通过485通讯可以实现不同设备之间的数据传输和通信。在这个实例中,我们将通过RS485总线连接两个PLC,通过修改相关程序,可以实现两个PLC之间的数...
西门子plc定时器编程实例?
在西门子PLC定时器编程实例中,可以使用S7-1200PLC来实现。首先,通过TON指令创建一个定时器T1,设置一个时间常量,例如10秒。然后,在程序中使用一个触发条件...
西门子1200温度模拟量编程实例?
首先,连接PLC并创建一个新的工程。创建一个新的程序块,并将其命名为“Temperature_Control”。在Temperature_Control程序块中,创建两个数据块,一个用于模拟...
西门子1200plc谁主编的书好?
1.?2.根据我的了解,西门子1200plc的书籍主要由西门子公司内部的专业人士或相关领域的专家主编,他们对于该领域的知识和技术有深入的了解和研究,因此这些书...
S7-1200PLC使用什么编程软件?
看书一般现在教学使用的都是西门子系列产品的s7-200或者s7-300的plc根据教材弄清原理然后下载plc仿真编程软件进行简单的编程编写如果想要精通需要大量...
关于多台西门子S7-1200PLC之间的以太网通信,实例?
你看一下mcgs里面是否支持了s7-1200的驱动,如果有的话直接用就可以。如果没有的话你可以用modbustcp,也很方便。你看一下mcgs里面是否支持了s7-1200的驱动,...
西门子1200plc怎样上载程序?
西门子1200plc上载程序的方法:1.首先在博途里建立与实际PLC相同订货号和相同版本的PLC,这里如果版本号选择与实际PLC不同在转至在线的时候会无法在线报错,就...