Страница 3 из 4 ПерваяПервая 1234 ПоследняяПоследняя
Показано с 21 по 30 из 34

Тема: ПЛК63 v1.89 10 0c проблемки...

  1. #21

    По умолчанию

    Чтобы порт открылся, необходимо, чтобы все его потребители, например драйвер slave, его отпустили. Для этого рассылается сообщение, что-о типа "Освободить порт для работы SysLibCom" В случае, если вся система перегружена сообщениями - соответствующее сообщение может запоздать.
    Соответственно пока порт не освободят - порт не откроется.

    Проект Ваш поврежден и я не могу посмотреть его на предмет почему такая нагрузка. Выложите его повторно, возможно в другом формате архиватора.

    Однако, даже такой сложный и комплексный прибор как ТРМ133М всех модификаций не страдает задержками. Поэтому надо посмотреть в каком месте Вашего проекта проблема.
    Существует несколько особенностей ПЛК63, при неправильном использовании производительность резко упадет.
    Тем, у кого мерцает дисплей - не более 1 записи на экран за 50 мс.

  2. #22
    Пользователь
    Регистрация
    01.12.2007
    Адрес
    Воронеж
    Сообщений
    201

    По умолчанию

    Проект не заархивирован. достаточно переименовать файл в cip.pro и все.

    Как бы в конфигураторе сказать чтобы порт сразу был свободен?

    Вот здесь отказался от многозадачности, стало повеселее. Но всегда хочется чего то большего

    P.S. О а по ТРМ201 не подскажете http://www.owen.ru/forum/showthread.php?p=46567?

    P.S2. О а по МСД-100 не подскажете http://www.owen.ru/forum/showthread.php?t=8709?

    P.S3. Не подскажите как правильно делать последовательный опрос устройств по 485му, а то у меня какаято срамота получается -> перешел на овен протокол и OwenPoolMaster, но там проблемки http://www.owen.ru/forum/showthread....ed=1#post46607
    Вложения Вложения
    Последний раз редактировалось pt200; 19.09.2010 в 15:42.

  3. #23
    Пользователь
    Регистрация
    01.12.2007
    Адрес
    Воронеж
    Сообщений
    201

    По умолчанию

    нифигаб себе обновил прошивочку( до 2.11) называтся.
    теперь время не обновляется в некоторых режимах работы(в отладчике видно что меняется).
    Щас будете расказывать, про то что обновлять нада пореже.....
    Но на старой то работала эта программа без вопросов!


    И чего теперь во время загрузки контроллера какое то "Э" на индикаторе ?
    Вложения Вложения
    Последний раз редактировалось pt200; 20.09.2010 в 18:38.

  4. #24
    Пользователь
    Регистрация
    01.12.2007
    Адрес
    Воронеж
    Сообщений
    201

    По умолчанию

    с отображением починил. чегото вы там со строками накрутили или в старой было недокрученно, а в новой подправили.
    Код:
    VAR
    	lines: STRING(32);
    END_VAR
    VAR_INPUT
    	info: STRING(32);
    END_VAR
    
    lines := '                                  '; //32 пробела
    lines := REPLACE( lines, info, (32-5), 0);
    
    lines := REPLACE( lines, UINT_TO_STRING( mins/10), 1, ( 32-4));
    lines := REPLACE( lines, UINT_TO_STRING( mins MOD 10), 1, ( 32-3));
    lines := REPLACE( lines, ':', 1, ( 32-2));
    lines := REPLACE( lines, UINT_TO_STRING( sec/10), 1, ( 32-1));
    lines := REPLACE( lines, UINT_TO_STRING( sec MOD 10), 1, ( 32-0));
    
    Write_Display( SINGLE_MODE, 0, 0, lines);
    а в новой работало со сбоями, пришлось делать так
    Код:
    VAR
    	lines: STRING(32);
    END_VAR
    VAR_INPUT
    	info: STRING(32);
    END_VAR
    
    
    lines := CONCAT( info, '                                ');//32 пробела
    
    
    lines := REPLACE( lines, UINT_TO_STRING( mins/10), 1, ( 32-4));
    lines := REPLACE( lines, UINT_TO_STRING( mins MOD 10), 1, ( 32-3));
    lines := REPLACE( lines, ':', 1, ( 32-2));
    lines := REPLACE( lines, UINT_TO_STRING( sec/10), 1, ( 32-1));
    lines := REPLACE( lines, UINT_TO_STRING( sec MOD 10), 1, ( 32-0));
    
    Write_Display( SINGLE_MODE, 0, 0, lines);

  5. #25

    По умолчанию

    1. для 32 символьной строки надо задавать String(33).

  6. #26
    Пользователь
    Регистрация
    01.12.2007
    Адрес
    Воронеж
    Сообщений
    201

    По умолчанию

    Цитата Сообщение от Филоненко Владислав Посмотреть сообщение
    1. для 32 символьной строки надо задавать String(33).
    А чегож этот хваленый Кодесус с меганадежным языком программирования с маниакальным контролем типов и всего остального:
    1) не ругается если сунуть в эту строку 32 символа
    2) нормально показывает на экране все 32 символа

    Кстати по F1
    Capture-1.GIF
    Последний раз редактировалось pt200; 21.09.2010 в 13:47.

  7. #27

    По умолчанию

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

  8. #28

    По умолчанию

    Цитата Сообщение от филоненко владислав Посмотреть сообщение
    вот именно, задает размер резервируемой памяти. а конец строки отмечается нулем.
    вам просто повезло, что следующий байт в озу за строкой оказался нулевым.
    эээ т.е. вы утверждаете, что в документации кдс - ошибка, и пользоваться надо, как в с?

  9. #29

    По умолчанию

    это не ошибка. там внутри во многих местах C. и строки сишные

  10. #30

    По умолчанию

    Цитата Сообщение от Филоненко Владислав Посмотреть сообщение
    это не ошибка. там внутри во многих местах C. и строки сишные
    Допустим.
    Но в Паскале, Бейсике +1 байт на длину или терминатор добавляются автоматически. ST - паскалеподобный язык по очевидным причинам. И в прологовской документации сказано русским по белому, включая примеры, что на перменную из 6 букв = string[6] - Это ошибка???

Страница 3 из 4 ПерваяПервая 1234 ПоследняяПоследняя

Ваши права

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