Страница 788 из 1041 ПерваяПервая ... 288688738778786787788789790798838888 ... ПоследняяПоследняя
Показано с 7,871 по 7,880 из 10404

Тема: ВОПРОС-ОТВЕТ (отвечаем на простые вопросы от новичков)

  1. #7871

    По умолчанию

    Цитата Сообщение от Sulfur Посмотреть сообщение
    Ставить все имеющиеся таргеты.
    В смысле? Может стоять несколько вариантов таргетов на один ПЛК (110.60) одновременно?

  2. #7872

    По умолчанию

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

  3. #7873

    По умолчанию

    Цитата Сообщение от capzap Посмотреть сообщение
    на торцевой стенке плк что написано, какая конкретно модель выгравирована?
    Что подразумеваете под таргетами и зачем их перебирать за три года?
    проект выкладывайте и мы скажем какая целевая платформа была
    Ситуация очень простая. Три года назад написал программу. Сейчас заказчик просит внести изменения. Проект у меня разумеется сохранен. Чтобы его открыть я установил все заново.
    Под таргетами подразумевается таргет файл. Я скачиваю последней версии с сайта ОВЕН, при открытии говорит "ошибка целевой платформы". Нужно выяснить на каком таргете я писал программу.......
    Проект давать жалко (уж простите). Скажите пожалуйста как определить мне самому.
    Я в одном городе, заказчик в другом, поэтому что выгравировано на стенке точно не скажу, но это был ПЛК110-220.60.Р-М

  4. #7874
    Пользователь
    Регистрация
    31.07.2013
    Адрес
    Аркаим
    Сообщений
    1,033

    По умолчанию

    Нужно выяснить на каком таргете я писал программу
    Попробуйте подключиться с помощью EasyWorkPLC, и там в ПЛЦ-браузере посмотреть версию прошивки.
    По версии прошивки уже поставить таргет.
    ---
    Если проект на руках, то можно перепрошить ПЛК на самую свежую прошивку, поставить нужный таргет и залить проект. Возможно придется переназначить объявления в конфигурации ПЛК.

  5. #7875

    По умолчанию

    Я вот только что полез делать скриншот ошибки при таргете, но перед этим заново таргет установил самый последний, и ВУАЛЯ ошибки нет, проект открывается. Не понял в чем дело до этого =(
    Посмотрел внимательно архивы прошивок и таргетов, там один таргет перекрывает кучу прошивок. Судя по всему, проще будет и правда просто на всем самом последнем сделать доработку и все.

    Но вопрос все равно остается - а если проект крутится, и необходимо онлайн к нему подключиться, я смогу это сделать вне зависимости от того, какой таргет файл использовался при разработке, и при заливке программы 3 года назад?

  6. #7876

    По умолчанию

    Здравствуйте!

    К примеру мы проверяем что если хоть один элемент массива ar_bJOB = TRUE то мы устанавливаем bJOBs = TRUE. Если все элемент массива ar_bJOB = FALSE то надо присвоить bJOBs = FALSE.
    Вопрос как проверить все элементы массива что они равны FALSE и присвоить SJOBs = FALSE

    VAR
    ar_bJOB: ARRAY [1..3] OF BOOL;
    i:INT;
    bJOBs:BOOL;
    END_VAR
    -----------

    FOR i := 1 TO 3 DO
    IF ar_bJOB[i] THEN
    bJOBs := TRUE;
    END_IF;
    END_FOR;

    Можно сделать конечно так (пример ниже), проверяя каждый элемент в отдельности, но а если в массиве к примеру 100 элементов. Может есть вариант по проще до которого я не додумался ))):

    IF NOT ar_bJOB[1] AND NOT ar_bJOB[2] AND NOT ar_bJOB[3] THEN
    bJOBs := FALSE;
    END_IF;

  7. #7877

    По умолчанию

    Цитата Сообщение от capzap Посмотреть сообщение
    Массив булей можно заполнить только в программе, следовательно когда вносите новое значение заполняйте свою переменную соответствующим значением
    Его надо не заполнить, а проверить, и если все элементы массива FALSE установить переменную bJOBs в FALSE.

  8. #7878

    По умолчанию

    Цитата Сообщение от capzap Посмотреть сообщение
    Ну тогда поделитесь откуда там появляются данные, в массиве булевых переменных?
    В массиве хранятся данные состояния дискретов. Вот его и надо проверить все ли они соответствуют False.

  9. #7879

    По умолчанию

    Цитата Сообщение от capzap Посмотреть сообщение
    Третий раз спрашиваю, как заполняется массив
    ЗЫ и убедитесь что задаете вопрос в теме про КДС соответствующей Вашему контроллеру
    Извините я наверное вас не понял и скорее всего есть нюансы, смотря как фомируется массив. Если не сложно расскажите. У меня примерно так:
    После опроса модулей сравниваем температуру с уставками, и формируем булевый массив, часть массива относится к одному оборудованию часть к другому.
    При превышении уставки хотя-бы 1-го датчика на панели оборудования подсвечиваем номер экрана с этим оборудованием.

    VAR
    ar_bJOB: ARRAY [1..3] OF BOOL;
    i:INT;
    bJOBs:BOOL;
    END_VAR
    -----------

    FOR i := 1 TO 3 DO
    IF ar_bJOB[i] THEN
    bJOBs := TRUE;
    END_IF;
    END_FOR;

    Вот и возник вопрос как проверить весь массив на отсутствие аварий, что все переменные теперь FALSE. Можно конечно проверить каждый элемент массива:

    IF NOT ar_bJOB[1] AND NOT ar_bJOB[2] AND NOT ar_bJOB[3] THEN
    bJOBs := FALSE;
    END_IF;

    Возможно есть способ по проще?

  10. #7880

    По умолчанию

    Так нельзя?
    FOR i := 1 TO 3 DO
    IF NOT ar_bJOB[i] THEN
    bJOBs := TRUE;
    END_IF;
    END_FOR;

Страница 788 из 1041 ПерваяПервая ... 288688738778786787788789790798838888 ... ПоследняяПоследняя

Метки этой темы

Ваши права

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