Exemple #1
0
        private void timer1_Tick(object sender, EventArgs e)
        {
            timer1.Enabled = false;
            exDataList     = new DAL.ExDataData[exInfo.SaveNS];
            for (int i = 0; i < exInfo.SaveNS; i++)
            {
                exDataList[i] = new DAL.ExDataData();
            }
            exDataListIndex = 0;
            exDataTable     = new DataTable();
            exDataTable.Columns.Add("序号");
            //exDataTable.Columns.Add("物理通道");
            exDataTable.Columns.Add("名称");
            exDataTable.Columns.Add("工位号");
            exDataTable.Columns.Add("安装位置");
            exDataTable.Columns.Add("测量值");
            exDataTable.Columns.Add("最小值");
            exDataTable.Columns.Add("最大值");
            exDataTable.Columns.Add("物理量单位");
            string[] aiNameList = exInfo.NI9188Mod.Split('|');
            string   strSQL     = "select * from  NIChannelSetting where ( ";

            if (aiNameList.Length == 0)
            {
                MessageBox.Show("未选择任何传感器");
                this.Close();
                return;
            }
            foreach (string ai in aiNameList)
            {
                strSQL += "ID=" + ai + " OR ";
            }
            strSQL  = strSQL.Substring(0, strSQL.Length - 4);
            strSQL += ")";
            aiList  = new List <DAL.NIChannelSettingData>();
            DataTable aidt  = WFNetLib.ADO.SQLServerOP.DataTableSQL(strSQL);
            int       index = 1;

            try
            {
                myTask = new Task();
                for (int i = 0; i < aidt.Rows.Count; i++)
                {
                    DAL.NIChannelSettingData ai = DAL.NIChannelSettingDataFactory.Construct(aidt.Rows[i]);
                    aiList.Add(ai);
                    DataRow dr = exDataTable.NewRow();
                    dr["序号"] = index++;
                    //dr["物理通道"] = ai.物理通道;
                    dr["名称"]    = ai.称;
                    dr["工位号"]   = ai.工位号;
                    dr["安装位置"]  = ai.安装位置;
                    dr["最小值"]   = ai.最小值;
                    dr["最大值"]   = ai.最大值;
                    dr["物理量单位"] = ai.物理量单位;
                    exDataTable.Rows.Add(dr);
                    myTask.AIChannels.CreateCurrentChannel(ai.物理通道, "",//ai.名称 + "_" + ai.工位号,
                                                           (AITerminalConfiguration)(-1), 0.004,
                                                           0.020, AICurrentUnits.Amps);
                }
                myTask.Timing.ConfigureSampleClock("", exInfo.SampleRete,
                                                   SampleClockActiveEdge.Rising, SampleQuantityMode.ContinuousSamples, exInfo.SampleRete);

                // Verify the Task
                myTask.Control(TaskAction.Verify);

                runningTask     = myTask;
                myAnalogReader  = new AnalogMultiChannelReader(myTask.Stream);
                myAsyncCallback = new AsyncCallback(AnalogInCallback);


                myAnalogReader.SynchronizeCallbacks = true;
                myAnalogReader.BeginReadWaveform(exInfo.SampleRete, myAsyncCallback,
                                                 myTask);
                dataGridView1.DataSource = exDataTable;
            }
            catch (System.Exception ex)
            {
                // Display Errors
                MessageBox.Show(ex.Message);
                myTask.Dispose();
                runningTask = null;
                this.Close();
            }
        }
Exemple #2
0
        void SaveDataToSQL()
        {
            DAL.ExDataData exData4Save = new DAL.ExDataData();
            for (int i = 0; i < exDataList.Length; i++)
            {
                exData4Save.AI01 += exDataList[i].AI01;
                exData4Save.AI02 += exDataList[i].AI02;
                exData4Save.AI03 += exDataList[i].AI03;
                exData4Save.AI04 += exDataList[i].AI04;
                exData4Save.AI05 += exDataList[i].AI05;
                exData4Save.AI06 += exDataList[i].AI06;
                exData4Save.AI07 += exDataList[i].AI07;
                exData4Save.AI08 += exDataList[i].AI08;
                exData4Save.AI09 += exDataList[i].AI09;
                exData4Save.AI10 += exDataList[i].AI10;
                exData4Save.AI11 += exDataList[i].AI01;
                exData4Save.AI12 += exDataList[i].AI12;
                exData4Save.AI13 += exDataList[i].AI13;
                exData4Save.AI14 += exDataList[i].AI14;
                exData4Save.AI15 += exDataList[i].AI15;
                exData4Save.AI16 += exDataList[i].AI16;
                exData4Save.AI17 += exDataList[i].AI17;
                exData4Save.AI18 += exDataList[i].AI18;
                exData4Save.AI19 += exDataList[i].AI19;
                exData4Save.AI20 += exDataList[i].AI20;
                exData4Save.AI21 += exDataList[i].AI21;
                exData4Save.AI22 += exDataList[i].AI22;
                exData4Save.AI23 += exDataList[i].AI23;
                exData4Save.AI24 += exDataList[i].AI24;
                exData4Save.AI25 += exDataList[i].AI25;
                exData4Save.AI26 += exDataList[i].AI26;
                exData4Save.AI27 += exDataList[i].AI27;
                exData4Save.AI28 += exDataList[i].AI28;
                exData4Save.AI29 += exDataList[i].AI29;
                exData4Save.AI30 += exDataList[i].AI30;
                exData4Save.AI31 += exDataList[i].AI31;
                exData4Save.AI32 += exDataList[i].AI32;
                exData4Save.AI33 += exDataList[i].AI33;
                exData4Save.AI34 += exDataList[i].AI34;
                exData4Save.AI35 += exDataList[i].AI35;
                exData4Save.AI36 += exDataList[i].AI36;
                exData4Save.AI37 += exDataList[i].AI37;
                exData4Save.AI38 += exDataList[i].AI38;
                exData4Save.AI39 += exDataList[i].AI39;
                exData4Save.AI40 += exDataList[i].AI40;
                exData4Save.AI41 += exDataList[i].AI41;
                exData4Save.AI42 += exDataList[i].AI42;
                exData4Save.AI43 += exDataList[i].AI43;
                exData4Save.AI44 += exDataList[i].AI44;
                exData4Save.AI45 += exDataList[i].AI45;
                exData4Save.AI46 += exDataList[i].AI46;
                exData4Save.AI47 += exDataList[i].AI47;
                exData4Save.AI48 += exDataList[i].AI48;
                exData4Save.AI49 += exDataList[i].AI49;
                exData4Save.AI50 += exDataList[i].AI50;
                exData4Save.AI51 += exDataList[i].AI51;
                exData4Save.AI52 += exDataList[i].AI52;
                exData4Save.AI53 += exDataList[i].AI53;
                exData4Save.AI54 += exDataList[i].AI54;
                exData4Save.AI55 += exDataList[i].AI55;
                exData4Save.AI56 += exDataList[i].AI56;
                exData4Save.AI57 += exDataList[i].AI57;
                exData4Save.AI58 += exDataList[i].AI58;
                exData4Save.AI59 += exDataList[i].AI59;
                exData4Save.AI60 += exDataList[i].AI60;
                exData4Save.AI61 += exDataList[i].AI61;
                exData4Save.AI62 += exDataList[i].AI62;
                exData4Save.AI63 += exDataList[i].AI63;
                exData4Save.AI64 += exDataList[i].AI64;
            }
            exData4Save.AI01 = exData4Save.AI01 / exDataList.Length;
            exData4Save.AI02 = exData4Save.AI02 / exDataList.Length;
            exData4Save.AI03 = exData4Save.AI03 / exDataList.Length;
            exData4Save.AI04 = exData4Save.AI04 / exDataList.Length;
            exData4Save.AI05 = exData4Save.AI05 / exDataList.Length;
            exData4Save.AI06 = exData4Save.AI06 / exDataList.Length;
            exData4Save.AI07 = exData4Save.AI07 / exDataList.Length;
            exData4Save.AI08 = exData4Save.AI08 / exDataList.Length;
            exData4Save.AI09 = exData4Save.AI09 / exDataList.Length;
            exData4Save.AI10 = exData4Save.AI10 / exDataList.Length;
            exData4Save.AI11 = exData4Save.AI01 / exDataList.Length;
            exData4Save.AI12 = exData4Save.AI12 / exDataList.Length;
            exData4Save.AI13 = exData4Save.AI13 / exDataList.Length;
            exData4Save.AI14 = exData4Save.AI14 / exDataList.Length;
            exData4Save.AI15 = exData4Save.AI15 / exDataList.Length;
            exData4Save.AI16 = exData4Save.AI16 / exDataList.Length;
            exData4Save.AI17 = exData4Save.AI17 / exDataList.Length;
            exData4Save.AI18 = exData4Save.AI18 / exDataList.Length;
            exData4Save.AI19 = exData4Save.AI19 / exDataList.Length;
            exData4Save.AI20 = exData4Save.AI20 / exDataList.Length;
            exData4Save.AI21 = exData4Save.AI21 / exDataList.Length;
            exData4Save.AI22 = exData4Save.AI22 / exDataList.Length;
            exData4Save.AI23 = exData4Save.AI23 / exDataList.Length;
            exData4Save.AI24 = exData4Save.AI24 / exDataList.Length;
            exData4Save.AI25 = exData4Save.AI25 / exDataList.Length;
            exData4Save.AI26 = exData4Save.AI26 / exDataList.Length;
            exData4Save.AI27 = exData4Save.AI27 / exDataList.Length;
            exData4Save.AI28 = exData4Save.AI28 / exDataList.Length;
            exData4Save.AI29 = exData4Save.AI29 / exDataList.Length;
            exData4Save.AI30 = exData4Save.AI30 / exDataList.Length;
            exData4Save.AI31 = exData4Save.AI31 / exDataList.Length;
            exData4Save.AI32 = exData4Save.AI32 / exDataList.Length;
            exData4Save.AI33 = exData4Save.AI33 / exDataList.Length;
            exData4Save.AI34 = exData4Save.AI34 / exDataList.Length;
            exData4Save.AI35 = exData4Save.AI35 / exDataList.Length;
            exData4Save.AI36 = exData4Save.AI36 / exDataList.Length;
            exData4Save.AI37 = exData4Save.AI37 / exDataList.Length;
            exData4Save.AI38 = exData4Save.AI38 / exDataList.Length;
            exData4Save.AI39 = exData4Save.AI39 / exDataList.Length;
            exData4Save.AI40 = exData4Save.AI40 / exDataList.Length;
            exData4Save.AI41 = exData4Save.AI41 / exDataList.Length;
            exData4Save.AI42 = exData4Save.AI42 / exDataList.Length;
            exData4Save.AI43 = exData4Save.AI43 / exDataList.Length;
            exData4Save.AI44 = exData4Save.AI44 / exDataList.Length;
            exData4Save.AI45 = exData4Save.AI45 / exDataList.Length;
            exData4Save.AI46 = exData4Save.AI46 / exDataList.Length;
            exData4Save.AI47 = exData4Save.AI47 / exDataList.Length;
            exData4Save.AI48 = exData4Save.AI48 / exDataList.Length;
            exData4Save.AI49 = exData4Save.AI49 / exDataList.Length;
            exData4Save.AI50 = exData4Save.AI50 / exDataList.Length;
            exData4Save.AI51 = exData4Save.AI51 / exDataList.Length;
            exData4Save.AI52 = exData4Save.AI52 / exDataList.Length;
            exData4Save.AI53 = exData4Save.AI53 / exDataList.Length;
            exData4Save.AI54 = exData4Save.AI54 / exDataList.Length;
            exData4Save.AI55 = exData4Save.AI55 / exDataList.Length;
            exData4Save.AI56 = exData4Save.AI56 / exDataList.Length;
            exData4Save.AI57 = exData4Save.AI57 / exDataList.Length;
            exData4Save.AI58 = exData4Save.AI58 / exDataList.Length;
            exData4Save.AI59 = exData4Save.AI59 / exDataList.Length;
            exData4Save.AI60 = exData4Save.AI60 / exDataList.Length;
            exData4Save.AI61 = exData4Save.AI61 / exDataList.Length;
            exData4Save.AI62 = exData4Save.AI62 / exDataList.Length;
            exData4Save.AI63 = exData4Save.AI63 / exDataList.Length;
            exData4Save.AI64 = exData4Save.AI64 / exDataList.Length;

            exData4Save.ExID     = exInfo.ID;
            exData4Save.DataTime = DateTime.Now;
            DAL.ExDataDataDBOption.Insert(exData4Save);
        }