Как читать данные из Mettler Toledo IND560 через Ethernet с использованием сокета C # - PullRequest
0 голосов
/ 03 апреля 2019

Я пытаюсь подключиться к устройству Mettler Toledo IND560 с помощью приложения c #. Все работает нормально в соединении RS-232, но не с Ethernet.

После ознакомления с техническим руководством Mettler Toledo я использовал HyperTerminal (порт 1701), но с этим не повезло. Всегда показывать ошибку соединения.

То же самое с приложением C # (Исключение: невозможно установить соединение, поскольку целевая машина активно отказала ему в этом 192.168.1.xx: 1701).

        private const int PORT_NUMBER = 1701;
        private const string cmd = "user admin";
        try
        {
            TcpClient client = new TcpClient();
            client.Connect("192.168.1.11",PORT_NUMBER);  //Error here
            Stream stream = client.GetStream();
            StreamWriter writer = new StreamWriter(stream);
            StreamReader reader = new StreamReader(stream);
            if (client.Connected)
            {
                Console.WriteLine("Connected to Mettler Toledo IDN560");
                Console.WriteLine("Sending command: {0}\\n", cmd);

                writer.Write($" {cmd}" + '\n');
                writer.Flush();
                Thread.Sleep(1000);
                string str = reader.ReadLine();
                Console.WriteLine(str);
            }
            else
            {
                Console.WriteLine("Error");
            }
            Console.ReadKey();

        }
        catch (Exception ex)
        {
            Console.WriteLine(ex); 
            Console.ReadKey();
        }

Ожидаемый ответ от устройства - <12 ACCESS OK>, но это не так.

Что здесь не так? *

1 Ответ

0 голосов
/ 03 апреля 2019

В Руководстве пользователя терминала IND560 говорится: «Программа для настройки InSite ™ используется для прошивки нового программного обеспечения терминала через последовательный порт COM1 или порт Ethernet».Вы пытались соединиться с этой программой?

...