Все сервисы Хабра

Сообщество IT-специалистов

Ответы на любые вопросы об IT

Профессиональное развитие в IT

Удаленная работа для IT-специалистов

Войти на сайт
  • Все вопросы
  • Все теги
  • Пользователи

Хабр Q&A — вопросы и ответы для IT-специалистов

Получайте ответы на вопросы по любой теме из области IT от специалистов в этой теме.

Узнать больше
другие проекты хабра
  • Хабр
  • Карьера
  • Фриланс
Задать вопрос

Андрей Фомин

Студент, новичок в Python
  • 0
    вклад
  • 74
    вопроса
  • 4
    ответа
  • 75%
    решений
Комментарии
  • Информация
  • Ответы
  • Вопросы
  • Комментарии
  • Подписки
  • Нравится
  • Безопасность linux-каковы минимальные параметры, чтобы можно было сказать что система безопасная?

    Андрей Фомин @a63826ndrew Автор вопроса
    rPman, Я боюсь что пользователь введет команду, там например, на просмотр всей информации о пользователях, посмотрит что она вывела, и такой: "О, а вот здесь можно попробовать выполнить атаку", и я хочу исключить данную возможность до минимума
    Написано 14 мая
  • Как подправить вывод данных при работе с ПЛК?

    Андрей Фомин @a63826ndrew Автор вопроса
    Александр Ананьев,
    В общем результат такой:
    Я пробовал разные варианты чтения, и вот такой:
    int[] reg1_PFW_PO = modClient.ReadHoldingRegisters(4096, 120);

    И вот такой:
    int[] reg1_PFW_PO = modClient.ReadHoldingRegisters(10000, 120);

    И такой:
    int[] reg1_PFW_PO = modClient.ReadHoldingRegisters(14096, 120);

    И результат такой:
    4096:
    645e22208fd14679727071.png
    10000:
    645e243d45743922059487.png
    14096:
    645e245508168997298279.png
    Написано 12 мая
  • Как подправить вывод данных при работе с ПЛК?

    Андрей Фомин @a63826ndrew Автор вопроса
    Александр Ананьев,
    Я сейчас нахожусь возле этой панели, так что я пока буду пробовать то, что предложили выше и сюда писать результат, может вы что-то подскажите, если это будет необходимо
    Написано 12 мая
  • Как подправить вывод данных при работе с ПЛК?

    Андрей Фомин @a63826ndrew Автор вопроса
    Александр Скуснов, Хорошо, я попробую, что-то из этого должно сработать.
    Написано 12 мая
  • Как подправить вывод данных при работе с ПЛК?

    Андрей Фомин @a63826ndrew Автор вопроса
    Александр Скуснов, Я про это спрашивал уже, мне там объясняли, найдите у меня вопрос "Как правильно читать крты регистров Modbus"
    Написано 12 мая
  • Как подправить вывод данных при работе с ПЛК?

    Андрей Фомин @a63826ndrew Автор вопроса
    Александр Скуснов,
    4096 - начальный адрес, с которого начинается чтение регистров, второй параметр - да, количество, попробую ваш вариант.
    Раз общение идёт, то сам IP-адрес-то должен совпадать

    Возможно это адрес другого устройства, которое к нему подключено, меня напряг сам неправильный вывод, форум я нашел, вопрос задал, жду что там подскажут.
    Написано 12 мая
  • Как подправить вывод данных при работе с ПЛК?

    Андрей Фомин @a63826ndrew Автор вопроса
    Александр Скуснов,
    Вот так:
    int[] reg1_PFW_PO = modClient.ReadHoldingRegisters(4096, 120);
    Reg_PFW_PO.Items.Add("Первый октет маски подсети:" + (UInt16)reg1_PFW_PO[87]);
    Reg_PFW_PO.Items.Add("Второй октет маски подсети:" + (UInt16)reg1_PFW_PO[88]);
    Reg_PFW_PO.Items.Add("Третий октет маски подсети:" + (UInt32)reg1_PFW_PO[89]);
    Reg_PFW_PO.Items.Add("Четвертый октет маски подсети:" + (UInt16)reg1_PFW_PO[90]);
    Написано 12 мая
  • Как подправить вывод данных при работе с ПЛК?

    Андрей Фомин @a63826ndrew Автор вопроса
    Александр Скуснов,
    эти регистры для записи, т.е. вам не нужны.

    Я не совсем понял с чего был сделан такой вывод, да и насколько я знаю у всех этих регистров есть функция чтения, а запись опционально.
    Если вы читаете регистры 221, 26 и 36, то биты уж вы знаете, как прочитать?

    У меня есть вариант сделать массив байтов, и туда записывать значения из ячейки регистра, выглядеть будет примерно так:
    byte[] PFW26_2 = BitConverter.GetBytes(reg1_PFW_PO[26]);

    Вот код подключения, общение происходит по TCP:
    modClient.IPAddress = txtIPPO.Text;
                    modClient.Port = int.Parse(txtPortPO.Text);
                    modClient.Connect();
                    TimerPoll.Start();
                    lblStatusPO.Text = "Подключён";
                    lblStatusPO.ForeColor = Color.Green;
                    btnConnect_PO.Enabled = false;
                    btnDisconnect_PO.Enabled = true;
    Написано 12 мая
  • Как подправить вывод данных при работе с ПЛК?

    Андрей Фомин @a63826ndrew Автор вопроса
    Александр Скуснов,
    Нет, мне изменять ничего не надо, надо просто эти данные достать и вывести, ну и подправить вывод некоторых данных
    Написано 12 мая
  • Как сделать корректный вывод работы команды SSH?

    Андрей Фомин @a63826ndrew Автор вопроса
    Vindicar,
    его можно попросить отключить, указав, что твой клиент это не поддерживает

    А это делается вот здесь?
    var stream = sshClient.CreateShellStream("", 0, 0, 0, 0, 0);

    Если нет, то как это можно сделать, можете поподробнее объяснить?
    Написано 11 мая
  • Как вывести результат команды на Listbox?

    Андрей Фомин @a63826ndrew Автор вопроса
    Vindicar,
    Ну в общем я попробовал двигаться в том направлении, которое вы посоветовали, и получилось вот это:
    OVEN_info.Items.Clear();
                    SshCommand command = SSHclient.RunCommand(txtCommand.Text);
                    ShellStream stream = SSHclient.CreateShellStream("stream",80,40,80,40,1024);
                    StreamReader reader = null; 
                    TimerPoll.Start();
                    try
                    {
                        string result = null;
                        reader = new StreamReader(stream);
                        StreamWriter writer = null;
                        writer.AutoFlush = true;
                        writer.WriteLine(result);
                        reader.ReadToEnd();
                    }
                    catch (Exception ex)
                    {
                        MessageBox.Show(ex.Message);
                    }
    Написано 09 мая
  • Как вывести результат команды на Listbox?

    Андрей Фомин @a63826ndrew Автор вопроса
    Vindicar,
    Хорошо, попробую то что вы предложили.
    Библиотека для работы с SSH, которую я использую - SSH.NET.
    Написано 09 мая
  • Как вывести результат команды на Listbox?

    Андрей Фомин @a63826ndrew Автор вопроса
    Vindicar,
    Ну хорошо, поподробнее тогда расскажу:
    Работаю я с ней таким образом: подключаюсь к ПЛК через Ethernet порт и через TCP устанавливаю соединение по SSH через IP, порт, логин и пароль. Код, который использую для отправки команды выглядит вот так:
    SshCommand command = SSHclient.RunCommand(txtCommand.Text);
    Написано 09 мая
  • Как вывести результат команды на Listbox?

    Андрей Фомин @a63826ndrew Автор вопроса
    Vindicar,
    А я вот и не знаю как принять строку - ответ, обработать - это дело второе, мне чтобы ее обработать надо ее получить для начала, а вот как получить -вот это для меня вопрос.
    Написано 09 мая
  • Что делаю не правильно с SSH?

    Андрей Фомин @a63826ndrew Автор вопроса
    Василий Банников,
    То есть выглядеть это должно что-то около этого?
    public void InitSSH()
            {
                int port = Int32.Parse(txtPort.Text);
                this.SSHclient = new SshClient(txtIP.Text, port, txtLogin.Text, txtPassword.Text);
            }

    И еще:
    нужно ещё создать поле в классе с таким именем и типом

    А не могли бы объяснить поподробнее для чего это нужно и привести пример?
    Написано 07 мая
  • Что делаю не правильно с SSH?

    Андрей Фомин @a63826ndrew Автор вопроса
    Vindicar,
    Ладно, сделаем то что посоветовали:
    SshClient SSHclient = new SshClient(txtIP.Text, port, txtLogin.Text, txtPassword.Text);

    InitSSH вообще убрал, оставил только это, ругается на параметры:
    "Инициализатор поля не может обращаться к нестатическому полю, методу или свойству".
    Написано 07 мая
  • Что делаю не правильно с SSH?

    Андрей Фомин @a63826ndrew Автор вопроса
    Vindicar,
    Ну я тут попробовал переделать немного код и получилось следующее:
    Я создал класс SSH и в качестве атрибутов задал параметры которые нужны для подключения:
    public class SSH
            {
                public string ip;
                public int port;
                public string login;
                public string password;
            }

    Я вообще в нужную сторону двигаюсь?
    Написано 07 мая
  • Что делаю не правильно с SSH?

    Андрей Фомин @a63826ndrew Автор вопроса
    Alexander,
    Это вы касаемо отключения рекомендуете так сделать, или в каком месте нужно это реализовать?
    Написано 07 мая
  • Что делаю не правильно с SSH?

    Андрей Фомин @a63826ndrew Автор вопроса
    Vindicar, я правильно понял что по хорошему надо InitSSH поместить в класс, а потом уже пробовать делать с ним то, что нужно мне?
    И еще момент - что скажете насчет механизма реализации вывода результата работы команды?
    Написано 07 мая
  • Как устранить проблему с взаимодействием с SSH?

    Андрей Фомин @a63826ndrew Автор вопроса
    Роман, Я попробовал ваш вариант, и он частично сработал.
    Подключение осуществляется, а вот на отключение до сих пор ругается, и мне не совсем понятно в чем причина.
    Вот я сделал метод, как вы и рекомендовали:
    645549a8ee8ce792465822.png
    Но меня немного смущает что SSHclient почему-то он определяет как локальную переменную, и как сделать условие проверки на то, что такое подключение вообще есть, а если есть то выполнить другие действия.
    Условие мне нужно для tabcontrol, но он все ругается на несуществование в данном контексте.
    64554ab0057d5447056313.png
    Написано 05 мая
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • Следующие →
Самые активные сегодня
  • firedragon
    Владимир Коротенко
    • 4 ответа
    • 1 вопрос
  • sandersrocket
    sanders rocket
    • 3 ответа
    • 1 вопрос
  • VoidVolker
    VoidVolker
    • 4 ответа
    • 0 вопросов
  • Wan-Derer
    • 4 ответа
    • 0 вопросов
  • CityCat4
    CityCat4
    • 3 ответа
    • 0 вопросов
  • cinquefoil2016
    • 3 ответа
    • 0 вопросов
  • © Habr
  • О сервисе
  • Правила
  • Обратная связь
  • Блог

Войдите на сайт

Чтобы задать вопрос и получить на него квалифицированный ответ.
Войти через центр авторизации