private void Connect100ms() { short[] buffer_array = new short[158]; int amount = 315; //var buffer2 = new ushort[128]; int Byte_Col_r = 0; int resultReadField = stan.field_read('M', 0, 3000, amount, out buffer, out Byte_Col_r); if (resultReadField == 0) { //Console.WriteLine("OK.Read fied M3000-M3315"); //System.Diagnostics.Debug.WriteLine("OK.Read fied M3000-M3315"); //Console.WriteLine(string.Format("\t\t {0} ({1}) {2}", "Message 100mc", DateTime.Now - dt100ms, Thread.CurrentThread.ManagedThreadId)); dt100ms = DateTime.Now; //Todo 100ms Далее передаем данные в критическую сецкию из которой будут забирать потоки каждый в свой момент //Console.WriteLine("Byte_Col_r = " + Byte_Col_r); Console.WriteLine("Скорость 1(in) = " + BitConverter.ToInt16(buffer, 0)); //Console.WriteLine("Скорость 2 = " + BitConverter.ToInt16(buffer, 2)); //Console.WriteLine("Скорость 3 = " + BitConverter.ToInt16(buffer, 4)); //Console.WriteLine("Скорость 4 = " + BitConverter.ToInt16(buffer, 6)); //Console.WriteLine("Скорость 5 = " + BitConverter.ToInt16(buffer, 8)); //Console.WriteLine("Толщина 1 = " + BitConverter.ToInt16(buffer, 10)); //Console.WriteLine("Толщина 5 = " + BitConverter.ToInt16(buffer, 12)); //Console.WriteLine("Ширина = " + BitConverter.ToInt16(buffer, 14)); //Console.WriteLine("Диаметр выпуска = " + BitConverter.ToInt16(buffer, 16)); //Console.WriteLine("Диаметр разматывателя = " + BitConverter.ToInt16(buffer, 18)); //Console.WriteLine("Диаметр моталки = " + BitConverter.ToInt16(buffer, 20)); Thread PLS100ms = new Thread(BufferToBuffer); PLS100ms.Start(); //new Thread(BufferSQLToBufferPLS).Start(); } else { Console.WriteLine("Error.Read fied M3000-M3315. " + stan.Error(resultReadField)); System.Diagnostics.Debug.WriteLine("Error.Read fied M3000-M3315. " + stan.Error(resultReadField)); LogSystem.WriteEventLog("ProDaveStan", "Test", "Соединение не активировано. " + stan.Error(resultReadField), EventLogEntryType.Error); } }
private void Window_Closed(object sender, EventArgs e) { int result = stan.UnloadConnection(0); if (result == 0) { //Console.WriteLine("Connect close"); LogSystem.WriteEventLog("ProDaveStan", "Test", "Close connection", EventLogEntryType.Information); } else { Console.WriteLine("Connect open. Error - " + stan.Error(result)); LogSystem.WriteEventLog("ProDaveStan", "Test", "Connect open. Error - " + stan.Error(result), EventLogEntryType.Warning); } Console.ReadKey(); }
private void btnSave_Click(object sender, RoutedEventArgs e) { //TODO запуск таймеров 100ms(100ms), 101ms(SQL), 200ms(message), 1000ms(1s) stan = new Prodave(); byte[] conn = new byte[] { 192, 168, 0, 11 }; int res = stan.LoadConnection(Connect, 2, conn, 3, 0); if (res != 0) { Console.WriteLine("Error connection! " + stan.Error(res)); LogSystem.WriteEventLog("ProDaveStan", "Test", "Error connection!. Error - " + stan.Error(res), EventLogEntryType.Error); } else { LogSystem.WriteEventLog("ProDaveStan", "Test", "Connect OK!", EventLogEntryType.Information); int resSAC = stan.SetActiveConnection(Connect); if (resSAC == 0) { Console.WriteLine("Соединение активно."); LogSystem.WriteEventLog("ProDaveStan", "Test", "Соединение активно.", EventLogEntryType.Information); //Connect100ms(); TTimer100ms = new Timer(new TimerCallback(TicTimer100ms), null, 0, 100); TTimerMessage = new Timer(new TimerCallback(TicTimerMessage), null, 0, 200); TTimerSQL = new Timer(new TimerCallback(TicTimerSQL), null, 0, 101); TTimer1s = new Timer(new TimerCallback(TicTimer1s), null, 0, 1000); } else { Console.WriteLine("Соединение не активировано. " + stan.Error(resSAC)); LogSystem.WriteEventLog("ProDaveStan", "Test", "Соединение не активировано. " + stan.Error(resSAC), EventLogEntryType.Error); System.Diagnostics.Debug.WriteLine("Error - Соединение не активировано."); } } }
private void btnLogSaveClassLogger_Click(object sender, RoutedEventArgs e) { LogSystem.WriteEventLog("S7-BD(LPC2)", "Stan-BD-Prodave", "test message", EventLogEntryType.Information); }