资源简介

制作一个数据采集系统,实现读取单个PLC中DB中的某个字,并以十进制的方式存入excel表格中。 应用:采集设备运行中某一个关键参数的值,通过对参数的分析,实现对设备运行状态的分析。 1->表格的创建以及插入的内容以及的sheet表名,目前还不能做到灵活多变。只能写死在代码中。后期可根据需要深入研究。 2->对于每个插入的值的含义以及插入时间,参考条目1,需要自己修改代码。

资源截图

代码片段和文件信息

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using Sharp7;
using System.IO;
using System.Data.OleDb;



namespace Siemens_PLC_Excel
{
    public partial class Form1 : Form
    {
        private S7Client Client;
        private byte[] Buffer = new byte[65536];
        int i = 1;
        
      
        public Form1()
        {
            InitializeComponent();
            Client = new S7Client();
            if (IntPtr.Size == 4)
                this.Text = this.Text + “ - Running 32 bit Code“;
            else
                this.Text = this.Text + “ - Running 64 bit Code“;
            
        }

        private void connectPLC_Click(object sender EventArgs e)
        {
            if (string.IsNullOrEmpty(plcIp.Text))
            {
                listInfo.Items.Add(“PLC IP 地址不能为空!“);
                plcIp.Focus();
            }
            if (string.IsNullOrEmpty(plcRack.Text))
            {
                listInfo.Items.Add(“PLC机架号不能为空!“);
                plcRack.Focus();
            }
            if (string.IsNullOrEmpty(plcSlot.Text))
            {
                listInfo.Items.Add(“PLC插槽不能为空!“);
                plcSlot.Focus();
            }
            else
            {
                int Result;
                int Rack = System.Convert.ToInt32(plcRack.Text);
                int Slot = System.Convert.ToInt32(plcSlot.Text);
                Result = Client.ConnectTo(plcIp.Text Rack Slot);
              
                if (Result == 0)
                {

                    plcIp.Enabled = false;
                    plcRack.Enabled = false;
                     plcSlot.Enabled = false;
                    connectPlc.Enabled = false;
                    disconnectPlc.Enabled = true;               
                    startRecordExcel.Enabled = true;

                    listInfo.Items.Add(“建立IP地址为 “ + plcIp.Text + “的连接成功“);

                }
            }
        }
        private void disconnectPlc_Click(object sender EventArgs e)
        {
            Client.Disconnect();
            plcIp.Enabled = true;
            plcRack.Enabled = true;
            plcSlot.Enabled = true;
            connectPlc.Enabled = true;
            disconnectPlc.Enabled = false;
            listInfo.Items.Add(“断开IP地址为 “ + plcIp.Text + “的连接“);
        }
        private void createExcelFile_Click(object sender EventArgs e)
        {
            if (string.IsNullOrEmpty(excleFileName.Text))
            {
                listInfo.Items.Add(“请输入文件名!“);
                excleFileName.Focus();
            }


            //判断文件是否存在,如果存在,在消息框中提示文件已创建

            if (File.Exists(“c:\\“+excleFileName.Text + “.xls “)) {
                listInfo.Items.Add(excleFileName.Text + “.xls “+“文件已存在,请重新创建文件“);
                excleFileNam

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----

     文件         64  2019-04-06 11:01  Siemens-PLC-Excel\.git\COMMIT_EDITMSG

     文件        334  2019-04-03 14:03  Siemens-PLC-Excel\.git\config

     文件         73  2019-04-03 14:03  Siemens-PLC-Excel\.git\description

     文件         23  2019-04-03 14:03  Siemens-PLC-Excel\.git\HEAD

     文件        478  2019-04-03 14:03  Siemens-PLC-Excel\.git\hooks\applypatch-msg.sample

     文件        896  2019-04-03 14:03  Siemens-PLC-Excel\.git\hooks\commit-msg.sample

     文件        189  2019-04-03 14:03  Siemens-PLC-Excel\.git\hooks\post-update.sample

     文件        424  2019-04-03 14:03  Siemens-PLC-Excel\.git\hooks\pre-applypatch.sample

     文件       1642  2019-04-03 14:03  Siemens-PLC-Excel\.git\hooks\pre-commit.sample

     文件       1348  2019-04-03 14:03  Siemens-PLC-Excel\.git\hooks\pre-push.sample

     文件       4898  2019-04-03 14:03  Siemens-PLC-Excel\.git\hooks\pre-rebase.sample

     文件        544  2019-04-03 14:03  Siemens-PLC-Excel\.git\hooks\pre-receive.sample

     文件       1239  2019-04-03 14:03  Siemens-PLC-Excel\.git\hooks\prepare-commit-msg.sample

     文件       3610  2019-04-03 14:03  Siemens-PLC-Excel\.git\hooks\update.sample

     文件       1717  2019-04-06 11:01  Siemens-PLC-Excel\.git\index

     文件        240  2019-04-03 14:03  Siemens-PLC-Excel\.git\info\exclude

     文件        853  2019-04-06 11:01  Siemens-PLC-Excel\.git\logs\HEAD

     文件        853  2019-04-06 11:01  Siemens-PLC-Excel\.git\logs\refs\heads\master

     文件        192  2019-04-03 14:03  Siemens-PLC-Excel\.git\logs\refs\remotes\origin\HEAD

     文件        441  2019-04-06 11:02  Siemens-PLC-Excel\.git\logs\refs\remotes\origin\master

     文件        150  2019-04-06 11:01  Siemens-PLC-Excel\.git\ms-persist.xml

     文件        174  2019-04-03 14:03  Siemens-PLC-Excel\.git\objects\05\03abbf04ca4e1c6b46ab0de2d5ca88a14b01a0

     文件        189  2019-04-03 14:03  Siemens-PLC-Excel\.git\objects\08\781be29c521051220131ff71a3db23d96e89e9

     文件        195  2019-04-06 11:01  Siemens-PLC-Excel\.git\objects\09\bd1075ca2490746e5f76349596ad7d56a326aa

     文件       1052  2019-04-03 14:03  Siemens-PLC-Excel\.git\objects\0b\ab0d6bc9ac2c0c6cbcd7d504d2ad02f0058e0f

     文件       3039  2019-04-03 14:03  Siemens-PLC-Excel\.git\objects\0d\63619aa26e8572e77da9b211cfa5be3a0bdb8c

     文件       2823  2019-04-03 14:03  Siemens-PLC-Excel\.git\objects\11\3d985d9c4c2d45f8c7ca63317e3deb52845510

     文件        157  2019-04-03 14:03  Siemens-PLC-Excel\.git\objects\17\a79ccdacee588eb2a5df2185fe6e5bbe4d6e80

     文件        194  2019-04-03 16:17  Siemens-PLC-Excel\.git\objects\19\b1ff373e6682d3dc5d0a422740e2123a3b9877

     文件      21326  2019-04-03 16:17  Siemens-PLC-Excel\.git\objects\19\eb831659c590887efba46a6e61d265aac1f45e

............此处省略239个文件信息

评论

共有 条评论