powered by simpleCommunicator - 2.0.55     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / WinForms, .Net Framework [игнор отключен] [закрыт для гостей] / Кто работал с IPSerial.dll производства Moxa Nport
17 сообщений из 17, страница 1 из 1
Кто работал с IPSerial.dll производства Moxa Nport
    #38671332
Фотография des1roer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Необходимо по ip подключаться к оборудованию, что то писать в порт и получать данные. Кто работал отзовитесь. Так то есть пример сразу в Нпорт администраторе, но он не полный.
...
Рейтинг: 0 / 0
Кто работал с IPSerial.dll производства Moxa Nport
    #38671370
Фотография Изопропил
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
des1roerНеобходимо по ip подключаться к оборудованию, что то писать в порт и получать данные.

для этого нет необходимости использовать IPSerial.dll, достаточно tcp сокета
...
Рейтинг: 0 / 0
Кто работал с IPSerial.dll производства Moxa Nport
    #38671392
Фотография des1roer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
зачем мне tcp сокет
...
Рейтинг: 0 / 0
Кто работал с IPSerial.dll производства Moxa Nport
    #38671497
gr_vl
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
des1roer,

И в чем вопрос, будь конкретнее
...
Рейтинг: 0 / 0
Кто работал с IPSerial.dll производства Moxa Nport
    #38671570
Фотография des1roer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
вот в примере у Нпорта грубо говоря 2 таймера - один записывает, второй считывает. Я сделал по подобию - открываю порт, одна функция по таймеру (раз в 10 сек) записывает (nsion_write) значение в порт, вторая бесконечно считывает что там пришло (nsio_read). казалось бы, дикость, но ничего лучше не придумал. Потому что если одиночный nsio_read то она хватает только первый символ. Но необходимо сделать опрос нескольких портов и возникла проблема
...
Рейтинг: 0 / 0
Кто работал с IPSerial.dll производства Moxa Nport
    #38671579
Фотография des1roer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
по логике, нужно подписаться на события прихода данных как я понимаю. да и ipserial как-то тупо работает. пытаюсь nsioSetTimeInterval поставить он мне вроде 0 возращает, а все равно только первое число дергает
...
Рейтинг: 0 / 0
Кто работал с IPSerial.dll производства Moxa Nport
    #38671619
Фотография fortibransa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Вот если чесно, ничего непонятно. Моха, чо делаем, СОМ порты? Тогда нахрена ТСР?
...
Рейтинг: 0 / 0
Кто работал с IPSerial.dll производства Moxa Nport
    #38671681
Фотография des1roer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
нет ком порты они сами по себе. моха тут ни причем. необходимо по ip цепляться, используя IPSerial.dll
...
Рейтинг: 0 / 0
Кто работал с IPSerial.dll производства Moxa Nport
    #38671742
Фотография des1roer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
вот оригинальная программа
...
Рейтинг: 0 / 0
Кто работал с IPSerial.dll производства Moxa Nport
    #38671871
Фотография des1roer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
дока
...
Рейтинг: 0 / 0
Кто работал с IPSerial.dll производства Moxa Nport
    #38672432
gr_vl
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
des1roer,

Разнеси чтение и запись портов по потоком на каждыйц порт своя очередь чтения своя записи и вперед.
...
Рейтинг: 0 / 0
Кто работал с IPSerial.dll производства Moxa Nport
    #38672496
Фотография des1roer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
саппорт такое написал
---------
Мы правильно поняли, что речь идёт об устройстве NPort 5110?
Если честно, мы в своих проектах не используем библиотеку ipserial. С NPort можно легко работать и без нее. Для этого:
1. Переведите NPort в режим TCP Server;
2. Установите TCP-соединение с NPort (по умолчанию Data Port = TCP:4001)
3. Посылайте в TCP-сокет данные, они в неизменном виде выйдут в COM-порт;
4. Данные, которые NPort будет принимать по последовательному интерфейсу, он будет передавать в этот же TCP-сокет.

Команцев Александр | ООО "Ниеншанц-Автоматика",
...
Рейтинг: 0 / 0
Кто работал с IPSerial.dll производства Moxa Nport
    #38672497
Фотография des1roer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
а теперь вопрос - кто работал с tcp сокетом - с чего начать?
...
Рейтинг: 0 / 0
Кто работал с IPSerial.dll производства Moxa Nport
    #38672500
Фотография Изопропил
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
des1roerа теперь вопрос - кто работал с tcp сокетом - с чего начать?
http://msdn.microsoft.com/ru-ru/library/system.net.sockets.tcpclient.aspx
...
Рейтинг: 0 / 0
Кто работал с IPSerial.dll производства Moxa Nport
    #38672504
Фотография des1roer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
так вроде код простой. тока не приходит ничего. есть ли какой тестер под это дело? чтобы проверить могу ли я с оборудованием соединиться?
...
Рейтинг: 0 / 0
Кто работал с IPSerial.dll производства Moxa Nport
    #38672508
Фотография des1roer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
все же правильно делаю?
Код: c#
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
50.
51.
52.
53.
54.
55.
56.
57.
58.
59.
60.
61.
62.
63.
64.
65.
66.
67.
68.
69.
70.
71.
  #region main
        private void Form1_Load(object sender, EventArgs e)
        {
            try
            {
            Connect("10.81.0.102", "#10", 4001);
            }
            catch (Exception ex)
            {
              textBox1.Text =  ex.ToString();
            }

        }
        #endregion


        #region client
        static void Connect(String server, String message, Int32 port )
        {
            try
            {
                // Create a TcpClient.
                // Note, for this client to work you need to have a TcpServer 
                // connected to the same address as specified by the server, port
                // combination.
                TcpClient client = new TcpClient(server, port);

                // Translate the passed message into ASCII and store it as a Byte array.
               // Byte[] data = System.Text.Encoding.ASCII.GetBytes(message);
                Byte[] data = Encoding.UTF8.GetBytes(message);
                // Get a client stream for reading and writing.
                //  Stream stream = client.GetStream();

                NetworkStream stream = client.GetStream();

                // Send the message to the connected TcpServer. 
                stream.Write(data, 0, data.Length);

               MessageBox.Show("Sent: " +  message);

                // Receive the TcpServer.response.

                // Buffer to store the response bytes.
                data = new Byte[256];

                // String to store the response ASCII representation.
                String responseData = String.Empty;

                // Read the first batch of the TcpServer response bytes.
                Int32 bytes = stream.Read(data, 0, data.Length);
                responseData = System.Text.Encoding.ASCII.GetString(data, 0, bytes);
                MessageBox.Show("Received: {0}"+ responseData);

                // Close everything.
                stream.Close();
                client.Close();
            }
            catch (ArgumentNullException e)
            {
               
                MessageBox.Show("ArgumentNullException: {0}"+ e.ToString());
            }
            catch (SocketException e)
            {
                MessageBox.Show("SocketException: {0}"+ e.ToString());
            }

            MessageBox.Show("\n Press Enter to continue...");
            
        }
        #endregion
...
Рейтинг: 0 / 0
Кто работал с IPSerial.dll производства Moxa Nport
    #38672509
Фотография des1roer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
а все правильно. нужно было символ конца строки воткнуть еще
Код: c#
1.
Connect("10.81.0.102", "#10\r", 4001); 
...
Рейтинг: 0 / 0
17 сообщений из 17, страница 1 из 1
Форумы / WinForms, .Net Framework [игнор отключен] [закрыт для гостей] / Кто работал с IPSerial.dll производства Moxa Nport
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]