[西门子] 通过S7.net写入西门子PLC DB中各种类型变量的例子(二)

[复制链接]
查看69 | 回复0 | 2024-4-16 08:02:50 | 显示全部楼层 |阅读模式
如图所示:通过上位机改变PLC内DB块变量的值,其中16进制byte类型变量的写入还有一点复杂













































/*        一元 !(逻辑非)运算符。        二元 &(逻辑与)、|(逻辑或)和 ^(逻辑异或)运算符。这些运算符始终计算两个操作数。        二元 &&(条件逻辑与)和 ||(条件逻辑或)运算符。这些运算符仅在必要时才计算右侧操作数。        */        private void textBox1_TextChanged(object sender, EventArgs e)        {//1、BOOL量写入            if (textBox1.Text=="0" || textBox1.Text == "1")            {                objS7net.Write("DB1.DBX0.0", int.Parse(textBox1.Text));            }                                              }
        private void textBox2_TextChanged(object sender, EventArgs e)        {            if (textBox2.Text != "")            {                               //2、16进制byte类型变量写入 0~F                var i = int.Parse(textBox2.Text, System.Globalization.NumberStyles.AllowHexSpecifier);                var bytes = BitConverter.GetBytes(i);                objS7net.Write("DB1.DBB1", bytes[0]);            }                                        }
        private void textBox3_TextChanged(object sender, EventArgs e)        {            if (textBox3.Text != "")            {//3、int类型数值写入                objS7net.Write("DB1.DBW2", short.Parse(textBox3.Text));            }        }
        private void textBox4_TextChanged(object sender, EventArgs e)        {            if (textBox4.Text != "")            { //4、浮点数写入                objS7net.Write("DB1.DBD4", float.Parse(textBox4.Text));            }        }





免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册哦

x
您需要登录后才可以回帖 登录 | 注册哦

本版积分规则