Example #1
0
        private void ReadSavedS7Connections()
        {
            _logger.Info($"Procedure of reading all existing S7 connections from DB started.");

            S7Connections = new BindableCollection <S7ConnectionModel>();
            _originalList = ReadDataFromDB();

            _logger.Info($"Amount of read S7 connections from DN: {_originalList.Count}.");

            S7CpuTypeConverter converter = new S7CpuTypeConverter();

            foreach (var item in _originalList)
            {
                S7Connections.Add(new S7ConnectionModel()
                {
                    Identity            = item.Identity,
                    ConnectionName      = item.ConnectionName,
                    ConnectionID        = item.PLCconnectionID,
                    IPaddress           = $"{item.FirstOctet}.{item.SecondOctet}.{item.ThirdOctet}.{item.FourthOctet}",
                    Rack                = item.Rack,
                    Slot                = item.Slot,
                    CpuType             = converter.GetS7TypeEnum(item.CPUtype),
                    CpuTypeString       = S7TypeToStringConverter.ConvertToString(converter.GetS7TypeEnum(item.CPUtype)),
                    ConnectionActivated = item.ConnectionActivated,
                });
            }
        }
Example #2
0
        private void SetHeadingProperties()
        {
            if (SelectedShortPLCconnection != null)
            {
                int manufacturer = SelectedShortPLCconnection.CPUmanufacturer;
                if (manufacturer == 1)
                {
                    S7PlcConnectionDefinition definition = _originalListOfS7connections.Single(x => x.PLCconnectionID == SelectedShortPLCconnection.PLCconnectionID);
                    CurrentConnectionIP = $"{definition.FirstOctet}.{definition.SecondOctet}.{definition.ThirdOctet}.{definition.FourthOctet}";
                    ConnectionActivated = definition.ConnectionActivated;
                    S7CpuTypeConverter converter = new S7CpuTypeConverter();
                    CpuType = converter.GetS7TypeEnum(definition.CPUtype).ToString();

                    GetAlarmsForS7Connection(definition.PLCconnectionID);
                }

                MultipleAlarmsDeletionButtonEnabled = _canModifyAlarm;
                AddingNewAlarmsEnabled = _canModifyAlarm;
                EnableFiltering        = true;
            }
            else
            {
                CurrentConnectionIP = "_._._._";
                ConnectionActivated = false;
                CpuType             = "-----";

                AddingNewAlarmsEnabled = false;
                MultipleAlarmsDeletionButtonEnabled = false;
                EnableFiltering = false;

                AlarmsForSelectedS7Connection.Clear();
            }
        }
Example #3
0
        private void AssignDataAtModification(S7PlcConnectionDefinition connection)
        {
            S7CpuTypeConverter converter = new S7CpuTypeConverter();

            SelectedCPUtype = CpuTypes.Single(x => x.CPUtype == converter.GetS7TypeEnum(connection.CPUtype));

            ConnectionName      = connection.ConnectionName;
            FirstOctet          = connection.FirstOctet.ToString();
            SecondOctet         = connection.SecondOctet.ToString();
            ThirdOctet          = connection.ThirdOctet.ToString();
            FourthOctet         = connection.FourthOctet.ToString();
            Rack                = connection.Rack.ToString();
            Slot                = connection.Slot.ToString();
            ConnectionActivated = connection.ConnectionActivated;

            _logger.Info($"Data for modifying existing S7 connection assigned. Connection Name: {connection.ConnectionName}, connection ID: {connection.PLCconnectionID}.");
        }
        private int ConvertS7CpuTypeToInt(S7CpuTypeEnum type)
        {
            S7CpuTypeConverter converter = new S7CpuTypeConverter();

            return(converter.GetS7CpuTypeInt(type));
        }