Показано с 1 по 7 из 7

Тема: настройка связи пк с плк с помощью сокетов

  1. #1

    Question настройка связи пк с плк с помощью сокетов

    Здравствуйте. Пытаюсь настроить работу ПК с ПЛК через сокеты с помощью UDP-протокола. Для контроллера пишу код, используя библиотеку SysLibSockets. Для компа пишу код на C++Builder6, используя компонент NMUDP. От ПЛК на комп данные отправляются. А вот с компа на ПЛК никак.

    Код для ПЛК:
    CASE web_stat OF
    0:
    web_stat:=1;
    sock_adr.sin_addr:=16#0A000602; адрес ПК
    sock_adr.sin_family:=SOCKET_AF_INET;
    sock_adr.sin_port:=2055; порт ПК

    sock_adr1.sin_addr:=16#0A00060A;
    sock_adr1.sin_family:=SOCKET_AF_INET;
    sock_adr1.sin_port:=1200;
    my_BUFs:='Hello from Russia!!!';
    my_BUFr:='';
    sock:=SysSockCreate(SOCKET_AF_INET,SOCKET_DGRAM,SO CKET_IPPROTO_UDP);
    send:=FALSE;
    suces:=0;
    faul:=0;
    count:=0;
    1:
    IF NOT send THEN
    send:=TRUE;
    resd:=SysSockSendTo(sock,ADR(my_bufs),20,0,ADR(soc k_adr),SIZEOF(sock_adr));
    END_IF
    tmr(IN:=start_TON,PT:=t#10s);
    IF NOT start_TON THEN
    start_TON:=TRUE;
    END_IF
    IF tmr.Q THEN
    resd:=SysSockRecvFrom(sock,ADR(my_bufr),20,0,ADR(s ock_adr1),SIZEOF(sock_adr1));
    IF FIND(my_BUFr,'Russ')<>0 THEN
    suces:=suces+1;
    ELSE
    faul:=faul+1;
    END_IF
    my_BUFr:='';
    send:=FALSE;
    start_TON:=FALSE;
    count:=count+1;
    END_IF
    IF count=1000 THEN
    web_stat:=3;
    END_IF
    3:
    finish:=SysSockClose(sock);
    END_CASE

    Может, кто сталкивался с этой проблемой. Дайте совет, как её решить.

  2. #2

    По умолчанию

    брандмауэр не пускает? проверьте сниффером уходят ли пакеты (отправляйте их на другой пк)

  3. #3

    По умолчанию

    Брэндмауэр пускает. ПК с ПЛК(и ПЛК с ПК) пингуются отлично. И проблему решил. Использоал библиотеку WagoLibEthernet.lib Теперь все работает отлично. Спасибо за помощь.

  4. #4

    По умолчанию

    библиотеку на стороне плк? ваговская работает с овном?

  5. #5

    Post

    Да библиотека WagoLibEthernet на стороне ПЛК (Я там взял блок UDP_Server). На стороне ПК взял компонент NMUP из палитры FASTNET(Билдер). Все работает.

  6. #6
    Пользователь
    Регистрация
    11.01.2009
    Адрес
    Кострома
    Сообщений
    3,144

    По умолчанию

    я читал про то, что ваго в кодесисе программируют, но не разу с ними не сталкивался.
    не приходилось ли работать с модулями скоростного счета и
    ссылочку на библиотеки сбрось пожалуйста.

  7. #7

    Post

    Нет, с этим пока что не сталкивался. Вот ссылка на страницу, откуда я скачал библиотеку WagoLibEthernet_01http://www.wago.com/wagoweb_china/pu...e/nm9mpl_e.htm

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения
  •