当前位置: 首页 > article >正文

C#使用TCP-S7协议读写西门子PLC(五)-测试程序

上面四篇我们进行封装连接PLC以及读写PLC内存地址表 

C#使用TCP-S7协议读写西门子PLC(一)-CSDN博客

 C#使用TCP-S7协议读写西门子PLC(二)-CSDN博客

 C#使用TCP-S7协议读写西门子PLC(三)-CSDN博客

 C#使用TCP-S7协议读写西门子PLC(四)-CSDN博客

这里我们进行测试操作

西门子PLC-S7协议测试读写基础数据类型、字符串、Unicode字符串、连续数组等

窗体应用程序PlcSiemesS7Demo应用程序文件清单如下图所示

窗体FormS7Protocol设计器如下:

窗体设计器代码如下:

文件FormS7Protocol.Designer.cs


namespace PlcSiemesS7Demo
{
    partial class FormS7Protocol
    {
        /// <summary>
        /// 必需的设计器变量。
        /// </summary>
        private System.ComponentModel.IContainer components = null;

        /// <summary>
        /// 清理所有正在使用的资源。
        /// </summary>
        /// <param name="disposing">如果应释放托管资源,为 true;否则为 false。</param>
        protected override void Dispose(bool disposing)
        {
            if (disposing && (components != null))
            {
                components.Dispose();
            }
            base.Dispose(disposing);
        }

        #region Windows 窗体设计器生成的代码

        /// <summary>
        /// 设计器支持所需的方法 - 不要修改
        /// 使用代码编辑器修改此方法的内容。
        /// </summary>
        private void InitializeComponent()
        {
            this.panel1 = new System.Windows.Forms.Panel();
            this.cboSiemensPLCCategory = new System.Windows.Forms.ComboBox();
            this.label2 = new System.Windows.Forms.Label();
            this.btnDisconnect = new System.Windows.Forms.Button();
            this.btnConnect = new System.Windows.Forms.Button();
            this.txbPort = new System.Windows.Forms.TextBox();
            this.label3 = new System.Windows.Forms.Label();
            this.txbIP = new System.Windows.Forms.TextBox();
            this.label1 = new System.Windows.Forms.Label();
            this.rtxbDisplay = new System.Windows.Forms.RichTextBox();
            this.groupBox1 = new System.Windows.Forms.GroupBox();
            this.btnReadWString = new System.Windows.Forms.Button();
            this.label12 = new System.Windows.Forms.Label();
            this.txtReadValWString = new System.Windows.Forms.TextBox();
            this.label13 = new System.Windows.Forms.Label();
            this.txtReadWStringLength = new System.Windows.Forms.TextBox();
            this.rtxtReadValArray = new System.Windows.Forms.RichTextBox();
            this.btnReadArray = new System.Windows.Forms.Button();
            this.label9 = new System.Windows.Forms.Label();
            this.label8 = new System.Windows.Forms.Label();
            this.txtReadArrayLength = new System.Windows.Forms.TextBox();
            this.btnReadString = new System.Windows.Forms.Button();
            this.label7 = new System.Windows.Forms.Label();
            this.txtReadValString = new System.Windows.Forms.TextBox();
            this.label4 = new System.Windows.Forms.Label();
            this.txtReadStringLength = new System.Windows.Forms.TextBox();
            this.btnReadBasic = new System.Windows.Forms.Button();
            this.label5 = new System.Windows.Forms.Label();
            this.txtReadValBasic = new System.Windows.Forms.TextBox();
            this.cboReadDataType = new System.Windows.Forms.ComboBox();
            this.label6 = new System.Windows.Forms.Label();
            this.label10 = new System.Windows.Forms.Label();
            this.label11 = new System.Windows.Forms.Label();
            this.txtOffsetAddress = new System.Windows.Forms.TextBox();
            this.cboRegisterCategory = new System.Windows.Forms.ComboBox();
            this.groupBox2 = new System.Windows.Forms.GroupBox();
            this.btnWriteWString = new System.Windows.Forms.Button();
            this.label14 = new System.Windows.Forms.Label();
            this.txtWriteValWString = new System.Windows.Forms.TextBox();
            this.label15 = new System.Windows.Forms.Label();
            this.txtWriteWStringLength = new System.Windows.Forms.TextBox();
            this.rtxtWriteValArray = new System.Windows.Forms.RichTextBox();
            this.btnWriteArray = new System.Windows.Forms.Button();
            this.label16 = new System.Windows.Forms.Label();
            this.btnWriteString = new System.Windows.Forms.Button();
            this.label18 = new System.Windows.Forms.Label();
            this.txtWriteValString = new System.Windows.Forms.TextBox();
            this.label19 = new System.Windows.Forms.Label();
            this.txtWriteStringLength = new System.Windows.Forms.TextBox();
            this.btnWriteBasic = new System.Windows.Forms.Button();
            this.label20 = new System.Windows.Forms.Label();
            this.txtWriteValBasic = new System.Windows.Forms.TextBox();
            this.cboWriteDataType = new System.Windows.Forms.ComboBox();
            this.label21 = new System.Windows.Forms.Label();
            this.label22 = new System.Windows.Forms.Label();
            this.txtDbNumber = new System.Windows.Forms.TextBox();
            this.panel1.SuspendLayout();
            this.groupBox1.SuspendLayout();
            this.groupBox2.SuspendLayout();
            this.SuspendLayout();
            // 
            // panel1
            // 
            this.panel1.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left) 
            | System.Windows.Forms.AnchorStyles.Right)));
            this.panel1.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle;
            this.panel1.Controls.Add(this.cboSiemensPLCCategory);
            this.panel1.Controls.Add(this.label2);
            this.panel1.Controls.Add(this.btnDisconnect);
            this.panel1.Controls.Add(this.btnConnect);
            this.panel1.Controls.Add(this.txbPort);
            this.panel1.Controls.Add(this.label3);
            this.panel1.Controls.Add(this.txbIP);
            this.panel1.Controls.Add(this.label1);
            this.panel1.Location = new System.Drawing.Point(4, 4);
            this.panel1.Margin = new System.Windows.Forms.Padding(3, 4, 3, 4);
            this.panel1.Name = "panel1";
            this.panel1.Size = new System.Drawing.Size(611, 87);
            this.panel1.TabIndex = 2;
            // 
            // cboSiemensPLCCategory
            // 
            this.cboSiemensPLCCategory.FormattingEnabled = true;
            this.cboSiemensPLCCategory.Location = new System.Drawing.Point(122, 52);
            this.cboSiemensPLCCategory.Name = "cboSiemensPLCCategory";
            this.cboSiemensPLCCategory.Size = new System.Drawing.Size(206, 20);
            this.cboSiemensPLCCategory.TabIndex = 14;
            // 
            // label2
            // 
            this.label2.AutoSize = true;
            this.label2.Location = new System.Drawing.Point(8, 52);
            this.label2.Name = "label2";
            this.label2.Size = new System.Drawing.Size(95, 12);
            this.label2.TabIndex = 13;
            this.label2.Text = "西门子PLC型号:";
            // 
            // btnDisconnect
            // 
            this.btnDisconnect.Enabled = false;
            this.btnDisconnect.Location = new System.Drawing.Point(494, 14);
            this.btnDisconnect.Name = "btnDisconnect";
            this.btnDisconnect.Size = new System.Drawing.Size(91, 28);
            this.btnDisconnect.TabIndex = 5;
            this.btnDisconnect.Text = "断开连接";
            this.btnDisconnect.UseVisualStyleBackColor = true;
            this.btnDisconnect.Click += new System.EventHandler(this.btnDisconnect_Click);
            // 
            // btnConnect
            // 
            this.btnConnect.Location = new System.Drawing.Point(371, 14);
            this.btnConnect.Name = "btnConnect";
            this.btnConnect.Size = new System.Drawing.Size(91, 28);
            this.btnConnect.TabIndex = 4;
            this.btnConnect.Text = "连接";
            this.btnConnect.UseVisualStyleBackColor = true;
            this.btnConnect.Click += new System.EventHandler(this.btnConnect_Click);
            // 
            // txbPort
            // 
            this.txbPort.Location = new System.Drawing.Point(238, 14);
            this.txbPort.Name = "txbPort";
            this.txbPort.Size = new System.Drawing.Size(90, 21);
            this.txbPort.TabIndex = 3;
            this.txbPort.Text = "102";
            // 
            // label3
            // 
            this.label3.AutoSize = true;
            this.label3.Location = new System.Drawing.Point(184, 17);
            this.label3.Name = "label3";
            this.label3.Size = new System.Drawing.Size(53, 12);
            this.label3.TabIndex = 2;
            this.label3.Text = "端口号:";
            // 
            // txbIP
            // 
            this.txbIP.Location = new System.Drawing.Point(62, 14);
            this.txbIP.Name = "txbIP";
            this.txbIP.Size = new System.Drawing.Size(106, 21);
            this.txbIP.TabIndex = 1;
            this.txbIP.Text = "192.168.1.10";
            // 
            // label1
            // 
            this.label1.AutoSize = true;
            this.label1.Location = new System.Drawing.Point(8, 17);
            this.label1.Name = "label1";
            this.label1.Size = new System.Drawing.Size(53, 12);
            this.label1.TabIndex = 0;
            this.label1.Text = "IP地址:";
            // 
            // rtxbDisplay
            // 
            this.rtxbDisplay.Location = new System.Drawing.Point(4, 622);
            this.rtxbDisplay.Name = "rtxbDisplay";
            this.rtxbDisplay.ReadOnly = true;
            this.rtxbDisplay.Size = new System.Drawing.Size(943, 232);
            this.rtxbDisplay.TabIndex = 3;
            this.rtxbDisplay.Text = "";
            // 
            // groupBox1
            // 
            this.groupBox1.Controls.Add(this.btnReadWString);
            this.groupBox1.Controls.Add(this.label12);
            this.groupBox1.Controls.Add(this.txtReadValWString);
            this.groupBox1.Controls.Add(this.label13);
            this.groupBox1.Controls.Add(this.txtReadWStringLength);
            this.groupBox1.Controls.Add(this.rtxtReadValArray);
            this.groupBox1.Controls.Add(this.btnReadArray);
            this.groupBox1.Controls.Add(this.label9);
            this.groupBox1.Controls.Add(this.label8);
            this.groupBox1.Controls.Add(this.txtReadArrayLength);
            this.groupBox1

http://www.kler.cn/news/304878.html

相关文章:

  • 【玩转贪心算法专题】452. 用最少数量的箭引爆气球是【中等】
  • Java中重写和重载
  • c++ 编辑器 和 编译器 的详细解释
  • Ubuntu20-xrdp与Windows-mstsc远程桌面连接
  • C语言-整数和浮点数在内存中的存储-详解-上
  • JavaEE:文件内容操作(一)
  • docker--刚开始学不知道如何操作拉取,或拉取失败(cmd)
  • EmguCV学习笔记 C# 11.5 目标检测
  • 期货量化现在是要比股票量化更适合高频交易,程序化交易
  • 电脑桌面数据误删如何恢复?提供一份实用指南
  • spark sql详解
  • MVC 控制器
  • Qt-QLCDNumber显示类控件(26)
  • 如何简化机器人模型,加速仿真计算与可视化
  • 基于less和scss 循环生成css
  • Java中的高级I/O操作:NIO和AIO的比较
  • 大数据-129 - Flink CEP 详解 Complex Event Processing - 复杂事件处理
  • 哪个虚拟机软件在 Mac 上更好用,Mac 虚拟机会影响性能吗?
  • 计算机网络30——Linux-gdb调试命令makefile
  • [Linux#48][网络] 令牌环网 | IPv4 | socket 套接字 | TCP | UDP | 网络字节序列
  • Pytest配置文件pytest.ini如何编写生成日志文件?
  • AI创意引擎:优化Prompt提示词的高效提问技巧
  • 相机光学(三十八)——VCM(Voice Coil Motor)音圈马达
  • 数据分析-20-时间序列预测之基于PyTorch的LSTM数据准备及模型训练流程
  • Java后端编程语言进阶篇
  • 第158天:安全开发-Python-Socket编程反弹Shell分离免杀端口探针域名爆破
  • 前端知识点
  • Apache 的CollectionUtils各种集合操作好用的方法总结
  • SQLite的入门级项目学习记录(三)
  • 鸿蒙轻内核A核源码分析系列六 MMU协处理器(2)