Страница 14 из 16 ПерваяПервая ... 41213141516 ПоследняяПоследняя
Показано с 131 по 140 из 161

Тема: Библиотеки

Комбинированный просмотр

Предыдущее сообщение Предыдущее сообщение   Следующее сообщение Следующее сообщение
  1. #1

    По умолчанию

    Цитата Сообщение от Филоненко Владислав Посмотреть сообщение
    Ручками через SysLibCom можно.
    Я не селен с Сом, вот примерчик где посмотреть было бы не плохо.

  2. #2

    По умолчанию

    Доброго времени суток! Подскажите если кто знает ,как заполучить "dig_fltr" из библиотеки pid_regulators в CDS3.5?

  3. #3

    По умолчанию

    Добрый вечер!
    Не могу разобраться с бибкой modbus master, есть моменты, которые я не понимаю. В описании к библиотеке написано следующее: "в PLC Configuration должны быть подключены библиотеки SisLibCom, Modbus, ComService.", но я CDS 3.5 нет библиотеки SisLibCom, а есть SysCom. Я решил, что это опечатка и добавил SysCom.
    Соответственно
    Код:
    Settings:COMSETTINGS;(* настройки последовательного порта *)
    com_num: PORTS:=0; (*0 - RS-485, 1 - RS-232*)
    у меня изменилось на
    Код:
    	Settings		:COM_Settings;				(* настройки последовательного порта *)
    	com_num			:COM_Ports:=SYS_COMPORT2; 	(*SYS_COMPORT2 - COM1/RS-485, SYS_COMPORT3 - COM2/RS-232*)
    и в программе:
    Код:
    IF port_opened=0 THEN
    Settings.Port:=com_num; (*номер COM-порта*)
    Settings.dwBaudRate:=115200; (*скорость*)
    Settings.byParity:=0;
    Settings.dwTimeout:=0;
    Settings.byStopBits:=0;
    Settings.dwBufferSize:=0;
    Settings.dwScan:=0;
    END_IF
    COM_SERVICE1(Enable:=(port_opened=0) , Settings:=Settings , Task:=OPEN_TSK );
    (*Если COM-порт открыт, то переходим к приему и передачи данных *)
    IF COM_SERVICE1.ready THEN
    port_opened:=2;
    END_IF
    Изменилось на
    Код:
    IF port_opened=0 THEN
    Settings.sPort:=com_num; (*номер COM-порта*)
    Settings.ulBaudrate:=SYS_BR_115200; (*скорость*)
    Settings.byParity:=SYS_NOPARITY;
    Settings.ulTimeout:=SYS_NOWAIT;
    Settings.byStopBits:=SYS_ONESTOPBIT;
    Settings.ulBufferSize:=0;
    END_IF
    
    com_serv(Enable:=(port_opened=0) , Settings:=Settings , Task:=OPEN_TSK );
    (*Если COM-порт открыт, то переходим к приему и передачи данных *)
    IF com_serv.ready THEN
    port_opened:=2;
    END_IF
    Затем я начинаю пытаться опрашивать устройство:
    Код:
    IF port_opened=2 THEN (*Удачно проинициализировали*)
    	blink_read_pr(in:= port_opened=2, t_on:= T#500MS, t_off:= T#10MS, out=> );
    	
    	get2_modbus(
    	Enable:= (blink_read_pr.out AND err=0), 
    	Mode:= MB_ASCII, 
    	DevAddr:= 1, 
    	FirstAddr:= 512, 
    	Quantity:= 46, 
    	ComHandle:= Settings.sPort, 
    	TimeOut:= TimeOut, 
    	Buffer:= buffer, 
    	Complete=> cmpl, 
    	Exception=> err, 
    	ByteCnt=> DataSize);
    
    	(*если установлен признак завершения операции, то *)
    	IF cmpl THEN
    //		IF err=0 THEN (*Если нет ошибок, то получаем данные из буфера типа INT*)
    		pPR200rd:=ADR(buffer);
    		buf_pr_rd:= pPR200rd^; //:=buf_pr_rd;
    		size_br:=SIZEOF(pPR200rd);
    		in_bits:=pPR200rd^.pr_bits;
    		in_pr_comm_test:=pPR200rd^.pr_comm_test;
    
    	END_IF
    
    
    END_IF
    При этом ByteCnt всегда равен 17, но size_br равен 4 и in_bits равен одному и тому же числу, сколько бы регистров я не опрашивал, хоть 1, хоть 5,10. С учётом того, что постоянно проскакивает ошибка err=255, я делаю вывод, что связи нет и пробую COM_Ports равным SYS_COMPORT1, SYS_COMPORT3, SYS_COMPORT4. Но результат в итоге один и тот же. Что я делаю не так?

    P.S. забыл добавить, что через конфигурацию данные получаю, т.е. связь между устройствами есть.
    Последний раз редактировалось energvk; 24.12.2015 в 13:55.

  4. #4

    По умолчанию

    В общем получилось наладить связь благодаря примеру из этого поста http://www.owen.ru/forum/showthread....l=1#post143771. RV9WFJ спасибо за работающий пример.
    Остались некоторые непонятные мне моменты:
    1. Не могу прочитать более 12 регистров (с любым таймаутом), причем, что характерно через конфигурацию тоже. С чем это может быть связано?
    2. ByteCnt прыгает со значений 24 в 29. Откуда берутся 3 лишних байта?

  5. #5

    По умолчанию

    У овна некоторые модули такие как МУ110-8И не поддерживают передачу большого кол-ва регистров за раз. Если они есть то обновлять их прошивку. Если их нет копать в другом месте, у меня 24 регистра за раз качает как сейчас помню.

  6. #6

    По умолчанию

    У меня ПР200, задам вопрос в соответствующей ветке

  7. #7

    По умолчанию

    Здравствуйте! Подскажите пожалуйста: устанавливаю Codesys SP6 Patch4 на двух разных машинах. На одной после установки библиотек все нормально а на второй у большинства библиотек выдаются ошибки, что они не установлены в системе
    Screenshot_2.png
    Пробовал переустанавливать библиотеки и Codesys, но результат данные процедуры не дали
    Скажите пожалуйста, с чем это может быть связано и как решить этот вопрос? Спасибо!

  8. #8
    Супер Модератор Аватар для Евгений Кислов
    Регистрация
    27.01.2015
    Адрес
    Москва
    Сообщений
    13,992

    По умолчанию

    Цитата Сообщение от DmitriiAnyushin Посмотреть сообщение
    Здравствуйте! Подскажите пожалуйста: устанавливаю Codesys SP6 Patch4 на двух разных машинах. На одной после установки библиотек все нормально а на второй у большинства библиотек выдаются ошибки, что они не установлены в системе
    Screenshot_2.png
    Пробовал переустанавливать библиотеки и Codesys, но результат данные процедуры не дали
    Скажите пожалуйста, с чем это может быть связано и как решить этот вопрос? Спасибо!
    Попробуйте поставить архив репозитория (ссылка в подписи).

  9. #9

    По умолчанию

    Цитата Сообщение от Евгений Кислов Посмотреть сообщение
    Попробуйте поставить архив репозитория (ссылка в подписи).
    Большое спасибо! Все заработало! А его вообще всегда рекомендуется устанавливать или только когда такие глюки возникают?

  10. #10
    Супер Модератор Аватар для Евгений Кислов
    Регистрация
    27.01.2015
    Адрес
    Москва
    Сообщений
    13,992

    По умолчанию

    Цитата Сообщение от DmitriiAnyushin Посмотреть сообщение
    Большое спасибо! Все заработало! А его вообще всегда рекомендуется устанавливать или только когда такие глюки возникают?
    Всегда, поскольку сам CODESYS не включает библиотеки своих предыдущих версий.

Страница 14 из 16 ПерваяПервая ... 41213141516 ПоследняяПоследняя

Похожие темы

  1. Про библиотеки
    от aven в разделе ПЛК1хх
    Ответов: 26
    Последнее сообщение: 22.04.2016, 00:19
  2. ПЛК 304/308 - Библиотеки к ним
    от vlkv в разделе ПЛК3xx (архив)
    Ответов: 3
    Последнее сообщение: 25.02.2011, 16:55
  3. про Pid из библиотеки
    от Игор100 в разделе ПЛК1хх
    Ответов: 2
    Последнее сообщение: 29.10.2009, 11:38
  4. Библиотеки
    от Александр М в разделе ПЛК1хх
    Ответов: 1
    Последнее сообщение: 23.05.2008, 12:15
  5. Cad библиотеки
    от незарегистрированный в разделе Помощь Разработчикам
    Ответов: 0
    Последнее сообщение: 29.07.2007, 22:10

Ваши права

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