基于Winform开发S7.net协议 与Smart-200PLC通讯

1:软件编写都有架构 分为UI层 -> CoreLogicManager(逻辑管理层)Modes(实体层)

 具体使用根据大家喜好 我的函数方法如下:

步骤一:在C#工具栏 Nuget包管理器内 下载S7.net 通讯协议库

步骤二:
              S7.Net.Plc siemensS7 = new Plc(CpuType.S7200Smart, 192.168.1.177, 0, 0);//输入IP地址 这里CpuTpye是枚举类型可以根据需要和选项框按钮绑定
              siemensS7.Open();    //连接PLC

   private void GetCurrentInform()//数据集中采集  具体解析大家自己进行组合
    {

        //获取时时数据
        byte[] result10 = siemensS7.ReadBytes(S7.Net.DataType.DataBlock, 1, 5100, 60); //读取实时1#线1~15个工位 VD5100-VD5156 15*4 =60个字节
        byte[] result20 = siemensS7.ReadBytes(S7.Net.DataType.DataBlock, 1, 5300, 60); //读取实时2#线 1~15个工位 VD5300-VD5356 15*4 =60个字节
        byte[] result30 = siemensS7.ReadBytes(S7.Net.DataType.DataBlock, 1, 5500, 60);//读取实时3#线 1~15个工位 VD5500-VD5556 15*4 =60个字节

        //获取上一小时 天 月 数据
        byte[] result11 = siemensS7.ReadBytes(S7.Net.DataType.DataBlock, 1, 5200, 60); //读取上一小时1#线1~15个工位 VD5100-VD5156 15*4 =60个字节
        byte[] result21 = siemensS7.ReadBytes(S7.Net.DataType.DataBlock, 1, 5400, 60); //读取上一日2#线 1~15个工位 VD5300-VD5356 15*4 =60个字节
        byte[] result31 = siemensS7.ReadBytes(S7.Net.DataType.DataBlock, 1, 5600, 60);//读取上一月 1~15个工位 VD5500-VD5556 15*4 =60个字节


 

}

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值