VisualStudio2010-C#跟西门子1200(Sharp7)-简单上位机界面⑤-数据

VisualStudio2010-C#跟西门子1200(Sharp7)-简单上位机界面⑤-数据

上期回顾(上期主要是对PLC数据块DB1的OK计数和NOK技术数据,读取到电脑上,在C#上显示,上期主要是做了界面)

本期将对上次做的界面控件,赋予生命,写代码

1.0 双击定时器timer1,在定时器响应程序中,添加代码

//******************************

            var buffer3 = new byte[8];

            //读取DB1的从地址16开始的8个字节的数据,读到buffer

            client.DBRead(1,16, buffer3.Length, buffer3); //PLC的输出读取

//把缓冲区前4个字节,显示到OK控件文本上

            int db1da16 = S7.GetDIntAt(buffer3, 0);

            OK_A.Text = db1da16.ToString();

//把缓冲区的后4个字节32位,显示到NOK控件文本上

            int db1da20 = S7.GetDIntAt(buffer3, 4);

            NOK_A.Text = db1da20.ToString();

2.0 这里要补充一句,在这个定时器响应程序的前面,是要先建立通讯的,这里我们是把这个定时器响应程序,当成PLC跟C#的循环通讯响应程序,具体的源代码如下:

private void timer1_Tick(object sender, EventArgs e)

        {

            var client = new S7Client();//创建S7客户端对象

            client.ConnectTo("192.168.0.1", 0, 1);//接受来次通讯的结果

        }

3.0 保存,按F5调试,正常你应该就能读取到PLC的数据了,这里要注意,PLC的目标数据块以及地址,读取的字节

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

友情链接更多精彩内容